
BananaSchplit
pms67/BananaSchplit
Single rail DC (<12V) to split rail DC supply (+/-12V and +5V).

An STM32-based liquid cooling fan controller, designed to fit flush against a 240/280mm rad.
Fancontroller is an open-source printed circuit board by funrollloops, from the funrollloops/fancontrol repository on GitHub. It is a 2-layer board of 28 × 27.8 mm with 32 parts on 52 nets, routed with 172 tracks and 9 vias.
It is built around the TPS5430DDA and B5819W. Its parts include 13 capacitors, 7 resistors, 3 diodes, 2 ICs and 2 connectors. It belongs with the STM32 boards of this library.
v1 used an arduino nano with a custom PCB on top, but the result was thick and ungainly. v2 uses a pcb with an stm32 integrated on board, but still expects to use an OLED on a 4-pin carrier board. This does fit inside a Meshlicious alongside a 280mm rad, but it could be more elegant.
v2 includes a USB port, but it's not really used by the firmware. Removing it in v3 might allow for a sleeker design that is easier to put in a case.
Total available clearance is 10mm:
So will need to use a bare oled display and use an FPC connector to save space. All components will be on the top side of the PCB, which will face towards the radiator/fan where the fan connectors come out.
See the pcb/ directory. Designed for PCBA via JLCPCB, using only one extended part (the USB-C connector). Costs $20 shipped for 5x.
Install STM32CubeProgrammer somewhere, and then build and flash with
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -GNinja -DSTM32_CUBE_PROGRAMMER=/path/to/STM32_Programmer_CLI
ninja -Cbuild flashWIP, will log CPU/GPU/thermistor readings to create a calibration table. According to the datasheet, given some inputs the output formula should be:
# Circuit: VCC - R2 - thermistor - GND
# ⌞ ADC
VCC = 5
AREF = 3.3
R2 = 33_000
def C(adc):
"""adc is the voltage across the thermistor when it is in series with R2, where 0=0V and 1024=AREF."""
return 227 - 34.3 * ln(adc)But a lookup table is probably simpler since only ~1C accuracy is needed and there's no FPU anyway.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | 100nF | Capacitor_SMD:C_0402_1005Metric | C2, C3, C4, C15 |
| 3 | FAN_HEADER | Connector:FanPinHeader_1x04_P2.54mm_Vertical | IN1, OUT1, OUT2 |
| 2 | 1.5kΩ | Resistor_SMD:R_0402_1005Metric | R6, R9 |
| 2 | 10nF | Capacitor_SMD:C_0402_1005Metric | C6, C13 |
| 2 | white | LED_SMD:LED_0603_1608Metric | D1, D5 |
| 1 | 1.5nF | Capacitor_SMD:C_0603_1608Metric | C17 |
| 1 | 100n | Capacitor_SMD:C_0402_1005Metric | C9 |
| 1 | 10kΩ | Resistor_SMD:R_0402_1005Metric | R7 |
| 1 | 10uF | Capacitor_SMD:C_0603_1608Metric | C12 |
| 1 | 10uH | Inductor_SMD:L_1210_3225Metric | L1 |
| 1 | 150pF | Capacitor_SMD:C_0603_1608Metric | C16 |
| 1 | 1uF | Capacitor_SMD:C_0402_1005Metric | C5 |
| 1 | 22uF | Capacitor_SMD:C_0603_1608Metric | C14 |
| 1 | 33kΩ | Resistor_SMD:R_0402_1005Metric | R1 |
| 1 | 4.7uF | Capacitor_SMD:C_0402_1005Metric | C1 |
| 1 | 5.1kΩ | Resistor_SMD:R_0402_1005Metric | R2 |
| 1 | 5.9kΩ | Resistor_SMD:R_0603_1608Metric | R8 |
| 1 | 549Ω | Resistor_SMD:R_0603_1608Metric | R3 |
| 1 | B5819W | Diode_SMD:D_SOD-123 | D3 |
| 1 | SSD1306 | SSD1306:128x64OLED | SSD1306 |
| 1 | STM32F103C8Tx | Package_QFP:LQFP-48_7x7mm_P0.5mm | U1 |
| 1 | SWD | Connector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_Vertical | J3 |
| 1 | TPS5430DDA | Package_SO:TI_SO-PowerPAD-8_ThermalVias | U3 |
| 1 | Thermo | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Horizontal | J1 |

pms67/BananaSchplit
Single rail DC (<12V) to split rail DC supply (+/-12V and +5V).




hallo-alex/SqueezeAMPagain
As github annoys me with their 2FA policy I'm moving this to codeberg

kingMordred/single_to_split_rail_dc_power_supply
PCB design using KiCad 10.0 for a single to split rail dc power supply, converting an input of +6V ~ +12V to a +5V rail or a +12V/-12V rail.


doudar/SmartSpin2k
Transform your spin bike into a Smart Trainer!
It measures 28 × 27.8 mm and has 2 copper layers, 1.6 mm thick.
32 parts, built around the TPS5430DDA and B5819W. 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 funrollloops/fancontrol repository on GitHub, at the commit this page was made from: the board is pcb/fancontroller.kicad_pcb and its schematic pcb/fancontroller.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 funrollloops before reusing the design.