
FRC Sensor CAN
barkinvar/sugerCANe
A compact interface for three NPN, PNP or logic sensors on an FRC robot. Each port has a removable 5 V / 12 V power jumper; input type is configured in software.

A compact interface for three NPN, PNP or logic sensors on an FRC robot. Each port has a removable 5 V / 12 V power jumper; input type is configured in software.
Prerouted is an open-source printed circuit board by barkinvar, from the barkinvar/sugerCANe repository on GitHub. It is a 4-layer board of 52 × 64 mm with 124 parts on 73 nets, routed with 828 tracks and 54 vias.
It is built around the STM32F042K6T6, TCAN3413DRB and TPS2553DBVR-1, with the AP2112K-3.3TRG1, LM339LVD and CL21B104KCFNNNE among its other parts. Its parts include 46 resistors, 34 capacitors, 11 diodes, 8 ICs and 7 transistors. It belongs with the STM32 boards of this library.
GitHub repository: barkinvar/sugerCANe
A compact interface for three NPN, PNP or logic sensors on an FRC robot. Each port has a removable 5 V / 12 V power jumper; input type is configured in software. CAN provides sensor readings, device-ID changes and recoverable firmware updates.
sugarCANe is the product name; SC12 Rev H remains the hardware identity. The underside carries a large original pixel-cane illustration on a raised island with a stepped underside and a bold pixel sugarCANe wordmark, with no other text. Bottom artwork render.
Start with Rev H in current/. It is an unbuilt engineering prototype, with physical qualification still pending. It uses its own protocol and drivers; it is not compatible with CTRE Phoenix or GrappleHook.
Rev H adds one RGB status LED on the right, with space for a printed light duct, and a recessed female programming socket for small batches. It retains G's protected sensor supplies, CAN fault reset and rail measurements. See the engineering review for the evidence and remaining physical tests.
Selected assembly plan: JLC fits 129 top-side SMT parts. You buy STM32F042K6T6 from DigiKey and solder U5, then fit ten through-hole parts and three jumper caps. U5 is omitted from the factory BOM, CPL and stencil. All 54 factory types had stock for ten boards in the September 10, 07:22 UTC check. Full power/input/firmware and four-layer CAD screens pass; factory process/stack/inspection confirmation and quotation remain pending. Start here: where to buy and how to order.

