
Usb switch
alvarop/debugotron
Debugotron is a collection of debugging/automation tools I've wanted in the past but didn't have access to. Currently, the tools include:

Debugotron is a collection of debugging/automation tools I've wanted in the past but didn't have access to. Currently, the tools include:
Sample target is an open-source printed circuit board by alvarop, from the alvarop/debugotron repository on GitHub, published under the BSD-3-Clause licence. It is a 2-layer board of 39.7 × 14 mm with 31 parts on 62 nets, routed with 362 tracks and 53 vias.
It is built around the STM32L412C8T6 and MIC5504-3.3YM5. Its parts include 11 resistors, 9 capacitors, 5 ICs, 2 diodes and 2 switches. It belongs with the STM32 boards of this library.
Debugotron is a collection of debugging/automation tools I've wanted in the past but didn't have access to. Currently, the tools include:

Have you ever wanted to debug your device over USB-C? Sometimes there's not enough room for a JTAG/SWD connector, or even TAGConnect pads! The USB-C specification has a Debug Accessory Mode feature that allows for this. I have a Twitter thread with additional details. Here's an unrolled version for easier reading.
Since the current adapter uses an ATTiny24a, I made a different programmer adapter for it

This is a simple STM32L4 board that implements USB-C DAM (the "proper way") as an example.


Tool that allows connecting/disconnecting the SWD/JTAG lines (Via ARM 10-pin connector) with a pushbutton (or external signal). This can be useful when trying to measure ultra low power consumption on a device while the debugger is connected (but not necessarily running/attached).

This one is more of an automation tool. I've always wanted to automate firmware testing. Sometimes, having USB connected is necessary to program/communicate with a device, but at the same time, having USB connected changes the power characteristics of the test (or just operating mode).
For example, you might want to automatically test the power consumption of a battery powered device every night with the latest firmware. In order to run the test, you might have to connect to the device, flash it, then disconnect USB. The USB-C switch will allow software-controlled power and data connect/disconnects to a USB-C device. Depending on the configuration, it will also allow full 20V@5A pass-through by allowing USB-PD communication over the CC lines.
In the cases where you want to communicate with a device over USB while still powering it via 20V (or anything higher than 5V), a USB switch allows for a different USB cable to be used for data only, while power is taken from a separate USB-C port.

| Qty | Value | Footprint | References |
|---|---|---|---|
| 6 | 0.1uF | Capacitor_SMD:C_0402_1005Metric | C3, C4, C5, C6, C7, C8 |
| 5 | 5.1k | Resistor_SMD:R_0402_1005Metric | R1, R2, R7, R8, R9 |
| 4 | 0 | Resistor_SMD:R_0402_1005Metric | R3, R4, R5, R6 |
| 2 | 1uF | Capacitor_SMD:C_0402_1005Metric | C1, C2 |
| 2 | BTN | ultralibrarian:PTS820J25MSMTRLFS | SW1, SW2 |
| 2 | LED | LED_SMD:LED_0603_1608Metric | D1, D2 |
| 1 | 10k | Resistor_SMD:R_0402_1005Metric | R11 |
| 1 | 240k | Resistor_SMD:R_0402_1005Metric | R10 |
| 1 | 4.7uF | Capacitor_SMD:C_0402_1005Metric | C9 |
| 1 | LM358_DFN | Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP1.05x1.75mm | U5 |
| 1 | MIC5504-3.3YM5 | Package_TO_SOT_SMD:SOT-23-5 | U2 |
| 1 | SN74AHC1G08DBVRG4 | snapeda:SOT95P280X145-5N | U1 |
| 1 | STM32L412C8T6 | ultralibrarian:STM32L412C8T6 | U4 |
| 1 | TMUX1511PWR | snapeda:SOP65P640X120-14N | U3 |
| 1 | USB_C_Receptacle | snapeda:GCT_USB4056-03-A_REVA_MOD | J1 |
The 30 most common of 31 parts.
It measures 39.7 × 14 mm and has 2 copper layers, 1.6 mm thick.
31 parts, built around the STM32L412C8T6 and MIC5504-3.3YM5. 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 alvarop/debugotron repository on GitHub, at the commit this page was made from: the board is hw/sample_target/sample_target.kicad_pcb and its schematic hw/sample_target/sample_target.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the BSD-3-Clause licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

alvarop/debugotron
Debugotron is a collection of debugging/automation tools I've wanted in the past but didn't have access to. Currently, the tools include:

alvarop/debugotron
Debugotron is a collection of debugging/automation tools I've wanted in the past but didn't have access to. Currently, the tools include:

alvarop/debugotron
Debugotron is a collection of debugging/automation tools I've wanted in the past but didn't have access to. Currently, the tools include:



tmk/USB2USB_Converter
USB to USB keyboard protocol converter supported by TMK keyboard firmware

kiu/lofence
LoFence is a LoRaWAN capable IoT electric fence monitoring system running on the The Things Network.


nkrackow/SingularitySurfer-FPGA-Lock-In-Amplifier
Repository for the development of an FPGA based DSP Lock-In Amplifier

AndersBNielsen/PhaseLatchMini
High-rate continuous streaming of interleaved dual ADC (I/Q) samples over USB Full‑Speed (FS) using only the built‑in CDC class on an STM32F103C8 ("Blue Pill" style) board.

Badbird5907/thermal-camera
My design of a cheap and affordable thermal camera