Aller au contenu
flobz

Controle du véhicule via l'API peugeot

Messages recommandés

Le client-id et le client secret permettent d'identifier l'application. Donc en effet on trompe les serveurs de Peugeot en faisant croire que les requêtes sont faites à partir de l'application.

En revanche pour que l'API fonctionne ont doit s’identifier avec notre adresse mail et mot de passe qui nous appartiennent.

On ne contourne pas non plus les sécurités puisque on utilise le mécanisme d’authentification officiel proposé par Peugeot qui est oauth2.

Il y a bien des restrictions, notamment au niveau nombre de requêtes :

Il y a 2 heures, flobz a dit :

Il y a un quota de requête par jour. Que j'ai dépassé en faisant une requête par minute. Je vais le changer à deux minutes.

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

Pour information j'ai mise à jour mon application.

Cela simplifie grandement son utilisation.

Il suffit de télécharger l'application Android, ensuite lancer le script "app_decoder.py" qui va récupérer les informations dedans.

Ensuite on lance "server.py", à la première connexion on doit rentrer un code que l'on reçoit par SMS et c'est tout !

Partager ce message


Lien à poster
Partager sur d’autres sites

Le 15/11/2020 à 14:31, flobz a dit :

Bonjour,
J'ai développé une application pour contrôler ma e208.
L'API utilisé est celle de l'application mypeugeot android.

Voici le lien :
https://github.com/flobz/psa_car_controller

 

L'application Android doit être patché pour permettre de la sauvegarder et ainsi récupérer les données, vous pouvez récupérer l'app MyPeugeot patché à l'adresse suivante:

https://megafile.cc/d/1JP8/mypeugeot-patched.apk

 

bonsoir

le lien de mégafile de fonctionne pas à ce jour

merci

 

Modifié par j0007

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir :)
Merci beaucoup pour ce soft @Flobz ! Le 1er setup est super simple !

Petite question car j'ai pas trouver dans l'api, on peux déclencher la climatisation ?
Je vais avoirs 2 usages de cette API, monitorer le niveau de charge pour couper le relais de ma prise, et si possible déclencher la climatisation le tout avec Home Assistant.

Si c'est pas possible, c'est pas bien grave, c'est déjà du beau boulot.
Il manque juste un petit bouton donation sur la page. Pour dire merci avec qqch qui paye la recharge ;)

Modifié par vlycop

Partager ce message


Lien à poster
Partager sur d’autres sites

J'avais posé la question à Tronity.io mais je n'ai jamais eu le retour.

 

On sait via l'application MyPeugeot lancer manuellement une demande de refresh (qui prend en général une trentaine de secondes) pour avoir la dernière information.

 

N'y-a-t'il pas une possibilité de récupérer cette commande de refresh afin de lancer cette requête à intervalles réguliers pendant une charge ?

Modifié par Calico

Partager ce message


Lien à poster
Partager sur d’autres sites

Il y a 15 heures, vlycop a dit :

Bonsoir :)
Merci beaucoup pour ce soft @Flobz ! Le 1er setup est super simple !

Petite question car j'ai pas trouver dans l'api, on peux déclencher la climatisation ?
Je vais avoirs 2 usages de cette API, monitorer le niveau de charge pour couper le relais de ma prise, et si possible déclencher la climatisation le tout avec Home Assistant.

Si c'est pas possible, c'est pas bien grave, c'est déjà du beau boulot.
Il manque juste un petit bouton donation sur la page. Pour dire merci avec qqch qui paye la recharge ;)

Bonjour,

Le contrôle de la climatisation est possible. Tu peux aller voir dans le fichier web/callback.py.

Je ne l'ai pas encore documenté.

Je vais rajouter un bouton alors;)

Partager ce message


Lien à poster
Partager sur d’autres sites

il y a 5 minutes, Calico a dit :

J'avais posé la question à Tronity.io mais je n'ai jamais eu le retour.

 

On sait via l'application MyPeugeot lancer manuellement une demande de refresh (qui prend en général une trentaine de secondes) pour avoir la dernière information.

 

