

Messystem
Ein kleines Messgerät für den Reparaturplatz: Es überwacht sechs Gleichspannungen (0–30 V) und eine Wechselspannung (9 V) gleichzeitig und zeigt sie auf einem 20×4-LCD an.
- Size
- 100 × 83.4 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 79
- Nets
- 59
- Pads
- 303
- Tracks, vias
- 838, 43
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 9 Oct 2026
- Updated
- 30 Oct 2026
Overview
Messystem is an open-source printed circuit board by do2mad, from the do2mad/messsystem-1mhz repository on GitHub, published under the MIT licence. It is a 2-layer board of 100 × 83.4 mm with 79 parts on 59 nets, routed with 838 tracks and 43 vias.
It is built around the ATMEGA328-PU, MCP6004-E/P and CD4051BE, with the DB207 among its other parts. Its parts include 22 resistors, 18 connectors, 15 diodes, 13 capacitors and 5 ICs. It belongs with the AVR (ATmega, ATtiny) and FPGA and CPLD boards of this library.
Main components
4ATMEGA328-PU
PDIP-28-40℃~+85℃ 1.8V~5.5V 10bit 1KB 20MHz 23 2KB 32KB 8 Bit AVR Built-in FLASH PDIP-28 Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)MCP6004-E/P
PDIP-14-40℃~+125℃ 1.8V~6V 100uA 1MHz 1pA 1pA 23mA 28nV/√Hz@1kHz 2uV/℃ 4 4.5mV 600V/ms 76dB ESD protection Rail-to-Rail Input, Rail-to-Rail Output PDIP-14 Operational Amplifier ROHSMicrochip TechnologyOperational AmplifierCD4051BE
PDIP-16-55℃~+125℃ 125Ω 20MHz 3V~20V 450ns 8 8:1 PDIP-16 Analog Switches, Multiplexers ROHSTexas InstrumentsAnalog Switches, MultiplexersDB207
DB-55℃~+150℃ 1.1V@2A 10uA@1kV 1kV 2A 50A Single-Phase Rectifier DB Bridge Rectifiers ROHSMDDBridge Rectifiers
README
README.mdMesssystem 6× DC + 1× AC
Ein kleines Messgerät für den Reparaturplatz: Es überwacht sechs Gleichspannungen (0–30 V) und eine Wechselspannung (9 V~) gleichzeitig und zeigt sie auf einem 20×4-LCD an. Entstanden ist es, um die Spannungsschienen eines Commodore-64 , Pet oder andere in einem Blick zu prüfen — es passt aber auf jedes Gerät mit mehreren Versorgungsspannungen.
Projektseite und Diskussion: https://1mhz.de

Startbild mit Firmware-Version. Unten die Eingänge: +5 V/GND/AC, DC1–DC6 als Klemmen und DC6 zusätzlich an 2-mm-Bananenbuchsen (J16).

