
OSO SWAT B1-jig
joeycastillo/Sensor-Watch
A board replacement for the classic Casio F-91W wristwatch

A bike light with automatic brake lights and turn signals powered by an esp32-s3 and an mpu6050
Stardance is an open-source printed circuit board by emdcomputer-crypto, from the emdcomputer-crypto/Automatic-bike-light repository on GitHub. It is a 2-layer board of 120 × 35 mm with 31 parts on 28 nets, routed with 166 tracks and 0 vias.
Its parts include 10 resistors, 10 diodes, 2 connectors and 1 IC. It belongs with the ESP32 boards of this library.
This is my custom built smart bike lighting system powered by a Seeed Studio XIAO ESP32-S3 and an MPU6050 inertial sensor. I designed this project from scratch to provide safety features on the road including automatic deceleration triggered brake lights, dynamic turn signals, crash detection, and a local Wi-Fi web server that lets me control and monitor everything directly from my phone without needing an internet connection or an external app.
HardwareFirmware (wich i highly reccomend to make changes to)FabricationFiles needed to produce the pcb... --- ...) in an emergency. (Random feature honestly but still cool)I designed a custom PCB in KiCad measuring 120x35 mm with rounded edges (2mm diametre) and two mounting holes in opposite corners for securing it in any custom 3d printed enclosure
LEFT1, LEFT2, LEFT3).BRAKE1, BRAKE2, BRAKE3, BRAKE4). Note: Due to pin constraints on the XIAO, brake LEDs 3 and 4 share a single control pin in the original firware when testing it was made for the full size esp32 wich may lead to bugs in the firmware.RIGHT1, RIGHT2, RIGHT3).I routed the entire board and placed the XIAO ESP32-S3, the MPU6050 header, and the battery connector flipped onto the back layer. This left plenty of space on the front layer exclusively for all 10 LEDs. I added custom icons on the silkscreen, poured a solid GND copper plane across the bottom layer for signal integrity, and completed the layout with 0 DRC errors.
| Category / Role | Item | Qty | Price | Link |
|---|---|---|---|---|
| Microcontroller | Seeed Studio XIAO ESP32-S3 | 1 | $18.99 | Amazon Link |
| Boost Converter | Youmile DC-DC Step Up Boost Module (2V-24V to 5V-28V 2A) with 24AWG wire | 1 | $18.32 | Amazon Link |
| Battery Charger | Greluma Type-C USB-C 5V 1A 18650 LiPo Charger Module (with protection) | 1 | $8.93 | Amazon Link |
| Battery | EEMB 963450 3.7V 1800mAh LiPo Rechargeable Battery with JST | 1 | $15.03 | Amazon Link |
| Inertial Sensor | ARCELI GY-521 MPU6050 6-Axis Accelerometer & Gyroscope | 1 | $7.81 | Amazon Link |
| LEDs & Resistors | Lyeteung 450 Pcs 3mm LED Diode Kit (Red, Yellow, Green, White) + Resistors | 1 kit | $11.16 | Amazon Link |
| PCB Fabrication | JLCPCB Custom PCB Manufacturing (Gerber files in Hardware folder) | 1 | 19.46 | JLCPCB |
When I power on the system, it has some simple and usefull sequences before starting:
Using the help of AI i wrote a lot of firmwares (still learning c++ in school but can't write full firwmwares so i'm sorry i'm still working and watching tutorials) went thru different bug fixes and all but this was the best most stable one wich still due to the lack of space in the pcb i had to go with a smaller and different microcontroller than the original one (that's why i included the original firmware that was built on the full sized esp32 wrom) so the firmware might be unstable or make some stuff not work either way feel free to take this firmware fix it, customize it or make one from scratch as i will provide the schematic too.
Connecting to the bike's Wi-Fi hotspot (SmartBike) opens a website control dashboard with the following capabilities:
MOVING / STILL).Make sure you have the following libraries installed in your Arduino IDE environment to be able to use the firmware
WireAdafruit_MPU6050Adafruit_SensorPreferencesWiFiWebServerCode_3.ino in the Arduino IDE.115200 baud to view boot logs or type HELP into the console to use the live serial tuning interface.SmartBike (password: Bike123) and on your browser navigate to http://192.168.4.1.| Qty | Value | Footprint | References |
|---|---|---|---|
| 10 | 220 | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R1, R2, R3, R4, R5, R6, R7, R8, R9, R10 |
| 10 | LED | LED_THT:LED_D5.0mm | D1, D2, D3, D4, D5, D6, D7, D8, D9, D10 |
| 4 | LOGO | s:star | G***, G***, G***, G*** |
| 1 | 5v | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J1 |
| 1 | LOGO | s:vector | G*** |
| 1 | LOGO | s:brain2 | G*** |
| 1 | XIAO_ESP32_S3 | esp32foot:MODULE_XIAO_ESP32_S3 | U1 |
| 1 | mpu6050 | Connector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_Vertical | J2 |
The 29 most common of 31 parts.
It measures 120 × 35 mm and has 2 copper layers, 1.6 mm thick.
31 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the emdcomputer-crypto/Automatic-bike-light repository on GitHub, at the commit this page was made from: the board is Hardware/stardance.kicad_pcb and its schematic Hardware/stardance.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask emdcomputer-crypto before reusing the design.

joeycastillo/Sensor-Watch
A board replacement for the classic Casio F-91W wristwatch

hoglet67/RGBtoHDMI
Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

openwch/ch32v003
CH32V003 is an ultra-cheap RISC-V MCU with 2KB SRAM, 16KB flash, and up to 18 GPIOs that sells for under $0.10

Luos-io/luos_engine
Open-source and real-time orchestrator for cyber-physical-systems, to easily design, test and deploy embedded applications and digital twins.
BlueAndi/Pixelix
Full RGB LED matrix, based on an ESP32 and WS2812B LEDs or emulated LEDs on TFT.

