Tags: SiliconLabs/arduino
Tags
Release 2.3.0 (#161) * Give friendly error message in BLE examples when wrong stack is selected Instead of cryptic errors users will get a clear message. * Add BLE HID mouse example (supported on xG24 DevKit, xG27 DevKit) * Implement analog microphone driver * Improvements for the ADC and analog microphone driver * add "tensorflow_lite_micro" sw component to nano matter "no_radio" variant add SilabsTFLite library with examples * Remove example with tensorflow lite standard library * add missing licenses * Uncrustify TFlite library, update copyright year * Add the TFlite library examples to the build test * Add Bluetooth mouse example for the XIAO MG24 Sense * Create README.md for package folder * Update package/README.md: add troubleshooting section * Update readme.md * Update generate_gsdk.py * Update package/README.md * generate_gsdk.py: fix gsdk.a creation for linux system * Update README.md * adding Tamas review changes * Add config file for generate_gsdk.py This makes configuring the generator script for each user easier. * Update gitignore with generate_gsdk.cfg * add instructions for generate_gsdk.cfg file * Fix config parser in generate_gsdk.py * Add the TFLite library to the readme * Bump the core version to 2.3.0 --------- Co-authored-by: Zoltan Fegyveres <[email protected]> Co-authored-by: Áron Gyapjas <[email protected]> Co-authored-by: Leonardo Cavagnis <[email protected]> Co-authored-by: Leonardo Cavagnis <[email protected]>
Release 2.2.0 (#152) * Implement HIL tests * Remove the redundant pin mappings from the BGM220 Explorer Kit The button and LED pins are connected to the breakout header as well, so their duplicates were removed. * Ensure that GPIOs return to their original state on deinit After a reset the GSDK initializes all periperals - the core deinits them. Some pins remained in a high/initialzed state after this - which is addressed by this commit. - Remove VCOM enable on the Nano Matter - Reset Serial Rx/Tx pins on deinit - Reset Wire SCL/SDA pins on deinit * Fix the sketch paths in the build test script * Implement a 78 MHz CPU clock option The Matter variants use this by default, now it's also user selectable. * Add API for getting the CPU cycle count * Add direct GPIO variant of ezWS2812 * Implement Watchdog Timer support * Improve the BLE HID keyboard example * Implement option in the GSDK generator to keep the gen folder * Patch out peripheral inits in the generated SDK This way deiniting them right after boot is not needed. This also solves the issue of some pins pulsing on startup. Startup time is now faster by 5 milliseconds. * Make the deep sleep escape pin a separate config for each board This allows the pin to be configured to an accessible location on boards without a button. * Fix ambiguous set_pixel() calls in ezWS2812 Calling '.set_pixel(0, 0, 0, 0)' resulted in a compile error, now there's only one signature of set_pixel. * Add BLE scan example * Add the released and bump the dev version in the package index JSON Also replace 'x86_64-mingw32' with 'i686-mingw32' for increased compatibility. * Bump the core version to 2.2.0 * fix: Wire library endTransmission return values * add stop condition in Wire.requestFrom function * Enable the I2C clock in Wire follower mode With the device inits/reinits removed the I2C clock is not enabled by default - we have to enable it separately. * Remove dangling whitespace in Wire.cpp * Wire: properly derive from arduino::HardwareI2C Since the core is based on ArduinoCore-API, certain libraries will make assumptions on full compatibility * Add analogReadResolution function * Add a python variant of the bootstrap script * Add support for the Seeed Studio Xiao MG24 * Update matter_decommission.ino Adding the `decommission_handler()` to the `setup()` process to avoid blocking. --------- Co-authored-by: Leonardo Cavagnis <[email protected]> Co-authored-by: Martino Facchin <[email protected]> Co-authored-by: Christopher Méndez <[email protected]>
Release 2.1.0 * Add the released 2.0.0 version to the package index JSON Also add the new and upcoming 2.1.0 version for local installs * Bump the core version to 2.1.0 * Initialize the ADC input pin correctly Without setting the ADC pin explicitly as an input we got strange behavior on some of the pins. Fixes #96 * remove debug print * Add AES CCM support to the BLE variants * Add NVM3 support to the 'no radio' variants * Generate SDK files for the BLE and 'no radio' variants * Implement NumberOfPrimaries support for Matter Color Control * Implement direct copying to the 'variants' folder in the GSDK generator script Also add wildcard configurations for the different protocol stacks * Adjust Matter attribute permissions, add new write handlers The following attributes received a write permission and a write handler: - IdentifyTime (Identify) - Options (LevelControl) - OnLevel (LevelControl) - StartUpCurrentLevel (LevelControl) - Options (ColorControl) * Add FeatureMap and ClusterRevision to the Matter Descriptor cluster These attributes were previously missing. Handling of these attributes is taken care of by the Descriptor cluster implementation in the Matter SDK. * Add write handler for Matter OnOff cluster GlobalSceneControl Also change the default value for GlobalSceneControl to 'true' * Refactor Matter Lightbulb cluster write handling Also add helping comments to the read handling in the same style * Use the correct device type for the Matter Color Lightbulb DEVICE_TYPE_DIMMABLE_LIGHT was used instead of DEVICE_TYPE_EXTENDED_COLOR_LIGHT * Add option to disable the Matter Bridge endpoint It's enabled by default - disabling it only works on Google, Apple and Amazon won't talk to the device if it's disabled * Implement Groups cluster support for Matter Lightbulb devices * Make StartUpOnOff a writable Matter Lightbulb attribute * Add extra constraint protection to Matter LevelControl CurrentLevel * Make Matter LevelControl CurrentLevel nullable * Remove the explicit ClusterRevision attribute from all Matter clusters The ClusterRevision attribute is auto added by DECLARE_DYNAMIC_ATTRIBUTE_LIST_END, so adding it explicitly creates a duplicate. * Remove Matter Groups cluster command responses from the command list These were added by mistake, their ID collides with the non-response counterpart. * Add outgoing commands for the Matter Groups cluster These commands will populate the GeneratedCommandList * Make the Matter LevelControl OnLevel attribute nullable * Allow 255 as a valid Matter LevelControl CurrentLevel value 255 represents NULL, so it should be allowed to be written * Make Matter LevelControl StartUpCurrentLevel nullable * Introduce WRITABLE_NULLABLE attribute mask for Matter clusters This simplifies cluster attribute definitions * Add lower bound check to Matter LevelControl SetLevel * Add function to get the Matter onboarding QR code payload * Correct the default CPU frequency to 39 MHz * Implement Matter device change callback - Add callback handling to the lightbulb classes - Add an example showing callback usage * Integrate the Matter device change callback to all compatible devices These are: Fan, OnOffPluginUnit, Switch, Thermostat, WindowCovering * Update the Matter library readme with the callback function description * Implement Matter decommissioning API Also add an example showing how to decommission a device * Add setter/getter for Matter On/Off cluster StartupOnOff * Change the type of Matter Groups NameSupport attribute to INT8U * Implement 'Toggle' and 'null' value handling for Matter OnOff StartUpOnOff Also make the StartupOnOff attribute nullable * Implement support for Matter Door Lock * Add device change callback to the Matter Door Lock * split BLE variants in two: BLE (only bluetooth controller) and BLE Silabs (with bluetooth silabs host stack) * Update the build tests to work with the new BLE variants * Update the readme and examples to reflect the BLE variant changes * Rename the Arduino BLE variants to 'BLE (Arduino)' * Rework Matter device change callback behavior Now the callback fires on every change not just changes from the Matter network. Now all devices will call the callback upon changing if registered. This change was implemented to ensure a consistent behavior from the callback. * Add support for the 'Ezurio Lyra 24P 20' board * Adjust the section labels in boards.txt * add EEPROM library (using NVM3 APIs) * Refactor the EEPROM driver to use 254 byte NVM3 objects * Add EEPROM calls to the test sketch * Update the user NVM size to 10k * Use the global define for NVM3 object sizes in EEPROM lib * platform.txt: properly escape openocd rules Fixes upload errors on Nano Matter for Windows users with spaces in their username * Add docs and pinout diagram for the Ezurio Lyra 24P * Update the readme with debugging info for the Lyra 24P 20 * Implement 'suspend' and 'resume' for Serial These functions help us to enter low power saving states * Add the 'em_rmu' component to all variants The Reset Management Unit is needed for low power functions * Fix the Serial mapping on the xG24 Explorer Kit The VCOM Serial is not exposed on the header - only Serial1 * Decrease NVM3 cache on the BGM220 Explorer Kit variants The BGM220 has only 32k of RAM - this gives some additional memory back to the users. * Add a new Serial to the BGM220 Explorer Kit Also update the pinout diagram to show Serial mappings correctly * Remove the 'BLE (Arduino)' variant from the BGM220 Explorer Kit Unfortunately the BGM220 doesn't have enough RAM to reliably run the ArduinoBLE stack. * Regenerate GSDK for the BGM220 Explorer Kit NVM cache size change and new Serial added * Fix the upload target in boards.txt for the Lyra24P * Mark all the EM4 wakeup pins in the variant descriptions * Mark all the EM4 wakeup pins on the pinout diagrams * Add the ArduinoLowPower library * Implement an 'escape_hatch' method to prevent EM4 bricking This function will keep the devices awake when the on-board button is pressed to prevent EM4 bricking. The Silicon Labs boards board controller can handle this situation however the Nano Matter's can't. This 'escape_hatch' function will only be present when using the ArduinoLowPower library. * Make 'wokeUpFromDeepSleep()' work on all variants * Fix keywords.txt alignment in ArduinoLowPower * Mark BLE example compatibility for the 'Lyra 24P 20' * Mark variables used in ISRs as volatile in BLE examples * Fix the zero brightness edge case in ezWS2812 We were writing the input variables instead of the output * Update the Matter readme with the Nano Matter OT RCP description * Add the 'Arduino Matter Provision' tool * Update the readme with the bundled libraries * Make 'system_init_finished' read only with a getter * Make the versioning of the included libraries consistent All included libraries inherit the version of the core, so we know which core release they're included in. Also, this eliminates the need for separate versioning for each. * Implement missing fan speed related attributes in MatterFan This increases compatibility with Home Assistant * Fix typo in the Matter flow sensor example --------- Co-authored-by: Leonardo Cavagnis <[email protected]> Co-authored-by: Leonardo Cavagnis <[email protected]> Co-authored-by: Martino Facchin <[email protected]>
Release 2.0.0 * Update the core package JSON to match the published one * Add back support for the Arduino Nano Matter It was removed to be excluded from the first release * Add back support for the Seeed Studio Wio MG24 It was removed to be excluded from the first release * Update readme files - Correct a typo in the Matter readme - Emphasize the different bootloaders in the main readme * Add details about the Google Home Developer Console setup to the Matter readme * Implement multi-instance support in the I2C driver * Add a second I2C instance on the xG24 Explorer Kit Now the QWIIC connector can also be used * Make the SPI peripheral configurable in ezWS2812 * Add a note to the readme about the 1.x version IDEs not being supported * Update the Matter library readme Add documentation for the global Matter class. Mention the addtitonal Matter Hub device. * Bump the version of ezWS2812 to 1.1 * Update the repo URL in the included libraries * Update the install host and packager scripts to host the next development version * Update the GSDK generator script to use the newest SDK versions GSDK 4.4.0 Matter 2.2.0 * Upgrade GSDK on the ThingPlus Matter BLE variant to 4.4.0 * Upgrade GSDK on the ThingPlus Matter BLE precomp variant to 4.4.0 * Update the GSDK generator script to work with the Matter SDK 2.2.0 Changed path for the ZAP file Removed the color endpoint number patching - issue solved in SDK Added device name and manufacturer patching as these have moved * Upgrade GSDK and Matter SDK on the ThingPlus Matter (Matter) precomp variant Upgraded to GSDK 4.4.0 and Matter SDK 2.2.0 * Upgrade GSDK and Matter SDK on the ThingPlus Matter (Matter) variant Upgraded to GSDK 4.4.0 and Matter SDK 2.2.0 * Fix starting state sync in the Matter color multiple bulb example * Fix the capitalization of 'LED' in the readme * Upgrade GSDK on the BGM220 Explorer Kit BLE variant to 4.4.0 * Upgrade GSDK on the BGM220 Explorer Kit BLE precomp variant to 4.4.0 * Upgrade GSDK on the xG24 Explorer Kit BLE variant to 4.4.0 * Upgrade GSDK on the xG24 Explorer Kit BLE precomp variant to 4.4.0 * Upgrade GSDK and Matter SDK on the xG24 EK (Matter) precomp variant Upgraded to GSDK 4.4.0 and Matter SDK 2.2.0 * Upgrade GSDK and Matter SDK on the xG24 EK (Matter) variant Upgraded to GSDK 4.4.0 and Matter SDK 2.2.0 * Upgrade GSDK on the xG27 Dev Kit variants to 4.4.0 * Upgrade GSDK on the Seeed Studio Wio MG24 variants to 4.4.0 * Upgrade GSDK on the Arduino Nano Matter BLE variants to 4.4.0 * Upgrade GSDK and Matter SDK on the Arduino Nano Matter (Matter) variants Upgraded to GSDK 4.4.0 and Matter SDK 2.2.0 * Use GPIO input in pullup configuration in the BLE Blinky example * Update the Matter lightbulb brightness percentage calculation to be precise Mapping between the true range and percents had some rounding errors * Correct typo in readme * Add BLE and platform support for the xG24 Dev Kit (brd2601b) Implements #11 * Add a precompiled BLE variant for the xG24 Dev Kit (brd2601b) Implements #11 * Update docs with the xG24 Dev Kit support Implements #11 * Add the xG24 Dev Kit to the build test script Implements #11 * Add Matter support for the xG24 Dev Kit Implements #12 * Add a precompiled Matter variant for the xG24 Dev Kit Implements #12 * Add the xG24 Dev Kit Matter variants to the build test script Also add the xG24 Dev Kit variants to the distinct categories Implements #12 * Update list of compatible devices in the Matter examples Implements #12 * Migrate the Si7210 driver library from Bitbucket Implements #15 * Migrate the PDM driver library from Bitbucket Implements #15 * Migrate the xG27 Dev Kit sensors example from Bitbucket Implements #15 * Migrate the BLE HID keyboard example from Bitbucket Implements #15 * Refactor the BLE HID keyboard example Implements #15 * Refactor the xG27 Dev Kit sensors example Implements #15 * Refactor the PDM microphone driver library Implements #15 * Migrate the xG27 Dev Kit sensors BLE example from Bitbucket Implements #15 * Refactor the xG27 Dev Kit sensors BLE example Implements #15 * Migrate the ThingPlus battery gauge example from Bitbucket Implements #15 * Implement a BLE battery level example for the ThingPlus Matter Implements #15 * Refactor the build test script, add new examples Implements #15 * Update example compatibility lists, correct a few typos * Update the board specific defines for the Nano Matter Remove the ARDUINO_ prefix as it's added by platform.txt afterwards * Invert button state and improve LED handling in the BLE Blinky example * Rename the Si7210Hall library to Si7210_hall * Update the examples using Si7210 with the new name * Refactor the Si7210_hall library - Refactor the included example - Fix I2C wake-up (previously the wake-up signal didn't go out) - Take the bus driver as a reference instead of a pointer - Define the default I2C address and speed - Add a constructor without parameters - Use initializer lists * Update the test build script to be able to build smaller subsets * Update Simplicity Commander to 1.16.4 Implements #33 * Implement helper script for calculating file size and checksum Implements #33 * Repackage the new Simplicity Commander archives with zstd The macOS archive was kept as a zip as macOS had problems with the app signing after deflating the zstd archive. Implements #33 #5 * Add CMSIS-pack for MGM240SD22VNA * Nano Matter: add USB PID and upload pack * toolchain: make path installation independent * pyocd: fix wrong commandline on verbose params * Implement support for the BridgedDeviceBasicInformation Matter cluster This gives the users the option to customize their devices Implements #41 * Bump the Matter library version to 1.1 * Fix the Si7210 library path in the build test script * Remove unused Matter device classes * Refactor the MatterDevice base class * Add the new Matter example to the build test script Also implement a SIGINT handler * Fix the debugger path in platform.txt * Move cluster read/write functions to the specific Matter classes This is a major refactor - each device class is now responsible for handling the read/write of their associated clusters. The read/write functions are virtual and inherited from the base device class. * Bump the year in the Matter library source files * Move the Matter change reporting to each device class Major refactor - each device class is now responsible for sending the Matter change report after their own status/values change. Now each device class encapsulates the whole functionality of the device - no external callbacks or functions needed. * Add GitHub issue template * Rename the Silicon Labs example library * Implement support for Matter Contact Sensor Implements #45 * Update readme.md - Mark BLE and Matter variants - Separate the ezBLE readme - Add the Nano Matter to relevant sections * Change the capitalization of getCPUTemp() * Rename the device unique ID getters * Update the Matter readme - Add unpairing instructions - Move the device property setters to the correct section * Enable Matter Switch support and add switch example Implements #42 * Avoid calling the Matter API from ISR context in examples * Implement the 'Matter lightbulb with button' example Implements #17 * Update J-Link debugging to work with the newer 2.3.x IDEs Fixes #43 * Update the year in the SparkFun Thing Plus BLE GSDK generated files * Make the ThingPlus BLE variants use the same bootloader as Matter This way the bootloader won't have to be reflashed when changing between Matter and BLE, so we avoid a massive pitfall for the users. * Update the year in the xG24 Explorer Kit BLE GSDK generated files * Make the xG24 Explorer Kit BLE variants use the same bootloader as Matter * Make the xG24 Dev Kit BLE variants use the same bootloader as Matter * Update the year in the Nano Matter BLE GSDK generated files * Make the Nano Matter BLE variants use the same bootloader as Matter * Update the year in the BGM220 Explorer Kit BLE GSDK generated files * Make the BGM220 Explorer Kit use a storage-internal bootloader This is to consistently use the same bootloader on all the variants * Update the year in the xG27 Dev Kit BLE GSDK generated files * Make the xG27 Dev Kit use a storage-internal bootloader * Update the year in the Wio MG24 BLE GSDK generated files * Make the Wio MG24 use a storage-internal bootloader * Update readme files to reflect the unified bootloaders * Fix the programmer highlighting in readme * Prevent GPIO use before the system initialization finished Calling any GPIO function before the system init finishes causes a fault because the GPIO clocks are not enabled yet. Any calls to GPIO functions will now have no effect before the init finishes. * Change the package format of the core and compiler to zstd Implements #5 * Use OpenOCD as upload tool for the Nano Matter * Add the OpenOCD package to the package index JSON * Fix the OpenOCD bootloader burning command '_' vs '-' in the interface config file path * Add erasing support for the OpenOCD programmer * Remove pyOCD support OpenOCD will be used instead * Increase the version in platform.txt to 1.1.0 * Add missing mathematical constants * Add the Arduino-like pin definitions for the Nano Matter * Add pinout diagram for the BGM220 Explorer Kit Implements #16 * Add pinout diagram for the xG24 Dev Kit * Remove the placeholder timer instance from main() It's no longer needed to keep the uptime ticks counting * Make millis() more precise Using the internal conversion function we get full resolution * Fix OpenOCD programming on Windows A couple of extra curly braces were needed Fixes #53 * Add verbose and quiet options to OpenOCD * Add language specific highlighting to readme and issue_template * Create a BLE/Matter combined variant for the Nano Matter This variant doesn1t include the SDK sources only the precompiled SDK is available * Remove the old variant files of the Nano Matter * Create a BLE/Matter combined variant for the Thing Plus Matter * Remove the old variant files of the Thing Plus Matter * Create a BLE/Matter combined variant for the xG24 Explorer Kit * Remove the old variant files of the xG24 Explorer Kit * Create a BLE/Matter combined variant for the xG24 Dev Kit * Remove the old variant files of the xG24 Dev Kit * Create a combined BLE variant for the xG27 Dev Kit * Remove the old variant files of the xG27 Dev Kit * Create a combined BLE variant for the Seeed Studio Wio MG24 * Remove the old variant files of the Seeed Studio Wio MG24 * Create a combined BLE variant for the BGM220 Explorer Kit * Remove the old variant files of the BGM220 Explorer Kit * Rearrange boards.txt, move the Wio MG24 up to the third-party boards * Remove the hard button requirement from the BLE lightswitch client example * Update the build test script to work with the new variant scheme * Update readme to reflect the variant changes * Update readme wording to include the Settings/Preferences for all platforms macOS - Settings Windows / Linux - Preferences * Disable SWO and RAIL PTI by default These take up precious GPIO, so they have to be off by default. Users can reenable them if needed. Fixes #55 * Fix the initial state in pulseIn() pulseIn() should wait for the requested state and measure the time elapsed until the opposite of the requested state Fixes #57 * Add guard to host_local_install.py to ensure running from the 'package' directory * Simplify organization of the board support slcp files * Add a 'no radio' variant for the BGM220 Explorer Kit * Add a 'no radio' variant for the Nano Matter * Add a 'no radio' variant for the Sparkfun Thing Plus Matter * Add a 'no radio' variant for the Seeed Studio Wio MG24 * Add a 'no radio' variant for the xG27 Dev Kit * Add a 'no radio' variant for the xG24 Explorer Kit * Add a 'no radio' variant for the xG24 Dev Kit * Move the configurations down in the GSDK generator script * Update readme.md with more radio stack information * Handle active low/high built-in LED configurations simultaneously * Correct typo in ezBLE * Change issue template to the new format * Update the title and labels in the new issue templates * Implement function to check whether a Matter device is online Online in this context means that it has been discovered by the Matter hub and is able to communicate with it. * Update the year in the Thing Plus Matter generated files * Regenerate GSDK and Matter SDK for the Nano Matter (Matter) We use our own Window Covering server implementation, so the included one was removed. Window Covering cluster commands were added to the ZAP file. * Regenerate GSDK and Matter SDK for the xG24 Explorer Kit (Matter) We use our own Window Covering server implementation, so the included one was removed. Window Covering cluster commands were added to the ZAP file. * Regenerate GSDK and Matter SDK for the xG24 Dev Kit (Matter) We use our own Window Covering server implementation, so the included one was removed. Window Covering cluster commands were added to the ZAP file. * Add support for Matter Window Covering Implements #21 * Regenerate GSDK and Matter SDK for the ThingPlus Matter (Matter) We use our own Window Covering server implementation, so the included one was removed. Window Covering cluster commands were added to the ZAP file. * Rework pin mapping to be Arduino-like Implements #9 #59 * Offset PinName to avoid overlap with pin indexes This way if a PinName is implicitly converted to pin_size_t it can be distinguised and handled accordingly. This offers more compatibility between the different pin mappings. * Update the pinout diagrams with the new pin names * Rework ADC to work with the new pin mapping scheme * Mark all DAC pins on the pinout diagrams and pin maps * Add a new I2C and remap SPI1 on the Nano Matter * Increase number of max LEDs in ezWS2812 Use uint32_t instead of uint8_t * Add interrupt lock/unlock to ezWS2812 examples In the future these will have to be moved inside the driver * Update readme with instructions for 'discussions' * Properly escape paths in boards.txt and platform.txt Fixes #75 * Add specific exit codes to the build test script This will help when running the script from CI * debugger: implement new interface * Make OpenOCD debugging Nano Matter specific, update readme * Bump the Matter Color Control cluster revision from 5 to 6 * Set the Matter Level Control cluster max values to 254 According to the specification this is the maximum allowed value * Bump the Matter Basic Information cluster revision to 2 * Remove the Matter Identify cluster from the Aggregator endpoint * Implement support for the Matter Identify cluster Right now only the lightbulbs use it, but it can be easily extended to support all available endpoints. * Regenerate GSDK and Matter SDK for all Matter variants * Add missing cluster attributes to Matter On/Off lightbulbs * Change the Matter Vendor ID and Name according to each board * Change the board number of the Nano Matter to brd2707a brd9050 was already taken - brd2707 was assigned instead * Add OpenThread RCP firmware image for the Nano Matter * Fix Matter onboarding QR code to include provisioned data By a known issue the regular GetQRCode() function always uses the default set-up pin even when it's changed, reulting in an uncommissionable device. This new method extracts the onboarding payload and generates the QR from that - and it now includes the changed PIN - so it can be used for onboarding. * Implement compiler warning monitoring in the build test script * Implement support for Matter On/Off Plug-in Unit / Outlet Implements #83 * Add toggle functionality to the Matter Lightbulb * Remove the Seeed Studio Wio MG24 variant The board won't be released soon - we can add it back later if it comes out. * Implement support for Matter Air Quality sensor * initial: add core-api * add Serial refactoring * add ArduinoCore-API as a submodule * move core api in 'extra' folder * Serial extern refinement * fix wiring management * using namespace in Wire lib * create Interrupt and Tone files * add missing Silicon Labs MIT license * fix attachInterrupt prototype issue and remove unused stuff * cosmetics (uncrustify) * SPI library refactoring * externalization of Wire and SPI libraries * suppressing unused param warnings * fix compilation issue in ezBLE and ezWS2812 lib * fix random function prototypes * add api folder in the include path * Remove the default value from 'block' in SPI.transfer() This resolves the ambiguity with the base class. Also, change the default transfer type to blocking. * Add the Matter Air Quality sensor example to the build test script * Add missing newlines in MatterOnOffPluginUnit * Update the core packager script to include the Core-API * Update the readme with instructions for using the Core-API * Update the product link for the Nano Matter in the readme * Bump the core version to 2.0.0 * Reword the Matter compatibility warning message * Fix the Nano Matter color lightbulb example and add it to the tests * Corrections in the global and Matter readme * Update the 'made with' section in the readme * Fix the signature of delayMicroseconds() * Fix the signature of the shift functions Also add more core function calls to the test sketch * Fix 'pin_name_clock' paramteter passing in shiftIn() * Add more SPI and Wire calls to the test sketch * Bump the Matter library version to 2.0.0 to be in sync with the core * Add pin definitions for all Serial/Wire/SPI peripherals * Fix DAC initialization, add missing DAC instances Output pin is now explicitly initialized to 'gpioModeWiredOr' --------- Co-authored-by: Martino Facchin <[email protected]> Co-authored-by: Hai Nguyen <[email protected]> Co-authored-by: Leonardo Cavagnis <[email protected]>