| Current design | Detail |
|---|---|
| Board input | 6–22 V DC |
| Sensor power | Regulated 5 V / 12 V; 300 mA shared per rail |
| Supply protection | Current limiting for shorts to ground; 5 V-to-12 V cross-connections are unsupported |
| Signals | Positive 0–30 V targets; NPN / PNP / push-pull / floating detection / keeper |
| Size and assembly | 52 × 74 mm, four copper layers; all components on top |
| User assembly | DigiKey MCU, six terminals, three voltage headers, service socket and three caps |
| Parts estimate | $27.18 per board at 10 boards before SMT attrition; $28.06 with conservative allowance |
| Cost exclusions | PCB, assembly, freight, tax and testing; no factory quotation yet |
The selected purchasing estimate is $1.81 lower per board than the preceding $28.99 estimate, before SMT attrition. It includes the DigiKey MCU; optional spares are extra. Assembly and the reusable programmer are separate. Cost basis.
| Task | Link |
|---|---|
| Connect and configure sensors | Wiring · input modes |
| Understand the power circuit | Circuit explanation · schematic PDF |
| Assemble or request a quote | Factory instructions · package status |
| Read LED / choose a programmer | Status and programming |
| Program or update over CAN | CAN service · robot drivers |
| Review CAD and tests | Current design · power simulations · validation summary |
| Download the full design | Rev H source/release status |
| Revision | Made for | Main difference |
|---|---|---|
| A | Original four-input concept | 96 × 96 mm baseline |
| B | Smaller, configurable three-input board | 60 × 68 mm; physical power/bias/threshold settings |
| B2 | Factory assembly of B at lower parts cost | Equivalent passives and sourcing; same B circuit |
| C Lite | Simpler, smaller digital interface | 52 × 56 mm; 5 V and protected battery power; fewer parts |
| D SC12 | Industrial sensors needing regulated 12 V | 52 × 64 mm; regulated 5 V / 12 V and rail-health reporting |
| D2 SC12 | Lower-cost assembly and CAN servicing | Hand-fitted terminals, removable voltage jumpers, CAN setup/update |
| E SC12 | Mixed sensor types without bias solder settings | Software NPN/PNP/push-pull/float/keeper; 52 × 70 mm |
| F SC12 | Keep E's features at lower cost | Input-protected boost, cheaper passives; startup/short findings remain in the archive |
| G SC12 | Resolve the power-path findings and enable CAN recovery | Output eFuse, controlled inrush, rail ADCs, default-off enables; 52 × 74 mm |
| H SC12 — current | Visible diagnostics and inexpensive programming for ten boards | One RGB LED, buffered data, ordinary 2.54 mm service header; same 52 × 74 mm, top-side assembly |
Revision details · Historical downloads. Use hardware, firmware and instructions from the same revision.
Clone the repository and enter the maintained design:
git clone https://github.com/barkinvar/sugerCANe.git
cd sugerCANe/currentSee tools and reproduction for setup and build instructions.
current/ The maintained Rev H design
hardware/ Native KiCad, local libraries and circuit model
firmware/ MCU application, bootloader and tests
host/ + examples/ CAN setup tools and robot drivers
bom/ + order/ Parts lists and factory package status
docs/ Wiring, assembly, servicing and qualification
output/ + reports/ Fabrication exports, drawings and check evidence
scripts/ + tools/ Reproduction scripts and pinned dependencies
release/ Release package status
archive/ Original older release/order ZIPs and checksumsEarlier expanded project copies and unused experiments were removed from the current tree. Historical packages are unchanged, and previous sources remain in Git history. Contributing and generated-file policy.
The 52 × 74 mm board has top-side assembly, rounded corners, improved edge clearances, a recessed debug socket and labelled voltage selectors. Its 1,530 straight track segments and 242 vias satisfy the routing rules. All-layer cleanup removes pad overshoots, redundant paths and stubs, with explicit chamfered branches. Ground pours use checked widths and gaps; see the ground cleanup. Component positions and artwork are unchanged. See before/after details, all four copper layers and connector details.
The input connector-to-fuse and fuse-to-MOSFET routes are now 0.7 mm wide (14 segments widened from 0.5 mm). The protected input and converter paths retain their reviewed clearance necks. Width, clearance, connectivity and ground-pour checks cover all four layers; see the power-path review.
| Copper layer | Role | PNG | SVG |
|---|---|---|---|
| Top | Components, signals and power | PNG | SVG |
| Inner 1 | Ground plane | PNG | SVG |
| Inner 2 | Ground with selected signals and low-current supply branches | PNG | SVG |
| Bottom | Signals, power and ground | PNG | SVG |
These views show the actual exported copper and drills. Inner layers are viewed from the top; the bottom is mirrored for an underside view.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 14 | 100nF | FRC_Sensor_CAN:C_0805_2012Metric | C3, C6, C11, C20, C21, C22, C27, C40, C41, C50, C51, C61, C65, C66 |
| 9 | 100k | FRC_Sensor_CAN:R_0805_2012Metric | R50, R60, R65, R111, R112, R211, R212, R311, R312 |
| 9 | 10k | FRC_Sensor_CAN:R_0805_2012Metric | R3, R21, R22, R40, R41, R52, R105, R205, R305 |
| 8 | 22uF | FRC_Sensor_CAN:C_1206_3216Metric | C4, C5, C12, C13, C60, C62, C63, C64 |
| 5 | 1k | FRC_Sensor_CAN:R_0805_2012Metric | R4, R30, R110, R210, R310 |
| 4 | 2.2M | FRC_Sensor_CAN:R_0805_2012Metric | R67, R104, R204, R304 |
| 3 | 10k | FRC_Sensor_CAN:R_1206_3216Metric | R109, R209, R309 |
| 3 | 1nF | FRC_Sensor_CAN:C_0805_2012Metric | C101, C201, C301 |
| 3 | 20k | FRC_Sensor_CAN:R_0805_2012Metric | R103, R203, R303 |
| 3 | 220k | FRC_Sensor_CAN:R_0805_2012Metric | R101, R201, R301 |
| 3 | 2P PUSH 3.5mm | FRC_Sensor_CAN:Weidmuller_LSF_90_2P | J1, J2, J3 |
| 3 | 3P PUSH 3.5mm | FRC_Sensor_CAN:Weidmuller_LSF_90_3P | J4, J5, J6 |
| 3 | 5V / 12V | FRC_Sensor_CAN:PinHeader_1x03_P2.00mm_Vertical | JP101, JP201, JP301 |
| 3 | AO3401A | FRC_Sensor_CAN:SOT-23 | Q101, Q201, Q301 |
| 3 | BAT46W | FRC_Sensor_CAN:D_SOD-123 | D102, D202, D302 |
| 3 | BSS138BK | FRC_Sensor_CAN:SOT-23 | Q102, Q202, Q302 |
| 3 | SMAJ30A | FRC_Sensor_CAN:D_SMA | D101, D201, D301 |
| 2 | 1uF | FRC_Sensor_CAN:C_0805_2012Metric | C7, C23 |
| 2 | 30pF | FRC_Sensor_CAN:C_0805_2012Metric | C25, C26 |
| 2 | 4.7uF | FRC_Sensor_CAN:C_0805_2012Metric | C8, C24 |
| 2 | M3 NPTH | H1, H2 | |
| 2 | TPS2553DBVR-1 | FRC_Sensor_CAN:SOT-23-6 | U4, U9 |
| 1 | 0 | FRC_Sensor_CAN:R_0805_2012Metric | R20 |
| 1 | 1.8k | FRC_Sensor_CAN:R_0805_2012Metric | R66 |
| 1 | 102k | FRC_Sensor_CAN:R_0805_2012Metric | R1 |
| 1 | 10uF | FRC_Sensor_CAN:C_1210_3225Metric | C2 |
| 1 | 10uH | FRC_Sensor_CAN:L_Bourns_SRP7028A_7.3x6.6mm | L1 |
| 1 | 11.5k | FRC_Sensor_CAN:R_0805_2012Metric | R61 |
| 1 | 120 | FRC_Sensor_CAN:R_1206_3216Metric | R42 |
| 1 | 12V ZENER | FRC_Sensor_CAN:D_SOD-123 | D3 |
| 1 | 13.7k | FRC_Sensor_CAN:R_0805_2012Metric | R2 |
| 1 | 13k | FRC_Sensor_CAN:R_0805_2012Metric | R63 |
| 1 | 21.5k | FRC_Sensor_CAN:R_0805_2012Metric | R62 |
| 1 | 3.3nF | FRC_Sensor_CAN:C_0805_2012Metric | C69 |
| 1 | 3.3uH | FRC_Sensor_CAN:L_Bourns_SRP5030T | L2 |
| 1 | 3A FAST | FRC_Sensor_CAN:Fuse_Littelfuse-NANO2-451_453 | F1 |
| 1 | 47uF | FRC_Sensor_CAN:CP_Elec_8x6.5 | C1 |
| 1 | 5.23k | FRC_Sensor_CAN:R_0805_2012Metric | R51 |
| 1 | 59k | FRC_Sensor_CAN:R_0805_2012Metric | R10 |
| 1 | 8MHz 18pF | FRC_Sensor_CAN:Abracon_ABM3B_5.0x3.2mm | Y1 |
| 1 | AO4485 | FRC_Sensor_CAN:SOIC-8_3.9x4.9mm_P1.27mm | Q1 |
| 1 | AP2112K-3.3 | FRC_Sensor_CAN:SOT-23-5 | U2 |
| 1 | B240A | FRC_Sensor_CAN:D_SMA | D4 |
| 1 | ESD2CAN24-Q1 | FRC_Sensor_CAN:SOT-23 | D20 |
| 1 | GND | FRC_Sensor_CAN:TestPoint_Pad_D2.0mm | TP1 |
| 1 | GREEN | FRC_Sensor_CAN:LED_0805_2012Metric | D10 |
| 1 | LM339LV | FRC_Sensor_CAN:SOIC-14_3.9x8.7mm_P1.27mm | U7 |
| 1 | LMR51420XDDCR | FRC_Sensor_CAN:TSOT-23-6 | U1 |
| 1 | POGO SERVICE | FRC_Sensor_CAN:Tag-Connect_TC2050-IDC-NL_2x05_P1.27mm_Vertical | J8 |
| 1 | SMBJ22A | FRC_Sensor_CAN:D_SMB | D2 |
| 1 | STM32F042K6T6 | FRC_Sensor_CAN:LQFP-32_7x7mm_P0.8mm | U5 |
| 1 | TCAN3413DR | FRC_Sensor_CAN:SOIC-8_3.9x4.9mm_P1.27mm | U6 |
| 1 | TERM 120R | FRC_Sensor_CAN:SolderSelector_2 | JP2 |
| 1 | TPS61085DGKR | FRC_Sensor_CAN:VSSOP-8_3x3mm_P0.65mm | U8 |
It measures 52 × 64 mm and has 4 copper layers, 1.6 mm thick.
124 parts, built around the STM32F042K6T6, TCAN3413DRB, TPS2553DBVR-1 and AP2112K-3.3TRG1. 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 barkinvar/sugerCANe repository on GitHub, at the commit this page was made from: the board is current/hardware/prerouted.kicad_pcb and its schematic current/hardware/FRC_Sensor_CAN.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 barkinvar before reusing the design.

barkinvar/sugerCANe
A compact interface for three NPN, PNP or logic sensors on an FRC robot. Each port has a removable 5 V / 12 V power jumper; input type is configured in software.




ThatguyCplus/throttleECU
STM32F411CE Throttle ECU — PID position control with AS5048A encoder, H-bridge motor, safety module

TheKingOfChaos/Console-Server
48 RS-232 console ports on one Raspberry Pi: three identical boards, 16 ports each. Built from the design record of 2026-10-10. KiCad 10.0.7. This is Rev B (git tag rev-A is the first board).

skngh/RidgeField
Bluetooth guitar pedal using the Daisy Seed. Sends controls from a guitar mounted box to the enclosure on your pedalboard.

lolz0r/Williams-WPC-Power-Driver-Board-A-12697-3
Untested, unverifed, AI created design.

nunosousa/SCART-switcher
An old school SCART switcher. Its main purpose will be to automaticaly detect and switch the video output to the active input video source.