Skip to the content
PCBKitNew board
2 layers30.5 × 24.1 mmTiny44, the printed circuit board in 3D

Backend functionality for physical-digital notebooks

Size
30.5 × 24.1 mm
Copper layers
2
Thickness
1.6 mm
Parts
10
Nets
17
Pads
37
Tracks, vias
82, 0
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
18 Apr 2023
Updated
5 Dec 2024

Overview

Tiny44 is an open-source printed circuit board by machineagency, from the machineagency/tandem repository on GitHub, published under the CC-BY-4.0 licence. It is a 2-layer board of 30.5 × 24.1 mm with 10 parts on 17 nets, routed with 82 tracks and 0 vias.

It is built around the ATTINY44A-SSU. Its parts include 3 resistors, 2 ICs, 2 diodes, 2 connectors and 1 capacitor. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

1

README

README.md

Tandem

Tandem is a system that implements all parts of a two-sided CNC milling workflow as a single program. This repository comprises Tandem's backend server which facilitates communication between several parts:

  • The notebook programming interface, on the web and included in a separate repository.
  • The AR Overlay, in overlay/,
  • The notebook bridge, an add-in to run in Autodesk Fusion 360, in fusion360/,
  • The Shopbot server, which communicates with the physical CNC mill, in a separate repository.

To use Tandem, install this backend and open up the notebook to begin following the workflow.

Note to Readers

To browse the notebook without acutally using its functionality, simply navigate to the notebook on Observable and follow the instructions there. No installation is required in that case. If you wish to replicate the process on your own setup, follow the instructions below.

Notebook frontend on Observable Notebooks

Project Page on the Machine Agency Website

Installation

Backend

  1. In the root directory, run npm install.
  2. Run npm run server to run the backend server, which should now be running on localhost:3000 or similar. You, the notebook interface, and everything else can now make requests to the backend.

AR Overlay

  1. Navigate to overlay/ and run npm install.
  2. Run npm run dev and the AR overlay web page should be running on localhost:5174 or similar.
  3. Navigate to localhost:5174 in the browser to open the web page. This webpage should be directed to a projector over the CNC mill.

Notebook Bridge

  1. Install Autodesk Fusion 360 on your system.
  2. Go to "Manage Tools" and install the fusion360/toolLibrary/shopbotCamTool.json file.
  3. In "Scripts and Add-Ins," run fusion360/notebook-bridge/. Important: make sure the backend server is running when you run the notebook bridge, otherwise Fusion360 will stall as it polls a non-existent server.
  4. Alternatively, In "Scripts and Add-Ins", select edit, and in the VS Code window popup, select the run with debugger option.

Physical CNC Mill

To connect this backend to a physical CNC mill, you need to modify server.ts to send messages to the mill using your technology of choice.

For our implemenatation, we communicated with a Shopbot by: 1) running a server in the cloud that the backend could query, and 2) running a program on the computer that is physically connected to the Shopbot. See the accompanying repositories for more instructions on how to run these.

Then, change the line of code in server.ts

const url = "YOUR SERVER URL HERE";

to be the URL of the Shopbot server running in the cloud.

Projector Setup

  1. Turn on your projector with the remote
  2. Connect the projector to your device using an HDMI cable
  3. Move the localhost overlay browser window to the projector (ensure that your computer settings treat the projector as a second screen)
  4. In your browser's settings, change the browser to be full screen
  5. Navigate to the notebook to calibrate the projector and test your connection

Communicating with a Clank CNC Mill Running a Duet2 (PCB Demo)

For the PCB demo, we used a much simpler setup where we connected directly to the Clank CNC mill's controller board (Duet 2) directly over Ethernet.

  1. Make sure you've connected to the Duet page in the browser i.e. 192.168.1.2 and have that page open the whole time. See these instructions for an example of how to connect to the Duet over Ethernet.
  2. Run npm run server to start the server, Ctrl-C to stop it.
  3. While the server is running, make requests to localhost:3000 e.g. 192.168.1.2/rr_gcode?gcode=G0 X0 Y 10.

This approach would be more similar to most CNC mills, if you would like to use this approach as guidance for working with your own mill.

Parts

10
QtyValueFootprintReferences
21kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR2, R3
2LEDLED_SMD:LED_1206_3216MetricD1, D2
110kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR1
11uFCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC1
1ATtiny44A-SSUPackage_SO:SOIC-14_3.9x8.7mm_P1.27mmU2
1AVR-ISP-6Connector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_Vertical_SMDJ2
1Conn_01x02_MaleConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ1
1LM3480-5.0Package_TO_SOT_SMD:SOT-23U1

Questions

How big is the Tiny44 PCB?

It measures 30.5 × 24.1 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Tiny44 use?

10 parts, built around the ATTINY44A-SSU. 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 Tiny44 KiCad files?

From the machineagency/tandem repository on GitHub, at the commit this page was made from: the board is defaults/Tiny44.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Tiny44 design in my own project?

Its repository publishes it under the CC-BY-4.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 layersSv650 board, the printed circuit board in 3D

    Sv650 board

    RaysceneNS/SV-650-GearPositionIndicator

    This is a simple circuit that augments the second gen Suzuki SV650 to have a gear position indicator.

    10 parts12
  • 2 layers25.8 × 20 mmTM Warthog Open Analog Slew, the printed circuit board in 3D

    TM Warthog Open Analog Slew

    ServError/Thrustmaster_Warthog_Throttle_Alps_Slew_Mod

    An open source replacement for the terrible TM Warthog Throttle slew stick

    10 parts12
  • 2 layersT44-serial clock v4, the printed circuit board in 3D

    T44-serial clock v4

    danlil666/documentation

    This is the starting point of me trying to use GitHub.

    15 partsMIT
  • 2 layers50 × 50 mmAttiny44-ring, the printed circuit board in 3D

    Attiny44-ring

    TheBeachLab/alphabets

    Open Source Mechanical Split Flap Display, AKA Solari display

    21 parts134MIT
  • 2 layers57 × 55.2 mmLogicAnalyzer, the printed circuit board in 3D

    LogicAnalyzer

    gusmanb/logicanalyzer

    24 channel, 100Msps logic analyzer hardware and software

    10 parts5.1kGPL-3.0
  • 2 layers32.2 × 15.4 mmProtector, the printed circuit board in 3D

    Protector

    byrantech/laptop

    anyon_e, a highly integrated, high end, open source laptop. Attempt the impossible.

    10 parts4.3kMIT
  • 2 layers26 × 18 mmConn, the printed circuit board in 3D

    Conn

    yaqwsx/KiKit

    Automation tools for KiCAD

    10 parts2.1kMIT