- Start: 1 CAN, 1 12V (bus origin) - Minor: 3 CAN, 1 12V (intermediate) - Middle: 3 CAN, 2 12V (intermediate + power) - Major: 6 CAN, 2 12V (end of chain) - Endz: 1 CAN, 1 12V + USB diagnostic (start or end) - All have shunt-activated 120Ω termination
97 lines
4.8 KiB
Markdown
97 lines
4.8 KiB
Markdown
---
|
|
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 | |