Scripts to simulate button inputs via CAN bus signals in your Tesla Model 3, Y, and newer S and X. Keeps the vehicle awake by sending periodic CAN messages via a comma.ai Panda device.
📖 Full documentation: See examples/marsmode/README.md
- 1x Raspberry Pi 4 + Case
- 1x USB-C to USB-A Cable
- 1x USB-A to USB-A Cable for flashing firmware
- 1x MicroSD Memory Card
- 1x White Comma Panda
- 1x OBD Adapter Cable
curl https://spleck.net/mars-mode-install | bashFor verbose output:
curl https://spleck.net/mars-mode-install | V=1 bashAfter installation:
# Run a mode directly
cd ~/panda/examples/marsmode
python -m marsmode --mode media-volume-basic
# Or use the wrapper
./scripts/marsmode.sh start media-volume-basic
# Enable auto-start on boot
sudo systemctl enable marsmode@media-volume-basicexamples/marsmode/
├── marsmode/ # Python package
│ ├── __main__.py # Entry point
│ ├── cli.py # Command-line interface
│ ├── core.py # Shared Panda controller
│ └── modes.py # Mode implementations
├── scripts/ # Shell scripts
│ ├── install.sh # System installer
│ └── marsmode.sh # Wrapper script
├── config/
│ └── marsmode.yaml # Configuration
├── systemd/
│ └── marsmode@.service # Systemd service
└── README.md # Full documentation
See examples/marsmode/README.md for detailed manual install steps.
| Mode | Description |
|---|---|
media-volume-basic |
Simple volume up/down every 4-8 seconds |
media-volume |
Volume control synced to Tesla clock ticks |
speed-basic |
AP speed adjust every 4-8 seconds |
speed |
Speed adjust synced to Tesla clock ticks |
media-back |
Media back button every 5 seconds (Streaming app only) |
advanced |
Full-featured with mode switching and park detection |
- Original panda software by comma.ai
- Mars Mode extensions by spleck
panda software and mars mode scripting are released under the MIT license unless otherwise specified.