Skip to content

Releases: 8none1/lednetwf_ble

Release 2.0.1-beta1

25 Feb 07:45

Choose a tag to compare

Release 2.0.1-beta1 Pre-release
Pre-release

What's New

Dimmer-only device support

Added brightness control for dimmer-only devices (Ctrl_Dim, Bulb_Dim, Magnetic_Dim). Previously, adjusting the brightness slider on these devices had no effect — only power on/off worked. Brightness commands are now sent using the 0x3B 0x01 standalone brightness command, matching the Zengge app's behaviour.

Important!

If you are upgrading from v1, you will need to remove and re-add your device in Home Assistant for the integration to correctly identify your device's capabilities. Without this step, the device will be treated as "Unknown" and brightness control will not work.

Fixes
Fixed brightness being silently dropped for dimmer-only devices (#79)

Release 2.0.0

17 Jan 08:56

Choose a tag to compare

🎉 Version 2.0.0 - IOTBT Device Support & Enhanced Effects! 🎉

Version 2.0.0 brings major new device support and significant improvements to the effects system. This release represents months of development and testing to expand compatibility with the growing family of Zengge LEDnetWF devices.

🌟 What's New in 2.0.0

Full IOTBT Device Support

This is the headline feature of 2.0.0! IOTBT devices (advertising as IOTBT*) are now fully supported:

  • Segment-based control - Devices with multiple segments can be controlled independently
  • Music reactive modes - Full support for built-in microphone sound reactive effects
  • Enhanced device detection - Improved auto-detection of IOTBT device capabilities
  • Asynchronous capability loading - Device capabilities are pre-loaded for faster responsiveness
  • Hue control fixes - Accurate colour representation on IOTBT devices

Enhanced Effects System

  • Symphony Function Mode effects - New effect category support for compatible devices
  • Settled Mode effects - Additional effect options with background colour support
  • Static effects with foreground/background colours - More control over multi-colour static effects
  • Data-driven command support - Improved SIMPLE effects handling with better BLE transport wrapping
  • LED curtain light support - Added support for Symphony devices with curtain light configurations

Sound Reactive Improvements

  • Sensitivity control - Adjust how responsive the sound reactive mode is to audio input
  • Better music mode handling - Improved reliability of music reactive commands across device types

Code Quality & Documentation

  • Comprehensive protocol documentation
  • Removed deprecated code and cleaned up the integration
  • Better device identification and initialization logging

⚠️ Important Upgrade Notice

If your devices don't work properly after upgrading, you will need to delete and re-add them.

This is because version 2.0.0 includes significant changes to how device capabilities are detected and stored. Existing devices may be missing metadata that is now required for full functionality.

How to Re-add Your Device

  1. Navigate to SettingsDevices & ServicesLEDnetWF BLE
  2. Click on your device
  3. Click the three-dot menu (⋮) and select "Delete"
  4. Wait a moment - the device should be automatically rediscovered
  5. Click "Configure" to add it again
  6. Your device settings (LED count, chip type, colour order) will be auto-detected during setup

Still Having Problems?

If re-adding the device doesn't resolve your issue:

  1. Enable debug logging - See the Troubleshooting Guide for instructions
  2. Reproduce the problem - Try the actions that aren't working
  3. Download the logs - Disable debug logging to download the log file
  4. Open an issue - Report the problem at our Issues page with:
    • Your device name (e.g., IOTBT65C, LEDnetWF1234)
    • What's working and what isn't
    • The debug log file attached

📋 Full Changelog

Added

  • Full support for IOTBT segment-based devices
  • IOTBT music reactive commands and service data parsing
  • Sound reactive sensitivity control slider
  • Symphony Function Mode effects
  • Settled Mode effects with background colour support
  • Static effects with foreground and background colours
  • LED curtain light support for Symphony devices
  • Data-driven command support for SIMPLE effects
  • Asynchronous device capability pre-loading
  • Comprehensive protocol documentation

Changed

  • Enhanced BLE command wrapping for better transport reliability
  • Improved device detection and initialization
  • Updated option descriptions with bold formatting for device names
  • Removed version suffix from manifest name

Fixed

  • Hue control for IOTBT devices
  • Audio/music mode for IOTBT devices
  • Background light turn off logic for None brightness values
  • Logical condition in DeviceData.is_supported method for model checks

Removed

  • Deprecated LEDnetWF BLE v2 integration files (cleanup)
  • Unused legacy code

🙏 Thank You

A huge thank you to everyone who:

  • Tested the beta versions and provided feedback
  • Reported issues with detailed logs
  • Contributed code improvements (special thanks to @Jadua1010!)
  • Helped document new device protocols

🚀 What's Next?

We'll continue to:

  • Add support for new device models as they appear
  • Improve effect handling and add new effects where supported
  • Respond to community feedback and bug reports

Need Help? Check out our Troubleshooting Guide or open an issue.

Want to Support Development? Consider buying me a coffee to help with purchasing new devices for testing!

Release 2.0.0-beta4

09 Dec 19:48

Choose a tag to compare

Release 2.0.0-beta4 Pre-release
Pre-release
v2.0.0-beta4

Bump version to 2.0.0-beta4

Release 2.0.0-beta3

08 Dec 17:49

Choose a tag to compare

Release 2.0.0-beta3 Pre-release
Pre-release
v2.0.0-beta3

Bump version to 2.0.0-beta3

Release 2.0.0-beta2

08 Dec 09:17

Choose a tag to compare

Release 2.0.0-beta2 Pre-release
Pre-release
v2.0.0-beta2

Bump version to 2.0.0-beta2

Release 2.0.0-beta1

07 Dec 21:45

Choose a tag to compare

Release 2.0.0-beta1 Pre-release
Pre-release
v2.0.0-beta1

Bump version to 2.0.0-beta1

Release 1.1-beta1

26 Nov 17:54

Choose a tag to compare

Release 1.1-beta1 Pre-release
Pre-release
v1.1-beta1

Bump version to 1.1-beta1

Release 1.0.0

23 Nov 18:41

Choose a tag to compare

🎉 Version 1.0 - Major Release! 🎉

We're thrilled to announce version 1.0 of the LEDnetWF BLE integration! This milestone release represents a significant transformation of how the integration works, delivering better reliability and a improved user experience.

🌟 What's New in 1.0

Passive Bluetooth Monitoring

  • Automatic State Updates Without Active Connections - Your devices now update their state in Home Assistant automatically by listening to Bluetooth advertisements they broadcast every few seconds
  • Survives Home Assistant Restarts - No more incorrect states after restarting Home Assistant! The integration immediately picks up the current state from advertisements
  • Reduced Bluetooth Interference - By not maintaining constant connections, your Bluetooth network is free for other devices
  • Real-Time Updates - Changes made via physical remotes or other apps are reflected in Home Assistant within seconds, even when disconnected

This feature works completely transparently in the background - no configuration needed!

Major User Experience Improvements

Smarter Effect Management:

  • "Solid Color" Mode - Renamed "Static Effect 1" to "Solid Color" for clarity, and it now behaves like a simple color mode instead of an effect
  • Reordered Effect Lists - The most useful options now appear first:
    • 0x56/0x80 devices: Solid Color → Static Effects → Dynamic Effects → Sound Reactive → Cycle Modes
    • 0x54/0x55/0x62 devices: Effect Off → Effects 1-21 → Candle Mode → Sound Reactive
    • 0x5b devices: Effect Off → RGB Jump → Effects 0-20 → Candle Mode
  • Smart Background Light Control - The background light entity is now only available when using static effects that actually support background colors (Static Effect 2-10), preventing accidental effect interruption

Better Background Color Handling:

  • Background colors now initialize to match your current foreground color and brightness instead of blasting full-brightness white

Critical Bug Fixes

  • Fixed effect state synchronization - Speed slider changes now correctly apply to the current effect, even when the effect was changed externally
  • Fixed music mode crashes - Resolved UnboundLocalError when enabling sound reactive modes
  • Improved callback system - Centralized callback registration prevents initialization race conditions

Enhanced Device Support

  • Added support for devices advertising as "iotb" prefix
  • Improved device detection and initialization
  • Better handling of unknown device modes and effects

⚠️ Important Upgrade Notice

Due to significant changes in the underlying schema and control mechanisms, some devices may need to be deleted and re-added after upgrading to version 1.0:

  1. Navigate to Settings → Devices & Services → LEDnetWF BLE
  2. Click on your device
  3. Click the three-dot menu and select "Delete"
  4. The device should be automatically rediscovered
  5. Add it again through the integration

This one-time step ensures your device benefits from all the new features and improvements. Your device settings (LED count, chip type, color order) will be auto-detected during setup.

🙏 Getting to 1.0

Reaching version 1.0 is a huge milestone! This integration has evolved from a basic device controller to a robust, reliable system that truly integrates LEDnetWF devices into your smart home.

A massive thank you to everyone who has:

  • Reported issues and provided feedback
  • Tested beta versions
  • Contributed code and documentation

📋 Full Changelog

Added

  • Passive Bluetooth advertisement monitoring for real-time state updates
  • Centralized callback registration system
  • "Solid Color" effect mode (replacing confusing "Static Effect 1")
  • Conditional background light availability based on effect type
  • Support for "iotb" device name prefix
  • Comprehensive debug logging for troubleshooting
  • Smart background color initialization

Changed

  • Effect lists now display in logical order instead of alphabetical
  • Background brightness initializes to match foreground instead of maximum
  • Improved manufacturer data parsing across all device models
  • Better separation of concerns in model architecture

Fixed

  • Effect state synchronization in speed slider
  • Device state persistence across Home Assistant restarts
  • UnboundLocalError when enabling music/sound reactive modes
  • Callback initialization race conditions
  • PEP 8 compliance issues
  • Various edge cases in effect and color handling

🚀 What's Next?

With the solid foundation of version 1.0 in place, future updates will focus on:

  • Supporting additional device models
  • Adding advanced features for supported devices
  • Further performance optimizations
  • Community-requested enhancements

Thank you for being part of the LEDnetWF BLE community. Here's to version 1.0 and beyond! 🎊


Need Help? Check out our documentation or open an issue if you encounter any problems.

Want to Support Development? Consider buying me a coffee to help with purchasing new devices for testing and expanding support!

Release 0.0.16-beta.3

22 Nov 20:31

Choose a tag to compare

Release 0.0.16-beta.3 Pre-release
Pre-release

Release Notes

New Features

Background Color Support (0x56, 0x80 Models)

  • Added support for background color control on devices that support it (models 0x56 and 0x80)
  • Background colour is now exposed as a separate light entity under the same device
  • The background light entity appears as "Background" under the device name
  • Full RGB/HS color control for background layer
  • Independent on/off control for background color
  • Background brightness is preserved when turning off and on again
  • Background color is included in all foreground color commands to maintain state

Note: I am seeing transient issues where the notifications from the device do not reflect the current background colour, but rather the previous colour. If you also see this problem disable live notifications updates from the device. See: https://github.com/8none1/lednetwf_ble?tab=readme-ov-file#advanced-settings

Improved 0x62 Device Support

  • Complete JSON notification protocol implementation for 0x62 devices
  • Fixed brightness drift issues during color changes
  • Proper effect mode detection using mode byte as effect ID
  • Correct speed conversion (inverted scale: device 0x1F=1%, 0x01=100%)
  • Effect mode brightness now properly preserved (not read from notifications)
  • "Effect Off" now correctly returns to RGB mode instead of null state

Better Error Handling

  • Added proper error handling for devices that aren't ready during setup
  • Improved connection error messages with user-friendly translations
  • Better handling of out-of-connection-slots errors
  • ConfigEntryNotReady exceptions for missing manufacturer data with helpful error messages

Code Quality Improvements

  • Fixed type annotations (supported_color_modes returns set[ColorMode] not int)
  • Removed unused imports and variables
  • Fixed f-strings without placeholders
  • Callback architecture for multiple entity state updates
  • Better separation of concerns between foreground and background colors

Bug Fixes

0x62 Devices

  • Fixed brightness clamping (was allowing values >255)
  • Fixed initial brightness defaulting to 0
  • Fixed effect speed not being properly converted from device format
  • Fixed "Effect Off" returning None instead of proper RGB packet
  • Fixed brightness being recalculated from RGB causing drift
  • Fixed JSON parsing to distinguish device info vs state notifications

0x56/0x80 Devices

  • Fixed notification parsing for GET_STATUS_PACKET responses
  • Foreground color now at bytes 11-13, background at bytes 14-16
  • Removed unreliable power state parsing from status notifications
  • Background color no longer overwritten by notifications

General

  • Fixed brightness preservation when turning on (no longer defaults to 0)
  • Added small delay after registering notification handlers for BLE stack
  • Improved initial state query timing on Home Assistant startup

Breaking Changes

None. This release is fully backward compatible with existing installations.

Known Issues

  • After Home Assistant restart, devices may briefly show incorrect power state until first status query completes
  • This will be addressed in a future release with better manufacturer data refresh handling

Translations

All new error messages have been translated to:

  • English
  • German (Deutsch)
  • Spanish (Español)
  • French (Français)
  • Portuguese (Português)

Technical Details

Protocol Improvements

  • JSON notification format: {"code":0,"payload":"hex_string"} for state vs {"code":0,"payload":{...}} for device info
  • Effect IDs: mode byte doubles as effect ID (0x24-0x64 range)
  • Speed encoding: inverted from intuitive (higher byte value = slower)
  • Background color: bytes 13-16 in color command packets
  • Status query: GET_STATUS_PACKET command 0x0a with payload 44 4a 4b 0f

Architecture Changes

  • Instance-level callback list for multi-entity notifications
  • Background light entity properly linked to parent device
  • Enum objects stored (not values) for chip type and color order
  • Safe defaults for unknown device modes

Testing

This release has been tested with:

  • 0x56 devices with background color support ✅
  • 0x62 devices with JSON protocol ✅
  • 0x54, 0x55 devices (shared codebase with 0x62) ✅
  • Various effect modes and speeds ✅
  • Brightness preservation across power cycles ✅
  • Background color persistence ✅

Installation

Via HACS (Recommended)

  1. Search for "LEDnetWF BLE" in HACS
  2. Click update to get this release

Manual Installation

  1. Download the latest release
  2. Copy the custom_components/lednetwf_ble folder to your Home Assistant custom_components directory
  3. Restart Home Assistant

Upgrade Notes

If you have 0x56 or 0x80 devices, you will see a new "Background" light entity appear after upgrading. This is normal and expected. The entity provides independent control of the background LED color.

For best results after upgrading, especially if you encounter issues:

  1. Remove the device from Home Assistant
  2. Re-add it through the integration setup
  3. This ensures all new metadata is properly discovered

Credits

Special thanks to the community members who provided device logs, packet captures, and testing feedback that made these improvements possible.

What's Changed

New Contributors

Full Changelog: v0.0.16-beta.2...v0.0.16-beta.3

Release 0.0.16-beta.2

13 Nov 09:04

Choose a tag to compare

Release 0.0.16-beta.2 Pre-release
Pre-release
Improve effect handling in LEDNETWFLight and Model0x56

- Update available property to use 'is not None' for clarity.
- Add logging for unknown effects in LEDNETWFLight.
- Handle unknown effects gracefully in Model0x56's set_effect method.