
Multistepper
eddyem/stm32samples
Code samples and ready projects based on bare-metal STM32

STM32-based USB to Floppy-Disk Drive (FDD) Adapter
Usb floppy adapter is an open-source printed circuit board by roybaer, from the roybaer/usb_floppy_adapter repository on GitHub. It is a 2-layer board of 48 × 19 mm with 28 parts on 50 nets, routed with 511 tracks and 45 vias.
It is built around the LM1117-3.3 and USBLC6-2SC6. Its parts include 7 capacitors, 7 connectors, 3 resistors, 3 ICs and 1 inductor. It belongs with the interfaces and adapters boards and the STM32 boards of this library.
This project provides the CAD files for an STM32-based floppy-disk controller that can be attached to the back of an ordinary 3.5 inch floppy-disk drive and connected to a USB host via micro USB port.

The core of this adapter is the popular STM32F103C8T6 microcontroller by STMicroelectronics. Please consult the PDF schematic for details.
The adapter can be used in several different hardware configurations that can be selected via solder bridges.
The following drive types are supported:
Drives that only use the 5V line and consume less than approx. 480mA can be powered via USB, other drives have to be powered externally.
| J5 | J6 | J7 | Use case |
|---|---|---|---|
| ▒▒░▒▒ | ▒▒░▒▒ | ▒▒░▒▒░▒▒ | PC drive, externally powered |
| ▓▓▓▓▓ | ▒▒░▒▒ | ▒▒░▒▒░▒▒ | IBM PS/2 drive without 12V line |
| ▒▒░▒▒ | ▓▓▓▓▓ | ▒▒░▒▒░▒▒ | PC drive, USB-powered |
| ▒▒░▒▒ | ▒▒░▒▒ | ▓▓▓▓▓░▒▒ | pin 4 and 6 shorted, for shugart drives that do not use pin 4 |
| ▒▒░▒▒ | ▒▒░▒▒ | ▒▒░▓▓▓▓▓ | 12V on pin 4, for PS/2 drive |
The power connector J3 can be used as either input or output.
Configurations other than the USB-powered PC drive (see picture) are untested.
As of August 2020, there is no working firmware for this adapter, yet.
The objective is to adapt the firmware provided by the Greaseweazle project. It does already provide support for the same microcontroller, albeit for a much bulkier adapter with a different pinout.
The adapter provides solder pads for an SWD programming device. They are labeled J4 on the PCB.
| Pin on J4 | Function |
|---|---|
| 1 | 3.3V |
| 2 | SWDIO |
| 3 | SWCLK |
| 4 | GND |
Please refer to the Greaseweazle documentation for PC-side software that will be used with this adapter.
The following license applies to the files in this repository:
This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | 100n | Capacitors_SMD:C_0603 | C4, C5, C6, C7 |
| 4 | R_Pack04 | Resistors_SMD:R_Array_Convex_4x0603 | RN1, RN2, RN3, RN4 |
| 3 | 10µ | Capacitors_SMD:C_0805 | C1, C2, C3 |
| 2 | 22 | Resistors_SMD:R_0603 | R2, R3 |
| 2 | GS2 | Connectors:GS2 | J5, J6 |
| 1 | 1.5k | Resistors_SMD:R_0603 | R1 |
| 1 | Conn_01x02 | Pin_Headers:Pin_Header_Straight_1x04_Pitch2.54mm | J3 |
| 1 | Conn_01x04 | Pin_Headers:Pin_Header_Straight_1x04_Pitch1.27mm_SMD_Pin1Left | J4 |
| 1 | Conn_02x17_Odd_Even | Socket_Strips:Socket_Strip_Straight_2x17_Pitch2.54mm | J1 |
| 1 | Ferrite_Bead | Inductors_SMD:L_0805 | L1 |
| 1 | GS3 | Connectors:GS3 | J7 |
| 1 | LM1117-3.3 | TO_SOT_Packages_SMD:SOT-223-3Lead_TabPin2 | U1 |
| 1 | MICRO_USB_B | Connectors_USB:USB_Micro-B_Vertical_Molex-105133-0001 | J2 |
| 1 | Resonator | Crystals:Resonator_SMD_muRata_SFECV-3pin_6.9x2.9mm | Y1 |
| 1 | STM32F103C8Tx | Housings_QFP:LQFP-48_7x7mm_Pitch0.5mm | U2 |
| 1 | USBLC6-2SC6 | TO_SOT_Packages_SMD:SOT-23-6 | U3 |
The 26 most common of 28 parts.
It measures 48 × 19 mm and has 2 copper layers, 1.2 mm thick.
28 parts, built around the LM1117-3.3 and USBLC6-2SC6. 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 roybaer/usb_floppy_adapter repository on GitHub, at the commit this page was made from: the board is kicad/usb_floppy_adapter.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 roybaer before reusing the design.

eddyem/stm32samples
Code samples and ready projects based on bare-metal STM32

eddyem/ARMsingleboard
Something for singleboard PC (Orange Pi Zero1/2 etc): I2C, SPI etc.



bamnet/village
I have a collection of 1-2 dozen Department 56 lighted Christmas houses. The default lighting solution has a big problem though: a house is either lit or not.

EzerLonginus/ESP32_S3_WROOM_Breakout
Breakout Board for ESP32 S3 WROOM

PUT-Motorsport/PUTM_EV_AMS_MASTER
High Voltage Battery Management System
