Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

State looks live while the car is asleep or the CAN bus is silent

Abierto
#11 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
rust
Área
embedded-iot

Línea de trabajo

Start with state_update_task and STATE_HEARTBEAT_INTERVAL in cars/egmp/src/lib.rs, then trace the liveness timer in mobile-app/lib/providers/vehicle_state_provider.dart and the timestamp display in egmp_dashboard.dart. Review a log of the car falling asleep and waking up to determine which signals remain valid. Done when the app distinguishes fresh CAN data from the last state reported before the bus went quiet.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Problem

  • state_update_task republishes the full state every 5 s (STATE_HEARTBEAT_INTERVAL, cars/egmp/src/lib.rs:223), whether or not any CAN frame arrived. So when the car sleeps, or the bus goes quiet because of a bus fault, wiring or a WiCAN issue, the device keeps sending the last known values as if they were fresh.
  • The app marks state live on any update (30 s liveness timer, mobile-app/lib/providers/vehicle_state_provider.dart:182). The dashboard then shows "Updated just now" (egmp_dashboard.dart:282) for values that may be hours old.
  • Values that are only meaningful while the car is awake stay frozen at their last reading: speed, power flow, charging state, time to 80%, and so on.

Open questions

  • What does an E-GMP car send before going to sleep? Do the last frames leave a consistent "off" state (Park, not ready, not charging)?
  • Which values are still valid while asleep (doors, locks, SoC, odometer) and which should be marked unknown?
  • How should the app show "car asleep, last seen at X" compared with "device connected, no CAN data"?

Ideas

  • Track the time of the last frame that matched a filter, and send it with each state update (or as a system-state field).
  • Stop the heartbeat, or flag the state as stale, after N seconds without frames.
  • Clear values that only make sense while awake when the bus goes quiet.
  • Check this against a log of the car falling asleep and waking up.

Done when
The app can tell live data from data the car last reported before going quiet, and shows the difference.

Lenguaje dominante
Rust
Estrellas
1
Forks
0
Merge medio
14 h 32 min
PR fusionados (30 d)
21

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

  • Sin Dockerfile ni archivo de Docker Compose
  • Sin plantilla de pull request
  • Sin guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de OpenCarControls/firmware

Todos los issues de OpenCarControls/firmware

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.