Advice on a portable outdoor LED strip controller - Page 1
Forum section: electronics / general

author: NolanHergert
author_rank: Newbie
timestamp: June 03, 2021, 06:47:04 am
content: Howdy!I've been working over the past year on making a device that everyday folks can mount on their bicycle/motorcycle helmets to be more visible at night and make commuting a little more fun. Existing "bicycle" products don't work well at off angles, which is where I've personally observed most of my own close calls. With all that said, this is a fun project for me to familiarize myself with product design and manufacturing without jeopardizing my fun day job, at least for the moment.I'd like the product to be as reasonably cheap as possible, rain and shock resistant, ready for mass manufacturing, and easy to repair if someone is into that. Some example design decisions I've made:* After testing with submerged electronics in tap water, I've noticed it takes several days for things to start to break. Probably don't need to go overboard with measures like potting, but I'm hoping a coat of conformal coating and a reasonably tight fit on the connectors with a snap fit case should be fine long term. We'll see!* Few of my end users want to solder or even hot glue, so I'm planning on making a connector+cable for each LED strip. The end user decides their lengths of cable and LED strips and plugs it in themselves. Should save a lot of manufacturing complication, I hope anyway!* Connectors: It's *hard* to find wiring/connectors that look good, are pretty small, are resistant to rain and dropping, and are cheap. I've settled on micro USB after evaluating audio jacks and dupont connectors too, and am hoping to change to USB C in the future when the cable prices come down or I take a trip to China. There's people that hate Micro USB, but after reinforcing the connector side through-hole pins with some more solder, I found it quite resilient! Also there will only be a few insertion cycles max in this application.* 4 LED strip connections + Battery = 6 connectors for symmetry.* Want the unit to be a minimal size, so I'm making USB cables all coming out the same way (i.e. not star shaped, more like a horse tail) so it's easier to mount and deal with.* 3X Micro USB on the main board and 3X Micro USB on a top "expander" board mounted with through hole .1" headers on the underside. Should fit six Micro USB connectors on top of each other in close quarters using a 1.6mm thickness PCB for both main and expander boards. Open to ideas here.* Microcontroller. ESP32 is awesome here at $2.50 a module. Using the WLED controller firmware, which has OTA firmware update too.* Programming and testing using an external USB to serial converter. I've tested that RX/TX can be used for LED strips too, so one of the USB connectors breaks those out so someone else can program/debug it too if they want. Win!* Battery. Using a generic 18650 USB phone power bank, either 1X or 2X cells. Need some decent lifetime for driving the LED strips and 18650s are cheap and easy to come by for the near future. I think the cheap designs will be fine. Their resettable fuses work, but will test thermal runaway too. They significantly drop in voltage (<4.5V) when you pull a decent amount of current, but in this case it is hardly visible on the LEDs, and the voltage regulator on the board handles it fine.* Level Shifting: TLDR: not doing it. Technically I need conversion from 3.3V to the 5V for signaling the LEDs. However, in testing by adding noise from a phone audio jack (1V peak to peak), I saw no difference in behavior when using the 3.3V from the micro or 5V from the generic 4X nfet level shifters on Amazon. I made sure to test with 1K pull up resistors (instead of the 10K on the boards), but I still didn't see any difference. LED signal frequency is 900Khz, fairly high. Additionally the lower battery pack voltage helps here, however I haven't had any issues at raw 5V either.* USB: Hoping to get away with not abiding by it at all. Just pulling 5V power. I've gotten up to 1.6A out of USB power supplies without any negotiation. Good enough for me. The user can plug the battery into any of the micro USB ports and it will provide power for the rest of the connectors. I am just hoping that I won't get too much activity on the <5V> RX/TX lines since they are connected directly to the 3.3V microcontroller.* ESD: Supposedly the ESP32 modules have a TVS on the 3.3V pin already (https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf). Not sure what that means for the IO pins, planning on testing this.* Current: Tried to make appropriate trace and via sizes for 2A on 5V and GND. Will fill in the ground plane on the top and bottom on the final version.* Size: Care more about height than I do the width, as I want it to not be much wider than a 1X18650 battery. The board is maybe too compact, but I want to see if I get any complaints from JLCPCB.* Case: Snap-fit ideally, working on design now.Here's the base board:https://oshwlab.com/nhergert/easyledand the expander:https://oshwlab.com/nhergert/easyledv2_usbexpanderI'm of course open to suggestions on any of the above, it is not set in stone. Thanks a lot!