Skip to the content
4 layers45 × 38 mmMerlynCAM, the printed circuit board in 3D

An action camera that records at 1080p@90, 1440p@60 and 4k@20 (With I2S microphone and gyro logging @ 150Hz)

Size
45 × 38 mm
Copper layers
4
Thickness
1.6 mm
Parts
150
Nets
173
Pads
576
Tracks, vias
1,204, 274
Pours
3
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
28 Aug 2026
Updated
11 Oct 2026

Overview

MerlynCAM is an open-source printed circuit board by YeetTheAnson, from the YeetTheAnson/MerlynCAM repository on GitHub. It is a 4-layer board of 45 × 38 mm with 150 parts on 173 nets, routed with 1,204 tracks and 274 vias.

It is built around the CH32V003F4U6, RT8097CHGE and TF-115-BCP9, with the TPS63802DLAR, W25Q128JVSIQ and BMI270 among its other parts. Its parts include 60 capacitors, 40 resistors, 12 ICs, 4 inductors and 3 diodes. It belongs with the audio and music boards and the RISC-V boards of this library.

Main components

12

README

README.md

MerlynCAM

https://github.com/user-attachments/assets/a9457055-48cb-43b0-b4a9-4c273cf0078e

https://github.com/user-attachments/assets/13ca98ed-bc15-4bd0-ae74-1581ccfe5670

Introduction

This project was made possible thanks the reverse engineering efforts done by the OpenIPC team! You can check out their supported hardware here: https://openipc.org/supported-hardware/featured and the reference project here: https://oshwlab.com/oshwhub.com/openipc-vtx-ssc338q-30kq

This is my custom action camera, the MerlynCAM! This project was made to record HD footage on my FPV drones. It records video at 1080p@90, 1440p@60 and 4k@20. It also includes a BMI270 gyro to log motion data at 150Hz for Gyroflow video stabilization, and an ICS-43434 I2S microphone to capture propeller noise for the viewer's immersion.

The MerlynCAM is powered by the Sigmastar SSC338Q SOC. It is easy to use and includes a low power microcontroller onboard to manage the LED indicators, buttons, and power saving modes. There is only one button used for powering the camera on and off and starting and stopping recordings. The microcontroller handles the rest of the quality of life features in the background, such as battery level monitoring and auto power on when external voltage is detected in FPV mode. It also has an internal 1S battery with a BQ25606 charging circuit, so it can be used like a normal action cam or with the batteries removed to save weight on a drone.

image image image image image

User Guide

The MerlynCAM is operated using a single button and it shows charge status and battery levels using a White LED

Power & Recording Control

  • Power On: Press the button once, then press and hold for 2 seconds. The White LED will blink rapidly while holding, then turn solid to indicate it is booting. Release the button afterwards.

[!TIP] The camera will refuse to power on if the battery is below 5%

  • Power Off: Press and hold the button for 4 seconds. The White LED will blink rapidly after 2 seconds, then blink twice and turn off.
  • Start/Stop Recording: While the camera is powered on, hold the button for 1 second to start recording. Hold for 1 second again to stop recording.

Battery Level Checking

While powered off, press the button once. The White LED will blink to indicate the current charge level:

  • >95%: 4 normal blinks + 3 rapid blinks
  • 80-95% 4 blinks
  • 60-79%: 3 blinks
  • 40-59%: 2 blinks
  • 20-39%: 1 blink
  • < 5%: 3 rapid blinks

Passive Indicator

  • Charging: The white LED will pulse slowly while charging. Once fully charged, it will remain solid until the power is disconnected
  • Battery Status: The White LED automatically flashes the current battery percentage every 3.5 seconds

[!IMPORTANT] Bridge the CHRG pad on the PCB if no battery is connected. This is necessary for the battery management IC to output a stable voltage on external power.

