Go to file
Kai Lauterbach 75a42f77b0 Text fixes in readme file 2023-10-09 13:56:10 +02:00
.vscode Added vscode arduino config file 2023-05-17 17:13:12 +02:00
3d Updated case 3D stl file 2023-05-11 14:18:59 +02:00
firmware Added some more details about the connections. 2023-06-29 13:33:17 +02:00
pic Added new pic 2023-05-11 07:45:41 +02:00
tools Added a comment with code which could run html-minifier 2023-05-22 16:20:38 +02:00
.gitattributes Added third tab which should represend the timing control data blocks editor. 2023-05-04 18:24:41 +02:00
.gitignore Added git ignore file 2023-05-05 10:16:52 +02:00
README.md Text fixes in readme file 2023-10-09 13:56:10 +02:00
lp3ctrl.sh Initial commit 2023-04-24 20:26:49 +02:00


This project is based on: https://github.com/mariusmotea/diyHue/tree/master/Lights/Arduino/Generic_Dimmable_Light

So this firmware is also able to be used the same way like a diyHue.com device.

Reef2Reef forum thread: https://www.reef2reef.com/threads/for-lumini-lominie-pixie-30-p30-hers-how-to-add-ramp-up-down-and-timer-with-memory-quite-cheaply.935409/

Most of the code was generated by ChatGPT and adapted by myself.

The controller I use is a old NodeMCU v1.0, which is connected to 4x D4184 MOS breakout boards. See NodeMCU pins table beyond. The cable I use is a https://amzn.eu/d/0jigRCh. I cut it in half and attached it to the MOS boards.

The NodeMCUs power supply is a 7805, its output is connected to the Vin pin of the NodeMCU. The input of the 7805 is connected to the 24V of the DC power plug.

NodeMCU pin connections to the cable wires:

ch1 ch2 ch3 ch4
LED color blue warm white purple white & red & green /
Wire colors blue (B) black (S) red (R) white (W) green (G)
Color wire connection to Load PWM boards 1 2 3 4 +24V
Arduino pin to PWM boards D1 D2 D7 D5 /
Arduino GPIO pin numbers 5 4 13 14 /

The HTML content is pushed to the NodeMCU separetely by using the ESP8266 Sketch Data Upload plugin of the old Arduino IDE (not "Arduino IDE"), after the firmware is written the first time to the NodeMCU.

In case there is no data folder available in the firmware folder create it. Open a unix style commandline with a bash and step unto the data folder. Run the script

$ bash ../../tools/html_gen_files.sh

This generates all of the required files and places them into the data folder.

The EEPROM's content will be set to default values after the first start default (except of the timing data block). Make sure that the EEPROM was erased during the firmware flashing.

You have to click at the link "reset timing control data" in the webinterface. This will set the timing control block the a initial default setting.

The IP address is set to dynamic (DHCP) after initial flash of the NodeMCU.

Sample schematics (no NodeMCU pins are shown in there)

Sample schematics Please note the letters "R" "G" "B" "W" "S" are also documented in the table above. These are the german shorts of the colors red green blue white black (schwarz).


3D printed case 3D printed case