--- title: "Canjectors — Chris's Custom CAN Bus Interconnect System" tags: - hardware - electrical - can-bus - 2890 - custom type: hardware-spec owner: 2890 status: active sources: - "https://swyftrobotics.com/products/swyft-cannect-wiring-system" - "https://store.ctr-electronics.com/products/cancoder" --- # Canjectors — Custom CAN Bus Interconnect System ## Overview After experiencing **critical CAN bus failures** during competition, Chris designed the Canjector system as a robust interconnect solution for Team 2890's robot. Modeled after the SWYFT CANnect concept but with custom design work, Canjectors provide reliable CAN + power distribution at all critical connections. The design philosophy: prevent wiring failures from killing the robot mid-match. ## Key Features - **Modular CAN distribution** — one board per functional zone - **Integrated termination** — 120Ω resistor switchable via shunt jumper at any position - **Power LED** — visual confirmation that 12V is present - **RJ45 connectors** — industry standard, easy to cable, robust - **WAGO 2601 series** — tool-free, reliable terminal connections - **Designed in EasyEDA** — schematic dated 2026-04-09 ## Design Variants Three Canjector variants. **Names are printed on the physical PCBs.** All variants support configurable termination via a shunt jumper — populate the shunt to activate 120Ω termination anywhere in the chain. | PCB Name | CAN ports | 12V outs | Role | |----------|-----------|----------|------| | **Endz** | 1 | 1 | Origin — first device in chain, PDH side | | **Minor** | 3 | 1 | Mid-chain — single wheel (CANcoder + 2 motors) | | **Major** | 6 | 2 | Heavy distribution — end of main runs | ### Minor — Single Wheel Module One Minor per swerve corner: - 1 CANcoder (CTR Electronics CAN FD magnetic encoder for steering feedback) - 2 motors (drive + steering per MK4i) - 1 12V output for accessories Clean single-point connection per wheel — troubleshooting localizes to one module per corner. ## Connection to Training **For students:** CAN bus failures are among the most frustrating problems in FRC — a loose wire or failed connector kills the whole bus. The Canjector system teaches: - **Redundancy** — when one path fails, traffic routes around it - **Termination** — 120Ω at each end of the bus, switchable at intermediate nodes - **Visual debugging** — power LEDs let you confirm connectivity at a glance - **Modular design** — if one Canjector fails, replace it in minutes ## Why This Matters Chris experienced critical CAN failures at competition. The Canjector system is a direct response — solving the failure mode with custom hardware instead of hoping the stock connectors hold. This is the kind of real-world engineering that separates good teams from great ones. ## Files | File | Description | |------|-------------| | `canjector-schematic.png` | Minor variant — EasyEDA schematic | | `canjector-start-pcb.png` | Endz variant — PCB layout | | `canjector-minor-render.png` | Minor variant — 3D render, blue PCB | | `canjector-major-render.png` | Major variant — 3D render, blue PCB | | `canjector-endz-render.png` | Endz variant — USB-to-CAN diagnostic | | `canjectors.md` | This documentation file | | `canjector-gerbers/` | Major variant manufacturing files | | `canjector-minor-gerbers/` | Minor variant manufacturing files | | `canjector-endz-gerbers/` | Endz variant manufacturing files |