Skip to content

Repo for hosting source code, pcb board layout, connection schematics for a odschool motorbike digital dashboard.

License

Notifications You must be signed in to change notification settings

ToMiDevelop/BikeDashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bike Dashboard

Prototype Boot screen
Device prototype Device prototype
Main menu Left trunk closed, right trunk open
Device prototype Device prototype
Temperature sensors calibration screen Fully functional main screen
Device prototype Device prototype
PCB - soldered bottom PCB - soldered top
Device prototype Device prototype

1. Brief repo description

In this repository you'll find the source code, custom PCB project, connection schematics of a simple digital dashboard tailored for the bike of one of my friends.

2. Functionality and key principles

  • The device is supposed to show live view of the engine's the outside world's temperature.
  • The device shows also the state of 2 trunks - either if they are closed or open.
  • The physical design has to enable the temperature sensors to be attached even more than 1 meter away from the microcontroller
  • The lcd screen should be attached approx. 1.5 meters away from the microcontroller.
  • Main electronics should be mounted in a custom 3d printed case bellow the seat.
  • There is a need for a step-down voltage regulator to connect DIY equipment to the battery.

3. Used components

4. Brief source code description

The source code of the scripts running on the board is kept in the firmware folder residing in main path of the repository. It contains two subfolders: lib and functions. Main scripts executed on the board are: boot.py and main.py. All the folder and files, which need to be transferred to the microcontroller board are visible on the tree bellow.

firmware
│
├──── functions
│     ├── display.py
│     ├── temperature.py
│     └── trunk.py
│
├──── lib
│     ├── i2c_lcd.py
│     ├── lcd_api.py
│     └── WIFI_CONFIG.py
│
├── boot.py
└── main.py

In the boot.py there is some initial configurations and start on boot code. In the main.py there is code with the main logic of the application. In lib there are libraries used to talk with the display and a wifi configuration file, as the OTA updates are one of the project goals. In functions there are modules with classes used to invoke all the individually tailored operations made on display, interactions with the temperature sensor and the limit switches.

6. Custom PCB Board

In this project I'm using a custom designed PCB board. All the design files can be found in the pcb folder.

pcb
│
├──── gerber                            
│     ├── Kokpit Final-B_Cu.gbr        
│     ├── Kokpit Final-B_Mask.gbr       
│     ├── Kokpit Final-B_Paste.gbr  
│     ├── Kokpit Final-B_Silkscreen.gbr
│     ├── Kokpit Final-Edge_Cuts.gbr
│     ├── Kokpit Final-F_Cu.gbr        
│     ├── Kokpit Final-F_Mask.gbr       
│     ├── Kokpit Final-F_Paste.gbr  
│     ├── Kokpit Final-F_Silkscreen.gbr
│     ├── Kokpit Final-job.gbrjob
│     ├── Kokpit Final-NPTH.drl
│     └── Kokpit Final-PTH.drl
│
├──── renders                           
│     ├── Back.png
│     └── Front.png
│
└── BikeDashboard_KiCad.zip

In gerber folder there are all the generated gerber files. The BikeDashboard_KiCad.zip is a export of the whole KiCad project.

PCB - front render PCB - back render
Device prototype Device prototype

5. Language notice

All of the interface is designed in Polish, you can freely customize it with the translation from translations.json file.

7. Minor side tools

In the .sidetools folder you'll find some small scripts I used to scan the one wire and i2c bus and to test the display.

8. Legal notice

I'm the only author of all the work covered in this repository. All the files made publicly available in the repository are licensed under the BikeDasboard project license. The full licence text is available in LICENSE file.

About

Repo for hosting source code, pcb board layout, connection schematics for a odschool motorbike digital dashboard.

Resources

License

Stars

Watchers

Forks

Languages