Implement full SSD1306 OLED display support: - Splash screen on boot (1.5s) with project name, version, board - Dashboard showing radio state, config, counters, RSSI/SNR - RSSI history sparkline (64-sample ring buffer, 2px-wide bars) - DisplayOn/DisplayOff host commands routed via dedicated channel - Pure render functions against generic DrawTarget (no hardware coupling) - Display on/off control bypasses radio task entirely Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
5.0 KiB
5.0 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Unreleased
0.3.2 - 2024-03-06
Added
- A new
logfeature can be enabled to provide logging and tracing information about the USB interface.
Changed
- [breaking] LangIDs no longer implement
TryFromPrimitive. The minor version has not been bumped as this was not intended to be used in the public API.- If this is problematic, please open an issue in the main
usb-devicerepository.
- If this is problematic, please open an issue in the main
- Changed handling of EP0 state to eliminate unexpected issues with device enumeration
0.3.1 - 2023-11-15
Added
BuilderError,LangID,StringDescriptorsnow inpreludeLangIDnow inclass_prelude
Changed
- Updated documentation, including example code
0.3.0 - 2023-11-13
Fixed
- Fixed a defect where enumeration may fail due to timing-related issues (#128)
Added
- New enums and allocators for Isochronous endpoints (#60).
- Ability to select USB revision (#116).
- Added support for alternate settings on interfaces (#114).
- Added support for architectures without atomics (#115).
- Added support for multi-language STRING desc (#122).
UsbDeviceBuilderhas a public.extra_lang_ids()method to specify LANGIDs besides ENGLISH_US(0x0409)
Breaking
- Acess numeric form of
EndpointTypevariants now require a.to_bm_attributes(). (#60) DescriptorWriter::iad()now requires aOption<StringIndex>to optionally specify a string for describing the function (#121).manufacturer(),.product()and.serial_number()ofUsbDeviceBuilderare now replaced with thestrings()function that accepts aStringDescriptorlist to allow multilanguage support (#122)- Various methods of the
UsbDeviceBuildernow returnResult<>types instead of internally panicking.
Changed
EndpointTypeenum now has fields for isochronous synchronization and usage (#60).descriptor_type::STRINGoffn get_descriptor()will send the LANGIDs supported by device, and respond STRING Request with specified LANGID. (#122)UsbErroris now copyable and comparable (#127)
0.2.9 - 2022-08-02
Added
- Optional support for defmt (#76).
Fixed
- Fixed an issue where USB devices were not enumerating on Windows (#32)
- Fixed Suspend state transition so it goes back to the previous state, not just Default (#97)
0.2.8 - 2021-03-13
0.2.7 - 2020-10-03
0.2.6 - 2020-09-22
0.2.5 - 2020-02-10
0.2.4 - 2020-02-01
0.2.3 - 2019-08-28
0.2.2 - 2019-07-27
0.2.1 - 2019-06-07
0.2.0 - 2019-06-07
0.1.0 - 2019-06-07
This is the initial release to crates.io.