Skip to the content
PCBKitNew board
2 layers177 × 62.5 mmBarcode, the printed circuit board in 3D

3D printable lever steno machine

Size
177 × 62.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
28
Nets
38
Pads
148
Tracks, vias
299, 17
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
13 Sep 2025
Updated
9 Mar 2026

Overview

Barcode is an open-source printed circuit board by noette, from the noette/barcode repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 177 × 62.5 mm with 28 parts on 38 nets, routed with 299 tracks and 17 vias.

It is built around the AH49ENTR-G1 and CD4051BE. It belongs with the RP2040 boards of this library.

Main components

2

README

README.md

barcode

Prototype 3D printable lever steno machine.

Part List

  • 24x Hall effect sensor: AH49ENTR
  • 3x 8:1 Muxes: CD4051BE
  • 1x Microcontroller: Seeed Studio RP2040
  • 76x Magnets: 5mm x 2mm
  • 1x Axle: 5mm x 185mm

PCB

KiCad files for the PCB are in PCB.

AH49ENTR and CD4051BE footprints from DigiKey. RP2040 footprints from Seeed Studio.

3D Printed Parts

machine.3mf contains the assembly with all the parts to be 3D printed.

Firmware

Firmware was written in Arduino and is in firmware.ino.

On first boot, the machine enters calibration mode. Press each key fully down to calibrate the sensor, once all keys have been calibrated the machine will begin to send keypresses.

Assembly

Solder the components onto the PCB. It fits around the second row of pillars in the case.

The "keycaps" for the asterisk and pinky keys are printed separate and can be fit onto the corresponding levers.

Each lever has a magnet hole below the key which is used for sensing. The magnet in the hole on the side should attract to the corresponding magnet hole in the case.

The escapement has 10 magnet holes in the bottom which pair up to the 10 holes in the case, as well as 2 more holes on the side. I learned this was very overkill. I only left 2 pairs of the bottom magnets in. The magnets in the escapement should be repelling the ones in the case.

After all magnets are in, place the escapement and keys in the case and thread the axle through.

Current issues/limitations

  • Magnets are stronger than I'd like, makes the escapement mechanism not all that effective. Could either switch to smaller magnets or come up with some system for adjustable strength?
  • Key travel on top row is much less than the vowels (though is this just how it is on lever machines?)
  • PCB needs to be better positioned and secured
  • Axle is not actually attached in the machine at all
  • Haven't implemented any actual steno protocols in the firmware. Since I couldn't get Arduino NKRO to work, it only sends the keys on stroke release.

Parts

28
QtyValueFootprintReferences
24AH49ENTR-G1AH49ENTR:SOT-23-3_DIOU1, U2, U10, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U24, U25, U26 +8
3CD4051BECD4051BE:N16U11, U12, U23
1XIAO-RP2040-DIPSeeed Studio XIAO Series Library:XIAO-RP2040-DIPU28

Questions

How big is the Barcode PCB?

It measures 177 × 62.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Barcode use?

28 parts, built around the AH49ENTR-G1 and CD4051BE. 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 Barcode KiCad files?

From the noette/barcode repository on GitHub, at the commit this page was made from: the board is PCB/PCB.kicad_pcb and its schematic PCB/OPL_Kicad_Library-master/Grove Vision AI V2 Library/Grove - Vision AI Module V2.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Barcode design in my own project?

Its repository publishes it under the GPL-3.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

  • 4 layers65.6 × 91.8 mmKronos V1, the printed circuit board in 3D

    Kronos V1

    AddeyX/Kronos-Hardware

    Kronos - By AddeyX

    229 parts1
  • 2 layers200 × 100 mmPolykit x voice card, the printed circuit board in 3D

    Polykit x voice card

    polykit/polykit-x-voice-card

    Schematics and PCB layout for a voice card with multimode filter for a polyphonic synthesizer

    207 parts58
  • 2 layers124.5 × 77.5 mmAutopatzer, the printed circuit board in 3D

    Autopatzer

    jes/autopatzer

    Automatic chess board

    40 parts30
  • 2 layers285 × 222.5 mmPolykit x mainboard, the printed circuit board in 3D

    Polykit x mainboard

    polykit/polykit-x-mainboard

    Schematics and PCB layout for a mainboard for an 8 voice polyphonic synthesizer

    220 parts22
  • 2 layers66 × 114.3 mmSixnavPrototype, the printed circuit board in 3D

    SixnavPrototype

    GreenCappuccino/SixnavPrototype

    testbed for 6DOF input device development

    38 parts13
  • 4 layers26.4 × 41.7 mmDspod cv1800b, the printed circuit board in 3D

    Dspod cv1800b

    emeb/dspod

    A family of boards for Eurorack DSP audio

    96 parts10MIT
  • 2 layers144.1 × 181.4 mmQuadulator, the printed circuit board in 3D

    Quadulator

    GlobalSequence/quadulator

    Quadulator - A quad LFO/ADSR envelope generator for Eurorack synthesizers

    128 parts6