1 points par GN⁺ 2025-11-12 | 1 commentaires | Partager sur WhatsApp
  • Projet de petit afficheur montrant en temps réel les arrivées des trains BART, conçu pour recréer l’ambiance des panneaux de quai réels
  • Matériel basé sur un Seeed Studio XIAO ESP32C6 et un écran OLED alphanumérique rouge 20x4
  • Au lieu de traiter directement les données de l’API GTFS Realtime, un serveur intermédiaire (middleware) a été créé pour les convertir en une API simplifiée ensuite appelée depuis l’ESP32
  • Un boîtier fabriqué en impression 3D intègre des détails comme des étiquettes et des vis afin de reproduire l’apparence d’un véritable panneau BART
  • Le produit fini est fixé sous l’étagère au-dessus du moniteur et affiche les temps d’arrivée, des messages de sécurité et l’heure, pour recréer une sensation de quai même en intérieur

Configuration matérielle

  • Le projet se compose d’un Seeed Studio XIAO ESP32C6, d’un SPI Red 20x4 Character OLED Display et d’un SparkFun Logic Level Converter
    • L’ESP32C6 se charge de piloter l’afficheur et de récupérer les informations d’arrivée BART
    • Le convertisseur de niveaux logiques garantit la compatibilité des tensions
  • Un module OLED rouge de BuyDisplay a été choisi afin de retrouver l’esthétique des véritables panneaux de quai BART
    • Le PCB étant légèrement plus grand que l’écran, cela a eu un impact sur les dimensions finales, mais ce compromis a été accepté pour le rendu visuel
  • Tous les composants ont été soudés sur une perfboard et reliés par des broches d’en-tête, permettant un montage direct sur l’afficheur sous forme de cartouche

Structure du firmware

  • L’API officielle de BART utilise le format GTFS Realtime, développé en collaboration avec Google
  • Comme le parsing direct sur l’ESP32 est difficile, un serveur intermédiaire (middleware) a été mis en place
    • Le serveur récupère les données GTFS et n’en extrait que les informations nécessaires
    • Il les convertit ensuite en une API simplifiée que l’ESP32 peut appeler
  • Le code associé est publié sur GitHub dans le dépôt filbot/bart-proxy

Démo et assemblage

  • Tous les composants ont été assemblés et une première version du boîtier imprimé en 3D a été testée
  • La vidéo de démonstration montre le produit avant peinture, en fonctionnement avec réception des données en temps réel
  • Le processus d’assemblage permettant de vérifier la taille réelle et les proportions est également inclus

Finition et apparence finale

  • Les pièces imprimées en 3D ont été poncées, apprêtées puis peintes pour la finition
  • Le logo du fabricant réel des panneaux BART et le numéro de quai ont été imprimés avec une étiqueteuse Brother, puis apposés
  • Les fichiers du modèle 3D final sont téléchargeables sur Makerworld

Résultat final

  • Le produit terminé est fixé avec du ruban adhésif double face sous l’étagère métallique au-dessus du moniteur
  • L’afficheur montre les temps d’arrivée des trains, l’heure actuelle et les messages de sécurité BART
  • Il est aussi possible de consulter ces informations en temps réel sur le Web, mais un afficheur miniature imitant un vrai panneau de quai procure une expérience d’usage plus plaisante

1 commentaires

 
GN⁺ 2025-11-12
Avis Hacker News
  • C’est vraiment un super projet. Avant, moi aussi, je quittais la maison en fonction des horaires de la station, mais j’ai vite réalisé que ça ne servait à rien
    En partant simplement quand ça m’arrange, le stress de la planification disparaît, et même si le temps d’attente moyen augmente un peu, je suis beaucoup plus détendu

    • J’habite en Finlande, et comme il fait trop froid en hiver, j’ai moi-même fabriqué un appareil matériel qui affiche l’heure de départ du tram près de chez moi
      Quand il fait autour de -20 °C, attendre 1 minute ou 7 minutes fait vraiment une énorme différence
    • Le temps d’attente moyen peut même être bien plus que doublé. C’est à cause du paradoxe du temps d’attente (Waiting Time Paradox), une manifestation du paradoxe de l’inspection dans les transports
      Voir à ce sujet cet article Medium
    • J’ai vécu la même chose. Les matins où je venais juste de rater un train BART étaient en fait meilleurs
      Je pouvais utiliser ce temps pour faire des flashcards SSR ou lire un livre et me recentrer
      La station South San Francisco, en particulier, a un plafond très haut, et on y entend même les pigeons, ce qui lui donne presque une ambiance de cathédrale
    • Je ne regarde les horaires que si le bus ou le train passe à plus de 10 minutes d’intervalle. Les trams arrivent presque toujours en moins de 10 minutes, donc j’y vais sans vérifier
    • C’est différent quand on emprunte une ligne où les trains passent toutes les 30 minutes. Dans ce cas, arriver au bon moment vaut clairement le coup
  • J’ai fait quelque chose de similaire. C’est un projet d’écran couleur utilisant les données de transport suisses, que j’ai même transformé en produit
    Voir le billet sur le projet et le site du produit
    J’utilise sur un ESP32-S3 les données publiques fournies par le gouvernement

    • Je me demande si la conversion est correcte. Environ 1449 CHF semblent correspondre à 1800 dollars, mais je ne suis pas sûr
  • Le niveau de finition est vraiment excellent. Le choix de l’écran est aussi remarquable
    Si tu veux réduire le middleware, une option serait d’utiliser un LLM récent pour convertir le langage du code
    L’ESP est suffisamment puissant pour gérer directement les appels API, donc essayer une conversion avec un LLM peut aussi avoir un vrai intérêt pédagogique

  • Ce genre de projet est vraiment inspirant
    Grâce au soin apporté aux moindres détails, on dirait un panneau miniature d’une vraie station. Très belle réalisation

  • Chaque fois que je regarde l’écran, j’ai l’impression d’entendre automatiquement dans ma tête la voix des annonces du BART
    Article lié : article sur les annonces du BART

  • Très belle réalisation. Ça doit vraiment changer l’ambiance de la pièce

  • J’ai une suggestion de fonctionnalité — ce serait bien d’ajouter une voix robotique
    Référence : article sur les annonces du BART

    • À l’époque, à Noisebridge, j’avais créé un programme qui diffusait les temps d’arrivée du BART avec une voix de synthèse
      Mais d’autres trouvaient ça bruyant, donc il a fallu l’éteindre assez vite
    • Pour moi, cette voix indistincte mais attachante reste chargée de nostalgie
      Il fut un temps où, quand le quai changeait, il fallait aller vérifier soi-même
    • L’ancien système de synthèse vocale du BART reste marquant. C’était de la pointe à l’époque, et même aujourd’hui, ça sonne encore futuriste
      En voyant l’article lié, je me suis dit : « il faut absolument que je retrouve cette voix », et j’ai eu l’impression de tomber exactement dessus
  • J’ai été inspiré par la conception simple et propre de l’API temps réel
    Ça me paraît beaucoup plus abordable que lorsque je manipulais des données GTFS auparavant

  • Dans l’ensemble, le niveau de finition et l’attention aux détails sont excellents. L’atmosphère et l’immersion sont vraiment réussies

  • Moi aussi, j’aimerais fabriquer quelque chose de similaire pour afficher les informations des trains près de chez moi
    Mais je n’ai pas encore trouvé d’API vraiment fiable