This project is a 3D printed geodesic dome hooked up with flashing LEDs and fiber optic cables to visualize the nearby network activity, it looks pretty cool in the dark.
I used an ESP-32 in promiscuous mode to sniff WiFi packets and get their MAC addresses, and 40 individually addressable LEDs that flash when a packet is detected.
HowTo assemble the geodesic sphere, I printed 30 x hexagonal joints and 12 x pentagonal joints. They are joined with 3/16" wooden dowels, cut 60 dowels 155 mm long and 60 dowels 164 mm long.
The 3D files can be found on my thingiverse here. I used ~75 m of 1.5 mm side glow fiber optic cable, each fiber optic cable is connected to the PCB holder, onto each LED, then routed around the 3D printed joints to create a web pattern. The fiber optics are held in place with crazy glue.
I made the custom PCB for the LEDs in KiCad, and had it manufactured with JLC PCB.
On the board I soldered 40 x SMD5730 white LEDs, these are controlled by 5 x TLC5916 LED sink drivers. The TLC5916s are controlled by a Raspberry Pi.
The Pi and the TLC5916s are powered by a 5V wall power adapter, that power is also used by a buck converter to bring it down to 3.2 V for the LEDs.
The ESP-32 code is from ESP-EOS/ESP32-WiFi-Sniffer. The ESP-32 is connected to the Raspberry Pi by USB, it prints detected WiFi packets to serial, and the Python script on the Raspberry Pi reads it.
After connecting the ESP-32 to the Pi and running main.py the intercepted packets will print in the terminal
The full code and PCB files can be found on my Github here
And that's it, enjoy the light show!
Comments