Hardware Opto 16
PPUC·Hardware_Opto_16·Opto_16/Opto_16.kicad_pcb
About the Hardware Opto 16 PCB
Hardware Opto 16 is an open source RP2040/RP2350 PCB design by PPUC, published on GitHub under the TAPR-OHL-1.0 license. It is a 2-layer board measuring 99.7 × 67.3 mm, with 200 components from 44 distinct parts.
Its main chip is the RP2040, from the RP2040/RP2350 family. Other key parts include the ADM3483, W25Q128JVSIQ, LMV321, SN74AHCT1G125 and AP2112K-3.3. By type, the board carries 110 resistors, 43 capacitors, 24 connectors, 10 ICs, 7 diodes and 3 switches.
From the project
Hardware for an Opto Board for PPUC
The transmitter LEDs I've seen so far, are either single (2 pins) or share a common cathode.
This Opto_16 PCB can be used to drive transmitter LEDs from a 5 V power supply and can cope with common collector photo transistors and photo diodes. There are 2 groups of inputs (2 x 8). One group is for photo transistors. The other group can be configured to be inputs for photo diode or photo transistor. Jumpers are used for configuration. You can only change the whole group (8 inputs), not a single channel. If no jumper is placed (all open) then the configurable group of 8 inputs are good for…
Main components on the Hardware Opto 16
Hardware Opto 16 bill of materials (BOM)
200 components, 44 distinct parts — part numbers from the project's BOM.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | ADM3483 | SOIC-8_3.9x4.9mm_P1.27mm | U1 |
| 1 | W25Q128JVSIQ | SOIC-8_5.23x5.23mm_P1.27mm | U2 |
| 1 | LMV321 | SOT-23-5 | U3 |
| 1 | RP2040 | QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mm | U4 |
| 1 | SN74AHCT1G125 | SOT-23-5 | U5 |
| 1 | AP2112K-3.3 | SOT-23-5 | U6 |
| 4 | LM339 | SOIC-14_3.9x8.7mm_P1.27mm | U7, U8, U9, U10 |
| 1 | C9002 12MHz,18pF | Crystal_SMD_3225-4Pin_3.2x2.5mm | Y1 |
| 2 | Conn_01x06 | Terminal_Block_RTMPin | J1, J5 |
| 1 | USB_C_RECEPTACLE_USB2.0 USB_C_Receptacle_USB2.0 | USB_C_Receptacle_XKB_U262-16XN-4BVC11 | J3 |
| 1 | Conn_01x10 | PinSocket_1x10_P2.54mm_Vertical | J4 |
| 4 | Conn_01x10 | Molex_KK-254_AE-6410-10A_1x10_P2.54mm_Vertical | J6, J15, J16, J17 |
| 16 | Conn_01x02 | Molex_KK-254_AE-6410-02A_1x02_P2.54mm_Vertical | J7, J8, J9, J10, J11, J12, J13, J14 +8 |
| 1 | Jumper_2_Open | PinHeader_1x02_P2.54mm_Vertical | JP1 |
| 1 | open: LED, closed: Transistor | PinHeader_1x02_P2.54mm_Vertical | JP2 |
| 1 | C318884 Reset | SW_SPST_SKQG_WithStem | SW1 |
| 1 | C318884 Boot | SW_SPST_SKQG_WithStem | SW2 |
| 1 | C54950 ADDRESS | SW_DIP_SPSTx04_Slide_6.7x11.72mm_W8.61mm_P2.54mm_LowProfile | SW3 |
| 2 | SD15 | D_SOD-323 | D1, D2 |
| 2 | C191023 1A | D_SOD-323 | D3, D7 |
Show 24 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | C2297 LED gn | LED_0805_2012Metric | D4 |
| 1 | SMAJ5.0 | D_SMA | D5 |
| 1 | SD05 | D_SOD-323 | D6 |
| 31 | 100N 100n | C_0402_1005Metric | C1, C3, C5, C8, C9, C10, C11, C12 +23 |
| 7 | 10U 10u | C_0603_1608Metric | C2, C4, C18, C30, C33, C34, C35 |
| 2 | 27PF 27pF | C_0402_1005Metric | C6, C7 |
| 2 | 1u | C_0402_1005Metric | C14, C19 |
| 1 | C2836437 100µ 35V | CP_Elec_6.3x7.7 | C31 |
| 22 | 10K 10k | R_0603_1608Metric | R1, R5, R6, R8, R9, R33, R55, R56 +14 |
| 2 | 100R | R_0603_1608Metric | R2, R16 |
| 1 | 120R | R_0603_1608Metric | R3 |
| 13 | 1k | R_0402_1005Metric | R4, R12, R15, R20, R21, R22, R23, R24 +5 |
| 1 | 0 | R_0603_1608Metric | R7 |
| 2 | 27 | R_0402_1005Metric | R10, R11 |
| 1 | 33K 33k | R_0603_1608Metric | R13 |
| 21 | 2k | R_0603_1608Metric | R14, R18, R19, R28, R51, R58, R60, R64 +13 |
| 1 | 5k | R_0603_1608Metric | R17 |
| 1 | 3k | R_0603_1608Metric | R27 |
| 2 | 5K1 5k1 | R_0603_1608Metric | R31, R32 |
| 16 | 180R | R_1206_3216Metric | R35, R36, R37, R38, R39, R40, R41, R42 +8 |
| 17 | 1k | R_0603_1608Metric | R52, R57, R59, R63, R65, R69, R71, R75 +9 |
| 1 | 330K 330k | R_0603_1608Metric | R53 |
| 1 | 6K8 6k8 | R_0603_1608Metric | R54 |
| 8 | 1M | R_0603_1608Metric | R82, R85, R90, R93, R98, R101, R106, R109 |
Hardware Opto 16 design files
The KiCad project lives in the PPUC/Hardware_Opto_16 repository on GitHub; these links point at the commit this page was built from.
Hardware Opto 16: common questions
What microcontroller does the Hardware Opto 16 use?
The Hardware Opto 16 is built around the RP2040, from the RP2040/RP2350 family.
How big is the Hardware Opto 16 PCB?
The Hardware Opto 16 measures 99.7 × 67.3 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the Hardware Opto 16?
200 components, from 44 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.
Where can I download the Hardware Opto 16 design files?
From the PPUC/Hardware_Opto_16 repository on GitHub, which has the KiCad layout, the schematic and the BOM; the links under Design files point to each one.
Can I use the Hardware Opto 16 design in my own project?
Yes, under the terms of its TAPR-OHL-1.0 license, which PPUC chose for the repository.
Can I test firmware for the Hardware Opto 16 without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug RP2040/RP2350 firmware against it before you order a PCB.
Similar boards
RP2040/RP2350
Open Book Abridged Edition
joeycastillo
85 × 115 mm29 parts2LCC-BY-SA-4.08.1kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
LogicAnalyzer
gusmanb
57 × 55.2 mm6 parts2LGPL-3.05.0kRP2040/RP2350
Jitx design
gusmanb
55.5 × 65 mm26 parts4LGPL-3.05.0kRP2040/RP2350
Pro V2
kata0510
290.1 × 130 mm270 parts2LMIT2.3k