Hardware Specifications

  • SOC: Sigmastar SSC338Q
  • Camera Interface: 30 pin mezzanine connector (compatible with Orange Pi 5)
  • IMU: BMI270 @ I2C
  • Microphone: ICS-43434 @ I2S
  • Storage: Micro SD Card slot + W25Q128JVSIQ 16MB NOR Flash
  • Power Management & User Interface: CH32V003F4U6
  • Battery Management: BQ25606
  • Power Supply: TPS63802 buck boost (3.3V), RT8097CHGE buck (1.0V and 1.5V), RT9193-18GB LDO (1.8V)

Hardware Overview

image

[!WARNING] When ordering from JLCPCB, make sure to enable impedance control and use the JLC04161H-3313 Stackup image

Firmware

Because the SSC338Q is a proprietary chip, it must run the OpenIPC linux environment. Building the firmware requires a linux filesystem (Windows isn't supported)

[!WARNING] At least 20GB of free space is required to build OpenIPC

How to build the firmware (SSC338Q)

  1. Clone the OpenIPC firmware repository
  2. Run make and select the infinity6e architecture on the TUI.
  3. Navigate to output/build/linux-custom/arch/arm/boot/dts/ and replace infinity6e-ssc012b-s01a.dts with infinity6e-ssc012b-s01a.dts.
  4. Run make linux-rebuild to update the custom DTS changes into the kernel.
  5. Navigate to output/build/images and extract openipc.ssc338q-nand-ultimate.tgz by entering tar -xzf openipc.ssc338q-nand-ultimate.tgz
  6. Navigate to ssc338q-nand-ultimate and enter the command in your terminal dd if=uImage.ssc338q of=openipc-ssc338q-nor-ultimate-16mb.bin bs=1K seek=384 conv=notrunc and the binary file should appear

How to build the firmware (CH32V003)

  1. Clone this repository and enter the directory cd MerlynCAM
  2. Open the /firmware/source/powerManagement/powerManagement.ino file in ArduinoIDE
  3. Paste https://alexandermandera.github.io/arduino-wch32v003/package_ch32v003_index.json into File > Preferences > Additional boards manager URLs
  4. Go to boards manager and install WCH Boards by Alexander Mandera
  5. Click the upload button or Sketch > Export Compiled Binary

How to flash the firmware (SSC338Q)

The W25Q128 16MB flash chip comes blank from the factory and the openIPC bootloader must be flashed before the operating system is able to boot.

  1. Connect the CH341A USB programmer or a makeshift Arduino programmer to flash the binary file to the W25Q128 flash chip. The file can be obtained in firmware/binaries/(SSC338Q)openipc-nor-ultimate-16mb.bin or the OpenIPC repository or compiled locally.

image

How to flash the firmware (CH32V003)

  1. Connect the WCH Link USB adapter to the SWDIO test point
  2. Connect the USB C port. The MerlynCAM PCB and WCH Link USB adapter must share common ground (e.g. connected to the same laptop)
  3. If compiling locally, press the upload button in Arduino IDE. Or use WCH-LinkUtility if flashing the pre compile binary in powerManagement.bin

Assembly

Component List

  • Shell:
  • PCB:
  • Camera: IMX415 camera module for Orange Pi 5 + 30P MIPI cable
  • Fasteners:
    • 8x M2 6mm Self Tapping Screws
    • 4x M2 4mm Self Tapping Screws
  • Battery: Generic 500mAh LiPo battery
  • SD Card: Generic micro SD Card

Assembly Instructions

  1. Place IMX415 camera module in the case and secure with 4x 6mm Self Tapping Screws.
  1. Insert button with the hole side facing up.
  1. Solder the battery wires to designated pads and place the battery and PCB into the case. Route the MIPI cable through the recess of the case wall and connect to the mezzanine connector.
  1. Secure the PCB to the case with 4x 6mm Self Tapping Screws.
  1. Put on the case lid and secure with 4x 4mm Self Tapping Screws.

Bill of Material

Note: The prices in USD are converted as of 1 September 2026 and may fluctuate. The costs of separate components are cheaper than JLCPCB assembly.

CategoryItem NameDescriptionLinkVendorQuantityTotal Price (USD)
PCB ComponentsCL10A106MA8NRNC10uF 0603 capacitorlinkLCSC201.30
PCB ComponentsCL05A475MP5NRNC4.7uF 0402 capacitorlinkLCSC501.17
PCB ComponentsCL05B104KB54PNC0.1uF 0402 capacitorlinkLCSC1000.89
PCB ComponentsCC0402KRX7R9BB47347nF 0402 capacitorlinkLCSC1000.41
PCB ComponentsCL05A105KA5NQNC1uF 0402 capacitorlinkLCSC500.61
PCB ComponentsCL10A226MQ8NRNC22uF 0603 capacitorlinkLCSC200.63
PCB Components0402B223K500NT22nF 0402 capacitorlinkLCSC500.58
PCB Components0402CG8R0C500NT8pF 0402 capacitorlinkLCSC1000.36
PCB ComponentsCDZVT2R5.1B5.1V Clamp SOD923 zenerlinkLCSC200.64
PCB ComponentsHC-1.0-4PWT4P JST-SH connectorlinkLCSC50.47
PCB ComponentsFTC201610S1R5MBCA1.5uH 0806 inductorlinkLCSC100.98
PCB ComponentsFTC201610SR47MBCA0.47 uH 0806 inductorlinkLCSC100.98
PCB ComponentsYLED0602RSIDERed 0602 right angle LEDlinkLCSC200.49
PCB ComponentsYLED0602WSIDEWhite 0602 right angle LEDlinkLCSC500.99
PCB ComponentsAO3401AP channel MOSFETlinkLCSC50.49
PCB Components0402WGF1003TCE100k 0402 resistorlinkLCSC1000.28
PCB ComponentsFRC0402F2700TS270R 0402 resistorlinkLCSC1000.25
PCB ComponentsFRC0402F9100TS910R 0402 resistorlinkLCSC1000.18
PCB Components0402WGF1002TCE10k 0402 resistorlinkLCSC1000.31
PCB Components0402WGF5101TCE5.1k 0402 resistorlinkLCSC1000.26
PCB Components0402WGF5602TCE56k 0402 resistorlinkLCSC1000.68
PCB Components0402WGF1502TCE15k 0402 resistorlinkLCSC1000.58
PCB ComponentsFRC0402F3602TS36k 0402 resistorlinkLCSC1000.19
PCB Components0402WGF1000TCE100R 0402 resistorlinkLCSC1000.77
PCB Components0402WGF5102TCE51k 0402 resistorlinkLCSC1000.19
PCB Components0402WGF4701TCE4.7k 0402 resistorlinkLCSC1000.29
PCB Components0402WGF2003TCE200k 0402 resistorlinkLCSC1000.32
PCB ComponentsTS24CARight angle buttonlinkLCSC200.51
PCB ComponentsTPS63802DLARBuck boost converterlinkLCSC22.05
PCB ComponentsBQ25606RGERBattery charge and managementlinkLCSC11.63
PCB ComponentsRT8097CHGEBuck converterlinkLCSC50.80
PCB ComponentsCH32V003F4U6CH32 for interface and power managementlinkLCSC51.58
PCB ComponentsRT9193-18GB1.8V Linear LDO regulatorlinkLCSC50.83
PCB ComponentsICS-43434I2S MEMS microphonelinkLCSC14.13
PCB ComponentsBMI270IMUlinkLCSC13.25
PCB ComponentsW25Q128JVSIQ16 MB NOR flashlinkLCSC12.62
PCB ComponentsTF-115-BCP9SD card connectorlinkLCSC50.49
PCB ComponentsTYPE-C 16PIN 2MD(073)TYPE C ConnectorlinkLCSC201.49
PCB ComponentsT201624MBBCE2X24MHz 2016 crystal resonatorlinkLCSC100.71
PCB ComponentsLCSC Shipping4PX-4PX15.48
PCBPCBBare PCB-JLCPCB12.00
PCBStencilStencil-JLCPCB16.36
PCBJLCPCB ShippingShipping-E-POST16.68
PartsOK-10F030-0430P 0.4mm Mezzanine connectorlinkAliExpress12.09
PartsSSC338QMain recording SOClinkAliExpress116.99
PartsIMX415 camera moduleIMX415 camera module 140 FOVlinkAliExpress132.69
PartsAliExpress ShippingShipping-AliExpress19.74

Grand Total: $117.41

Parts

150
QtyValueFootprintReferences
310.1uFCapacitor_SMD:C_0402_1005MetricC3, C17, C21, C23, C24, C26, C28, C30, C32, C33, C34, C35, C36, C37, C38, C39 +15
1810uFCapacitor_SMD:C_0603_1608MetricC1, C4, C6, C10, C11, C13, C14, C16, C22, C29, C31, C44, C45, C50, C58, C60 +2
1410kResistor_SMD:R_0402_1005MetricR4, R5, R8, R9, R11, R13, R14, R15, R19, R20, R21, R22, R23, R38
105.1kResistor_SMD:R_0402_1005MetricR6, R7, R17, R25, R32, R33, R34, R35, R39, R40
31.5uHeasyeda2kicad:L_Changjiang_FTC201610SL1, L3, L4
3100RResistor_SMD:R_0402_1005MetricR27, R36, R37
3100kResistor_SMD:R_0402_1005MetricR1, R26, R29
31uFCapacitor_SMD:C_0402_1005MetricC7, C19, C20
322uFCapacitor_SMD:C_0603_1608MetricC9, C12, C15
3AO3401APackage_TO_SOT_SMD:SOT-23Q1, Q2, Q3
215kResistor_SMD:R_0402_1005MetricR12, R16
2270RResistor_SMD:R_0402_1005MetricR2, R18
28pFCapacitor_SMD:C_0402_1005MetricC25, C27
2RT8097CHGEeasyeda2kicad:SOT-23-6_L2.9-W1.6-P0.95-LS2.8-BLU3, U4
1+5-14Veasyeda2kicad:TestPointTP7
10.47uHeasyeda2kicad:L_Changjiang_FTC201610SL2
11V0easyeda2kicad:TestPointTP8
11V5easyeda2kicad:TestPointTP9
11V8easyeda2kicad:TestPointTP11
1200kResistor_SMD:R_0402_1005MetricR31
122nFCapacitor_SMD:C_0402_1005MetricC18
124MHzeasyeda2kicad:CRYSTAL-SMD_4P-L2.0-W1.6-BLX1
136kResistor_SMD:R_0402_1005MetricR24
13V3easyeda2kicad:TestPointTP10
14.7kResistor_SMD:R_0402_1005MetricR30
14.7uFCapacitor_SMD:C_0402_1005MetricC2
147nFCapacitor_SMD:C_0402_1005MetricC5
151kResistor_SMD:R_0402_1005MetricR28
156kResistor_SMD:R_0402_1005MetricR10
1910RResistor_SMD:R_0402_1005MetricR3
1BATeasyeda2kicad:BatteryBT1
1BMI270easyeda2kicad:LGA-14_L3.0-W2.5-P0.50-BRU8
1BQ25606RGEReasyeda2kicad:VQFN-24_L4.0-W4.0-P0.50-TL-EP2.8U2
1Bypasseasyeda2kicad:SolderJumper-2_P1.3mm_Open_TrianglePad1.0x1.5mmJP2
1CH32V003F4U6easyeda2kicad:QFN-20_L3.0-W3.0-P0.40-TL-EP1.7U5
1ChargeEnableeasyeda2kicad:SolderJumper-2_P1.3mm_Open_TrianglePad1.0x1.5mmJP1
1ETH_RNeasyeda2kicad:TestPointTP13
1ETH_RPeasyeda2kicad:TestPointTP14
1ETH_TNeasyeda2kicad:TestPointTP15
1ETH_TPeasyeda2kicad:TestPointTP16
1GNDeasyeda2kicad:TestPointTP12
1ICS43434easyeda2kicad:MIC-SMD_6P-L3.5-W2.7-P0.90-BLU7
1INMP441easyeda2kicad:MIC-SMD_INMP441U9
1OK-10F030-04easyeda2kicad:CONN-SMD_30P-P0.40_OK-10F030-04-ACN1
1RT9193-18GBeasyeda2kicad:SOT-23-5_L3.0-W1.7-P0.95-LS2.8-BRU6
1SWDIOeasyeda2kicad:TestPointTP1
1TF-115-BCP9easyeda2kicad:TF-SMD_TF-115-BCP9U11
1TPS63802DLAReasyeda2kicad:VSON-10_L3.0-W2.0-P0.50-TLU1
1TS24CAeasyeda2kicad:SW-SMD_2P-TS24CASW1
1TYPE-C 16PINeasyeda2kicad:USB-C-SMD_TYPE-C-6PIN-2MD-073USB1
1UART_RXeasyeda2kicad:TestPointTP4
1UART_TXeasyeda2kicad:TestPointTP3
1USART1_TXeasyeda2kicad:TestPointTP2
1USBD+easyeda2kicad:TestPointTP5
1USBD-easyeda2kicad:TestPointTP6
1W25Q128JVSIQTReasyeda2kicad:SOIC-8_L5.3-W5.3-P1.27-LS8.0-BLU10
1WHITEeasyeda2kicad:LED-SMD_L1.6-W1.1-R-RD_WHITELED2
1YLED0602RSIDEeasyeda2kicad:LED-SMD_L1.6-W1.1-RDLED1
1ZenerDiode_SMD:D_SOD-923D1
1~easyeda2kicad:QFN128_12.3_12.3U12
1~easyeda2kicad:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_HorizontalH1

The 146 most common of 150 parts.

Similar boards

  • 4 layers46 × 80 mmRFly One, the printed circuit board in 3D

    RFly One

    YeetTheAnson/RFly-One

    Offline general aviation proximity awareness system with support for ADS-B, FLARM AIR V7, OGNTP and FANET+

    188 parts
  • 4 layers33.9 × 42.3 mmPCBGolf, the printed circuit board in 3D

    PCBGolf

    ulyssecrn/PCBGolf

    comma.ai PCBGolf entry: 4-port CAN-FD dev board on a 35 × 43 mm, 4-layer PCBA. KiCad 10.

    253 parts
  • 4 layers43 × 51.1 mmProjet Drone C5 VTX, the printed circuit board in 3D

    Projet Drone C5 VTX

    Jamane92/ESP32_C5_DRONE_VTX

    Custom 4-layer FPV camera transmitter featuring an ESP32-C5 microcontroller, OV5640 camera sensor via PARLIO DVP, SD card logging, and 5.8 GHz Wi-Fi video streaming. Designed in KiCad.

    67 parts
  • 2 layers55 × 45 mmDebug, the printed circuit board in 3D

    Debug

    duanestorey/hifi-amp

    A high-fidelity four-channel amplifier with active-crossovers and room correction

    24 parts1
  • 2 layers50.2 × 95.2 mmCheetoPet, the printed circuit board in 3D

    CheetoPet

    Cheet0sDelet0s/cheetoPet

    an esp32 s3 based tamagotchi

    104 parts3GPL-2.0
  • 2 layers59 × 91 mmSmart doorbell, the printed circuit board in 3D

    Smart doorbell

    calebhabesh/doorlink

    Self-hosted ESP32-S3 smart doorbell with a custom PCB, Raspberry Pi gateway, and web dashboard

    108 parts1MIT
  • 4 layers60 × 60 mmCube os, the printed circuit board in 3D

    Cube os

    Tim4769/cube-os

    Fallout/Burnout-style hardware project repository scaffold.

    82 partsMIT
  • 6 layers133 × 92 mmMotherboard, the printed circuit board in 3D

    Motherboard

    byrantech/laptop

    anyon_e, a highly integrated, high end, open source laptop. Attempt the impossible.

    264 parts4.3kMIT

Questions

How big is the MerlynCAM PCB?

It measures 45 × 38 mm and has 4 copper layers, 1.6 mm thick.

What parts does the MerlynCAM use?

150 parts, built around the CH32V003F4U6, RT8097CHGE, TF-115-BCP9 and TPS63802DLAR. 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 MerlynCAM KiCad files?

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

Can I use the MerlynCAM design in my own project?

Its repository states no licence, so its author keeps all rights: ask YeetTheAnson before reusing the design.