Aller au contenu

Dashboard custom ESP32

Featured Replies

Posté(e)

Salut les riders 😎

J'utilisais une montre P22 Aliexpress avec le firmware EUCWatch pour avoir les infos de vitesse et de batterie sur mon gant, et aussi déclencher un bip sur la roue en guise de klaxon (qui est obligatoire d'aprÚs ce que j'ai compris, mais surtout bien utile quand on arrive derriÚre un groupe de piétons qui prend toute la place).

AprÚs plus de deux ans de bons et loyaux services elle a fini par rendre l'ùme. Je pensais que c'était juste l'accu LiPo qui était mort mais non.

Au lieu d'en acheter une autre j'ai décidé d'en bricoler une avec un petit écran OLED et un ESP32.

J'ai déjà un proto fonctionnel. Pas de fioritures, pas d'écran tactile pénible à utiliser avec les gants. Juste le % de batterie restant, la température de la carte, la vitesse, la distance parcourue. En bonus un indicateur de phare, le statut "ONLINE" et "OFFLINE" et le taux de charge de l'accu qui sera embarqué dans la version finale.

Deux boutons, un pour le bip et un pour le phare.

Ca marche super bien, ça se connecte plus vite que la montre et a plus de portée. La télémétrie fonctionne (oui j'ai fait un tour de roue dans le quartier avec mon circuit dans la main).

Il me reste à compacter tout ça avec un ESP C3 mini et à imprimer des piÚces pour intégrer le tout le mieux possible sur mon gant.

S'il y en a que ça intĂ©resse je pourrai partager le code et la BOM. Ca ne fonctionne que sur Begode (et peut ĂȘtre mĂȘme que sur Begode A2), mais c'est intĂ©grable sur d'autres roues.

20260201_192744.jpg

Modifié par Cool_Hands

Posté(e)
  • Auteur

Update:
Reçu les ESP32-C3 Mini, fini de porter le code (juste du pinout et une petite subtilité sur la sortie du deep sleep).
Ca fonctionne, il n'y a plus qu'à attendre le convertisseur 4.2V->3.3V et la partie électronique sera bouclée.
Je vais commencer Ă  modĂ©liser le boitier, sachant qu'en gĂ©nĂ©ral il me faut bien trois au quatre versions avant d'avoir un truc pas trop moche 😁

Modifié par Cool_Hands

Posté(e)
  • Auteur

Ca avance doucement...

Pas facile de garder l'ensemble compact, de penser à l'impression, à l'assemblage et à l'étanchéité aux projections.

Tout est censé s'emboiter pour éviter au maximum les vis, dans l'idéal j'aimerais juste 4 vis M2.5 pour fixer le capot supérieur, avec un petit joint en TPU.

Capture d'écran 2026-02-10 010719.png

Modifié par Cool_Hands

Posté(e)

Salut,
Je suis ton projet avec intĂ©rĂȘt.
Je n'ai pas de A2 mais 2 Falcon (mon fils et moi), j'ai tout sur ma montre mais pour mon fils ça pourrait ĂȘtre top )
Donc je vais passer commande d'un ou deux ESP32-C3 Mini ) le reste j'ai certainement.

Edit : je veux bien la réf de ton convertisseur et lipo )
Edit 2 : j'ai trouvé dans ton printscreen fusion360 ;)

Modifié par Aerowheelex

Posté(e)
  • Auteur

Ahhhh ça fait plaisir 😁

En principe les trames BLE sont identiques sur toutes les roues Begode, mais du coup tu pourras tester et me dire!

Le convertisseur: https://fr.aliexpress.com/item/1005008602719818.html

Pas encore reçu donc pas testé. A priori il fait buck&boost, donc prend n'importe quelle tension en entrée dans la plage 1.8V-5V, et sort du 3.3V

Pour la batterie j'ai pris ce que j'avais en stock, donc un accu 18350 de clope électronique, par exemple https://www.lepetitvapoteur.com/fr/accus/8325-accu-mxjo-18350-700mah.html

Mais on peut adapter le boitier pour le remplacer par deux piles AAA, ou n'importe quoi d'autre. Je ne mettrais pas de Li Po personnellement, c'est un peu fragile comme batterie, j'aurais peur que ça perce suite à une chute et que ça prenne feu.

Il faut aussi deux résistances 10kOhm pour le pont diviseur pour l'indicateur de charge de l'accu.

Tu devrais prendre au moins deux ESP32 mini, un sur lequel tu souderas les pin headers pour les tests sur breadboard, un que tu souderas directement sur le montage final.

Attention aussi, sur les miens j'ai du faire une manip pour les connecter en USB la premiĂšre fois: appui sur RESET+ BOOT, relĂąchement RESET, relĂąchement BOOT.

Enfin, je fais le design du boitier dans le but d'intégrer le systÚme plus ou moins élégamment dans un gant Gyroriderz mais là encore on peut adapter le design.

Je pourrai t'envoyer le code source et le fichier step du boitier.

Posté(e)
  • Auteur
il y a 46 minutes, Aerowheelex a dit :

Edit 2 : j'ai trouvé dans ton printscreen fusion360 ;)

Attention le convertisseur buck dans Fusion n'est pas le bon modÚle, il n'y était pas dans GrabCAD, j'en ai prix un avec une taille similaire. Merci au passage à tous ceux qui modélisent tous les composants électroniques et les partagent, ça fait gagner beaucoup de temps.

Posté(e)

