For the few years, I've been lighting up bikes, ebikes, one wheels, and scooters with Smart LEDs and my own Linux Beach Control Freak controllers. In fact, this is my first build using our soon-to-be-released Control Freak II, based on the more powerful (dual core, 240 Mhz, 4MB) ESP32 microcontroller. This allowed for many new features, including audio responsiveness and matrix control and effects. Seven of them were used in this build, and networking that many became a special challenge, requiring me to modify the WiFiAP library code.
All and all, this build took more than 160 hours over 27 days that resulted in a scooter lite with 13,149 LEDs in 4,383 Pixels. This is the story of how I did it in pictures:
This is what I started with on Jan 11th.
I built a 24x24 Matrix to cover the battery under the seat. This was constructed from 9 8x8 matrix panels so they had to be wired together, and the controller programmed so they would act as one panel, with 9 matrices going to 1, this turned into quite the task.
Jan. 13th mocking up the 24 x 24 panel for testing.
I wanted the 24x24 panel to be removal, attached with velcro, so I didn't want any exposed wiring behind the backplane. This required routing out the inside of the 1/8" backplane board to make room for the wiring. This alone, endup taking several days/
Also shown here is the medallion I created for the front fork. Jan 14th
This shows the wiring details on both the 24x24 panel and the medallion. One of the 9x9 matrices was off-color and had to be replaced.
This is the horn treatment.
And this is the sunset that day, Jan. 16th
The large 49 LED-circle for the headlight was hard to find, but once found, the front of the scooter was starting to shape up.
Jan 17th.
I wanted to use matrices on the fenders as well because the client really wanted to light up the fenders, but that had its own special challenges because LED-matrices aren't design to curve 2 directions at once. So, some testing was done to see how far I could bend them without breaking them. I decided that the 16x32 matrix could work on the front fender, but not the rear one, which had a higher crown. That one would be 8x32
Grading on a curve—Jan 18th
Having determined the LED treatment for the two fenders, they both had to be careful marked for drilling. Taking a drill & sandpaper to these glossy black fenders felt like a crime—but it had to be done.
Drilling the pilot holes. Jan 19th
Checking the fit.
Front fender now ready to gluing on the 1st of 4 matrices.
Success! Jan 19th.
Sunset that day
Matrices installed on both fenders. Jan 20th
By Jan 22nd the front fork treatment was almost complete, runners had been added to the frame, and the 24x24 panel was in place.
Wiring harness for mirror LEDs
LED strips added to fender. Jan 23rd
Rings installed on mirrors. This was actually a 3 stage gluing process with 2 different glues over 2 days.
And mirrors installed on scooter. This was actually a temporary fit. Jan 24th
Soldering the rear fender was tedious work, mostly under a stereo microscope.
Following my policy of belt & suspenders, I used contact cement on the outer strips of both fenders, later I would reglue all the fender strips with contact cement. Getting the strips to conform to the curves, particularly for the outside strips is something of an art.
Finally, I can see what the fender looks like lite up! Jan 26th.
Painted over glue on mirrors with flat black
I decided that the single line of LEDs I had going across the bottom of the fork was pretty pedestrian, so I created a custom design with 7 LED circles. First I made a paper mask of the front plate I wanted. Then I cut 1/8" polycarbonate clear plastic sheet to the mask. Then I glued the LED circles to the clear plastic.
Then a msk had to be made for the wiring.
Then the holes in the mask needed to be punched out.
So now the LED circles could be wired.
Finally, the array can be tested. Jan 28th
Then it's sealed against water. Jan 29th.
Six Control Freak II controllers were custom built for this job. One contains a high-quality digital microphone. Two are 4-way controllers, and one is two way, meaning these six controllers to the work of 13 regular controllers.
Control Freak II Smart LED controllers.
LED harness for under the scooter indirect lighting.
While all the LED strips I use are rated IP65 Waterproof, the matrices aren't.
So, I overed the matrices with Varathane Ultimate Spar Urethane, 8 coats each. All the LED rings had to be protected the same way.
Key switch and power module installed on under seat box, after drilling done.
Barrier strip & wiring added to battery box
Once everything was put together, a new problem emerged. There are 7 connected computers on this scooter, and networking them still presents many of the challenges involved in networking a small office. While each of the Follower controllers could connect to the LAN & the Leader individual, I couldn't get them all to connect at the same time, and without that real time synchronization, including for audio, wouldn't work. It was like playing whack-a-mole, each time I would force a new node on to the network, another one would pop off. Very frustrating!
Eventually, a bit of research solved the problem. Although the ESP32 has a hardware limitation on 10 connections, the WiFiAP library had a hardcoded limitation of 4 connects, which explained why 6 devices would never connect at the same time. Armed with that knowledge, it was simply a matter of modifying the source code for the library and recompiling the firmware. I did this with a 7 device which I designed specifically as an access point, so as not to modify the firmware on the controllers and play whack-a-mole somewhere else.☺
Finally, it's all starting to come together. Jan 31.