Close
0%
0%

ESP32-MeshKit unexpensive RGB LED Lamps

Use this RGB Leds that are in your garage to build your own Lights. As simple as Leds, Ω and soldiering (To be safe max. 30 mA per GPIO)

Similar projects worth following
The Espressif ESP-Mesh took a different approach than Osram or Phillips: Every device is a network member making a Mesh of interconnected devices. There is no gateway because there is no need for one.
There is also a very important point that is very interesting if you are a maker like me. It’s open source. That means you don’t need to buy a 60€ light to test it, you can just go to the ESP-Mesh github repository and download ESP-Mesh-Light example to compile it in one of your existing ESP32 Boards.
Provided that every GPIO supports max. 40 mA in the ESP-32 we will use 30 max to stay in the safe zone and not make our little chip warm.
In my first approach I just built a 6*3 matrix of RGB Leds and documented the aprox. consumption of every line of 6 LEDs (calculated using a 1K Resistance for each 6 Leds)
Red: 2.4 mA *3 -- 7.2 mA
Blue: 1.8 mA *3 -- 5.4 mA
Green: 2.1 mA *3 6.3 mA
--------------- Total 18.9 mA
Work in progress!

This all started when Espressif sent me a white Button that is part of their ESP-MDF examples. The funny part of the history is that I could never register the button in the App. But exploring the Mesh Development Framework I found a light example and my internal "light" flashed. Heck! There is a light ready to compile. And has PWM outputs, and there is an App ready to control it, what can be better than this ?
So actually you have to make the "hardware" part. The software is already done, with the benefit that is open-source, and in the road of creation you can learn a bit more of MQTT*, ESP-NOW and even monitor to see how the light receives this short messages and interacts with them in real time. MQTT messages are lighting fast since they use UDP instead of HTTP that has a lot of headers and would be actually totally over-engineered to use in this scenario.

So actually you need some Leds, any ESP32 board, and the appropiate resistances for each line of Led. I'm not an expert calculating those so this part I leave to the electronic masters here. This way you can build a light for approx. 10 dollars while learning quite a lot in the process and even maybe getting some other cool ideas to do with the ESP-MESH App. 

App for Android: https://www.espressif.com/en/products/software/esp-mesh/resources

App for Apple, search in the Ipad or Iphone "ESP-MESH" NOTE: Deactivate the filter only for iPad since the app is released only for iPhones.


LIGHT Source code to be compiled:

https://github.com/espressif/esp-mdf/tree/master/examples/development_kit/light


PWM Outputs

GPIO4 PWM Red

GPIO16 PWM Green

GPIO5  PWM Blue

GPIO23 PWM_BR output ( I used this for White, not sure if is the right one )

GPIO19 PWM_CT output control ( Color Temperature )









Be cautious to respect the max. 30/ top max 40 mA per PWM output. If you need to add more than that then you need to separate the logical outputs from the power outputs.

MQTT a lightweight messaging protocol for small sensors and mobile devices, optimized for high-latency or unreliable networks

10cm-round-lamp.blend

Round Lamp Blender file

x-blender - 811.92 kB - 03/04/2019 at 23:19

Download

rgb-lamp-10cm.stl

10x4 cm rectangular Led Light

sla - 280.36 kB - 03/04/2019 at 23:18

Download

rgb-lamp-10cm-top-Leds.stl

10x4 cm rectangular support top (PCB)

sla - 1.64 kB - 03/04/2019 at 23:18

Download

62783.PDF

This is a 8 Channel HIGH−VOLTAGE SOURCE DRIVER that I recommend not only for the light but also to any project that needs to power more than 30mA with the ESP32 GPIOs

Adobe Portable Document Format - 265.72 kB - 03/04/2019 at 16:47

Preview
Download

10cm-round-lamp-v1.stl

Ready for the Slicer. Print without any supports

sla - 494.52 kB - 02/18/2019 at 22:14

