
Esphome nfc
aeremin/firefly_zephyr
Firmware (Zephyr RTOS / nRF Connect SDK, with Pigweed libraries), custom boards and KiCad hardware projects for a few small nRF52-based devices.

Firmware (Zephyr RTOS / nRF Connect SDK, with Pigweed libraries), custom boards and KiCad hardware projects for a few small nRF52-based devices.
Blackmagic is an open-source printed circuit board by aeremin, from the aeremin/firefly_zephyr repository on GitHub. It is a 4-layer board of 49 × 40 mm with 63 parts on 84 nets, routed with 439 tracks and 83 vias.
It is built around the AP2112K-3.3TRG1, TXS0108ERGYR and USBLC6-2P6, with the TS-1187A-B-A-B, KH-1.27PH180-2X5P-L7.2-SMT and AO3401A among its other parts. Its parts include 21 capacitors, 13 resistors, 6 diodes, 4 ICs and 3 switches. It belongs with the STM32 boards of this library.
Firmware (Zephyr RTOS / nRF Connect SDK, with Pigweed libraries), custom boards and KiCad hardware projects for a few small nRF52-based devices.
| Product | PCB (hardware/) | Board (boards/arm/) | Firmware (firmware/) |
|---|---|---|---|
| Firefly | — | firefly_v1 | firefly, activator, smoke_test |
| Lock | lock (EasyEDA) | lock_v01 | lock, lock_test |
| Power meter | usb_power_meter | power_meter | power_meter |
| Cordyceps | cordyceps | cordyceps | rothult_cordyceps |
Other hardware projects without firmware in this repository: blackmagic,
esphome-nfc, hitl_rack, rothult. Shared KiCad libraries are in hardware/libs.
firmware/ — one folder per firmware image, plus shared code in firmware/common
and firmware/testing.boards/ — custom Zephyr board definitions.manifest/ — west manifest (nRF Connect SDK and Pigweed revisions). The repository
is also a Zephyr module (manifest/zephyr/module.yml), which makes the boards and
shared code available to every build.hardware/ — KiCad projects, with fabrication outputs in each project's production/.docs/ — development setup and notes.See docs/Developing.md for the one-time setup (west workspace, Pigweed environment, Python dependencies).
Then, from the repository root:
west build firmware/<image> --board <board> --pristine(--pristine means "clean, non-incremental build" and can be omitted when rebuilding
the same image).
To flash it, use
west flashFlashing with a Black Magic Probe is described in docs/Developing.md.
CI builds all images on every push and runs hardware-in-the-loop tests on a test
rack: the smoke_test and lock_test images, and the real firefly image. See
docs/INTEGRATION_TESTING.md.
firefly, board firefly_v1)This is the "main" image. Behaviours:
Radio: will continously listen for the radio packets (see packet structure here). This is compatible with Locket firmware from this branch and with the Activator firmware described below. LED color will change according to packets received.
Bluetooth: presents itself as connectable BLE device. Provides 2 BLE services:
8ec87060-8865-4eca-82e0-2ea8e45e8221) exposing following characteristics:
8ec87062-8865-4eca-82e0-2ea8e45e8221). Write-only characteristic, writing a byte to it will trigger short beep,
byte written controls the volume.8ec87063-8865-4eca-82e0-2ea8e45e8221). Write-only characteristic, writing anything will trigger short series
of blinks.Both of the services can be used by the Ostranna configurator Android app.
Battery measurement. Will continously monitor battery voltage and
activator, board firefly_v1)This image can be used to trigger Firefly one or to provide some settings for it. Behaviours:
Radio: will continously transmit radio packets (see packet structure here).
LED: will have a color corresponding to foreground color of packet being transmitted.
Bluetooth: presents itself as connectable BLE device. Provides 2 BLE services:
8ec87060-8865-4eca-82e0-2ea8e45e8221) exposing readable and writable characteristics corresponding to the
fields of radio packet being transmitted. This allows to control the packet from e.g. phone.Both of the services can be used by the Ostranna configurator Android app.
lock, board lock_v01)power_meter, board power_meter)a0c272ef-1280-4a64-8c5b-2833b948fc96) with a
readable and writable "Power On" characteristic that switches the output.rothult_cordyceps, board cordyceps)ab12c725-0a0e-4c06-9968-2b9fff64b504) with
smoke_test, lock_test)On-target test images (Pigweed pw_unit_test), run by CI on real hardware
(tests/hil). They print the test log to the UART/RTT and end with
"All tests passed!" on success.
smoke_test (board firefly_v1): CC1101 radio, RGB LED, timers.lock_test (board lock_v01): RGB LED, timers, EEPROM, expansion headers, threads,
Pigweed RPC.| Qty | Value | Footprint | References |
|---|---|---|---|
| 12 | 100 nF | Capacitor_SMD:C_0402_1005Metric | C3, C6, C8, C9, C10, C11, C12, C13, C14, C19, C20, C21 |
| 5 | 10k | Resistor_SMD:R_0402_1005Metric | R3, R7, R10, R11, R12 |
| 5 | 330R | Resistor_SMD:R_0603_1608Metric | R4, R5, R6, R8, R9 |
| 4 | 12 pF | Capacitor_SMD:C_0402_1005Metric | C15, C16, C17, C18 |
| 4 | MountingHole | MountingHole:MountingHole_2.2mm_M2 | H1, H2, H3, H4 |
| 4 | SolderJumper_2_Open | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | JP1, JP2, JP3, JP4 |
| 3 | 1.0 uF | Capacitor_SMD:C_0603_1608Metric | C1, C2, C7 |
| 3 | TS-1187A-B-A-B | easyeda2kicad:SW-SMD_4P-L5.1-W5.1-P3.70-LS6.5-TL-2 | SW1, SW2, SW3 |
| 2 | 4.7 uF | Capacitor_SMD:C_0603_1608Metric | C4, C5 |
| 2 | 5.1K | Resistor_SMD:R_0402_1005Metric | R1, R2 |
| 2 | Green | easyeda2kicad:LED0805-R-RD | LED1, LED5 |
| 2 | KH-1.27PH180-2X5P-L7.2-SMT | easyeda2kicad:HDR-SMD_10P-P1.27-V-M-R2-C5-LS5.5 | BLACK_MAGIC_IN1, BLACK_MAGIC_OUT1 |
| 1 | 25Mhz crystal | Crystal:Crystal_SMD_2016-4Pin_2.0x1.6mm | X2 |
| 1 | 2K | Resistor_SMD:R_0402_1005Metric | R13 |
| 1 | 2N7002 | Package_TO_SOT_SMD:SOT-23 | Q1 |
| 1 | 32.768kHz crystal | Crystal:Crystal_SMD_3215-2Pin_3.2x1.5mm | X1 |
| 1 | AO3401A | Package_TO_SOT_SMD:SOT-23 | Q2 |
| 1 | AP2112K-3.3TRG1 | easyeda2kicad:SOT-25-5_L2.9-W1.6-P0.95-LS2.8-BL | U3 |
| 1 | Conn_01x08_Female | Connector_PinSocket_2.54mm:PinSocket_2x04_P2.54mm_Vertical | SWD_OUT1 |
| 1 | KH-TYPE-C-16P | easyeda2kicad:USB-C-SMD_KH-TYPE-C-16P | USB1 |
| 1 | Red | easyeda2kicad:LED0603-RD | LED4 |
| 1 | STM32F411CEUx | easyeda2kicad:UFQFPN-48_L7.0-W7.0-P0.50-BL-EP | U1 |
| 1 | Schottky 1A 40V | easyeda2kicad:SOD-323_L1.8-W1.3-LS2.5-RD | D1 |
| 1 | TXS0108ERGYR | easyeda2kicad:VQFN-20_L4.6-W3.6-P0.50-BL-EP | U4 |
| 1 | USBLC6-2P6 | easyeda2kicad:SOT-666-6_L1.6-W1.2-P0.50-LS1.6-BR | U2 |
| 1 | White | easyeda2kicad:LED0603-R-RD_WHITE | LED3 |
| 1 | Yellow | easyeda2kicad:LED0805-R-RD | LED2 |