Im Betrieb: zwei belegte Kanäle, die übrigen ausgeblendet. Rechts unten zeigt UEBERW, dass die Grenzwert-Überwachung aktiv ist.
Was es kann
- 7 Kanäle an einem ADC: ein CD4051 schaltet die Eingänge auf einen einzigen ADC-Pin, ein MCP6004-Spannungsfolger entkoppelt den hochohmigen Teiler vom Sample-and-Hold.
- Grenzwert-Überwachung: Ein funktionierendes Gerät anschließen, Taste halten, Toleranz wählen — fertig. Fällt am Prüfling eine Schiene aus dem Bereich, meldet sich das Gerät mit Ton, blinkendem Hintergrundlicht und einem blinkenden Kanal im Display.
- Kalibrierung mit zwei Punkten pro Kanal, im EEPROM gespeichert.
- Datenaufzeichnung als CSV über die serielle Schnittstelle, mit Semikolon und Dezimalkomma — direkt in der Tabellenkalkulation brauchbar.
- Serielle Konsole für Kalibrierung, Grenzwerte und Diagnose.
Technik in Stichworten
| MCU | ATmega328P, interner 8-MHz-Oszillator, kein Quarz |
| Multiplexer | CD4051 (8:1) auf ADC0 (PC0) |
| Puffer | MCP6004 (Rail-to-Rail, pinkompatibel zum LM324, max. 6 V) |
| Referenz | LM4040 4,096 V an AREF |
| Anzeige | HD44780 20×4, parallel im 4-Bit-Modus |
| DC-Eingänge | Teiler 1 MΩ / 100 kΩ (≈1:11), 100 nF, bipolare 1N4148-Klemme |
| AC-Eingang | Brückengleichrichter, Teiler 470 k / 150 k, Mittelwert → Vrms = MW / 0,9 |
| Alarm | passiver Piezo (Reichelt EPM 121, 4 kHz) gegentaktig an PB6/PB7 über 330 Ω; Hintergrundlicht über Q1 (2N7000) an PB3 |
| Versorgung | 5 V über J9 oder USB-Mini J10 (nur eine Quelle gleichzeitig, kein Verpolschutz) |
Bedienung
Taster SW1 im Betrieb
| Aktion | Wirkung |
|---|---|
| kurz tippen | Alarm stumm, bis er vorbei ist |
| ≥ 2 s halten | Grenzen einrichten, startet bei ± 1 % |
| im Einrichten tippen | Toleranz +1 % je Tipp (1…20, dann wieder 1) |
| im Einrichten 5 s warten | einlernen mit der gezeigten Toleranz, Wert wird gespeichert |
| ≥ 6 s halten | alle Grenzen löschen |
| beim Einschalten halten | Kalibriermodus |
Das Statusfeld unten rechts zeigt UEBERW, ALARM!, STUMM, beim Halten
SETUP bzw. LOESCH und im Einrichten die Toleranz, etwa +- 7%.
Summer dauerhaft aus: Jumper am ISP-Stecker J18 über Pin 1 und 3 (MISO gegen SCK). Zum Programmieren muss er ohnehin herunter.
Serielle Konsole (9600 Baud, ? zeigt die Liste):
l Aufzeichnung · r Rohwerte · s Stopp · 1–6 / a kalibrieren ·
g / G Grenzen anzeigen/setzen · e einlernen · t Toleranz ·
x löschen · m stumm · b Summer-Test
Firmware bauen und flashen
Arduino-IDE mit MiniCore: Board „ATmega328", Variante 328P,
Clock Internal 8 MHz, No bootloader → „Kompilierte Binärdatei
exportieren". Bibliothek LiquidCrystal ist im Core enthalten.
Fuses beim Brennen (z. B. TL866-II Plus, Xgpro, ATMEGA328P@DIP28):
Low = 0xE2 High = 0xD9 Ext = 0xFF (0xFD für Brown-out 2,7 V)Nach dem ersten Flashen einmal kalibrieren: beim Einschalten den Taster gedrückt halten.
Hardware
Das KiCad-Projekt liegt unter hardware/kicad/ und bringt alle benutzten
Symbole und Footprints als Projektbibliothek mit (libs/, eingebunden über
sym-lib-table und fp-lib-table). Es lässt sich also ohne zusätzliche
Bibliotheken öffnen und bearbeiten. KiCad 10.
Die 3D-Modelle liegen vollständig in hardware/kicad/packages3D/ – die
3D-Ansicht (Alt+3) ist nach dem Klonen sofort komplett, ohne weitere
Downloads.
Stückliste: hardware/BOM.md (mit Erklärungen) und hardware/BOM.csv.
Stand
Aufgebaut, bestückt und im Einsatz. Die Versionsgeschichte mit allen
Entscheidungen, Messungen und Fallstricken steht in CHANGELOG.md —
auch die Geschichte vom gefälschten LM4040.
Lizenz
MIT, siehe LICENSE. Nachbau, Änderung und Weitergabe sind ausdrücklich
erwünscht — über eine Rückmeldung im Forum freue ich mich.
Parts
79| Qty | Value | Footprint | References |
|---|---|---|---|
| 14 | 1N4148 | messystem:D_DO-35_SOD27_P7.62mm_Horizontal | D2, D3, D6, D7, D8, D9, D10, D11, D12, D13, D14, D15, D16, D17 |
| 10 | 100n | messystem:C_MAD | C2, C4, C5, C6, C7, C8, C9, C10, C11, C12 |
| 7 | 100k | messystem:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R10, R12, R14, R16, R17, R18, R23 |
| 6 | 1M | messystem:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R11, R13, R15, R19, R20, R21 |
| 2 | 100 | messystem:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R5, R22 |
| 2 | 5V/AC | messystem:PinSocket_1x04_P2.54mm_Vertical | J11, J12 |
| 2 | DC1-DC6 | messystem:PinSocket_1x12_P2.54mm_Vertical | J13, J14 |
| 2 | LOGO | messystem:1MHzLogo25 | 1MHZ, 1MHZ.de |
| 1 | 100uF | messystem:Elko_Mad | C13 |
| 1 | 10k | messystem:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R1 |
| 1 | 10k | messystem:Potentiometer_Bourns_3296W_Vertical | R4 |
| 1 | 10n | messystem:C_MAD | C3 |
| 1 | 150k | messystem:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R7 |
| 1 | 180 | messystem:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R3 |
| 1 | 1k | messystem:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R2 |
| 1 | 1u | messystem:C_MAD | C1 |
| 1 | 2N7000 | messystem:TO-92_Inline | Q1 |
| 1 | 330 | messystem:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R24 |
| 1 | 470k | messystem:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R6 |
| 1 | 5V | messystem:PinHeader_1x02_P2.54mm_Vertical-MAD | J9 |
| 1 | AC | messystem:PinHeader_1x02_P2.54mm_Vertical-MAD | J1 |
| 1 | ATmega328-P | messystem:DIP-28_W7.62mm | U2 |
| 1 | CD4051B | messystem:DIP-16_W7.62mm_Socket_LongPads | U1 |
| 1 | Conn_02x05_Odd_Even | messystem:IDC-Header_2x05_P2.54mm_Horizontal | J8 |
| 1 | DB207 | messystem:Diode_Bridge_DIP-4_W7.62mm_P5.08mm | D1 |
| 1 | DC1 | messystem:PinHeader_1x02_P2.54mm_Vertical-MAD | J2 |
| 1 | DC2 | messystem:PinHeader_1x02_P2.54mm_Vertical-MAD | J3 |
| 1 | DC3 | messystem:PinHeader_1x02_P2.54mm_Vertical-MAD | J4 |
| 1 | DC4 | messystem:PinHeader_1x02_P2.54mm_Vertical-MAD | J5 |
| 1 | DC5 | messystem:PinHeader_1x02_P2.54mm_Vertical-MAD | J6 |
| 1 | DC6 | messystem:PinHeader_1x02_P2.54mm_Vertical-MAD | J7 |
| 1 | DC6-2 | messystem:2mm-banane | J16 |
| 1 | EPM 121 | messystem:Buzzer_12x9.5RM7.6 | BZ1 |
| 1 | Erweiterung | messystem:PinHeader_1x06_P2.54mm_Vertical | J17 |
| 1 | ISP | messystem:PinHeader_2x03_P2.54mm_Vertical | J18 |
| 1 | LCD-20x4 | messystem:LCD-20x4 | U3 |
| 1 | LM4040LP-4.1 | messystem:TO-92_Inline | U5 |
| 1 | LOGO | messystem:qr-1mhz-mad | G*** |
| 1 | MCP6004 | messystem:DIP-14_W7.62mm_LongPads | U4 |
| 1 | SW_Push6 | messystem:SW_Tactile_SPST_Angled_PTS645Vx39-2LFS | SW1 |
| 1 | USB_B_Mini | messystem:USB_Mini-B_horizontal | J10 |
| 1 | serial | messystem:PinSocket_1x03_P2.54mm_Vertical | J15 |
Similar boards
- 2 layers213 × 65.1 mm

