I'm excited to share with you my OpenHoop project and ask for your help to overcome a small obstacle.
My goal with OpenHoop is to create a smart BLE hula hoop with pixel art effects that light up as you move it. Sounds cool, right? But here's the truth: I'm a bit stuck with the electronics part. I'm a programming enthusiast and love open-source stuff, but when it comes to hardware and electronics, I'm a bit lost.
So here's the problem: I'm using 288 Adafruit LEDs (two strips of 144 LEDs per meter) to achieve the pixel art effect. To power them, I'm using two 5V 5A Mini560 DC-DC converters in parallel, along with a 7.4V 8.4V 2S BMS PCM charge/discharge protection board. Everything should work fine, but... the system shuts down quickly, and the battery doesn't last as long as I expected, even with a lower power setup.
Oh, and here's the catch: the diameter of the hula hoop tube is only 7/8 of an inch, so I can't use larger batteries.
The reason I embarked on this project is quite simple: I wanted to make a special gift for my girlfriend. She was interested in a pixel art LED hoop, but the prices were astronomical. I thought it would be more fun (and cheaper) to make it myself. So here we are, trying to solve some technical problems and hopefully creating something awesome in the process.
Do you have any ideas to help me solve these problems? Or maybe you want to try some pixel art effects and share your results? Any help will be more than welcome!
Thank you for taking the time to read this, and I look forward to hearing your ideas!
If you want to see more details about the project, visit the GitHub repository here!
(Similar background here, but I've been fiddling with WS2812B for about a year)
Have you tried building up from something simpler? E g. How much power do you actually need? I've run several hundred pixels (at 50% mind you) on a 2A USB charger.
I'm considering simplifying the design and starting from the basics. I'm still determining how much power I actually need. Your experience with several hundred pixels running on a 2A USB charger has me thinking about how I can optimize power management in my design. I've implemented an energy-saving mode with different levels, but I'm still facing shutdowns during peak consumption, especially with the batteries.
I'll conduct more tests with smaller loads and explore ways to reduce power consumption without compromising the quality of the visual effects. Your advice has given me a new perspective, and I'm excited to continue experimenting.
Thanks again for your help. I'll keep you updated on my progress.
Each WS2812B pixel needs a 60 mA on full bright white mode. So for your 288 pixels hula hoop you needs about 17A at full maximum. The power requirements can be reduced if you not used all leds at time and choose a decreased brightness.
The same 2A is running the MCU (an ATTiny824 or 1624 with my DIY effects, or ESP-M2 running WLED) as well as the pixels. For some setups, I inject power at the other end of the LED strip from the same charger. [For other setups with Y-branching, AliExpress has cool little inline signal boosters (1-to-4 or 1-8 branching).]
Those set of projects all fit on custom PCBs (EasyEDA designer, JLCPCB fab) in a relatively large USB stick shell (except for the pixels, obviously) (AliExpress). You can get VoltAmp meters with USB TypeA on both input (M) and output (F) so that you can see the power consumption.
Good luck and have fun with the learning curve. Try, Measure, and Iterate is your friend.
MCUs can shutdown if they don't get enough instantaneous power for some reason. You may want to put a capacitor (see 'decoupling capacitor') across AND CLOSE TO the power and ground of your BLE and see if it helps. I've not used the 560, but those little buck converters can be a little dodgy.
One tool you may not have is a synthetic load tester, often used to test battery capacity, and they really help with testing power output (but not how noisy it is). Cheap ones exist, e.g. https://www.aliexpress.com/item/1005004420340409.html.
Each WS2812B pixel needs a 60 mA on full bright white mode. So for your 288 pixels hula hoop you needs about 17A at full maximum.
Hi b707 !
I greatly appreciate the detailed information about the power requirements.
I understand that each WS2812B pixel consumes around 60 mA in its full bright white mode. With 288 pixels in my hula hoop, that's approximately 17A at maximum. I agree that power requirements can be reduced by not using all the LEDs simultaneously and choosing a lower brightness level. I've already implemented energy-saving modes that adjust brightness to 25%, 50%, or 75%. However, I still encounter issues with power consumption spikes causing shutdowns and requiring battery reconnection.
I'm reviewing my design to better manage power consumption. As a beginner in electronics, this process is challenging, but your insights are incredibly helpful in understanding how to optimize my project's performance. Any further suggestions to improve the circuit are welcome.
Thank you once again for your assistance and for sharing your knowledge.
Cool to hear you're using a 2A power source for both the controller and pixels. I'll try injecting power at the other end of the LED strip, and maybe check out those inline boosters.
Thinking about trying out custom PCBs with EasyEDA and JLCPCB. Also, gonna grab those USB meters to watch power usage.
Appreciate the heads-up about using a decoupling capacitor and the caution about small buck converters like the 560.
Will definitely look into that synthetic load tester for battery capacity.
Thanks again for your help and sharing your experiences!
I'm thrilled to announce that OpenHoop is now up and running flawlessly! After numerous tests and adjustments, I've successfully got the circuit with the 288 LEDs working smoothly using the 4 14500 3000mAh batteries. Additionally, I've added a 6.3V 4000μF capacitor to ensure everything operates stably.
I want to extend my heartfelt thanks to all who provided their assistance and advice throughout this journey. Your insights were incredibly valuable and helped me overcome the hurdles I encountered along the way.
Thank you once again for being part of this exciting adventure! I hope my experience inspires others to pursue their projects and never stop learning.
Don't forget to check out the code on GitHub and give it a star if you like it! Your support will help us reach more people and make a bigger impact.