Skip to the content
PCBKitNew board
2 layers25.8 × 35.5 mmOctopixel, the printed circuit board in 3D

An extension board for additional Neopixels for the Octopus boards

Size
25.8 × 35.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
8
Nets
17
Pads
44
Tracks, vias
50, 0
Pours
2
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
26 Oct 2024
Updated
1 Feb 2025

Overview

Octopixel is an open-source printed circuit board by jrlomas, from the jrlomas/OctoPix repository on GitHub, published under the MIT licence. It is a 2-layer board of 25.8 × 35.5 mm with 8 parts on 17 nets, routed with 50 tracks and 0 vias.

It is built around the CD4050BE. Its parts include 5 connectors and 1 IC. It belongs with the lEDs and displays boards of this library.

Main components

1

README

README.md

OctoPix Expansion PCB for BTT Octopus Board

OctoPix Front View OctoPix Rear View

This PCB expansion board adds additional Neopixel outputs to your BTT Octopus board, allowing for custom RGB lighting configurations. It plugs into the Octopus's SPI3 header (J47) and provides four JST-XH 3-pin connectors to support up to four separate Neopixel connections.

Features

  • 4x JST-XH 3-pin connectors for Neopixel data connections
  • Compatible with the BTT Octopus control board for 3D printers
  • Designed to plug directly into the SPI3 (J47) header on the Octopus
  • Compact design fits neatly without obstructing other ports or components on the Octopus board
  • Buffered data signals using a CD4050B (DIP 16 package) for reliable Neopixel communication

Bill of Materials (BOM)

QuantityPart DescriptionExample Sourcing Links
4JST-XH 3-pin connectorsDigiKey
12x5 header, 2.54mm pitch (Sullins SFH11-PBPC-D05-RA-BK)DigiKey SFH11-PBPC-D05-RA-BK
1CD4050B (DIP 16 package)DigiKey

Installation

  1. Align the OctoPix PCB with the J47 SPI3 header on the Octopus board.
  2. Gently press the OctoPix PCB into the J47 header until fully seated.
  3. Connect your Neopixel strips to the 3-pin JST-XH connectors on the OctoPix PCB.
  4. Power on your Octopus board and configure your Neopixel effects using your preferred firmware (e.g., Klipper, Marlin).

OctoPix PCB Installed on BTT Octopus Board (front and rear views): Installed Front View Installed Rear View

Known Issues & Solutions

Some users have reported the isssue that when assigning PB3, PB4, and PB5 to neopixels, klipper reports the pins as already being assigned to spi3 (specially in STM32F446 MCUs). If you get this problem when restarting klipper, the solution is to recompile klipper firmware commenting out the lines below, found in the source code under ~/klipper/src/stm32/spi.c:

text
 DECL_ENUMERATION("spi_bus", "spi3", 4);
 DECL_CONSTANT_STR("BUS_PINS_spi3", "PB4,PB5,PB3");

The lines should instead read:

text
//DECL_ENUMERATION("spi_bus", "spi3", 4);
//DECL_CONSTANT_STR("BUS_PINS_spi3", "PB4,PB5,PB3");

After re-compiling and flashing the Octopus, PB3, PB4, and PB5 should be free to be used as GPIO pins instead of being bound to spi3

Credits

This project was created by knight_rad.iant on Discord. Join the discussion and follow updates on the design.


Contributions, suggestions, and improvements are welcome. Please open an issue or submit a pull request if you have ideas to enhance this project.

Parts

8
QtyValueFootprintReferences
2MountingHoleMountingHole:MountingHole_3.2mm_M3_DIN965_PadH1, H2
1CD4050BEeasyeda:DIP-16_L20.3-W10.2-P2.54-LS10.2-BLU1
1Octopus SPI3Connector_PinSocket_2.54mm:PinSocket_2x05_P2.54mm_HorizontalJ6
1RBG PB3Connector_JST:JST_XH_B3B-XH-AM_1x03_P2.50mm_VerticalJ2
1RBG PB4Connector_JST:JST_XH_B3B-XH-AM_1x03_P2.50mm_VerticalJ3
1RBG PB5Connector_JST:JST_XH_B3B-XH-AM_1x03_P2.50mm_VerticalJ4
1RBG_PB3Connector_JST:JST_XH_B3B-XH-AM_1x03_P2.50mm_VerticalJ5

Questions

How big is the Octopixel PCB?

It measures 25.8 × 35.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Octopixel use?

8 parts, built around the CD4050BE. 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 Octopixel KiCad files?

From the jrlomas/OctoPix repository on GitHub, at the commit this page was made from: the board is KiCad/octopixel.kicad_pcb and its schematic KiCad/octopixel.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Octopixel design in my own project?

Its repository publishes it under the MIT 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 layers65 × 56 mmKgiu, the printed circuit board in 3D

    Kgiu

    goruck/all

    Alexa Lambda Linux (ALL) Reference Design - IoT and ML at the edge.

    24 parts62
  • 2 layers100 × 100 mmEngine Simulator-2.0, the printed circuit board in 3D

    Engine Simulator-2.0

    koolcat6666/Engine-Simulator-2.0

    Engine simulator for ECU testing based on ESP32-32U DevKitC. The system connects to the ECU through the standard Speeduino 40-pin IDC connector and generates signals to simulate real engine operation.

    62 partsMIT
  • 2 layers68.6 × 53.3 mmSensorArduinoHat, the printed circuit board in 3D

    SensorArduinoHat

    shareresearchteam/SAMI-Robot

    Software and Hardware resources and development of the SAMI humanoid robot

    36 parts5MIT
  • 2 layers171.5 × 138.7 mmSTM32 board, the printed circuit board in 3D

    STM32 board

    vladBaciu/Sensorless-BLDC-HW

    Bachelor thesis project

    31 parts3
  • 2 layers20.5 × 24.8 mmPi interface, the printed circuit board in 3D

    Pi interface

    opulo-inc/lumenpnp

    The LumenPnP is an open source pick and place machine.

    8 parts3.7k
  • 2 layers59.9 × 25.7 mmBuffer, the printed circuit board in 3D

    Buffer

    hoglet67/RGBtoHDMI

    Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

    8 parts1kGPL-3.0