- Enhancements
- Updated ex_doc and property_table (Thanks @fhunleth ❤️)
- Updated CI to build for Elixir 1.18 and 1.17 (Thanks @fhunleth ❤️)
- Enhancements
- Changed the Elixir version requirement to match Nerves. This fixes an unneeded warning on Elixir versions older than 1.18.
- Enhancements
- Added
BlueHeron.HCI.Transport.transport_ready?/0
- Added
- Bugfixes
- Fixed issue where transport would fail to initialize due to garbage data needing to be flushed
- Enhancements
:blue_heron
is now it's own application- Rewrote
BlueHeron.HCI.Transport
to support the new supervision structure - Enable SMP by default
- Persist GATT into a
PropertyTable
to allow for better error handling - Creating a Peripheral is now a little simpler and supervised
- Added Broadcaster role
- Depreciations
- Removed
BlueHeron.Context
- Removed
BlueHeronTransportUART
andBlueHeronTransportUSB
- Removed
- Bugfixes
- Fixed ACL messages not being delivered to parent process (Thanks @acadeau ❤️)
- Enhancements
- Added
set_scan_response_data
HCI command and Peripheral function- This allows for an additional 31 bytes of advertising data to be used
- Added
- Enhancements
- Added initial implementation of SMP (Thanks @markushutzler ❤️)
- Added flow control for ACL data
- Added new HCI commands required for SMP
- Bugfixes
- Fixed errors in GATT
- Enhancements
- Added initial implementation of GATT (Thanks @trarbr ❤️)
- Enhancements
- Added HCI commands for GATT (Thanks @trarbr ❤️)
-
Potential breaking changes There was quite a bit of internal adjustments and refactoring to cleanup implementation, although no core functions were changed. You should see no difference when updating but it was worth watching your implementation after updating in case something was missed in the cleanup
-
Enhancements
- Add new Address module to simplify the different address interpretations
- Allow disabling logging to /tmp/hcidump.pklg file (Thanks @axelson!)
- Lots of HCI Commands added to better support default behavior (Thanks @trarbr!)
-
Fixes
- fix/workaround for the rpi3 (Thanks @axelson!)
- Fixed dmesg output display in govee example readme (Thanks @kevinansfield!)
- Bugfixes
- Disconnecting from an ATT client works now
- Reconnect now works
- Sending a
connection_create
cmd when a device is unavailable retries now connection_complete
event now uses the correct address- Multiple ATT clients can now be started simultaneously
- HCI and ACL calls will now timeout rather than hang forever endianness
- Transport now supports having multiple commands in flight
- Enhancements
- Added
btsnoop
parser
- Added
Initial release