--- 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" --- # 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. ## Design Basis Chris studied the **SWYFT CANnect** system as inspiration: - Run CAN bus + 12V power over standardized cabling - Easy connector system (WAGO lever terminals) - Built-in CAN termination options - Robust form factor Canjectors go further with custom modifications for Team 2890's specific failure points. ## Current Design: Middle Canjector The schematic shows the "middle" Canjector variant with: - **12V power** passthrough - **3 CAN connections** (RJ45 connectors) - **WAGO terminal blocks** for clean wiring (2601-1104 series) - **120Ω termination resistor** (R4) between CAN signal lines — switchable - **Power indicator LED** (green, 0603) with 470Ω current limiting resistor - **2-pin header** for additional configuration ## Key Features - **Dual CAN paths** — each Canjector bridges multiple CAN segments - **Integrated termination** — 120Ω resistor switchable per segment - **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 Chris designed five Canjector variants to form a complete CAN bus distribution system. All variants support configurable termination via a shunt jumper — populate the shunt to activate 120Ω termination at any position in the chain. | Variant | CAN connections | 12V outputs | Termination | Typical use | |---------|----------------|-------------|-------------|-------------| | **Start** | 1 | 1 | Shunt-activated | Bus origin at PDH | | **Minor** | 3 | 1 | Shunt-activated | Intermediate node | | **Middle** | 3 | 2 | Shunt-activated | Intermediate node + power distribution | | **Major** | 6 | 2 | Shunt-activated | End of chain (large node) | | **Endz** | 1 | 1 | Shunt-activated | Start OR final terminator — diagnostic USB interface | **All Canjectors share the same termination philosophy:** no fixed termination at any position. Use a shunt jumper to enable 120Ω termination exactly where the bus physics require it. This eliminates the need for separate "terminating" and "non-terminating" variants. **Endz** is unique — it's the diagnostic variant with a USB Type-B connector for direct laptop-to-CAN connection. Meant to serve as either the first or last device in the chain. Currently experiencing design problems; no working units on hand. ## 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. ## Notes for MrC This is a **confidence builder** for the training vault — it shows Chris's practical engineering under pressure. Good story for students: identify the problem, study existing solutions, design your own, build it, test it. The full engineering cycle, not just code. ## Files | File | Description | |------|-------------| | `canjector-schematic.png` | Middle Canjector — EasyEDA schematic | | `canjector-start-pcb.png` | Start variant — PCB layout (red solder mask) | | `canjector-minor-render.png` | Minor variant — 3D render, blue PCB | | `canjector-major-render.png` | Major variant — 3D render, blue PCB, 6 CAN ports | | `canjector-endz-render.png` | Endz variant — USB-to-CAN diagnostic interface | | `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 |