Skip to the content
PCBKitNew board
4 layers49 × 34 mmC92 decoder A1, the printed circuit board in 3D

C92 decoder A1

slonket/c92-decoder

An MM1/MM2/Lenz decoder for classic Märklin locomotives and the pre-mfx digital systems.

Size
49 × 34 mm
Copper layers
4
Thickness
1 mm
Parts
93
Nets
58
Pads
262
Tracks, vias
368, 112
Pours
200
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
13 Aug 2026
Updated
16 Oct 2026

Overview

C92 decoder A1 is an open-source printed circuit board by slonket, from the slonket/c92-decoder repository on GitHub, published under the CERN-OHL-S-2.0 licence. It is a 4-layer board of 49 × 34 mm with 93 parts on 58 nets, routed with 368 tracks and 112 vias.

It is built around the STM32G031G8U6, TPS70933DBVR-MS and DSK34, with the DMN3190LDW, 3314J-1-104E and DDC114YU among its other parts. Its parts include 32 resistors, 18 capacitors, 14 connectors, 7 transistors and 6 diodes. It belongs with the STM32 boards of this library.

Main components

8

README

README.md

c92-decoder

An MM1/MM2/Lenz decoder for classic Märklin locomotives and the pre-mfx digital systems.

The c92 decoder was spawned out of a passion for the classic (pre-mfx) Märklin digital systems. The controllers of this era operated with three different protocols:

  • MM1 (6020, 6021, 6022, 6023)
  • MM2 (6021)
  • Lenz (6027, 6029)

However, no single decoder from this era can operate on all three protocols, nor with all of their capabilities. Furthermore, there is a matrix of incompatibility between different controllers and combinations of decoders using MM1 and MM2. The c92 decoder is a superset of all decoder capabilities and their respective protocols; a universal classic decoder.

c92 decoder back view.

Cloning

This project uses slonket-footprints as a submodule for all PCB designs. All KiCAD projects within this repository are configured to use the submodule libraries with local paths. Run the following to clone the repository with its submodule:

text
git clone --recurse-submodules https://github.com/slonket/c92-decoder.git

Parts

93
QtyValueFootprintReferences
121kSlonket_Footprints:R_0402R4, R5, R6, R7, R8, R9, R18, R19, R22, R23, R26, R27
1047kSlonket_Footprints:R_0402R10, R11, R17, R20, R21, R24, R25, R28, R29, R32
8100nSlonket_Footprints:C_0402C6, C7, C9, C14, C15, C16, C17, C18
510kSlonket_Footprints:R_0402R2, R12, R13, R14, R31
5DSK34Slonket_Footprints:D_SOD-123FD1, D2, D3, D4, D8
410uSlonket_Footprints:C_1206C1, C2, C11, C13
3100nSlonket_Footprints:C_0603C3, C10, C12
3DMN3190LDWSlonket_Footprints:U_SOT-363Q5, Q6, Q7
23314J-1-104ESlonket_Footprints:RV_BOURNS_3314JRV1, RV2
24u7Slonket_Footprints:C_0402C4, C8
2DDC114YUSlonket_Footprints:U_SOT-363Q3, Q4
2DMC3071LVTSlonket_Footprints:U_SOT-23-6Q1, Q2
1100kSlonket_Footprints:R_0402R1
1100uSlonket_Footprints:CP_1210_CASE_BC5
112kSlonket_Footprints:R_0402R3
120mSlonket_Footprints:R_0603R16
1220Slonket_Footprints:R_0805R30
15k1Slonket_Footprints:R_0402R15
1ADDRESSSlonket_Footprints:SW_DIP_8_P1.27SW1
1BZD27C27PSlonket_Footprints:D_SOD-123FD5
1CAPSlonket_Footprints:J_Pad_1mm_2mmJ14
1F0F_OUTSlonket_Footprints:J_Pad_1mm_2mmJ4
1F0R_OUTSlonket_Footprints:J_Pad_1mm_2mmJ5
1F1_OUTSlonket_Footprints:J_Pad_1mm_2mmJ9
1F2_OUTSlonket_Footprints:J_Pad_1mm_2mmJ10
1F3_OUTSlonket_Footprints:J_Pad_1mm_2mmJ11
1F4_OUTSlonket_Footprints:J_Pad_1mm_2mmJ12
1GNDSlonket_Footprints:J_Pad_1mm_2mmJ13
1INA180A3Slonket_Footprints:U_SOT-23-5U3
1MOTOR_LSlonket_Footprints:J_Pad_1mm_2mmJ6
1MOTOR_RSlonket_Footprints:J_Pad_1mm_2mmJ7
1STM32G031G8U6Slonket_Footprints:U_STM_UFQFPN-28_4x4_P0.5U2
1SWDSlonket_Footprints:J_Pad_4_1.5mmJ2
1TPS70933DBVRSlonket_Footprints:U_SOT-23-5U1
1TRACK_1Slonket_Footprints:J_Pad_1mm_2mmJ1
1TRACK_2Slonket_Footprints:J_Pad_1mm_2mmJ3
1VDDSlonket_Footprints:J_Pad_1mm_2mmJ8

