
Flash
soniccd123/OpenDrive-Programmer
A open hardware USB programmer for the OpenDrive flashcart

A open hardware USB programmer for the OpenDrive flashcart
Flash is an open-source printed circuit board by soniccd123, from the soniccd123/OpenDrive-Programmer repository on GitHub. It is a 2-layer board of 83.3 × 92.7 mm with 47 parts on 89 nets, routed with 1,686 tracks and 28 vias.
It is built around the 74LVC245AD, 74HC590D and RT9193-3.3. Its parts include 13 capacitors, 8 resistors, 8 ICs, 2 diodes and 2 connectors. It belongs with the STM32 boards of this library.
A open hardware USB programmer for the OpenDrive flashcart
Created this from my old project with repros, as challenge and for personal use. Decided to share the project for other to use and learn. Hope it is useful to somebody!
This is just and option for those who are not so skilled with a soldering iron. The design contained in the Bluepill folders can use both a standart BluePill development module or be built as a standalone unit. When using a BluePill, not so many components are necessary and almost any SMD component is needed to be soldered (just the two 74LVC245). The design in the Standalone folder is the one that i've been using and its been tested, should be exactly equal to the BluePill one, it just don't have the solder points for the headers needed to connect the BluePill.
Assemble the PCB, all the files needed for producing the PCB and Bill of Materials are available here. After assembling connect a STLINK to the STLINK port and write the firmware (available here: https://github.com/soniccd123/OpenDrive-Programmer-firmware). After that it is ready to be connected to a PC, it will be shown as a serial port. Connect to it using the OpenDrive Editor software and happy playing.
Most of the problems I had were related to bad solder joints, check and recheck your solder joints, specially the STM32 joints, lots of instabilities that I had were caused by falty contacts with solder.
I'm not a professional hardware engineer, while this programmer was designed to be the safest possible to your flashcart, I'm not responsible for any damages done if used or built wrong. Also, revise the design always before building the PCB, I'm a amateur human and errors may have been commited. It you spot anything, hit me with a message and I will happily fix that. Also, any sugestions are welcome!
| Qty | Value | Footprint | References |
|---|---|---|---|
| 9 | R_Network08 | Resistor_THT:R_Array_SIP9 | RN1, RN2, RN3, RN4, RN5, RN6, RN7, RN8, RN9 |
| 6 | C | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | C8, C9, C10, C12, C13, C14 |
| 3 | 74HC590 | Package_DIP:DIP-16_W7.62mm | U4, U6, U8 |
| 3 | Jumper_3_Open | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | JP1, JP2, JP3 |
| 2 | 100nF | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C3, C6 |
| 2 | 10uF | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C4, C7 |
| 2 | 22R | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R8, R9 |
| 2 | 22pF | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C1, C2 |
| 2 | 510R | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R1, R6 |
| 2 | 74LVC245 | Package_SO:TSSOP-20_4.4x6.5mm_P0.65mm | U5, U7 |
| 1 | 1.5K | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R7 |
| 1 | 100K | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R4 |
| 1 | 10K | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R5 |
| 1 | 1M/NC | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R2 |
| 1 | 1uF | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C5 |
| 1 | 4069 | Package_DIP:DIP-14_W7.62mm | U3 |
| 1 | 8MHz | Crystal:Crystal_HC49-U_Vertical | Y1 |
| 1 | Conn_01x04_Male | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | STLINK1 |
| 1 | GENESIS-CONN | db-thparts:GENESIS-CONN | CON1 |
| 1 | GREEN | LED_THT:LED_D3.0mm | D1 |
| 1 | RED | LED_THT:LED_D3.0mm | D2 |
| 1 | RT9193 | Package_TO_SOT_SMD:SOT-23-5_HandSoldering | U1 |
| 1 | STM32F103C8Tx | Package_QFP:LQFP-48_7x7mm_P0.5mm | U2 |
| 1 | USB_B_Micro | Connector_USB:USB_Micro-B_Molex-105017-0001 | J1 |
It measures 83.3 × 92.7 mm and has 2 copper layers, 1.6 mm thick.
47 parts, built around the 74LVC245AD, 74HC590D and RT9193-3.3. 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 soniccd123/OpenDrive-Programmer repository on GitHub, at the commit this page was made from: the board is Standalone/Flash.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask soniccd123 before reusing the design.

soniccd123/OpenDrive-Programmer
A open hardware USB programmer for the OpenDrive flashcart







