

Controller
LED bal
- Size
- 94.4 × 89.8 mm
- Copper layers
- 4
- Thickness
- 4.69 mm
- Parts
- 36
- Nets
- 63
- Pads
- 238
- Tracks, vias
- 503, 61
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 6 (file 20211014)
- Created
- 7 Sep 2019
- Updated
- 24 Jul 2023
Overview
Controller is an open-source printed circuit board by tomverbeure, from the tomverbeure/ball repository on GitHub. It is a 4-layer board of 94.4 × 89.8 mm with 36 parts on 63 nets, routed with 503 tracks and 61 vias.
It is built around the WEMOS D1 MINI. Its parts include 21 resistors, 9 connectors and 4 ICs. It belongs with the ESP8266 and RP2040 boards of this library.
Main components
1README
README.mdFreeCAD to KiCAD PCB outline export
* Select face that you want as PCB outline
* Make sure face is aligned with the view
* With KiCAD StepUp plugin: project selected face to 2D
* Convert 2D object to sketch
* Export sketch to PCB layer
* [Arranging PCB components in a circle with a script](http://kevincuzner.com/2017/04/28/arranging-components-in-a-circle-with-kicad/)-
Postprocessing
- Chamfer alignment stickouts at the bottom (0.8mm)
- Chamfer bottom of the triangle (1mm)
- Fillet the 3 corners of the triangle (1mm)
LED Sphere
-
Isosahedron: 20 triangular faces
Progression: 1, 1+3 = 4, 4 + 5 = 9, 9 + 7 = 16, 16 + 9 = 25, 25 + 11 = 36, 36 + 13 = 49
- 1 triangle -> 1 triangle: 20 faces
- 1 triangle -> 4 triangles: 80 faces
- 1 triangle -> 9 triangles: 180 faces
- 1 triangle -> 16 triangles: 320 faces
- 1 triangle -> 25 triangles: 500 faces
Possibilities:
* 80 faces, but divide each face into 16 LEDs -> 1280 LEDs
* 80 faces, but divide each face into 25 LEDs -> 2000 LEDs
* 80 faces, but divide each face into 36 LEDs -> 2880 LEDs
* 80 faces, but divide each face into 49 LEDs -> 3920 LEDs-
20 faces printed.
- 2-sided triangle: 3 LEDs -> 60 LEDs
- 3-sided triangle: 6 LEDs -> 120 LEDs
- 4-sided triangle: 10 LEDs -> 200 LEDs
- 5-sided triangle: 15 LEDs -> 300
- 6-sided triangle: 21 LEDs -> 420
- 7-sided triangle: 27 LEDs -> 540
- 8-sided triangle: 35 LEDs -> 700
Plug-in LEDs
-
WS2812D-F8: $0.11 for 100+
References
-
Construction of regular icosahedron within a given sphere
"From this it is manifest that the square on the diameter of the sphere is five times the square on the radius of the circle from which the icosahedron has been described, and that the diameter of the sphere is composed of the side of the pentagon and two of the sides of the decagon inscribed in the same circle."
Dsphere^2 = 5 * (Rpent^2)
Rpent = sqrt(Dsphere^2/5) = Dsphere/sqrt(5) = 2 * Rsphere / sqrt(5)
-
Ad Quadratum Construction and Study of the Regular Polyhedra
FreeCAD comments
-
Base.Vector getAngle -> radians, all other functions -> degrees
-
Simply viewing actions, such as aligning view to face are not present out of the box
-
aligning a object along an axis is broken.
-
Location of buttons in the toolbar always changes
-
Add spheres for orientation
-
FreeCAD over OpenSCAD: interactivity
-
The number of LEDs must be chosen so that there's room in the center for a screw.
-
When doing an align operation on a object that was created by an assembly of multiple identical components, first create a Compound of it in Part. Otherwise, the align seems to happen on the main component, not on the additional copies.
Parts
36| Qty | Value | Footprint | References |
|---|---|---|---|
| 16 | R | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R17, R18 |
| 5 | 100K | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R15, R16, R19, R20, R21 |
| 3 | LED Power | Connector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_Vertical_SMD | J2, J3, J4 |
| 2 | Conn_01x01 | TestPoint:TestPoint_Loop_D3.80mm_Drill2.0mm | J10, J11 |
| 2 | LED Data | Connector_PinHeader_2.54mm:PinHeader_2x06_P2.54mm_Vertical_SMD | J1, J6 |
| 1 | 5V Power | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | JP1 |
| 1 | Battery_Two_Cell | 2x18650_battery_holder:battery_holder | BT1 |
| 1 | Conn_01x03_Male | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical_SMD_Pin1Left | J7 |
| 1 | LM2596 StepDown Board | LM2596_Board:YAAJ_DCDC_StepDown_LM2596 | U3 |
| 1 | MPU-6050 Board | MPU-6050_Board:MPU-6050_Board_no_screw_holes | U4 |
| 1 | Pico | MCU_RaspberryPi_and_Boards:RPi_Pico_SMD_TH | U1 |
| 1 | WeMos_D1_mini | Module:WEMOS_D1_mini_light | U2 |
| 1 | locked | Connector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_Vertical_SMD | J5 |
Questions
How big is the Controller PCB?
It measures 94.4 × 89.8 mm and has 4 copper layers, 4.69 mm thick.
What parts does the Controller use?
36 parts, built around the WEMOS D1 MINI. 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 Controller KiCad files?
From the tomverbeure/ball repository on GitHub, at the commit this page was made from: the board is pcb/controller/controller.kicad_pcb and its schematic pcb/controller/controller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Controller design in my own project?
Its repository states no licence, so its author keeps all rights: ask tomverbeure before reusing the design.
More from tomverbeure/ball
2- 2 layers56.8 × 65.5 mm

- 4 layers94.4 × 89.8 mm

Similar boards
- 2 layers70.1 × 43.2 mm

Iaq device
nkitanov/iaq_board
IAQ Board is a DIY (Do-It-Yourself) device for measuring internal air quality
19 parts396 - 2 layers37.6 × 29.3 mm

Romulator programmer interface
bitfixer/bf-romulator
Romulator - RAM/ROM replacement and debug for 6502 CPU systems
5 parts160 - 2 layers32.1 × 40.8 mm

Power Monitor Version 1
alcar21/WemosEM
Cheap power monitor (STC013) with Home Assistant Discover and Wemos D1 Mini / PRO (esp8266)
8 parts122 - 2 layers91 × 49 mm

- 2 layers97.5 × 59.3 mm

Control Board
kholia/Easy-Digital-Beacons-v1
A simple and easy Arduino / Pi Pico / ESP8266-powered WSPR, FT8, and FT4 beacon system which uses NTP + DS3231 RTC for timing. Super extensible! Now comes with optional GPS support.
17 parts89 - 2 layers64.6 × 36.9 mm

Navien latest
htumanyan/navien
Navien water heater wire protocol for communication with NaviLink and other attached devices
30 parts65 - 2 layers49.5 × 30 mm

- 2 layers
