- Redesign the 3D model to improve its fit on the Tesla dashboard by moving the Raspberry Pi's weight to the back, enhancing its grip and stability on the dash.
- Fix a start on boot service or smth similar.
This project is a DIY dashboard solution for Tesla Model Y and Model 3 owners. It provides real-time data and controls for your vehicle, leveraging a Raspberry Pi 4, a 7-inch Raspberry Pi screen, and an OBDLink MX+ adapter. The software is built using QT, PyQt, and SocketCAN, with communication facilitated by an ELM327 to SocketCAN driver. Additionally, this project utilizes the Model 3 DBC (Database for CAN Bus) file for improved compatibility.
- Real-time vehicle data monitoring.
- Customizable dashboard layout.
- Compatibility with both Tesla Model Y and Model 3.
- ELM327 to SocketCAN driver for efficient CAN communication.
- Integration of the Model 3 DBC file for accurate data interpretation.
- Raspberry Pi 4 (guess you know how to get one..)
- 7-inch Raspberry Pi screen (Can be found in Amazon or ebay)
- OBDLink MX+ adapter (Can be found in Amazon or ebay)
- 3D printed Custom-designed mount/holder Check out 3D models or STLs
- Raspbian OS or Raspberry Pi OS
- PyQt for the graphical user interface
- SocketCAN for CAN bus communication
- ELM327 to SocketCAN driver
- Tesla Model 3 DBC file
-
Raspberry Pi Setup: Make sure your Raspberry Pi is set up with the required operating system and is properly connected to the 7-inch screen.
-
Clone the Repository:
git clone https://github.com/your-username/tesla-dashboard.git cd tesla-dashboard
-
Install Dependencies: Install the necessary Python packages and libraries.
pip install -r requirements.txt
-
Compile and Run: Compile and run the project using the following command.
python main.py
or use the bash script as a service:
./setup_can0.sh
-
Configuration: Configure your OBDLink MX+ adapter and ensure the Model 3 DBC file is correctly set up for accurate data interpretation.
-
Mounting: Use the provided mount/holder design (STEP or STL format) to securely attach the Raspberry Pi and screen to your vehicle.
-
Launch the application on your Raspberry Pi.
-
Connect the OBDLink MX+ adapter to your Tesla Model Y or Model 3.
-
The dashboard will display real-time data and control options for your vehicle.
-
Customize the dashboard layout and widgets to suit your preferences.
Contributions are welcome! If you'd like to improve this project, feel free to fork the repository and submit a pull request with your changes. Please follow the Contributing Guidelines.
This project is licensed under the MIT License.
- Special thanks to the Tesla community for their support and contributions.
- Credit to the creators of PyQt, SocketCAN, and the Model 3 DBC file for enabling this project.
- Credit to @alex-adam for giving me the base for the Qt GUI base. (https://github.com/alex-adam/Tesla)
- Credit to @norly for enabling providing the Linux SocketCAN kernel driver for the ELM327 (https://github.com/norly/elmcan)
For questions, feedback, or issues, please contact Tom.
Happy driving!