N'y-a-t'il pas une possibilité de récupérer cette commande de refresh afin de lancer cette requête à intervalles réguliers pendant une charge ?

 

Bonjour,

Le refresh est possible. Tu peux aller voir dans le fichier web/callback.py la fonction wakeup.

Je ne l'ai pas encore documenté.

En revanche si tu utilises l'option charge control,

lorsque la voiture est en chargement, les données sont mise à jour toutes les dix minutes.

Ces données sont mises à jour aussi dans l'application mypeugeot, du coup plus besoin d'appuyer sur refresh et d'attendre ! :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Il y a 2 heures, moriss a dit :

Dis donc, je suis complètement largué...

 

Je voulais faire une petite vidéo explicative, mais je me dit que si tu sais pas comment run ça, peux de chance que tu ais une RPI ou une vm sous la main ... du coup j’hésite.
 

 

Il y a 3 heures, flobz a dit :

J'ai mis à jour le README pour expliquer comment démarrer ou arrêter la climatisation et rafraîchir les données de la voiture.

🙏

Partager ce message


Lien à poster
Partager sur d’autres sites

Il y a 14 heures, vlycop a dit :

Je voulais faire une petite vidéo explicative, mais je me dit que si tu sais pas comment run ça, peux de chance que tu ais une RPI ou une vm sous la main ... du coup j’hésite.
 

 

🙏

 

Moi je la veux bien la vidéo STP :): j'ai 2 RaspberryPi3 à la maison (RECALBOX, tout ça..), je fais tourner MacOS10 sur VM, mais je ne me suis pas encore lancé car tournant depuis des années sous Domoticz (sur Synology malheureusement sans VM), j'hésite encore à faire la bascule.

 

Bref, un pas à pas, une vidéo, un truc simple, avec les lignes de commandes, je suis preneur 😉

Partager ce message


Lien à poster
Partager sur d’autres sites

ba pourtant ...

1 serveur esxi

1 pi pour gerer la téléinfo

1 home assistant sur vm ubuntu

1 octoprint + klipper

 

 

:) 

je vais relire plus calmement, mais en fait ce que je pige pas c'est la base , style ou ça s'installe, etc

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai préparer tout mon tuto, sauf que mon son est horrible XD
J'ai jamais entendu autant de statique ...

Il faut que je trouve une solution avant de pouvoirs enregistré, désolé du délais.

Partager ce message


Lien à poster
Partager sur d’autres sites

Il y a 6 heures, Fender a dit :

je croyais que c'était une appli Android, pourquoi fait un Pi maintenant ? 😒

 

L'appli Android, c'est pour récupérer les identifiants/clefs.

Ainsi, une fois le développement de @flobz exécuté, on se fait passer pour une application de téléphone, ou du moins pour le client qu'il y a derrière. 

 

Le R.Pi, il est là pour héberger la partie HomeAssistant (solution domotique globale), qui peut gérer tout ça, notamment les scripts Python. 

 

C'est bien ça @vlycop ? 

 

Modifié par FFF3347

Partager ce message


Lien à poster
Partager sur d’autres sites

Alors le soft de Flobz c'est un script python. on télécharge bien l'apk officiel de peugeot pour récup des truc (je sais pas quoi j'ai pas creuser) mais tout le reste c'est un serveur web python avec une API qui tourne sur la RPI.

J'ai fait l'enregistrement, et je suis dans la mouise pour l'edit car il n'y as pas la suite adobe sous linux XD
pas fait de vidéo depuis 2016, je suis rouillé.

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai pas eu de retour de la part de flobz, il a sûrement pas eu le temps.
Je poste donc la vidéo :


C'est un tutoriel sur comment installer le soft sur un debian/raspbian.
Quoi faire avec ne fait pas partie du scop du tuto, surtout que je n'ai personnellement pas utilisé la limite de la charge via le fichier de config.

Toutes les commandes dans la description :)

En espérant que cela soit utile :)

