New auxiliary devices:
- Add Monsoon power supply auxiliary device
Matter device controllers:
- Add button capability for esp32 all clusters app.
- Fix reboot / FDR issue when no regex is provided
- Refactor ESP32 Matter lighting, all-cluster sample app controllers.
- Create ESP32 Matter device base class.
- Add Pigweed packages (PyPI version) installation to GDM.
- Creates conditional import for Pigweed paths.
- Add client callback timeout to fix infinite hangs.
- Refactor EFR32 Matter lighting sample app controller.
- Create EFR32 Matter device base class.
- Refactor NRF Matter lighting sample app controller.
- Create NRF Matter device base class.
- Make wait_for_bootup_complete public.
- Create ESP32 Pigweed AllClusters device class
- Remove regexes verification and rename "no_wait" to "verify" for locking capability
- Make "verify" argument and refactor the RPC verification without regexes.
- Improved Matter sample app setup docs
- Move Switchboard capability definitions from dev board base classes into device classes
- Support specifying parameters in RPC calls.
Multiprocessing/parallelization:
- Rework parallel_utils for forkserver/spawn and increase their flexibility
- Add CallSpec data class to simplify parallel_utils parameter syntax
- Make PigweedRPCTransport transport instance serializable
- Add a deprecation notice to parallel_utils
- Start Switchboard processes before parallel_utils in "make_devices_ready"
- Ensure devices are closed (again) if they're used after a .close() call
Bug fixes:
- Surface errors occurring during property or capability access in GDM CLI
- Install remaining Brew packages if a package installation fails
- Sort get-supported-device-types, get-supported-device-classes outputs alphabetically
- Update immutabledict requirement to >= 2.0.0
- Update launcher path in FireManager.update_gdm error prompt
Other improvements:
- Adds a flag to allow installing app with all runtime permission
- Store import paths of registered extension packages
- Add type hinting to communication_types
- Add type hinting to usb_utils.py
- Add a data type for "make_device_ready" setting
Test improvements:
- Enforce that each device type in GDM has a dedicated functional test config
- Open source fire_patch_test.py
- Simplify the GDM example extension package unit test
- Rename Matter sample app configs and enable skipped logging tests
- Updated the switchboard_test_suite to log while waiting for the log rotation.
- Open-source usb_utils_test.py