Open-source browser-based CAN bus analyzer
Project description
CANvas Backend
FastAPI + python-can backend for the CANvas CAN bus analyzer.
Quick Start
cd backend
# Install (includes gs_usb support)
pip install -e ".[gs_usb]"
# Run with virtual bus (no hardware needed)
canvaz --interface virtual
# Run with FYSETC UCAN / any Candlelight-firmware device (Windows)
canvaz --interface gs_usb
# Run with slcan (COM port) device
canvaz --interface slcan --channel COM3 --bitrate 500000
# Run on Raspberry Pi (SocketCAN)
canvaz --interface socketcan --channel can0 --bitrate 500000
Browser opens automatically at http://localhost:8080. API docs at http://localhost:8080/docs.
Run Tests (no hardware needed)
pip install -e ".[dev]"
pytest tests/ -v
API Summary
| Method | Path | Description |
|---|---|---|
| POST | /connect |
Open CAN interface |
| POST | /disconnect |
Close interface |
| GET | /status |
Connection state |
| POST | /send |
Transmit a frame |
| WS | /ws/frames |
Live frame stream |
| POST | /dbc/load |
Upload DBC file |
| GET | /dbc/messages |
List decoded messages |
| DELETE | /dbc |
Unload DBC |
| POST | /log/start |
Start recording |
| POST | /log/stop |
Stop recording |
| GET | /log/download/{file} |
Download log file |
Interface Notes
gs_usb (default): Targets Candlelight firmware — the default on FYSETC UCAN and most cheap CAN modules. Shows as "USB Composite Device" + "gs_usb" in Windows Device Manager. No COM port. No reflash needed.
slcan: For devices running slcan firmware that enumerate as a COM port. Pass
--channel COM3 (or whatever port Windows assigns).
virtual: Software bus — frames loop back on themselves. Used for development and CI. No hardware required.
socketcan: Linux SocketCAN. Requires ip link set can0 up type can bitrate 500000
before starting. Works on Raspberry Pi and WSL2 with usbipd.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file canviz-0.1.0.tar.gz.
File metadata
- Download URL: canviz-0.1.0.tar.gz
- Upload date:
- Size: 100.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a3b4324899f12a8bbbd29b18d4ce3ca1b8b59325b91bdb824273f015e21ff606
|
|
| MD5 |
a5cf4017bc3528f7e933d8459abe9a54
|
|
| BLAKE2b-256 |
849827c985dbf6ebdc0aef493f7046446df1a7e1ff8993e2b062400cf2362672
|
File details
Details for the file canviz-0.1.0-py3-none-any.whl.
File metadata
- Download URL: canviz-0.1.0-py3-none-any.whl
- Upload date:
- Size: 102.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6c25aff8aa75b40242b44b1147c9bed010001fc831e67cdce1f24588a51188e8
|
|
| MD5 |
e9ab31d4e35a785c90abaceb399562bc
|
|
| BLAKE2b-256 |
35479c3ac1fe2061364f1a34128e18ac4ade4da5bf30867f33c96a25cd2807f1
|