Skip to the content
PCBKitNew board
2 layers57.2 × 53 mmBulbs, the printed circuit board in 3D

Ambient lighting system

Size
57.2 × 53 mm
Copper layers
2
Thickness
1.6 mm
Parts
11
Nets
36
Pads
55
Tracks, vias
45, 0
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
22 Apr 2023
Updated
23 Jan 2025

Overview

Bulbs is an open-source printed circuit board by imjah, from the imjah/bulbs repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 57.2 × 53 mm with 11 parts on 36 nets, routed with 45 tracks and 0 vias.

It is built around the BC547, FC68148 and IRF540N. Its parts include 3 resistors, 3 transistors, 2 connectors, 1 capacitor and 1 IC. It belongs with the lEDs and displays boards and the ESP8266 boards of this library.

Main components

3

README

README.md

Bulbs

Not mature yet project of RGB lights that can be controlled from your phone or local terminal.

schema

Applications

There are several clients available.

bulbs-tui

TUI application written in rust created by @mtvrsh.

Source

bulbs-cli

CLI application written in python.

Source

Driver API

MethodEndpointUsageReturns
GET/ledGet LED statusstatus
GET/led/onGet LED power statustrue if LED power is ON, false otherwise
PUT/led/onPower on LEDs
GET/led/offGet LED power statustrue if LED power is OFF, false otherwise
PUT/led/offPower off LEDs
GET/led/colorGet LED colorcolor
PUT/led/color/{value}Set LED color
GET/led/brightnessGet LED brightnessbrightness
PUT/led/brightness/{value}Set LED brightness

Installation

Make sure you have just, python and pip installed. From api directory:

  1. Install dependencies
bash
just
  1. Flash MicroPython on your ESP8266 board
bash
# Your board should be accessible from /dev/ttyUSB0 

just flash <your-firmware-release.bin>
  1. Install API
bash
just sync
  1. Reboot the board

Usage

GET /led/color

Request

No parameters needed.

Response

On success, 200 OK and color object.

Example

Request

sh
curl http://$DEVICE_IP/led/color

Response 200 OK

json
{
	"color": "#000000"
}

PUT /led/color/{value}

Request

Value as hex color without leading #.

Response

On success, 200 OK.

On invalid input, 400 Bad Request with message object.

Example

Request

sh
curl -X PUT http://$DEVICE_IP/led/color/5a1010

Response 200 OK

GET /led/brightness

Request

No parameters needed.

Response

On success, 200 OK and brightness object.

Example

Request

sh
curl http://$DEVICE_IP/led/brightness

Response 200 OK

json
{
	"brightness": 1.0
}

PUT /led/brightness/{value}

Request

Value as number from 0 to 1.

Response

On success, 200 OK.

On invalid input, 400 Bad Request with message object.

Example

Request

sh
curl -X PUT http://$DEVICE_IP/led/brightness/0.5

Response 200 OK


Status object

KeyValue typeValue description
onbooleanPower state
colorstringHex color
brightnessfloatNumber from 0 to 1

Color object

KeyValue typeValue description
colorstringHex color

Brightness object

KeyValue typeValue description
brightnessfloatNumber from 0 to 1

Message object

KeyValue typeValue description
messagestringActivities description

Parts

11
QtyValueFootprintReferences
310kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR1, R2, R3
2BC547Package_TO_SOT_THT:TO-92_InlineQ1, Q2
11000µFCapacitor_THT:CP_Radial_D10.0mm_P5.00mmC1
11N4007Diode_THT:D_DO-41_SOD81_P10.16mm_HorizontalD1
1FC68148FC68148:CLIFF_FC68148(DC-10A)J1
1IRF540NPackage_TO_SOT_THT:TO-220-3_VerticalQ3
1NodeMCU 3.0 (ESP-12E)ESP8266:NodeMCU-LoLinV3U1
1WS2812B (header)Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ2

Questions

How big is the Bulbs PCB?

It measures 57.2 × 53 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Bulbs use?

11 parts, built around the BC547, FC68148 and IRF540N. 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 Bulbs KiCad files?

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

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

Similar boards

  • 2 layers131 × 66 mmAwas pt2, the printed circuit board in 3D

    Awas pt2

    404notfound-han/PCB-Awwaz

    Sistem IoT kendali otomatisasi katup air Solenoid 12V berbasis ESP32. Desain PCB mandiri menggunakan driver internal MOSFET IRF540N horizontal, proteksi flyback diode 1N4007, dan sirkuit penurun tegangan step-down…

    21 parts
  • 2 layers155 × 70.1 mm4S BMS Arduino Shield autor, the printed circuit board in 3D

    4S BMS Arduino Shield autor

    Aassimrepo/4S-BMS-Proteus-KiCad

    Simulation and PCB design of a 4S Battery Management System using Proteus, Arduino and KiCad.

    69 parts
  • 2 layers254.1 × 139.2 mmMain Project, the printed circuit board in 3D

    Main Project

    Izaakthegreat/UofG_TDP3_TeamYes

    UofG TDP3 repo for KiCAD files and code

    83 parts
  • 2 layersMosfet, the printed circuit board in 3D

    Mosfet

    LabStorm/easy-modular-electronics

    A library of tiny interconnectable modules to create electronics system.

    9 partsGPL-3.0
  • 2 layers83.7 × 90.3 mmIncubator Quetta Client, the printed circuit board in 3D

    Incubator Quetta Client

    manhoosbilli1/Incubator_basic_esp32_modular_1_sided

    This contains an incubator pcb i've made for a client. his needs were specific so only added what he needed. a complete and complex version can be found in capibator organization.

    43 parts
  • 2 layers95.2 × 63.7 mmOpentribhw, the printed circuit board in 3D

    Opentribhw

    nurbano/opentribhw

    Este proyecto presenta una plataforma abierta y de bajo costo para la instrumentación, medición y control en ensayos tribológicos de tipo Pin-on-Disk y Block-on-Ring.

    38 parts
  • 2 layers47 × 49.5 mmAttiny85leddimmer, the printed circuit board in 3D

    Attiny85leddimmer

    RoboUlbricht/kicad_attiny85_led_dimmer

    31 parts