- 2 layers67 × 92 mm

Windmeter modbus interface
pe1mew/windmeters-modbus-interface
Universal interface for cup-anemo- and wind-directon- sensor to modbus
30 parts2 - 2 layers80 × 80 mm

Wire encoder modbus interface
pe1mew/wire-encoder-modbus-interface
A modbus interface for a resistor wire encoder and a WCH CH32V003J4M6
36 parts - 2 layers144.1 × 181.4 mm

Quadulator
GlobalSequence/quadulator
Quadulator - A quad LFO/ADSR envelope generator for Eurorack synthesizers
128 parts6 - 2 layers235 × 110 mm

Oblique Palette 0.5 PCB Main
Oblique-Industry/Oblique-Easel
Code, Electronics, and Industrial Design for the Oblique Easel Artmaschine Cyberdeck
350 parts5 - 2 layers100 × 100 mm

- 2 layers120 × 102.5 mm

Dsug cctv BOARD
LucasLHenry/spelltwister
This is the third version of the code for the Spelltwister module with CCTV. This version uses the Arduino platform and the RP2040, a chip developed by Raspberry Pi for their RPi Pico board.
251 partsMIT - 2 layers151.4 × 128.5 mm

Questions
How big is the Messystem PCB?
It measures 100 × 83.4 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Messystem use?
79 parts, built around the ATMEGA328-PU, MCP6004-E/P, CD4051BE and DB207. 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 Messystem KiCad files?
From the do2mad/messsystem-1mhz repository on GitHub, at the commit this page was made from: the board is hardware/kicad/messystem.kicad_pcb and its schematic hardware/kicad/messystem.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Messystem design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).