Modifié par vlycop

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci @vlycop pour ta vidéo très instructive. J'ai enfin activé la solution chez moi (VM avec un DietPi)

 

Pour ma part, j'ai eu quelques packages à installer autres que ceux précisés, notamment avec un apt-get install python3-dev cargo sinon la commande "pip install -r requirements.txt" n'aboutissait jamais.

Partager ce message


Lien à poster
Partager sur d’autres sites



  • Contenu similaire

    • Par Link214
      Hello a tous, 
      J'ai commencé une app web pour le suivis des infos dispo dans les API de Renault.
      Les objectifs de l'appli sont : 
      Historiser les informations disponibles sur l'API (pour la plus par des info on a accès qu'a la dernière valeur par a l'historique) Permettre d'utiliser ces historiques pour afficher des courbes par exemple:  Niveau de batterie (en stationnement, déplacement, recharge) Suivi kilométrique .... Enrichir les données : Historique des trajets effectués  Puissance moyenne de charge Localisation des recharge Estimation prix des recharge ..... Disposer de composants réutilisable (React/React-Native) afin de rendre facilement l'app dispo sur tout support et de les intégrer sur d'autres projets.  .....  
      Pour l'instant l'appli se décompose en : 
      Un backend qui fournis une API REST pour stocker / récupérer les infos du véhicule Une fonction de polling des API Renault pour alimenter la base: Pour l'instant c'est mélangé avec le backend mais ca doit aller ailleur pour que le backend ne fast que la REST API vers notre client Il interroge toutes les 2 minutes les API Renault et en fonction de la réponse : Stocke les données si elle sont différentes des dernières infos en base Essais d'enrichir les données => détection d'un voyage en cours, fin du voyage, recharge, .... Un frontend pour afficher les infos (pour l'instant React => web mais l'objectif a terme ce sera React-Native)   
      Je suis pas dev de métier donc c'est un peu le bazar dans le code  
       
      Ce qui fonctionne déjà :
      Le polling et le stockage des données si différentes de la dernière version connue Détection des voyages / stationnement charge et affichage des infos  
      Reste a faire : 
      Ménage dans le code et refactor.... Pour les recharge : consolidation avec les données issue de l'historique des recharges de Renault Surement améliorer la détection des voyages Utilisateurs et sécurité  Migrer les API de googleMaps vers des iframe  Gestion des prix de des recharge Support multi-modèle (pour Mégane/Scénic y a pas bcp de boulot jsute a gerer les taille de batterie) Support multiconstructeur (tout en bas de la todo lol)  Autres  
      Bref y a encore bcp de boulot mais j'ai déjà des résultats encourageants : 

       
      L'affichage est ok sur pc/mobile
       
      Bref si il y a des gens dans le coin qui savent dev en js (typescript) je suis preneur de tout coup de main, n'hésitez pas a vous manifester je vous ouvre le github avec grand plaisir. 
       
      Bonne route a tous. 
    • Par Rockstar
      hello à tous
      Je souhaiterais acheter cet boitier OBD Norauto pour ma MG4 (j'ai un bon d'achat chez eux). Est ce quelq'un à des retours sur son fonctionnement avec la MG4.
      Est-il possible d'intégrer les données fournies par le boitier dans un système domotique en utilisant le téléphone comme passerelle?
      Avez vous des ressources à partager sur les logiciels PC et android, les fonctionnalités et les spécificités MG4?
      merci pour votre retour.
      Liens Description https://github.com/SAIC-iSmart-API API description, clients, automation integration (mqtt, homeassistant)              
       
    • Par Link214
      Bonjour a tous, 
      J'ouvre ce sujet pour les geek qui jouent un peu avec l'API pour récupérer les informations technique de leur Megane.
      Initialement je voulait enrichir un peu les information présentée dans l'application et avoir accès à l'historique des données remontée par mon véhicule. Cela afin de regarder l'évolution de la consommation notamment sur grand trajets / avec dénivelés important / ou encore en fonction des conditions météo. Ou encore suivre les courbes de charges du véhicule...
      Bref j'interroge l'API Kamereon (celle que tape notre appli my renault) et stocke les données de mon véhicule toutes les 5minutes pour les travailler ensuite.
       
      Si la récupération des données se passe relativement bien il reste pas mal d'étrangeté a prendre en compte : 
      battery_Available_Energy : Cette information n'est pas mise a jour lorsque le véhicule roule ou charge... Du coup aucune information durant le trajet ou durant la charge 😢 Initialement je pensait que le BMS ne pouvait pas estimer les KWh lorsque les batteries sont fortement sollicité par le moteur / la recharge mais vu la suite des problèmes je ne pense pas que ce soit l'explication. battery_level : Cette info elle est actualisée tout le temps. Elle est intéressante mais avec la granularité est limité (information en % sans décimale) total_mileage : le kilométrage global du véhicule n'est pas mis a jour pendant que le véhicule roule....Il est pourtant évident que cette information est mise a jour en temps réel sur le tableau de bord de la voiture. En ne disposant que du kilometrage en debut et fin de trajet il est impossible de calculer les consommation au kilomètre en cours de trajet 😢 (même comportement que battery_Available_Energy) charging_remaining_time : L'information est bonne. La seule remarque c'est qu'elle n'est pas réinitialisé à 0 en fin de charge mais reste sur ca dernière valeur)  charging_instant_power : Cette information je sais vraiment pas comment la prendre .... déjà on a le même comportement que charging_remaining_time (valeur non mise a 0 en fin de charge). Ensuite sur un chargeur monophasé 7Kw j'ai ça : 
      Instantpower :

      Sauf que la charge du véhicule était relativement stable autour de 7KW de 8H30 à 11H...
      % battery : 

         
      Je ne sais pas si vous avez aussi les mêmes comportement que moi sur l'API et si vous avez réussis a glaner + d'infos sur son fonctionnement ?
       
      Bonne route!
    • Par jerhum13
      bjr
      je previens tt le monde, ds le sud est il y avait 1 megaStore de peugeo-citron qui ne vds plus aux particuliers cette annee les piece detachee..si je dis que P.S.a sont des conna.ds fini,je suis :
      -1/ modere ? 
      -2/ enferme en zon-zon aux Baumettes ? 
    • Par e-up-28
      Bonjour a tous.
       
      Premiere charge pour moi aujourd'hui. En attente du cable T2, j'ai charge sur prise domestique (sur une 120Ah).
      Premiere indication sur l'application sur smartphone: fin de charge 12 heures apres (alors que j'avais encore 45%).
      J'ai d'abord cru que je n'etais pas en 10A.
      Au fur et a mesure de la journee, j'ai vu l'heure de fin de charge s'avancer petit a petit.
      Finalement j'en suis rendu à une fin de charge 7 heures apres le début de charge.
      J'avais avant une E-UP et la fin de charge était parfaitement estimée des le départ.
      D'autre part, l'autonomie ne se met pas a jour au fur et a mesure. Elle a évoluée légèrement mais ne reflete pas la charge reelle de la batterie. Avez vous les memes soucis avec l'application BMW pour l'I3?


×
×
  • Créer...
Automobile Propre

Automobile Propre est un site d'information communautaire qui est dédié à tout ce qui concerne l'automobile et l'environnement. Les thématiques les plus populaires de notre blog auto sont la voiture électrique et les hybrides, mais nous abordons également la voiture GNV / GPL, les auto à l'hydrogène, les apects politiques et environnementaux liés à l'automobile. Les internautes sont invités à réagir aux articles du blog dans les commentaires, mais également dans les différents forums qui sont mis à leur dispositon. Le plus populaire d'entre eux est certainement le forum voiture électrique qui centralise les discussions relatives à l'arrivée de ces nouveaux véhicules. Un lexique centralise les définitions des principaux mots techniques utilisés sur le blog, tandis qu'une base de données des voitures (commercialisées ou non) recense les voitures électriques et hybrides.