Skip to the content
PCBKitNew board
2 layers132 × 79 mmSolenoid, the printed circuit board in 3D

A warp-weighted loom, live codeable via solenoids.

Size
132 × 79 mm
Copper layers
2
Thickness
1.6 mm
Parts
56
Nets
54
Pads
186
Tracks, vias
485, 12
Pours
1
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
22 Jul 2019
Updated
21 Mar 2022

Overview

Solenoid is an open-source printed circuit board by Kairotic, from the Kairotic/liveloom repository on GitHub. It is a 2-layer board of 132 × 79 mm with 56 parts on 54 nets, routed with 485 tracks and 12 vias.

It is built around the TIP120. Its parts include 16 resistors, 16 diodes, 16 transistors and 8 connectors.

Main components

1

README

README.md

Liveloom

A warp-weighted loom, live codeable via solenoids.

lasercut.svg

This creates the shapes required to lasercut a loom from 3mm material. I used baltic birch plywood, MDF would likely do just as well.

Other things needed

  • 4mm diameter metal rod
  • 25mm diameter wooden rod
  • Solenoids - "DC 12V 10mm Push-Pull Actuator Frame Type Electromagnet Solenoid Electric Magnet" - can be found for about £2 each. With this design, I recommend getting either 12 or 16.
  • Relays - I used a board with 16 of them. "16-channel Relay Module Board 5v12v".
  • Arduino (and 'jumper jerky' wire) to control the relays
  • PSU for the relays
  • PSU for the solenoids - This needs some power. I used "RS PRO 102W Embedded Switch Mode Power Supply SMPS, 8.5A, 12V dc". (You might need even more amps to power all your relays at once)
  • Loom weights, one per thread - I recommend small plastic weighted kumihimo bobbins for this, then you can easily store the warp inside, but you can also use smallish bolts and wrap the warp around..
  • Screws to attach the solenoids, I think I needed M2.5 screws for mine.
  • wire to connect up the solenoids etc. This needs to be fairly heavy duty, to take the amps!
  • diodes to protect everything against kickback from the solenoids. I still need to add these myself!

Rough instructions

My plywood was bendier in one direction - basically if there is a grain have it go horizontal otherwise E1/E2 will bend too much with the weight of the solenoids.

A* and B* are the main legs and supports. D0 slots into the support and is where I screw my relay switch board.

Below you see 'lollypop stick' heddles. Each has a 'mouth', two of the things that look like capital As slot into each 'mouth', creating a nice strike area for the solenoid. Half of the heddles have bends, so the solenoids can be on two axes (doubling the number you can have in a given amount of space).

The circles above the heddles are wooden washers to space the lollypop sticks out so they line up with the solenoids, I woodglue one to each heddle. These are then threaded onto a 4mm metal rod. I add a small metal washer or two to line everything up with the solenoids.

E1 and E2 are what the solenoids are screwed on to.

C* are assembled with wood glue, and then slotted into the front of the legs A4, with E1 and E2 and the 4mm rod slotted in using the provided holes.

Contact alex@slab.org with any questions - I'd be happy offer advice to get you up and running.

WWL.hs

An experimental haskell library for live coding the loom.

Start ghci, and then initialise the library like this (replacing with the path to your arduino's USB connection):

text
:load WWL

(set, next, undo, again, show) <- startFs "/dev/serial/by-id/usb-Arduino__www.arduino.cc__0043_5573731323135141A191-if00"

Then code a structure like this:

text
set $ every 2 rev $ twill 1 $ cycle [up,down,down,up]

And run next to send the next line to the loom, again to send it again, or undo to go back.

Parts

56
QtyValueFootprintReferences
161N4007Diode_THT:D_DO-41_SOD81_P10.16mm_HorizontalD1, D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12, D13, D14, D15, D16
162.2KResistor_THT:R_Axial_DIN0309_L9.0mm_D3.2mm_P12.70mm_HorizontalR1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16
16TIP120Package_TO_SOT_THT:TO-220-3_VerticalQ1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9, Q10, Q11, Q12, Q13, Q14, Q15, Q16
4Conn_01x01MountingHole:MountingHole_2.2mm_M2_Pad_ViaJ5, J6, J7, J8
2ArduinoConnector_PinHeader_2.54mm:PinHeader_2x09_P2.54mm_VerticalJ1, J2
2Conn_01x01_MaleConnector_Pin:Pin_D1.0mm_L10.0mmJ3, J4

Questions

How big is the Solenoid PCB?

It measures 132 × 79 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Solenoid use?

56 parts, built around the TIP120. 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 Solenoid KiCad files?

From the Kairotic/liveloom repository on GitHub, at the commit this page was made from: the board is solenoid/solenoid.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Solenoid design in my own project?

Its repository states no licence, so its author keeps all rights: ask Kairotic before reusing the design.

Similar boards

  • 2 layers364.4 × 167.3 mmRedherring, the printed circuit board in 3D

    Redherring

    dcpedit/redherring

    Red Herring Keyboard PCB and case files

    226 parts253CC-BY-4.0
  • 2 layers148.8 × 132.2 mmUsbflashprog, the printed circuit board in 3D

    Usbflashprog

    robsonsmartins/usbflashprog

    A memory device programmer (Flash/EPROM/E2PROM) board and software, connected to PC by USB port.

    125 parts36
  • 2 layers489.6 × 170.7 mmMission control, the printed circuit board in 3D

    Mission control

    dcpedit/mission-control

    Modern replacement PCB for the IBM Model M 122

    286 parts31CC-BY-4.0
  • 2 layers168 × 123 mmV2 - 2, the printed circuit board in 3D

    V2 - 2

    RudgeLab/FluoPi

    Code and teaching materials for UC/BackyardBrains raspberry pi "macro" scope.

    131 parts26
  • 2 layersCatozap, the printed circuit board in 3D

    Catozap

    jones139/catocam

    Uses a custom trained YoloV8 model on a Raspberry Pi to Detect Cats in CCTV images and Unleash a Cat Deterrent

    3 parts18GPL-3.0
  • 2 layers32.5 × 21.2 mmTaptap, the printed circuit board in 3D

    Taptap

    dcpedit/taptap

    TapTap is a solenoid breakout board for those who are interested in adding a solenoid to their existing project. All you need are the following components, and an extra data pin on your microcontroller.

    9 parts13CC-BY-4.0
  • 2 layers323.8 × 169.8 mmAegis, the printed circuit board in 3D

    Aegis

    Koumbaya/Aegis

    unibody CRBKD-compatible PCB and cases.

    110 parts12
  • 2 layers57.1 × 102.9 mmSynthwave, the printed circuit board in 3D

    Synthwave

    alexose/synthwave

    An open-source experiment in carbon removal based on the electrochemical pH swing of seawater.

    70 parts10CERN-OHL-P-2.0