Releases: wile1411/BLLEDController
Rescan for wifi on multiple disconnects
27.3.24 Lower Brightness on start and no MQTT drop out
With people reporting flickering lights on start, I suspect 1 or two likely causes:
-
underpowered PS or large draws from whatever LED strip is being used.
In order to reduce occurrences, I reduces the default brightness to 20%. <- you may want to test they yourself to see if you want to change before commiting a new release. 20% is still plenty bright for me.
I also change the start up sequence LED to be 100,100,100,100,100 (instead of all 255) in case of the same problem -
Errors casued due to MQTT timeout.
Changed the maintenance mode / test color / RGB cycle logic so it doesn't skip the MQTT loop. Errors appear if the BLLED client doesn't keep up with the MQTT subscription by mqttClient.loop();
The printer eventually drops the MQTT connection after ~20 seconds on no acknowledgement from the BLLED.
Reworked logic now still accepts any new MQTT messages, but doesn't process the content for state changes, unless in replicate state mode.
26.3.24a small changes
Full Changelog: 25.3.24...26.3.24a
23.3.24 User testing
This is a pre-release version to work out some bugs.
Look for:
Idle state not returning to lights on
printer light toggle, not updating the LED lights.
25.3.24 finishing with finished
Minor bug fixing and believe I've found the issue to get the finish state to work correctly.
24.3.24 User Testing2
found / fixed following issues:
- no response pause issue (a routine return when there shouldn't be)
- after finish not staying green (idle timer pulling out of finish mode (coded to ignore)).
- while in finish and chamber LED turned off - wasn't returning to 'Green'
Also reordered the condition handling
- Show error before anything
- Show pause if not error (it's turn lights on even if during lidar period)
- Turn off if requested / color set to black / idle
- turn on if set or out of idle
16.3.24 For Maintenance
This should be the final release of this customise firmware for BLLED
I've added all the functionality I wanted into this device.
- Finished print stays green until door opened/closed (when Finish Detection is enabled)
- Inactivity timer - turns lights off after 30mins (Customisable)
- Customisable Error / Finish / Pause colors (under the advance section)
- Add option to turn off having lights off during stages that would use lidar (eg for P1P owners)
- Added first layer inspection stage so lights are out during lidar when that occur (for those using X1C)
- Maintenance Mode just turns on the LED and ignores the printer (nice if you are working in the printer and it's powered off)
- Set Test Colors to verify the LED wiring
- Heavily filtered the MQTT to just the part important to BLLED.
14.3.24 Better Wifi handling
I'm in AU and it's only 9pm here, but I'm sure I'll keep tinkering until past midnight - so I'm using tomorrow date for the release number.
A few things in this release:
Changed the Wifi connect method to for scan networks first
Once it finds any/all Access Point (AP) with the nominated SSID, it'll attempt to connect to the AP with the strongest signal
(I have no idea why the Wifi library doesn't do that by default)
Debugging greatly improved so you should know why you are not connecting now
(You need to be looking at the logs via a serial connection)
It's a known thing that a low Wifi signal strength with cause the MQTT connection to drop to the Bambu lab printer.
I've not dived into the MQTT connection logic as yet (let me stuff up, then fix things, one issue at a time)
Thank you to anyone that tests this and reports back on the Discord server.
13.3.24 tweaked onChange logging for state and gcode
A quick turn around release to slightly change the logging to OnChange when MQTT updates happen.
Below is an example of what a print log looks like from the serial terminal.
Steps I physically performed:
- I opened the door
- Click Desktop app to send print to printer
- Closed the door while calibrating extrusion
- Waited for Green light after the bed was lowered
- Opened door (light went WHITE)
- Cleaned build place
- Closed door twice within 6 seconds to jump to idle state and lights are turned off
(I'm off to bed 2am here)
PRINT LOG
Initial BLLED bootup - Turning Leds WHITE, Start IDLE timer
Wifi Strength now -69
MQTT stg_cur now: -1
Stage -1, IDLE Turning Leds WHITE. Brightness: 100
MQTT Door Opened
Stage -1, IDLE Turning Leds WHITE. Brightness: 100
MQTT gcode_state now: RUNNING
Stage -1, IDLE Turning Leds WHITE. Brightness: 100
MQTT stg_cur now: 2
Stage 2, PREHEATING BED, Turning Leds WHITE
MQTT stg_cur now: 14
Stage 14, CLEANING NOZZLE, Turning Leds OFF
MQTT stg_cur now: 1
Stage 1, BED LEVELING, Turning Leds OFF
MQTT stg_cur now: 8
Stage 8, CALIBRATING EXTRUSION, Turning Leds OFF
MQTT Door Closed
Stage 8, CALIBRATING EXTRUSION, Turning Leds OFF
MQTT stg_cur now: 0
Stage 0, PRINTING - gcodeState RUNNING, Turning Leds WHITE
MQTT parsedHMS now: Common
Stage 0, PRINTING - gcodeState RUNNING, Turning Leds WHITE
MQTT parsedHMS now:
Stage 0, PRINTING - gcodeState RUNNING, Turning Leds WHITE
MQTT stg_cur now: -1
Stage -1, IDLE Turning Leds WHITE. Brightness: 100
MQTT gcode_state now: FINISH
Finished print, Turning Leds GREEN
Updating from finishloop after Door interaction - Starting IDLE timer
Stage -1, IDLE Turning Leds WHITE. Brightness: 100
MQTT Door Closed
Stage -1, IDLE Turning Leds WHITE. Brightness: 100
MQTT Door Opened
Stage -1, IDLE Turning Leds WHITE. Brightness: 100
MQTT Door Closed
Door closed twice within 6 seconds - Toggling lights to OFF
12.3.24 Fixing bugs for those who test
✅ Door logic switch fixed - It's just a short cut to get to idle state with lights off
✅ Brightness works again
✅ Color override works and hidden behind some javascript. you have to disable "replicate state" to use test colors or Wifi Debug
✅ Error Detection fixed - will not stay red now
❤️ terminator for testing