Skip to the content
PCBKitNew board
2 layers100 × 50 mmDataModem, the printed circuit board in 3D

Data (RS-232/Serial) to Audio Modem

Size
100 × 50 mm
Copper layers
2
Thickness
1.6 mm
Parts
40
Nets
35
Pads
123
Tracks, vias
195, 67
Pours
2
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
4 Jan 2026
Updated
15 Jan 2026

Overview

DataModem is an open-source printed circuit board by acwright, from the acwright/DataModem repository on GitHub, published under the CERN-OHL-P-2.0 licence. It is a 2-layer board of 100 × 50 mm with 40 parts on 35 nets, routed with 195 tracks and 67 vias.

It is built around the MAX232N, LM358 and D09S33E4GX00LF. Its parts include 11 capacitors, 9 resistors, 6 connectors, 4 ICs and 1 diode. It belongs with the interfaces and adapters and audio and music boards of this library.

Main components

3

README

README.md

DataModem

Data (RS-232/Serial) to Audio Modem

DataModem

Usage

Connect the DataModem to your computer's serial port (or USB-to-Serial adapter) and to an audio input/output device (like a cassette recorder or audio interface). Use terminal software to send and receive data through the modem.

Configuration

  • Baud Rate: 300 baud (recommended for best reliability)
  • Tone Frequency: Approximately 4kHz
  • RV1: Adjusts output signal strength to the cassette recorder
  • RV2: Adjusts the triggering sensitivity of the Schmitt trigger for playback

How It Works

The DataModem uses a simple one-tone encoding system where the presence of a tone represents a 1 bit and silence represents a 0 bit.

Recording Data: When transmitting, a 555 timer (U2) generates a ~4kHz square wave tone when the UART input is high. The tone is buffered and AC-coupled before being fed to the cassette recorder input. When the UART input is low, the 555 is disabled and produces no tone.

Playing Back Data: During playback, a Schmitt trigger detects the presence of the recorded tone. A retriggerable 555 monostable circuit (U3) converts the rapid tone pulses into a steady output signal. The monostable stays on for 300μs when triggered, and continuous triggers from the 4kHz tone keep it active, producing a clean digital output that matches the original UART signal.

The circuit is designed for 300 baud operation, providing excellent reliability with minimal bit loss when properly calibrated.

Licence

This project is licensed under the CERN Open Hardware Licence Version 2 - Permissive License - see the LICENSE file for details.

Credits

This project is inspired by and based on the following works:

Parts

40
QtyValueFootprintReferences
710kResistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_HorizontalR1, R2, R4, R6, R7, R8, R9
4100nFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mmC7, C8, C10, C11
41uFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mmC2, C3, C4, C5
210kDataModem Parts:3386F-1-103LFRV1, RV2
210nFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mmC6, C9
2LM555Package_DIP:DIP-8_W7.62mmU2, U3
1100kResistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_HorizontalR5
110uFCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC1
11N4148Diode_THT:D_DO-35_SOD27_P7.62mm_HorizontalD1
12N3904Package_TO_SOT_THT:TO-92_InlineQ1
133kResistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_HorizontalR3
15VConnector_BarrelJack:BarrelJack_CUI_PJ-063AH_HorizontalJ1
15VTerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_HorizontalJ6
1DB9 FEMALE (DCE)Connector_Dsub:DSUB-9_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mmJ3
1INDataModem Parts:SWITCHCRAFT_PJRAN1X1U02XJ5
1LM358Package_DIP:DIP-8_W7.62mmU4
1LOGOA.C. Wright Logo:A.C. Wright Logo 5mmG***
1MAX232Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU1
1OUTDataModem Parts:SWITCHCRAFT_PJRAN1X1U02XJ4
1SERIALConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_HorizontalJ2

The 35 most common of 40 parts.

Questions

How big is the DataModem PCB?

It measures 100 × 50 mm and has 2 copper layers, 1.6 mm thick.

What parts does the DataModem use?

40 parts, built around the MAX232N, LM358 and D09S33E4GX00LF. 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 DataModem KiCad files?

From the acwright/DataModem repository on GitHub, at the commit this page was made from: the board is Hardware/DataModem.kicad_pcb and its schematic Hardware/DataModem.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the DataModem design in my own project?

Its repository publishes it under the CERN-OHL-P-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).

Similar boards

  • 2 layers132.1 × 45.7 mmIPoS, the printed circuit board in 3D

    IPoS

    peterheinrich/InternetOverSpaghetti

    Transmitting IP packages over a pair of spaghetti thus demonstrating how media independent IP really is.

    42 parts342
  • 2 layers100 × 50 mmDew Controller, the printed circuit board in 3D

    Dew Controller

    kuellenberg/Dew-Controller

    Dew heater controller for telescope dew heater straps

    92 parts2
  • 2 layers135.6 × 85.3 mmPCB Banc, the printed circuit board in 3D

    PCB Banc

    amine0561/PCB_Banc_Automatis-

    135 parts
  • 4 layers324.3 × 185.6 mmGriffin, the printed circuit board in 3D

    Griffin

    bradgrantham/griffin

    An M68000 homebrew SBC. See the design notes.

    305 partsApache-2.0
  • 2 layers203.2 × 130.8 mmRemoteHF, the printed circuit board in 3D

    RemoteHF

    mlanagan/RemoteHF

    Remote HF PCB and Node Red Website for WFView, SteppIRAntenna and Yeasu Rotator

    144 parts
  • 2 layers162.8 × 77.7 mmSerialboard, the printed circuit board in 3D

    Serialboard

    jgw4/a1cards

    The Apple Cassette Interface "ACI" card has been completely reverse-engineered in KiCad 10, with linked KiCad and schematic files, which output production-ready gerber files and a fully-populated step file of the card…

    8 parts
  • 2 layers40 × 55 mmPs2usb, the printed circuit board in 3D

    Ps2usb

    rasteri/HIDman

    Adapting USB devices to work on old computers

    26 parts432
  • 2 layers60.5 × 31.5 mmPs2-serial mouse adapter, the printed circuit board in 3D

    Ps2-serial mouse adapter

    necroware/ps2-serial-mouse-adapter

    PS/2 to serial port mouse adapter

    13 parts89GPL-3.0