Tout ce qui a été posté par Blkfri
- WheelDash - App Garmin
- WheelDash - App Garmin
- WheelDash - App Garmin
- WheelDash - App Garmin
-
Design d'un EUC "from scratch"
Est-ce que tu as écumé endless-sphere, il y a pas mal de ressources pour tout ce qui est custom ? En regardant rapidement j'ai trouvé ça, un peu plus gros (et toujours pas aux specs que tu voudrais) mais ça commence à être sévèrement lourd : https://www.qs-motor.com/product/3000w-8000w-qs-spoke-hub-motor-for-electric-motorcycle/.
-
Le monocycliste qui veux un EUC
Hello et bienvenue ! D'autres auront peut être des informations complémentaires ou apporteront une vision différente mais pour avoir regardé de ce côté là il y a quelques années je n'avais trouvé que très peu d'info. Le projet le plus documenté et complet étant probablement celui-ci : https://github.com/EGG-electric-unicycle Après il te reste la piste d'associer des pièces de plusieurs modèles d'EUC pour arriver à un truc qui te convient, mais ça risque de te coûter relativement cher et c'est peut être éloigné de ce que tu voudrais faire. Ça sera probablement le plus efficace cependant ! Serg, un pote d'Adam (wrong way) a présenté un EUC custom il y a quelques jours :
-
WheelDash - App Garmin
J'ai envie de communiquer un peu sur mon app donc voici donc les nouvelles fraîches ! Vous m'excuserez (enfin c'est vous qui voyez) mais j'ai eu un peu eu la flemme de traduire la version anglaise que j'avais rédigée pour un post sur electric unicycle forum, c'est donc chatgpt qui s'en charge (on frole l'irrespect), d'où le style d'écriture un peu différent J'ai publié une nouvelle mise à jour pour wheelDash, comprenant différentes fonctionnalités de personnalisation et une réorganisation par groupe des paramètres de l'application via Garmin IQ . Si cela pose trop de problèmes je reviendrais à une version non organisée, car Garmin Connect IQ sur le téléphone peut être un peu récalcitrant et lent. Pour être sûr que les paramètres sont correctement configurés et sauvegardés, suivez ces étapes : configurez tout en une seule fois, appuyez sur Enregistrer, fermez complètement l'application (pas seulement la fermer), redémarrez-la et vérifiez si les paramètres sont configurés comme vous le souhaitez. Voici les principales mises à jour : Paramètres de la roue : - Action lorsque le bouton OK est pressé (précédemment implémentée) : Vous pouvez maintenant définir une action pour le bouton OK. Actuellement, les deux options disponibles sont "cycle des modes d'éclairage" ou "aucune". Si vous avez des suggestions pour d'autres actions utiles, n'hésitez pas à les partager. - Ajout d'un facteur de correction de vitesse : Si vous savez que la vitesse indiquée par votre roue est incorrecte ou si vous avez apporté des modifications nécessitant une correction de vitesse, vous pouvez désormais utiliser ce facteur pour corriger la vitesse affichée. Paramètres de l'interface utilisateur de l'application : - Taux de rafraîchissement : Vous pouvez désormais personnaliser la durée en millisecondes entre deux rafraîchissements d'écran. Cela détermine à quelle fréquence les valeurs affichées seront mises à jour. Un taux de rafraîchissement plus lent (valeur plus grande) devrait entraîner une utilisation moindre de la batterie de la montre (confirmation nécessaire). Paramètres des alarmes : - Vous pouvez désormais définir une alarme PWM et/ou une alarme de vitesse en définissant un seuil de déclenchement pour chaque alarme. Mettre le seuil à 0 désactivera l'alarme. Activités : - Ajout de l'enregistrement automatique des activités : L'application commencera désormais automatiquement l'enregistrement d'une activité lorsque la roue est connectée et la sauvegardera à la fermeture de l'application. - Ajout de la sauvegarde automatique des activités : Cette fonctionnalité permet de sauvegarder automatiquement l'activité à la fermeture (non nécessaire si l'enregistrement automatique est activé). Cependant, vous devez toujours démarrer manuellement l'enregistrement de l'activité. - Même avec ces fonctionnalités activées, vous pouvez toujours démarrer/arrêter manuellement l'activité en accédant à la vue d'activité (glissez vers le haut). Informations actuelles sur la balade : - Vous pouvez désormais choisir les statistiques de la balade qui seront affichées dans la partie inférieure de l'écran. Si vous en sélectionnez plusieurs, chaque élément sélectionné sera affiché pendant 2 secondes en boucle. Actuellement, il y a 3 statistiques disponibles : vitesse moyenne en mouvement (lorsque vous vous déplacez à plus de 3 km/h), vitesse maximale et utilisation de la batterie de la montre (en %/heure). N'hésitez pas à suggérer ou demander d'autres statistiques de balade. Maintenant que ça prends forme, je commence à songer à aller vers le support d'autres marques. La trajectoire à laquelle je pense c'est d'aller d'abord vers un support de Leaperkim car c'est le plus proche de Begode d'un point de vue mode de communication, puis Kingsong et peut-être si j'ai le courage Ninebot et Inmotion (ce dernier ça a l'air d'être un peu plus complexe). Le processus sera forcément compliqué car même si j'aimerai posséder une roue de chaque marque ça n'est pas possible et difficilement justifiable pour faire du developpement (et même si j'avais les finances pour je finirai sûrement avec une série de begode 🔥😁). Bref je ferais signe le temps venu mais j'aurais bien besoin de beta-testeurs si il y a des interessés !
- WheelDash - App Garmin
-
WheelDash - App Garmin
Les tests en extérieur sont plutôt positif j'ai du revoir ma méthode de calcul de vitesse moyenne à partir des données de la roue mais c'est complètement fonctionnel. À voir pour implémenter d'autres valeurs. Je ne suis pas bien sûr des valeurs que je sors pour le "phase current", je ne sais pas si c'est le courant d'une phase du moteur ou la somme des courants des trois phases (ou encore autre chose 🤔). Si quelqu'un peut m'éclairer là dessus je suis preneur
- WheelDash - App Garmin
-
WheelDash - App Garmin
Ce n'est pas tout a fait clair, visiblement il y a quand même un bug qui limite les données reçues aux 20 premiers bytes, c'est à vérifier. J'ai regardé très rapidement et sauf erreur de ma part pour les roues Kingsong ça devrait être OK (a priori pas plus de 20 bytes utilisés), par contre inmotion c'est une autre histoire...
-
WheelDash - App Garmin
J'espère juste qu'il n'y a pas de trame de plus de 20 bytes dans les standards de com des différentes roues, parceque Garmin tronque les trames sinon (enfin si le "bug" est toujours d'actualité, cf : https://forums.garmin.com/developer/connect-iq/i/bug-reports/messages-from-btle-gatt-server-truncated-at-20-bytes?CommentId=ea4ee967-7c1f-4cbe-9b53-936f7b883ea5). Dans mon cas ça n'a pas posé problème parce-que Begode utilise (utilisait?) un MTU de 20.
- WheelDash - App Garmin
- WheelDash - App Garmin
- WheelDash - App Garmin
- WheelDash - App Garmin
- WheelDash - App Garmin
- WheelDash - App Garmin
- WheelDash - App Garmin
-
WheelDash - App Garmin
Bon, pour une fois c'est allé plus vite que prévu, c'est finalement assez simple d'implémenter l'enregistrement des données de la roue d'intégrer tout ça dans une "activité Garmin". Première sortie sur l'établi 😁, pas de tracé car pas de réception GPS dans le garage mais ça permet de vérifier que le reste fonctionne correctement. Il y a deux mesures de vitesse, celle prise par la roue et celle prise par le GPS (d'où l'allure moyenne à 0km/h). Tests grandeurs nature à suivre, et peut-être ajout de support d'autres marques de roues et modèles de montres si j'ai des beta testeur volontaires ! Je mettrais le code sur Github un peu plus tard, le temps de cleaner un peu le tout et de rendre la capture et l'identification des frames un peu plus propre (actuellement je doute que ma méthode d'identification soit compatible avec des firmware custom). Je ne sais pas encore si je vais la publier sur Connect IQ, il faudrait que je me penche sur le support de nombreuses montres, mais quoi qu'il en soit je mettrais le lien vers le code source ici.
-
WheelDash - App Garmin
Bon. Je considère la version 0.1 comme terminée. J'ai dû composer un peu avec certaines limitations liées à ma Garmin Venu (en ce qui concerne les menus). L'appli est pleinement fonctionnelle (j'ai encore un crash à identifier qui arrive uniquement au lancement de l'application et assez rarement. Il est lié à un problème dans la connexion bluetooth mais je n'arrive pas à identifier le soucis). Prochaine étape du développement : gérer l'enregistrement d'un parcours. Il manque aussi la gestion de profils bluetooth, actuellement l'appli saute sur la première Begode non appareillée. J'imagine que ça peut être problématique lors d'une sortie groupée, en tout cas ça demandera un minimum d'organisation dans l'état actuel 😂. Je suis assez content de m'être plongé là dedans car j'ai appris pleins de choses plus ou moins intéressantes, notamment que tous les paramètres de la roue qu'on peut modifier ne retournent pas tous un statut via les frame de données principales. Exemple dans mon cas : sur une Begode Tesla v2 (avec une carte mère verte, détail qui aura son importance plus bas), le statut de l'éclairage frontal, de l'angle de cutoff et du volume des bips ne sont pas communiqués via Bluetooth (les applis telles que wheelLog ou EUCworld stockent les réglages sur le téléphone). Ce n'est pas dramatique mais j'ai cherché un moment 😅. Tiens tant qu'on y est voilà autre chose : j'ai une tendance naturelle à aimer avoir le maximum de contrôle sur mes appareils ou véhicules quitte à flirter avec les limites du système, donc rouler "au PWM" sans tilt back c'était pour moi une évidence. J'avais lu que les begode communiquaient la vraie valeur de PWM (où en tout cas que cette valeur était remontée par le contrôleur). Et bien c'est vrai mais ce n'est pas aussi simple, j'avais juste lu trop vite. Si la valeur de PWM est bien communiqué, elle l'est sur une frame etendue non accessible lorsque l'on lit les frames principales, et à une fréquence moindre (toutes les 625ms) que ces dernières (sur lesquelles transitent les infos classiques telles que la vitesse, la distance, le voltage, etc...). Bref le PWM normalement affiché par wheelLog ou EUCworld est en fait un PWM calculé et non la "vraie valeur". Je dis normalement puisque grâce à l'arrivée des firmware customs (grâce à Freestyler) pour Begode il est possible d'envoyer la vraie valeur sur les frames principales et donc de l'exploiter. Tout ça pour dire que j'ai repris la formule de wheelLog pour le calcul du PWM sur mon appli Garmin, j'affinerai l'équation si besoin en faisant des mesures avec euc dashboard qui lit les données de la frame étendue (pas de possibilité de custom firmware dans mon cas, la carte mère de ma Tesla est une version "verte"). Je joins deux vidéos de fonctionnement au passage ! deux edits "audio" de la première video 🤪: - quand je penche la roue sur le côté et non en arrière. - pour autoriser ou non le changement et non l'arrêt. PXL_20230524_150604849~2.mp4 SGCAM_20230524_151021410~2.mp4
-
WheelDash - App Garmin
Je ne suis pas développeur mais je programme assez souvent dans différents languages (surtout en R et python, je suis dans la bioinformatique, mais j'ai aussi fait du java et un tout petit peu de C). Bref je tiens plus du bidouilleur averti que du développeur 😅. Après la structure d'un projet est monkey C est assez rigide et entre le forum de dev Garmin et les exemples de codes qu'on peut trouver sur GitHub (entre autre), c'est je trouve assez facile à appréhender. D'autant que lorsque tu crée un nouveau projet avec l'extension monkey C de visual studio code, il te fait toute la structure et le code d'une app minimaliste fonctionnelle. Tout ça pour dire que j'ai commencé il y a 3 semaines, en modifiant le code du companion wheelLog pour Garmin de ggoraa. Par contre le développement sans dongle/carte nrf compatible avec le sdk Garmin (pour la communication bluetooth) est un peu relou, pas moyen de tester sans faire un build et de copier sur la montre.
-
WheelDash - App Garmin
Oui j'ai déjà mis les doigts dedans, après pas mal de tâtonnements (je connaissais assez mal le protocole BLE et je découvre le monkey C de Garmin) j'ai fait une version alpha qui permet de récupérer les données de ma tesla v2. Prochaine étape, gérer les modes de pedales, la calibration, les lumières et les leds via des menus puis interface du même type que le compagnon wheelLog dont j'ai déjà fait un mod perso (PWM sur l'arc du haut de 0 à 100%, deux seuils d'alarmes par vibration à 80% puis à 90% PWM). Pour le moment je n'ai axé le développement que sur mes propres besoins (begode et Garmin venu), d'où mon "sondage" pour savoir si d'autres sont intéressés de façon à réfléchir à : - mettre mes sources à disposition et chacun se débrouille. - essayer de faire un truc pour tous sachant que le contenu des frames est déjà bien documenté (mais sans garantie, notamment car il me semble que Garmin ne lit actuellement que les 20 premiers bytes des frames, ce qui peut être problématique en fonction des marques/modèles. Je trouve le projet intéressant mais j'ai une vie déjà bien remplie 😄).
-
WheelDash - App Garmin
Edit 07/01/2024 (actualisation des infos) : Le site de WheelDash est enfin en ligne ! Il est disponible à l'adresse suivante : https://blkfribourg.github.io/ -------------------------- Bon je fais un édit du premier message pour permettre une meilleure lecture de l'info suivante : Comme je suis arrivé à une version que j'utilise maintenant à chaque trajet et pour attirer potentiellement d'autres dev sur le sujet grâce à une visibilité accrue (pas sûr que ça fonctionne😁), j'ai décidé de rendre disponible l'appli sur le store Garmin. Pour rappel cette app est une app standalone et non un compagnon pour wheelLog ou EUC World, elle ne nécessite donc ni l'un ni l'autre. Elle est donc complètement indépendante (même exclusive, au moins dans le cas que j'ai pu observer : il n'est pas possible d'appareiller ma Tesla avec ma montre et mon téléphone en même temps) et profite de l'environnement Garmin pour l'enregistrement des sorties (avec tracé) et le stockage des données remontées par la roue (c'est donc intégralement gratuit et stocké chez Garmin). A ce jour deux types d'applications WheelDash : une app à proprement parler (avec un peu plus de fonctionnalités) et un datafield à coupler à une "activité Garmin" (plus limité mais compatible avec la navigation Garmin, donc idéal pour les long rides vers l'inconnu ). Le tracé et les données associés à chaque sortie sont ainsi disponibles sur l'appli ou le portail Garmin Connect. Il est également possible de gérer directement les paramètres de la roue sur la montre (mode des pédales, LED, Lumières, etc...) et de définir des alarmes (vibration ou audio) de vitesse, PWM et température contrôleur. Si vous disposez d'une montre qui peut générer des alertes sonores il est également possible d'avoir les alarmes audio via un casque/écouteur/intercom bluetooth connecté à la montre. L'application est dispo ici : https://apps.garmin.com/fr-FR/apps/0f55f691-d9a2-4d9a-aec1-cc728798c86b Marques de roues actuellement supportées : - Gotway/Begode/Extreme Bull firmware custom ou non - Leaperkim - Kingsong - Inmotion (uniquement à partir de la V11, à cause d'un problème de compatiblité Garmin/Inmotion, fonctionnel mais en cours de développement) - Tout ce qui tourne avec un VESC, firmware 6.02 uniquement (fonctionnel mais en cours de développement) Montres actuellement supportées : - Toutes les montres qui supportent le protocole BLE (Bluetooth Low Energy). Si WheelDash n'apparait pas dans Garmin Connect IQ ou que vous avez un message comme quoi l'adresse est indisponible c'est que votre montre n'est pas supportée, si elle est bien compatible avec le BLE envoyez moi un MP. Données de la roue enregistrées lors d'un ride : - Speed - PWM (calculé ou hardware selon modèle de roue) - Voltage - Current - Motor Power - Motherboard temperature - Et tout un tas d'autres info dérivée de ces valeurs ou non 😛 Quelques images : WheelDash (app): WheelDash: datafield (Compatible navigation native Garmin): Données enregistrées sur Garmin Connect: Message original : J'ouvre ce sujet pour sonder un peu au sujet de l'intérêt d'une appli pour nos roues qui tournerait sur des montres Garmin. Techniquement l'idée est de se passer d'une app tierce sur téléphone et de lire directement les infos des roues par protocole BLE (Bluetooth Low Energy). J'imagine qu'il est possible de gérer l'enregistrement d'activités en ajoutant les données récoltées via bluetooth pour avoir des données complètes sur les sorties tel que le propose EUC world ou wheelLog, mais dans l'environnement Garmin. J'interpelle donc les possesseurs de montres Garmin (qui sont peut être peu nombreux ici) : Est-ce que vous y verriez un intérêt ?
-
La begode T3
Perso j'ai mis une alerte à 80% pwm sur wheelLog, ça klaxonne joyeusement dans les enceintes de ma Tesla et même avec un casque de moto j'arrive à l'entendre 90% du temps. Je prévois de rajouter une alerte par vibration sur ma montre (parceque mon téléphone, entre les fois où je le sens pas et où il vibre pour autre chose...) dès que je dépasse les 80% pwm comme ça aucune chance de pêcher par excès de confiance 😁 (à moins que Seba ne me prenne de vitesse si il implémente cette fonctionnalité et sort une app garmin pour euc world, mais pour l'heure je préfère wheelLog).