Skip to the content
PCBKitNew board
2 layers100.3 × 72.4 mmNewMain, the printed circuit board in 3D

Open source vending machine controller firmware

Size
100.3 × 72.4 mm
Copper layers
2
Thickness
1.6 mm
Parts
13
Nets
10
Pads
36
Tracks, vias
55, 1
Routed
Yes
KiCad
KiCad 4
Created
25 Jan 2016
Updated
11 Oct 2023

Overview

NewMain is an open-source printed circuit board by temoto, from the temoto/vender repository on GitHub, published under the CC0-1.0 licence. It is a 2-layer board of 100.3 × 72.4 mm with 13 parts on 10 nets, routed with 55 tracks and 1 via.

It is built around the BC807. Its parts include 5 resistors, 5 connectors, 2 transistors and 1 IC. It belongs with the interfaces and adapters boards of this library.

Main components

1

README

readme.md

What

Vender is free open source VMC (Vending Machine Controller).

Status:

  • MDB adapter hardware module - works
  • VMC - in development
  • Configuration editor - planned

Hardware

Required for VMC:

  • Works on RaspberryPI and OrangePi Lite (H3). Possibly anything with GPIO that runs Go/Linux.
  • MDB signal level inverter and current limiter - required, see files in hardware/schematic
  • MDB adapter, takes care of 9bit and timing, we use ATMega328p with hardware/mega-firmware It is not mandatory, software option is available: https://github.com/temoto/iodin

Supported peripherals:

  • MDB coin acceptor, bill validator
  • Evend MDB drink devices
  • any MDB device via configuration scenarios (work in progress)
  • MT16S2R HD44780-like text display
  • TWI(I2C) numpad keyboard
  • SSD1306-compatible graphic display (planned)

Design

VMC overall structure:

  • engine (see internal/engine packages) executes actions, handles concurrency and errors
  • device/feature drivers provide actions to engine
  • configuration scenario specifies action groups and when to execute them

Build

  • Install Go 1.15 from https://golang.org/dl/
  • Set target environment, default is GOARCH=arm GOOS=linux
  • Run script/build
  • Deploy file build/vender to your hardware

Supported Go versions: 1.13 and 1.15

Vender compiled with Go 1.13 was successfully running in production until release v0.200630.0. Go 1.14 introduced async preemtible runtime by interrupting syscalls. Go 1.15 os and net packages automatically retry on EINTR.

Parts

13
QtyValueFootprintReferences
4Conn_01x01Connectors:Pin_d0.7mm_L6.5mm_W1.8mm_FlatForkJ2-1, J2-2, J2-3, J2-4
2680RResistors_SMD:R_0603_HandSolderingR4, R5
2BC807TO_SOT_Packages_SMD:SOT-23Q1, Q2
110KResistors_SMD:R_0603_HandSolderingR2
12K2Resistors_SMD:R_0603_HandSolderingR1
139RResistors_SMD:R_0603_HandSolderingR3
1DC24V-DC5VKiCad:dc24-dc5U1
1MDBConnectors_Molex:Molex_MegaFit_2x03x5.70mm_AngledJ1

Questions

How big is the NewMain PCB?

It measures 100.3 × 72.4 mm and has 2 copper layers, 1.6 mm thick.

What parts does the NewMain use?

13 parts, built around the BC807. 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 NewMain KiCad files?

From the temoto/vender repository on GitHub, at the commit this page was made from: the board is hardware/schematic/KiCad/NewMain.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the NewMain design in my own project?

Its repository publishes it under the CC0-1.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 temoto/vender

1
  • 2 layers122.4 × 69.1 mmEvend adapter, the printed circuit board in 3D

    Evend adapter

    temoto/vender

    Open source vending machine controller firmware

    40 parts91CC0-1.0

Similar boards

  • 4 layers129 × 104.6 mmPC-1100X, the printed circuit board in 3D

    PC-1100X

    zscircuits/zs1100a

    All files hardware and software related to the zs1100a

    528 parts76
  • 2 layers55 × 100 mmESP32AY revD2, the printed circuit board in 3D

    ESP32AY revD2

    djspawnbrest/ESP32AY

    ZxPod - ESP32 based AY multiformat player

    138 parts59GPL-3.0
  • 2 layers40 × 24 mmBLDC driver, the printed circuit board in 3D

    BLDC driver

    walmis/BLDC-Servo

    FOC Motor Controller for 57BLF0x NEMA brushless motor

    107 parts43
  • 2 layers89.6 × 79 mmTDR 5351 core, the printed circuit board in 3D

    TDR 5351 core

    MR-DOS/TDR_diploma_thesis

    Time domain reflectometer. Includes Hardware, firmware and GUI in Octave. Also a diploma thesis.

    199 parts33GPL-3.0
  • 2 layers62.5 × 47 mmPhilphoc luma, the printed circuit board in 3D

    Philphoc luma

    Jana-Marie/philphoc-luma

    Zigbee/Hue to WS2812 or similar addressable LED bridge.

    45 parts19
  • 6 layers60.6 × 100 mmGecko5education, the printed circuit board in 3D

    Gecko5education

    logisim-evolution/GECKO5Education

    Openhardware educational platform based on the ideas of the ulx3s and Gecko4Education

    311 parts18MIT
  • 4 layers100 × 100 mmMWGEN G1, the printed circuit board in 3D

    MWGEN G1

    MR-DOS/MWGEN-G1

    12.5 MHz - 6400 MHz (LMX2572) or even up to 20 GHz (LMX2595) generator board with int./ext. reference.

    373 parts18GPL-3.0