Download

View all 11 files

  • 1 × ESP32 Board Any you have, it does not matter what model, the cheapest you find will work
  • 30 × RGB Leds with GND as common for all (Also one Anode for each color) Any amount will be fine take in account that more than 30mA and you need to separate Logic using a Bus chip or transistor
  • 1 × Only IF > 30 mA per color: 74HC125 or similar https://cdn-reichelt.de/documents/datenblatt/A240/74HC125_74HC126%23STM.pdf
  • 1 × Cables if possible Red, Green and Blue To wire all this together
  • 1 × Spare PCB, size does not matter as long as you can modify the case There is a case example in the Files

View all 6 components

  • Designing some new Lamps

    Martin Fasani7 days ago 0 comments

    Mini-projector Lamp
    8 watts RGB Led only + lens from led-tech.de
    Please comment if you are interested in the design and follow this project.

    Concrete Lamp refactoring into an ESP-Mesh RGB Lamp with White channel
    3 eigth watts RGB + some warm White 5mm leds

  • Techie Oled display Light with the Heltec WiFi 32

    Martin Fasani02/28/2019 at 07:00 0 comments

    Repository:  https://github.com/martinberlin/esp-mdf-light-oled

    Requirements:

    • ESP-IDF Toolchain installed + ESP-MDF and IDF referenced in your environment variables
      export MDF_PATH=~/esp/esp-mdf
    • A Heltec ESP32 board http://www.heltec.cn/project/wifi_kit_32/ (ebay / alixpress)
      or any ESP32 with Oled, just configure the display SDA and SDL pins.
    • A small breadboard, a RGB Led with one resistance per Anode, and that's it!


    • OUTPUT GPIOs:
      (2) Light red pin GPIO number    (17) Light green pin GPIO number     (18) Light blue pin GPIO number

    To flash it:
    $ make flash ESPPORT=/dev/ttyUSB0

  • Round RGB progress

    Martin Fasani02/22/2019 at 14:50 0 comments


  • Idea for a round 10cm diameter RGB Light

    Martin Fasani02/18/2019 at 09:48 0 comments

    Explanation about how to cut the PCB

    https://twitter.com/martinfasani/status/1097197327251587072

    Result :

  • Making some new STL 3D models as a base design

    Martin Fasani02/13/2019 at 15:18 0 comments

    I got some nice messages about the Lamp idea and some requests to make some standard designs. I must say I'm not a great designer in 3D-Modelling and just started doing small things mainly for my own stuff about a year ago.

    But anyways since there is some interest I will extend my initial design and make 3 different lines. All based on the fact that most PCB comes with a width of 10 cm:

    •  5*5cm Tiny lamp  |_|
    • 10*5cm Rectangular |__|
    • 10*10cm Circular tube (No idea how to cut the PCB but it should be a way)
    • 10*10cm Square-pusher this will hold at least 70 RGBs of 5mm or about 20 of 10mm (From the top of my head)

    All ready to be sliced and 3D-printed by you or just to order it so someone else prints it in one of this nice 3D platforms like thingiverse
    About  the LEDs I use standard transparent 5 / 10 mm RGB and some warm white and cold white for some lamps. The cool thing is that is your lamp so you can put inside whenever you like, there are no limitations here ;)

    Just keep in mind to separate power from logik with more than 30mA or your ESP32 will warm and possible some GPIOs will need to be buried. Options vary. Will make a dedicated log about this on the next weekends.

  • 40 seg. video demo from 2 Esp-Mesh lights

    Martin Fasani02/11/2019 at 21:25 0 comments

View all 6 project logs

  • 1
    Search components

    Get any spare Esp32 board and prepare to compile. Get some RGB Leds and a spare PCB

  • 2
    Compile the light example
  • 3
    Soldiering

    Build an RGB Led lamp taking in account to add a proper resistance and not passing the 30mA per gpio 

View all 7 instructions

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates