Skip to the content
2 layers57.4 × 132.3 mmCircuitBoardV2, the printed circuit board in 3D

An Open Source RGB Controller with enough ports to light up the sky. No processing load on your computer either!

Size
57.4 × 132.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
53
Nets
131
Pads
360
Tracks, vias
723, 31
Routed
Yes
KiCad
KiCad 5 (file 20210424)
Created
21 Dec 2020
Updated
19 Dec 2021

Overview

CircuitBoardV2 is an open-source printed circuit board by Technologyman00, from the Technologyman00/Teensy-PC_RGB_Controller repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 57.4 × 132.3 mm with 53 parts on 131 nets, routed with 723 tracks and 31 vias.

It is built around the TXS0108EPWR. Its parts include 42 connectors and 5 ICs. It belongs with the lEDs and displays boards of this library.

Main components

1

README

README.md

Teensy-PC_RGB_Controller

The whole Idea behind this project was to create a much better RGB controller than the controllers or motherboard software I have seen. Currently It has already met that goal as it can play any pattern for many LEDs and up to individual 40 devices. I am still working on the user interface and many qualities of life things, but the main functionality does work. HOWEVER, it will need a PCB made to power all the LEDs as a Teensy cannot power that many safely.

Features

  • No Extra load on the CPU. The teensy has its own built in CPU that will handle all the commands to the ARGB devices.
  • Store Loads of Patterns or Huge animations. The teensy uses an SD card to save and read all the patterns allowing for a huge number of patterns to be saved.
  • Up to 40 ports. Most Controllers top out at a maximum of 4 ports. The teensy has 40! This allows each device to do its own individual pattern.
  • Any pattern! There are no limitations on what can be displayed because it plays back frames allowing an almost infinite amount of customization.
  • Standard Plugs! This uses the regular 3 pin 5V ARGB connectors so any device with the same connector can be used!
  • OPEN SOURCE! Are you a bit handier than most? You can change anything you would ever what about this project!

Documentation

Pattern Files

DescriptionCommandArgument 1Argument 2
Send RGB Command:0Port NumberColor Data
Send HSV Command:1Port NumberHue (2 Bytes) S (1 Byte) V (1 Byte)
Change Frame Delay:2Delay (2 Bytes)N/A
Create Device/Change Length:3Port NumberNumber of Pixels
Start New Frame:4N/AN/A
  • Port 13 is not accessable from the hardware as it has the status LED so it was intentionally skipped in the PCB design.

  • Color Data is a continuous set of the RGB or HSV values. It will be (3 * Number of Pixels in Device) bytes long. For example it would go (Red Byte)(Blue Byte)(Green Byte)(Red Byte)(Blue Byte)(Green Byte)... or (Hue Byte)(Saturation Byte)(Value Byte)(Hue Byte)(Saturation Byte)(Value Byte)... All these bytes are from 0-255 with no decimals, as bytes are. For hue, saturation, and value these are all scaled to their corrective values.

  • The delay value is split into 2 different bytes to allow a delay between 0 and 65535ms or 65.5 seconds. This allows a great range between quick animations and still colors. This value does not matter so much for still colors as the pattern file will just start over once it reaches the end re-displaying the same color.

Serial Commands

DescriptionCommandArgument 1Argument 2Argument 3
Play File on SD Card:PFile NameN/AN/A
Write File to SD Card:WFile NameLength to Read (4 Bytes)File Data
Delete File on SD Card:XFile NameN/AN/A
List Files on SD Card:LN/AN/AN/A
Change Startup File:SFile NameN/AN/A
Display Frame:DRGB or HSV -> (0 or 1)Port NumberColor Data
New Device:NPortNumber of PixelsN/A
Restart Teensy:RN/AN/AN/A
Check Teensy Tempature:TN/AN/AN/A
  • File Name requires the file type "example.txt"
  • File Data follows the documentation as setup in pattern files
  • Length to Read is split into 4 bytes to allow very large files to be transferred (~4.3 GB) (if larger than ~4.3 GB just put the file onto the SD card manually)
  • Color Data also follows the documentation as shown in pattern files
  • Deleting files will ask if "Are sure you want to delete this?" A response is needed of Y/N before it will continue. Everything is halted when this is prompted.
  • Showing a Frame will not return to normal file reading until an exit command of X is sent.

Startup Handler

On startup the teensy will first read the startup.txt file which should contain the name of the file and only the name of the file. If this file does not exist or the code is unhappy with what was entered it will delete the startup.txt file and replace it with a startup.txt file that will run the default pattern file. The default pattern file sets all 40 ports to display Green on 255 pixels on those ports. This should make it so that it is obvious that the Teensy is working. The startup.txt file can be changed by either editing the file in a text editor or by sending the S command over serial.

Updates

6/6 Full Deployment!!!!! Example 1: https://youtu.be/utrNA2Hu2Kg Example 2: https://youtu.be/6SqUPKUgLiA

5/30 Version 2 of the PCB was ordered and should be arriving shortly. This new version is to fix the concerns with the previous version, as the size was quite large and there was a design error. Both should be fixed in this version. Pin 13 was also taken off of the available pins as it was decided that it should be used as a status LED and should remain off if used.

3/14 PCB Came in had issues. The Output enable pin was grounded not powered, which means it was disabled not enabled. (Woops) A small soldered wire fixed that. First Test : https://youtu.be/IeGvDfm8C_M

photo of wire added to PCB

Limitations

Files
  • Limited to a File Name of 8 Characters
    • example1.txt is at the max length
  • Is not case-sensitive
    • example1.txt == EXAMPLE1.txt
Max SD card size is 32 GB
  • There are some potential work arounds for larger SD cards
LED Devices can only be added not removed per a given reboot
  • I really cant imagine this being an issue for anyone, but I thought its important to note just incase.
  • If 40 devices are created then they cannot be removed until a reboot
  • All 40 devices will be written to until a reboot occurs

To Do

  • Create Pattern Designer
  • Loop Commands inside Files?
  • Command Files for other Files?
  • Allow devices to be removed without reboot?

Parts

53
QtyValueFootprintReferences
40Conn_01x04_MaleConnector:FanPinHeader_1x04_P2.54mm_VerticalJ1, J2, J10, J11, J12, J13, J14, J15, J16, J17, J18, J19, J20, J23, J24, J25 +24
5TXS0108EPWRTXS0108EPWR:SOP65P640X120-20NU1, U2, U3, U4, U5
2Conn_01x24_FemaleConnector_PinSocket_2.54mm:PinSocket_1x24_P2.54mm_VerticalJ21, J22
1Conn_01x04_MaleMolex:7708461JMolex1
1LOGOOpenSource:OpenSourceFixG***

The 49 most common of 53 parts.

More from Technologyman00/Teensy-PC_RGB_Controller

1
  • 2 layers79.8 × 138.9 mmCircuitBoard, the printed circuit board in 3D

    CircuitBoard

    Technologyman00/Teensy-PC_RGB_Controller

    An Open Source RGB Controller with enough ports to light up the sky. No processing load on your computer either!

    52 parts1GPL-3.0

Similar boards

  • 12 layers180 × 150 mmMarble, the printed circuit board in 3D

    Marble

    BerkeleyLab/Marble

    Dual FMC FPGA carrier board developed for general purpose use in particle accelerator electronics instrumentation.

    1,006 parts35
  • 4 layers70 × 53.3 mmCamboard uno q, the printed circuit board in 3D

    Camboard uno q

    RevLmt/camboard-uno-q

    shield for uno q

    15 parts7CERN-OHL-P-2.0
  • 4 layers85 × 56 mmV link hat, the printed circuit board in 3D

    V link hat

    BoostedMoose/v-link-hat

    Official repository of the V-Link HAT

    96 parts6
  • 6 layers100 × 100 mmImx8x eps leviathan v2, the printed circuit board in 3D

    Imx8x eps leviathan v2

    BroncoSpace-Lab/scales-hardware

    Hardware design files for the Spacecraft Compartmentalized Autonomous Learning and Edge Computing System (SCALES)

    449 parts6
  • 2 layers100 × 100 mmArrow deca retro cape, the printed circuit board in 3D

    Arrow deca retro cape

    somhi/DECA_retro_cape_2

    Retro cape (addon) for DECA FPGA

    79 parts5
  • 4 layers86 × 69 mmZYNQ7000 MINIMB, the printed circuit board in 3D

    ZYNQ7000 MINIMB

    dj140/ZYNQ7020_Development_Board

    156 parts2
  • 4 layers92 × 56 mmREIN R1, the printed circuit board in 3D

    REIN R1

    rein-baremetal/REIN_R1_KiCad

    Dual-MCU baremetal embedded development board featuring high-speed QSPI storage, hardware USB hub, and flexible power management. Open for PCB trace routing collaboration

    177 parts2
  • 4 layers240 × 90.5 mmBILLEE Rover Control Module V1, the printed circuit board in 3D

    BILLEE Rover Control Module V1

    BILLEE-BroncoSTAR/billee-hardware-2027

    Hardware and firmware Repository for BILLEE URC 2027

    276 parts1MIT

Questions

How big is the CircuitBoardV2 PCB?

It measures 57.4 × 132.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the CircuitBoardV2 use?

53 parts, built around the TXS0108EPWR. 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 CircuitBoardV2 KiCad files?

From the Technologyman00/Teensy-PC_RGB_Controller repository on GitHub, at the commit this page was made from: the board is 2 PCB/V2 Board KiCad 5.99/CircuitBoardV2/CircuitBoardV2.kicad_pcb and its schematic 2 PCB/V2 Board KiCad 5.99/CircuitBoardV2/CircuitBoardV2.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the CircuitBoardV2 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).