Super merci, c'est commandé )
Ca Ă©vitera Ă  mon fils d'avoir un smartphone et une montre connectĂ©e mais de savoir oĂč il en est niveau bat/autonomie. Bref c'est gĂ©nial, j'adore ce genre projet. Je regarderai pour la batterie, j'ai plusieurs petites lipo mais aucune 18350.
Encore merci

Edit : j'ai commandĂ© les mĂȘmes que ceux de ton lien

Modifié par Aerowheelex

Posté(e)

Il y a un truc qui m'étonne énormément, je le diffuse mais ce n'est surtout pas pour troller.
Il existe une montre qui est destinĂ©e Ă  ĂȘtre programmĂ©e, c'est la Bangle.js
Il existe sur cette planĂšte des dieux du Java script et autres langages abscons
Il existe des programmeurs qui arrivent à connaßtre les trames ble de différentes roues
Mais personne pour pondre le code et la procédure qui va bien pour nos roues...
Bangle.js-1.JPG

Ne le prend pas mal, @Cool_Hands , ce que tu fais est superbe et mérite un immense respect,
mais... n'est-ce pas un peu un principe Shadock ? Pourquoi faire simple etc...

Posté(e)
il y a 10 minutes, Techos78 a dit :

Il y a un truc qui m'étonne énormément, je le diffuse mais ce n'est surtout pas pour troller.
Il existe une montre qui est destinĂ©e Ă  ĂȘtre programmĂ©e, c'est la Bangle.js
Il existe sur cette planĂšte des dieux du Java script et autres langages abscons
Il existe des programmeurs qui arrivent à connaßtre les trames ble de différentes roues
Mais personne pour pondre le code et la procédure qui va bien pour nos roues...
Bangle.js-1.JPG

Ne le prend pas mal, @Cool_Hands , ce que tu fais est superbe et mérite un immense respect,
mais... n'est-ce pas un peu un principe Shadock ? Pourquoi faire simple etc...

Genre ça :

60a60f18-6866-45fa-b7c4-60e831d6da6e.jpg

Posté(e)

Parfois c'est le voyage qui est important, pas la destination 😁. Il existe en effet plusieurs montres, y compris Ă  pas cher, sur lesquelles on peut du dĂ©veloppement pour permettre le mĂȘme type d'affichage des donnĂ©es de roue. Pour autant c'est toujours sympa et gratifiant de se lancer dans ce genre de projet.

Posté(e)
  • Auteur

C'est pas la peine de prendre toutes ces prĂ©cautions avec moi hein, je suis ici pour Ă©changer, si je commençais Ă  m'offusquer a chaque fois que quelqu'un me challenge un peu, pose des questions ou propose des alternatives je passerais Ă  cĂŽtĂ© du sujet đŸ€Ł

@Techos78 Je ne connaissais pas la Bangle, c'est trĂšs intĂ©ressant. AprĂšs ça vaut 100€ environ, de mon cĂŽtĂ© je pense ĂȘtre entre 5 et 10€ en consommables, sans compter le temps bien sur (mais quand on aime on ne compte pas). Et c'est un de mes objectifs justement, avoir une solution simple et pas chĂšre que je n'aurai pas peu d'amener en ride et que je pourrai rĂ©parer pour quelques euros.

Par contre je ne comprends pas le passage "Il existe des programmeurs qui arrivent à connaßtre les trames ble de différentes roues
Mais personne pour pondre le code et la procédure qui va bien pour nos roues..."

Ben si justement, j'ai retrouvé toutes les trames dans un projet Android sur GitHub:

https://github.com/Wheellog/Wheellog.Android/blob/master/app/src/main/java/com/cooper/wheellog/utils/

Il y a un fichier source pour chaque marque de roue qui contient les infos de lecture des trames. Avec de la patience et ChatGPT j'ai pu extraire les fonctions en java et les coller dans le code C/C++ de l'ESP. Du coup c'est faisable pour les autres roues, c'est juste que je les ai pas pour tester.

C'est moins difficile que ça ne parait, en pratique mon code a été fait à 80% par l'IA, il faut juste garder un peu de maitrise pour la recadrer un peu quand elle fait n'importe quoi (par exemple elle m'a fait le code pour envoyer "beep" toute seule mais il a fallu que je lui mette le nez dans son caca pour la commande du phare, elle essayait des trucs au hasard alors qu'elle avait le bon code quelques prompts plus haut).

Aprùs ChatGPT c'est pas le meilleur cheval, au boulot les devs utilisent Claude qui a l'air beaucoup plus performant mais je peux pas m'en servir pour mes projets perso 😛

@Fucklesboomers Je reconnais bien la photo, j'avais ça avant, ça faisait le taf. Je faisais tourner EUCWatch sur une P22 à 20 balles. Le plus gros problÚme est l'écran tactile qui est pénible à utiliser avec les gants. Pour allumer le phare il faut faire un swipe et presser sur une petite zone. Pas adapté pour moi.

@Blkfri Exactement, comme a dit un grand philosophe français, "ce qui compte c'est pas l'arrivĂ©e c'est la quĂȘte". Et ce projet combine plein de trucs que j'aime, le dev, l'Ă©lectronique et l'impression 3D 😀

Bon allez je retourne intégrer mes boutons poussoirs dans Fusion.

Modifié par Cool_Hands

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet


Information importante

Nous avons placĂ© des cookies sur votre appareil pour aider Ă  amĂ©liorer ce site. Vous pouvez choisir d’ajuster vos paramĂštres de cookie, sinon nous supposerons que vous ĂȘtes d’accord pour continuer.

Account

Navigation

Rechercher

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.