The 83 most common of 93 parts.

Questions

How big is the C92 decoder A1 PCB?

It measures 49 × 34 mm and has 4 copper layers, 1 mm thick.

What parts does the C92 decoder A1 use?

93 parts, built around the STM32G031G8U6, TPS70933DBVR-MS, DSK34 and DMN3190LDW. 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.

Where can I download the C92 decoder A1 KiCad files?

From the slonket/c92-decoder repository on GitHub, at the commit this page was made from: the board is hardware/c92_decoder_A1/c92_decoder_A1.kicad_pcb and its schematic hardware/c92_decoder_A1/c92_decoder_A1.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the C92 decoder A1 design in my own project?

Its repository publishes it under the CERN-OHL-S-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

More from slonket/c92-decoder

2
  • 4 layers49 × 34 mmC92 decoder B1, the printed circuit board in 3D

    C92 decoder B1

    slonket/c92-decoder

    An MM1/MM2/Lenz decoder for classic Märklin locomotives and the pre-mfx digital systems.

    73 partsCERN-OHL-S-2.0
  • 2 layers64.2 × 26.7 mmDiscrete hbridge, the printed circuit board in 3D

    Discrete hbridge

    slonket/c92-decoder

    An MM1/MM2/Lenz decoder for classic Märklin locomotives and the pre-mfx digital systems.

    62 partsCERN-OHL-S-2.0

Similar boards

  • 2 layers88.9 × 114.3 mmRaw, the printed circuit board in 3D

    Raw

    PCBench/PCBench

    resolution = [0.5, 0.5] pcbfolder = '../PCBs/' pcbnames = ["1Bitsy1bitsy"] iters = 30 env = PCBRoutingEnv(resolution=resolution, pcbfolder=pcbfolder, pcbnames=pcbnames) obs, info = env.reset() for in range(iters): act =…

    190 parts21MIT
  • 4 layers25 × 25 mmMiniOSCI, the printed circuit board in 3D

    MiniOSCI

    RoseDaggerDev/MiniOscilloscope

    Through-Hole Version: Its been fully tested and works like a charm. Its got a BOM of 87 components and fits on a 50x50mm 2-layer board, manufactured by PCBWay.

    80 parts1MIT
  • 2 layers30 × 84 mmBuffered, the printed circuit board in 3D

    Buffered

    cuteboy0323/1590A

    These are not at all useful, but having done guitar pedal board kit builds, I decided I should try to make something from scratch.

    47 partsGPL-2.0
  • 2 layers65 × 56 mmInterface board, the printed circuit board in 3D

    Interface board

    TrendBit/SMBR-hardware

    Design file for SMBR hardware modules in KiCAD.

    133 partsGPL-3.0
  • 4 layers97 × 87 mmSprocket panel, the printed circuit board in 3D

    Sprocket panel

    jamesmunns/brick-mount

    Put your circuits on your plastic bricks of choice

    494 parts40
  • 2 layers53.4 × 84.4 mmPCB business cards, the printed circuit board in 3D

    PCB business cards

    ExcessiveOverkill/PCB-business-cards

    Everything needed to make your own persistence of vision business cards

    70 parts3
  • 2 layers38 × 44.6 mmM3-V5, the printed circuit board in 3D

    M3-V5

    tomrodinger/servomotor

    Open-source NEMA-17 integrated servomotor (motor + closed-loop driver + controller + encoder). RS-485, Python/Arduino libraries, MCP server for AI control. Hardware, firmware and software.

    71 parts17MIT