aeremin/firefly_zephyr
Firmware (Zephyr RTOS / nRF Connect SDK, with Pigweed libraries), custom boards and KiCad hardware projects for a few small nRF52-based devices.

aeremin/firefly_zephyr
Firmware (Zephyr RTOS / nRF Connect SDK, with Pigweed libraries), custom boards and KiCad hardware projects for a few small nRF52-based devices.

aeremin/firefly_zephyr
Firmware (Zephyr RTOS / nRF Connect SDK, with Pigweed libraries), custom boards and KiCad hardware projects for a few small nRF52-based devices.

aeremin/firefly_zephyr
Firmware (Zephyr RTOS / nRF Connect SDK, with Pigweed libraries), custom boards and KiCad hardware projects for a few small nRF52-based devices.


thejamesrhodes/Hyades-Flight-Computer
Full Hardware and Electronics design, Bare-metal GNC flight software for an actively attitude-controlled high-power rocket

FujiNetWIFI/fujinet-hardware
Schematics and design files for FujiNet hardware

Eniemooo/Sensor-HAT
Open-hardware indoor air sensor (CO2, VOC/NOx, T/RH, light, sound): HAT for Raspberry Pi or standalone with Seeed XIAO + ESPHome. KiCad 10.

chipsalliance/rocket-pcb
PCB libraries and templates for rocket-chip based FPGA/ASIC designs

PedPEx/Siemens-LinuxCNC-Interface
Siemens Sinumerik840C Maschinensteuertafel Adaptor for LinuxCNC

jarrod89/pocketPSU
Input1: - Output1 can be used to supply pocketPSU via a battery - Optional battery charging capability (addon board with BMS)

OscarBazylewich/STM32_Audio_Spectrum_Analyzer_CustomPCB
This repository contains a 4-layer KiCad board for the STM32 Audio Spectrum Analyzer. The board has an STM32L4Q5CGT6 MCU and an I2S MEMS microphone (ICS-43434).
It measures 49 × 40 mm and has 4 copper layers, 1.6 mm thick.
63 parts, built around the AP2112K-3.3TRG1, TXS0108ERGYR, USBLC6-2P6 and TS-1187A-B-A-B. 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.
From the aeremin/firefly_zephyr repository on GitHub, at the commit this page was made from: the board is hardware/blackmagic/blackmagic.kicad_pcb and its schematic hardware/blackmagic/blackmagic.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask aeremin before reusing the design.