Marc's Public Blog - Electronics Hacking


All | Aquariums | Arduino | Btrfs | Cars | Cats | Clubbing | Computers | Diving | Dreamstate | Edc | Electronics | Exercising | Festivals | Flying | Halloween | Hbot | Hiking | Linux | Linuxha | Monuments | Museums | Oshkosh | Outings | Public | Rc | Sciencemuseums | Solar | Tfsf | Trips



Table of Content for electronics:

More pages: November 2024 September 2023 August 2023 June 2023 May 2023 April 2023 January 2023 November 2022 January 2022 May 2020 January 2020 December 2019 April 2019 January 2019 June 2018 May 2018 June 2017 April 2017 May 2016 February 2016 November 2015 October 2015 August 2011 July 2011 May 2011 June 2010



2024/11/20 Festival Dreamstate Hat Built with RGBPanel, Neopixels, and Lipos
π 2024-11-20 01:01 in Clubbing, Electronics, Festivals
Tech specs:
  • 32x16 flexible LED rgbpanel (displaying scrolling Dreamstate Logo)
  • 2 strings of Ray Wu P15 WS2812 both for layout reasons and for backup if one string breaks, the other one will keep working.
  • Lipo battery checker (but the lipos are protected, so they will self shut down)
  • flexible 16x32 RGBpanel
    flexible 16x32 RGBpanel

    found a hat big enough that it mostly fits on it
    found a hat big enough that it mostly fits on it

    of course, it needed a few LEDs :)
    of course, it needed a few LEDs :)

    what it looked inside and it worked with a small 1S 700mAh lipo (although not long enough)
    what it looked inside and it worked with a small 1S 700mAh lipo (although not long enough)

    bigger battery upgrade, and BTW those batteries lie, they are only 1600mAh
    bigger battery upgrade, and BTW those batteries lie, they are only 1600mAh

    testing battery draw, a bit over 0.5A which is a bit too much
    testing battery draw, a bit over 0.5A which is a bit too much

    So, why 3-4V lipos instead of USB battery packs with 5V that is expected by both the panels and neopixels/WS2812? Well, space is limited, USB battery packs are kind of big, and carry extra hardware to recharge that isn't needed inside the hat. There is also a side byproduct that powering both the panels and the LEDs with a lower voltage, limits their brightness and the amount of power (watts) they need, which means that a 16Wh lipo inside a USB battery pack stepped up to 5V, makes everyting brighter, but only lasts about half as long as powering directly from the lipo at lower voltage.

    bigger 4Ah 1S lipo worked for 8H at full power and LEDs worked all the way down to 2.8V!
    bigger 4Ah 1S lipo worked for 8H at full power and LEDs worked all the way down to 2.8V!

    panel worked all the way down to 3.4A before colors went wrong, 16H on a 1.6Ah battery
    panel worked all the way down to 3.4A before colors went wrong, 16H on a 1.6Ah battery

    of course now I had to find a buy a faster 1S lipo charger with the right connectors (had to get JST adapters)
    of course now I had to find a buy a faster 1S lipo charger with the right connectors (had to get JST adapters)

    quick test that a smaller 700mAh battery would last around 5H before things got dim
    quick test that a smaller 700mAh battery would last around 5H before things got dim

    After testing, I was able to confirm that both the $7 amazon controller (SP002E from https://www.amazon.com/gp/product/B09Y8SWJ77 ) and the RGBpanels, work fine with lower voltages (which is not a given since both run a microcontroller that was originally meant to be powered from 5V).
    The RGBPanel controller is a bit more picky about voltage and reboots around 3.5V, while the neopixels tend to drag the battery voltage down, causing the RGBPanel to crash and reboot when a single battery runs both, so I gave it its own lipo.

    Pixels still take 0.3 to 0.5A (I use a potentiometer to dial them down as the cheap controller I put has no dimming control) and the RGBPanel takes less than 0.1A, so that's nice (it actually goes all the way down to 0.05A or just 50mA) when the voltage drops.
    The combined tricks should give around 18H of runtime with the 2 batteries (4Ah and 1.5Ah 1S lipos), which is enough for 17 hours of dreamstate (they are not screwing around this time, 17H !!!)

    About the neopixel controller, I used a cheap $7 amazon controller that only had 3 physical buttons but sadly no dimming control, mostly because I wanted something very small, and while pixelblaze micro is also small, it doesn't have the pattern I want, and I didn't see the point of programming a pattern I already had on the other controller, so I just put a potentiometer to lower the voltage. It's obviously the wrong way to do it, but it works :)

    Here is the end result:



    2024/11/10 Getting Things Done in an ADHD World
    π 2024-11-10 01:01 in Arduino, Computers, Electronics
    I attended Pasadena Hackaday Supercon, so I figured I'd put my pictures into a quick blog entry, shouldn't take long...


    1) Oh, I need to finish writing code to get the SAO badge holder to do something fun

    2) Mmmh, why does this python global variable thing doessn't work in the function

    3) Goes to re-learn python, with help from gemini and how python forks global variables by default in functions so what you write to them isn't saved at local scope (oh my, why did they do that?)

    4) after more hacking, get a proper demo working:

    5) publish code https://github.com/marcmerlin/2024-Supercon-8-Add-On-Badge/blob/main/README.md (actual code is here: https://github.com/marcmerlin/2024-Supercon-8-Add-On-Badge/blob/main/software/software/main.py )

    6) Oh, I need to make a video demo of the SAO, but...

    7) oh yeah, there was that hat on my desk I needed to add LEDs on for an upcoming party, start hacking on that

    8) mmmh, the hat won't work long enough with a USB battery, start hacking on a lipo solution

    9) ah, lipos work, but the front LED panels rated for 5V start failing around 3.5V, so I need to make a dual lipo solution, one for the neopixels and one for the RGB panels

    10) test and measure the dual lipo solution and figure out it will last close to 12H, that's good. Ok, hat works mostly, post that https://www.instagram.com/p/DCYEl1jJd_-
    11) Ah yes, the SAO video I was supposed to work on: https://www.youtube.com/watch?v=z7MSywf7js4

    12) During that time, I get interesting distracting packages on my doorstep, like lovely flexible LED panels that will hopefully power my future outfit: https://rpi-rgb-led-matrix.discourse.group/t/rpi0-2w-speed-compared-to-rpi3a/913/2

    13) While I'm testing them, also try some new rPi0 2w chips and microcontrollers to see if they can power my LED outfit with a smaller form factor (and yes they can): https://rpi-rgb-led-matrix.discourse.group/t/rpi0-2w-speed-compared-to-rpi3a/913 . In the interest of briefty, I'm going to skip the part that included migrating from raspbian to a new dietpi linux distro and port back all my custom changes on it :)

    14) That said, I had a long-ish discussion and planning with the electrodragon folks in China on how to make a new 3 channel daughter board that is much smaller and would decrease the over footprint of all new picture frames like the one I built, and of course my LED outfit.

    15) but wait, now I also find out there is a new beaglebone solution that does 6 channels output instead of 3? Ok, make a post about it: https://rpi-rgb-led-matrix.discourse.group/t/interesting-6-port-board-beaglebone-pocketcroller-v2/918/2

    16) and file a couple of RFE bugs to look into it: https://github.com/hzeller/rpi-rgb-led-matrix/issues/1733 + https://github.com/FalconChristmas/fpp/issues/2054

    17) Oh, I just found this old video on my laptop, why did I never post it? Ok, fix that: https://marc.merlins.org/perso/linux/post_2021-01-23_Linux_conf_au-2021-LED-Talk.html

    18) Mmmh, so when I quickly posted those pictures from Neil deGrasse Tyson who just gave a talk, I got a reminder it was annoying for my blog system not to be able to link to videos directly without having to upload them to youtube.

    19) Ok, learn about html5 video tag, hack my blog system to support videos, and push a new blog with my first video tag: https://marc.merlins.org/perso/outings/post_2024-11-14_Neil-deGrasse-Tyson-back-at-San-Jose-Center-for-Performing-Arts_-An-Astrophysicist-Goes-To-The-Movies_-the-Sequel.html

    20) ok, but why did I have to rescue my video from my phone because the H265 recompressed version did not work in the blog? Ah, because of royalties on H265 being too high, most browsers refuse to add support for it: http://marc.merlins.org/perso/linux/post_2024-11-17_Vidrename-Script_-Clean-up-Normalize-Video-Filenames-and-Add-Codec-And-Container-Format-With-Mplayer.html

    21) Ok, sure, but now I need to upgrade my vidcomp script to support VP9 and AV1: http://marc.merlins.org/perso/linux/post_2024-11-17_Vidcomp-Script_-recompress-videos-on-linux-with-mencoder-or-ffmpeg-to-div3_-div4_-div5_-xvid_-mpeg4_-h264_-h265_-VP9_-and-AV1.html

    22) then I find an Email from a chinese engineer who is willing to talk to me about making better LED shoes. That's exciting, let me reply to him first

    23) ok, now I can recompress my videos to VP9, which I benchmarked to somehow be faster to compress and still smaller file size than AV1 (not supposed to be the case, but that's what I'm getting). On the plus side, VP9 works with more browsers than AV1.

    24) what as I doing again? (now days have passed). Oh yes, I was supposed to write a blog on hackaday supercon: http://marc.merlins.org/perso/electronics/post_2024-11-01_Pasadena-Hackaday-Supercon-2024.html

    25) of course the ridiculous amount of time spent to allow these 2 videos in that post, is a bit hard to justify, but it's really solving a problem I've had for over 10 years, and never got to the top of the pile, because, well, you see what happens when I try to put something on top of the pile :)

    26) and I was good, I didn't even play with the micropython rpi micro I received in the mail this week, or the electromage pixelblaze and I/O board, or more LED panels that somehow showed up at my doorstep :)

    27) mmmh, and there are all those webcams I ordered and need to configure, but now it's clear I'm going to have to re-install my camera controller, shinobi, from scratch, and that's yet another rabithole...

    28) in the meantime I have to finish my LED hat, and design my new shirt and pants for Dreamstate in 4 days... Wish me luck :)

    2024/11/01 Pasadena Hackaday Supercon 2024
    π 2024-11-01 01:01 in Arduino, Electronics
    After having such a great time at the linux.conf.au Open Hardware Miniconfs over the year, and missing them after the last one where I built those badges, I somehow missed a local-enough Hackaday Supercon that had been going on for years. Oh noes!

    It was very cool that I got to wear my LCA SAO badges for the first time:


    This post, because of its 2 video inserts, a new addition to my blogging software, was also an interesting exercise in non linear time and tasks, more on this page: Getting Things Done in an ADHD World

    Day 1, Friday

    Thanks to Anthony for letting me know about it, and I was able to attend. Went there early on friday for the pre-conf to work on the badges:


    the conference badge was this 6 port micropython rPi micro with a couple of SAOs.
    the conference badge was this 6 port micropython rPi micro with a couple of SAOs.

    they nicely provided food all 3 days
    they nicely provided food all 3 days

    essential geek survival food :)
    essential geek survival food :)

    They gave us a quick primer on how the badge worked, although it would have been better on a webpage with links and info for total beginners who had never used micropython and thorny or knew what thorny was (that included me):


    I'm glad I took pictures of these slides, they only made sense many hours later. They should have been online
    I'm glad I took pictures of these slides, they only made sense many hours later. They should have been online

    finding fellow LED geeks :)
    finding fellow LED geeks :)

    learning blinkies for beginners, scan this
    learning blinkies for beginners, scan this

    While I was there, I 9ound out they had a wonderful 4 bit computer some years back. I actually really regret not having been there that year, programming that in hand crafted assembly would have been epic:


    someone hacked a basic I2C on it
    someone hacked a basic I2C on it

    people now hard at work
    people now hard at work

    I used the opportunity to bring previous LCA toys and show them off (and fix a few)
    I used the opportunity to bring previous LCA toys and show them off (and fix a few)


    People came with plenty of SAOs:



    some came more ready than me :)
    some came more ready than me :)

    SAO extenders, cool!
    SAO extenders, cool!

    SOA badge holder bag, sweet!
    SOA badge holder bag, sweet!

    I found Tom Verbeure, the person who had been hacking on RGB Panels with open source FPGAs (colorlight). Cool project for sure. See: https://github.com/q3k/chubby75?tab=readme-ov-file#colorlight-5a-75b and https://github.com/lucysrausch/colorlight-led-cube/tree/master


    Also, finally got to meet Henner Zeller, the rpi-rgb-panels author I've been working online with for years:


    epic watch!
    epic watch!

    Also got to meet Daryll Strauss from precision insight, later acquired by VA Linux some 25+ years ago:



    People still hacking at night:


    I was lit up enough not to get lost :)
    I was lit up enough not to get lost :)

    Day 2-3, Saturday & Sunday

    Saturday and Sunday were the main conference days:


    went to attend a few talks
    went to attend a few talks

    hacking radio sound and B&W video from a chip, super cool!
    hacking radio sound and B&W video from a chip, super cool!

    learned about an online microcontroller emulator, wokwi, very nice
    learned about an online microcontroller emulator, wokwi, very nice




    I got to see a pick and place machine, nice to see them work:


    this is what the machine was 'printing'
    this is what the machine was 'printing'


    I tried the SMD challenge, that was hard as hell:


    we got old and fat irons, making things harder :)
    we got old and fat irons, making things harder :)


    I couldn't get the last 2 LEDs working, they were so stupidly small
    I couldn't get the last 2 LEDs working, they were so stupidly small

    I had someone help me fix mine :)
    I had someone help me fix mine :)

    and they all worked, thank you to the master solderer!
    and they all worked, thank you to the master solderer!

    added the result on my badge :)
    added the result on my badge :)

    Random fun shots :)


    people hard at work
    people hard at work



    During the weekend, the SAO wall got populated:






    Fun to see this SAO based on this burning man sign

    Original from Burning Man
    Original from Burning Man

    more and more
    more and more

    and more :)
    and more :)

    Saturday evening party had a nice real time AI image generator:





    some were far out :)
    some were far out :)



    The conf ended with a presentation of best SAOs:



    This guy won the contest of biggest SAO, he had a printer working off USB, run by his SAO
    This guy won the contest of biggest SAO, he had a printer working off USB, run by his SAO


    Sunday ended with a party at a bar, thankfully I had my battery soldering iron :)


    This was loads of fun, and I definitely learned some good stuff. Sad I didn't go earlier but glad I went this year. Thanks bunch to all the organizers and attendeers who contributed!

    More pictures: https://photos.app.goo.gl/2hYRaaB5dF5mvv4N8

    See more images for Pasadena Hackaday Supercon 2024
    2024/11/01 Pasadena Hackaday Supercon 2024 SAO Badge
    π 2024-11-01 01:01 in Arduino, Electronics
    SAO stands for Shitty Add Ons, all explained here:
  • https://hackaday.com/2019/03/20/introducing-the-shitty-add-on-v1-69bis-standard
  • https://hackaday.io/project/52950-shitty-add-ons
  • In 2021 I got my first SAO Conference Badge from Linux.conf.au (clickme for more) That LCA board had 4 SAO ports and came with 2 little cute penguins that I hacked a bit:


    one of them was then in charge of running a neopixel necklace
    one of them was then in charge of running a neopixel necklace

    I got a few spare SAOs to attach to my heavily hacked LCA badge :)
    I got a few spare SAOs to attach to my heavily hacked LCA badge :)

    Anyway, back to Pasadena Hackaday Supercon 2024, they gave us a 6 SAO badge also running a micropython chip:

    attendees nicely donated a few extra SAOs to me, which I wrote code for
    attendees nicely donated a few extra SAOs to me, which I wrote code for


    even got an SAO extender :)
    even got an SAO extender :)

    I had to solder it from parts at the after party in the pub
    I had to solder it from parts at the after party in the pub

    Back to the conf SAO and code I wrote, here is the result:

    Micropython Code:

  • https://github.com/marcmerlin/2024-Supercon-8-Add-On-Badge/blob/main/software/software/main.py
  • Main repo:

  • https://github.com/marcmerlin/2024-Supercon-8-Add-On-Badge/tree/main
  • This was loads of fun, thanks to the organizers!


    More pages: November 2024 September 2023 August 2023 June 2023 May 2023 April 2023 January 2023 November 2022 January 2022 May 2020 January 2020 December 2019 April 2019 January 2019 June 2018 May 2018 June 2017 April 2017 May 2016 February 2016 November 2015 October 2015 August 2011 July 2011 May 2011 June 2010

    Contact Email