Cuentarrevoluciones hecho con RPi zero W con pantalla lcd 16x2 y rotary-encoder. Funciona mediante OBDII.
Mi Smart Fortwo solo tiene cuentarrevoluciones si lo pagas como un extra, el mío no vino con ese extra y no me apetece pagar más por él así que decidí hacerme uno utilizando el protocolo OBD-II. La idea inicial es solo mostrar las revoluciones del motor pero como veréis, he implementado más cosas.
Todo el programa esta escrito en Python3 y ejecutado en una RaspberryPi Zero W (versión con WiFi y Bluetooth).
La conexión al puerto OBD se realiza mediante Bluetooth y la librería python-OBD.
La pantalla utilizada es la típica LCD de 16x2 píxeles y adicionalmente utiliza un Rotary encoder para poder navegar entre distintos menús.
Actualmente el programa puede mostrar:
- RPM del motor.
- Temperatura del Refrigerante.
- Consumo de gasolina (aproximado gracias al sensor MAF).
- Tiempo de parada para cuidar el turbo.
- Descargar el proyecto
- introducir pip install obd en nuestro entorno.
- Editar main.py para asignar puertos, entre otros parámetros.
- Ejecutar main.py: python3 main.py
Librería para controlador ST7066U hecha por mí. Al ser más específica que la Adafruit funciona a mayor velocidad.
Le he realizado unos cambios para que funcione con el rotary conectado de GPIO -> GND, he añadido la función de un botón para los rotary con botón y lo he tratado como variable global.
Modelos 3D en formato stl de la caja en carpeta doc/Modelos
Cableados a la RPi en carpeta doc/Images
- Librería OBD original
- Librería Rotary encoder original
- Librería original LCD Adafruit
- Pantalla: LCD 1602
- Obd: elm327
- Rotativo
Para programarlo todo, he utilizado un OBD-II virtual el cual te ahorra bastante tiempo, ya que no necesitas bajar directamente al coche.
OBD II Codes.
Este programa permite utilizar la Raspberry como punto de anclaje Wi-Fi y de esta manera poder meter actualizaciones sin necesidad de sacar la Rpi de la caja.
- GUARDADO DE MUESTRAS CADA KM NO CADA SEGUNDO




