[Plugin Tiers][Sujet Principal] Jeedouino
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Dans ce cas il te faut un programme en python qui pilote ton afficheur, et que tu dois exécuter en tant que service au démarrage du linux.
Tu peux avoir plusieurs programmes/services qui affichent tout à tour "stade 1 ok", "stade 2 ok", etc...
Mais tout ceci n'a rien à voir avec jeedouino.
Tu peux avoir plusieurs programmes/services qui affichent tout à tour "stade 1 ok", "stade 2 ok", etc...
Mais tout ceci n'a rien à voir avec jeedouino.
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Merci de ton conseil la partie qui concernait jeedouino c'est que je ne sais pas comment appeler la partie print.lcD de jeeduinogdelaune a écrit :Dans ce cas il te faut un programme en python qui pilote ton afficheur, et que tu dois exécuter en tant que service au démarrage du linux.
Tu peux avoir plusieurs programmes/services qui affichent tout à tour "stade 1 ok", "stade 2 ok", etc...
Mais tout ceci n'a rien à voir avec jeedouino.
Envoyé de mon Mi MIX 2S en utilisant Tapatalk
Damien
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour à tous
Est ce que quelqu'un sait s'il est envisagé le développement d'une option de ce plugin pour une carte s'intitulant Arduino Méga 2560 R3 avec Wifi intégré, carte de chez Wemos, dont lien ci dessous :
https://www.banggood.com/Wemos-Mega-WiF ... ehouse=CN
ou
est ce que quelqu'un sait comment modifier le sketch distribué par le plugin Jeedouino pour faire marcher cette carte sous Jeedom ?
Il faudrait bien sûr la partie ESP 8266 ET la partie Mega 2560 ...
Merci
Chris
Est ce que quelqu'un sait s'il est envisagé le développement d'une option de ce plugin pour une carte s'intitulant Arduino Méga 2560 R3 avec Wifi intégré, carte de chez Wemos, dont lien ci dessous :
https://www.banggood.com/Wemos-Mega-WiF ... ehouse=CN
ou
est ce que quelqu'un sait comment modifier le sketch distribué par le plugin Jeedouino pour faire marcher cette carte sous Jeedom ?
Il faudrait bien sûr la partie ESP 8266 ET la partie Mega 2560 ...
Merci
Chris
RPI 3, Arduino, Gateway Xiaomi Aquara
Zwave, Thermostat DANFOSS, VR Fibaro
Zwave, Thermostat DANFOSS, VR Fibaro
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour,
Est-ce possible d'intégrer le support pour les modules BME280 SVP ?
Ils sont pratiquement aux même prix que les AM2302, mais ils remontent la pression barométrique en plus des température et humidité.
Est-ce possible d'intégrer le support pour les modules BME280 SVP ?
Ils sont pratiquement aux même prix que les AM2302, mais ils remontent la pression barométrique en plus des température et humidité.
BLEA :
Autostart au boot : viewtopic.php?t=28608#p500124
Relance auto (Monit) : https://www.the-hawkes.de/monitor-your- ... monit.html
Alternative : viewtopic.php?t=25492
Autostart au boot : viewtopic.php?t=28608#p500124
Relance auto (Monit) : https://www.the-hawkes.de/monitor-your- ... monit.html
Alternative : viewtopic.php?t=25492
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonsoir,
Je suis nouveau sur Jeedom (avant sur domoticz),
J'ai 3 DS18B20 sur le GPIO 4 (pin 7) de raspberry (elles marchaient très bien sur domoticz).
En ssh j'ai bien les 3 sondes + les valeurs mais rien dans jeedom avec le plugins Jeedouino.
J'ai du mal le configuré.
Pouvez vous m'aider svp ?
Merci
Je suis nouveau sur Jeedom (avant sur domoticz),
J'ai 3 DS18B20 sur le GPIO 4 (pin 7) de raspberry (elles marchaient très bien sur domoticz).
En ssh j'ai bien les 3 sondes + les valeurs mais rien dans jeedom avec le plugins Jeedouino.
J'ai du mal le configuré.
Pouvez vous m'aider svp ?
Merci
Bono2007 a écrit : ↑11 févr. 2019, 21:35Petite contribution pour une sonde DS18B20 sur un Raspberry Pi zéro W
A partir de : https://jeedom-facile.fr/index.php/2018/12/11/la-raspberry-blea-jeedouino-snips/
Procéder de la même façon pour l'installation basique de Raspbian + wpa_supplicant.conf + ssh
Une fois en ssh je n'ai pas fait exactement pareil :
Pas deCode : Tout sélectionner
sudo su apt update && apt upgrade -y && apt dist-upgrade -y apt install nginx php5-fpm -y
Ensuite comme benj :Code : Tout sélectionner
update-alternatives --config php
Code : Tout sélectionner
cd /var/www/html wget http://ip/plugins/jeedouino/ressources/JeedouinoExt.zip unzip JeedouinoExt.zip cd JeedouinoExt /bin/bash JeedouinoExt.sh chmod -R 775 $(pwd) chown www-data:www-data $(pwd)
Puis Jeedom etc.
Attention de bien cocher RPI sans jeedom
CABLAGE :
DS18B20 : cablage
https://leanpub.com/RPiMRE/read#singleTempMeasurement
---------------------------------------------------------------
Vérifier que la sonde fonctionne :rebootCode : Tout sélectionner
nano /boot/config.txt rajouter dtoverlay=w1-gpio ctrl+o ctrl+x
ensuite :Repérer 28-xxxxxxxxxxx ---> C'est le serial unique de la sondeCode : Tout sélectionner
ls /sys/bus/w1/devices
tadaaaa :Code : Tout sélectionner
cat /sys/bus/w1/devices/28-xxxxxxxxxxx/w1_slave
32 01 55 05 7f 7e 81 66 2a : crc=2a YES
32 01 55 05 7f 7e 81 66 2a t=19125
soit 19.125
pi 3 b+ Z-Wave+ Z-Stick GEN5
Vision ZM1602+ PST02-A 4 in 1 + hank HKZW-DWS01 x2 + Aeotec ZW116 x2 + FGBS-222 DS18B20x2 + DSM 213 + surveillance station + Foscam R4M
Jeedom
Vision ZM1602+ PST02-A 4 in 1 + hank HKZW-DWS01 x2 + Aeotec ZW116 x2 + FGBS-222 DS18B20x2 + DSM 213 + surveillance station + Foscam R4M
Jeedom
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonsoir,
Je tourne sous jeedouinoext en PI3. Depuis quelques temps, mes PI3 se figent. Les températures ne remontent plus (ne changent plus). Pourtant les valeurs remontent dans Jeedom.
J'ai toujours accès au php, html, ssh aucun souci. Juste les valeurs restent les mêmes et la remontée ne se fait plus. Le démon reste OK. Il me faut réinstaller jeedouino, redémarrer...
Quelqu'un a le même phénomène ?
Je tourne sous jeedouinoext en PI3. Depuis quelques temps, mes PI3 se figent. Les températures ne remontent plus (ne changent plus). Pourtant les valeurs remontent dans Jeedom.
J'ai toujours accès au php, html, ssh aucun souci. Juste les valeurs restent les mêmes et la remontée ne se fait plus. Le démon reste OK. Il me faut réinstaller jeedouino, redémarrer...
Quelqu'un a le même phénomène ?
-
- Timide
- Messages : 121
- Inscription : 01 juil. 2014, 09:00
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour à tous
je me bats avec jeeduino depuis quelque temps afin de mettre à jour jeedom.
j'ai besoin d'une communication avec un arduino Nano en USB, un NodeMCU V3.
ma config : PC avec debian 9.9 et la derniere version de jeedom.
je vais commencer avec le nodeMCU V3.
j'ai suivi la doc et
j'ai bien réussi à mettre le programme générer par jeedom.
j'arrive à faire des ping mais jeedom ne le vois qu'une fois, aprés plus rien.
je n'ai rien dans les logs non plus.
serait-il possible d'avoir un peu plus d'information de comment le debuger ?
voici les log du nodeMCU de l'arduino :
17:33:35.827 -> JEEDOUINO IS HERE.
17:33:35.827 -> Connecting to freebox_Carre
17:33:36.338 -> ...Conf. Pins:
17:33:37.359 ->
17:33:37.359 ->
17:33:37.359 -> EqLogic:1
17:33:37.359 ->
17:33:37.359 -> WiFi connected
17:33:37.359 -> 192.168.1.44
17:33:37.671 ->
17:33:37.671 -> Sending : &ipwifi=192.168.1.44
17:33:37.671 ->
17:33:37.671 -> To eqLogic: 1
17:33:38.171 -> At IP: 192.168.1.20
17:37:26.265 ->
17:37:26.265 -> RECEIVING:
17:37:26.265 -> C..l.............l...C
17:37:26.265 ->
17:37:26.265 -> RECEIVING:
17:37:26.265 -> B0M
17:37:26.312 ->
17:37:26.312 -> Sending : &REP=BMOK
17:37:26.312 ->
17:37:26.312 -> To eqLogic: 1
17:37:26.637 -> At IP: 192.168.1.20
17:37:27.078 ->
17:37:27.078 -> RECEIVING:
17:37:27.078 -> E1Q
17:37:27.125 ->
17:37:27.125 -> Sending : &REP=EOK
17:37:27.125 ->
17:37:27.125 -> To eqLogic: 1
17:37:27.453 -> At IP: 192.168.1.20
17:37:27.881 ->
17:37:27.881 -> RECEIVING:
17:37:27.881 -> I192.168.1.20P
17:37:27.915 ->
17:37:27.915 -> Sending : &REP=IPOK
17:37:27.915 ->
17:37:27.915 -> To eqLogic: 1
17:37:28.272 -> At IP: 192.168.1.20
17:38:51.393 ->
17:38:51.393 -> RECEIVING:
17:38:51.393 -> GET / HTTP/1.1
17:38:51.521 ->
17:38:51.521 -> Sending : &REP=NOK
17:38:51.521 ->
17:38:51.521 -> To eqLogic: 1
17:38:51.879 -> At IP: 192.168.1.20
merci d'avance pour votre aide.
je me bats avec jeeduino depuis quelque temps afin de mettre à jour jeedom.
j'ai besoin d'une communication avec un arduino Nano en USB, un NodeMCU V3.
ma config : PC avec debian 9.9 et la derniere version de jeedom.
je vais commencer avec le nodeMCU V3.
j'ai suivi la doc et
j'ai bien réussi à mettre le programme générer par jeedom.
j'arrive à faire des ping mais jeedom ne le vois qu'une fois, aprés plus rien.
je n'ai rien dans les logs non plus.
serait-il possible d'avoir un peu plus d'information de comment le debuger ?
voici les log du nodeMCU de l'arduino :
17:33:35.827 -> JEEDOUINO IS HERE.
17:33:35.827 -> Connecting to freebox_Carre
17:33:36.338 -> ...Conf. Pins:
17:33:37.359 ->
17:33:37.359 ->
17:33:37.359 -> EqLogic:1
17:33:37.359 ->
17:33:37.359 -> WiFi connected
17:33:37.359 -> 192.168.1.44
17:33:37.671 ->
17:33:37.671 -> Sending : &ipwifi=192.168.1.44
17:33:37.671 ->
17:33:37.671 -> To eqLogic: 1
17:33:38.171 -> At IP: 192.168.1.20
17:37:26.265 ->
17:37:26.265 -> RECEIVING:
17:37:26.265 -> C..l.............l...C
17:37:26.265 ->
17:37:26.265 -> RECEIVING:
17:37:26.265 -> B0M
17:37:26.312 ->
17:37:26.312 -> Sending : &REP=BMOK
17:37:26.312 ->
17:37:26.312 -> To eqLogic: 1
17:37:26.637 -> At IP: 192.168.1.20
17:37:27.078 ->
17:37:27.078 -> RECEIVING:
17:37:27.078 -> E1Q
17:37:27.125 ->
17:37:27.125 -> Sending : &REP=EOK
17:37:27.125 ->
17:37:27.125 -> To eqLogic: 1
17:37:27.453 -> At IP: 192.168.1.20
17:37:27.881 ->
17:37:27.881 -> RECEIVING:
17:37:27.881 -> I192.168.1.20P
17:37:27.915 ->
17:37:27.915 -> Sending : &REP=IPOK
17:37:27.915 ->
17:37:27.915 -> To eqLogic: 1
17:37:28.272 -> At IP: 192.168.1.20
17:38:51.393 ->
17:38:51.393 -> RECEIVING:
17:38:51.393 -> GET / HTTP/1.1
17:38:51.521 ->
17:38:51.521 -> Sending : &REP=NOK
17:38:51.521 ->
17:38:51.521 -> To eqLogic: 1
17:38:51.879 -> At IP: 192.168.1.20
merci d'avance pour votre aide.
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour à tous,
Je suis nouveau sur le forum, j'ai scruté une bonne partie des pages sans trouver la solution à mon problème.
Mon arduino UNO est connecté en usb à mon NAS avec une machine virtuelle. Je pilote un relais (pin12) et la sortie 13 (LED) sans aucune difficulté.
J'ai connecté une sonde DHT11 (pin2) qui ne me renvoie aucune information, j'ai ajouté une sonde de temperature 18DS20 (pin4), même chose.
J'ai pourtant bien créé le sketch / Bibliothèques pour le compiler et le téléverser à partir du PC mais rien n'y fait, j'ai un retour vide sur ces deux sondes.
Quelqu'un peut-il m'aider ? Je suis à court d'idée ....
Faut-il installer "Arduinos sur port USB d'un Raspberry PI" car je suis sur un port USB même si c'est sur un NAS ?
Je suis nouveau sur le forum, j'ai scruté une bonne partie des pages sans trouver la solution à mon problème.
Mon arduino UNO est connecté en usb à mon NAS avec une machine virtuelle. Je pilote un relais (pin12) et la sortie 13 (LED) sans aucune difficulté.
J'ai connecté une sonde DHT11 (pin2) qui ne me renvoie aucune information, j'ai ajouté une sonde de temperature 18DS20 (pin4), même chose.
J'ai pourtant bien créé le sketch / Bibliothèques pour le compiler et le téléverser à partir du PC mais rien n'y fait, j'ai un retour vide sur ces deux sondes.
Quelqu'un peut-il m'aider ? Je suis à court d'idée ....
Faut-il installer "Arduinos sur port USB d'un Raspberry PI" car je suis sur un port USB même si c'est sur un NAS ?
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour à tous, je viens d'installer le plugin Jeedouino sur un rpi(local) pour pouvoir utiliser les GPIO (local)
J'ai bien installé les dépendances dont RPi.GPIO mais je ne vois aucun démon dans l'onglet "Démons"
Je ne peut donc rien ajouter quand je vais dans Plugins/Protocole Domotique/Jeedouino (page blanche)
Ai je oublié quelque chose ?
J'ai bien installé les dépendances dont RPi.GPIO mais je ne vois aucun démon dans l'onglet "Démons"
Je ne peut donc rien ajouter quand je vais dans Plugins/Protocole Domotique/Jeedouino (page blanche)
Ai je oublié quelque chose ?
Jeedom 3.3.27 sur RPI3 & Rfxcom433 & Z-wave & Conbee v2
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour à tous,
Je reviens vers vous car je n'arrive toujours pas à faire fonctionner correctement le module Jeeduino avec mes propres sketchs.
J'ai une sonde permettant de mesurer le ph. J'arrive sans aucune difficulté à remonter les valeurs lues. Par contre, les valeurs remontent toutes les secondes.
J'aimerais qu'elles ne remontent que toutes les minutes comme les autres données.
J'ai essayé de changer cette partie du code comme ceci mais rien n'y fait. Dans ce cas, je n'ai plus de lecture du tout de mes valeurs.
#if (UserSketch == 1)
//UserLoop(); // Appel de votre loop() permanent
if (NextRefresh<millis()) UserLoop(); // Appel de votre loop() toutes les 60s
#endif
Donc je sèche.
Qui pourrait m'aider svp ?
Je reviens vers vous car je n'arrive toujours pas à faire fonctionner correctement le module Jeeduino avec mes propres sketchs.
J'ai une sonde permettant de mesurer le ph. J'arrive sans aucune difficulté à remonter les valeurs lues. Par contre, les valeurs remontent toutes les secondes.
J'aimerais qu'elles ne remontent que toutes les minutes comme les autres données.
J'ai essayé de changer cette partie du code comme ceci mais rien n'y fait. Dans ce cas, je n'ai plus de lecture du tout de mes valeurs.
#if (UserSketch == 1)
//UserLoop(); // Appel de votre loop() permanent
if (NextRefresh<millis()) UserLoop(); // Appel de votre loop() toutes les 60s
#endif
Donc je sèche.
Qui pourrait m'aider svp ?
Re: [Plugin Tiers][Sujet Principal] Jeedouino
@revlys,
Petite doléance.
J'ai remarqué que des fois lors de coupure électrique d'une PI distante où est déployée Jeedouino, le plugin décide de renvoyer la valeur RESET !
Argh... horrible ! Surtout quand cela fait des mois que ça marche !
Ne serait-il pas possible de mettre à jour cette valeur par exemple 1 fois par heure ou par jour (voir une commande qu'on piloterait par scénario ?
Depuis j'ai remis une nouvelle valeur de RESET, mais ce serait bien par exemple, que chaque heure elle se rafraichisse, voir c'est nous-même qui poussions une valeur "à jour" quand on le souhaite
Je ne sais pas si je suis clair
Petite doléance.
J'ai remarqué que des fois lors de coupure électrique d'une PI distante où est déployée Jeedouino, le plugin décide de renvoyer la valeur RESET !
Argh... horrible ! Surtout quand cela fait des mois que ça marche !
Ne serait-il pas possible de mettre à jour cette valeur par exemple 1 fois par heure ou par jour (voir une commande qu'on piloterait par scénario ?
Depuis j'ai remis une nouvelle valeur de RESET, mais ce serait bien par exemple, que chaque heure elle se rafraichisse, voir c'est nous-même qui poussions une valeur "à jour" quand on le souhaite
Je ne sais pas si je suis clair
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour, je suis a la recherche d'information pour la programation d'un lcd 2x16 connecter en i2c , la partie sketch est déjà régler jais bien le message de démarrage jeeduino v.... mais je ne sais pas comment configurer mes pin sur le plugins jeeduino et ni comment envoier le message que le lcd doit afficher
Materiel:
Arduino méga + shield ethernet
Lcd 16x 2 + i2c
Materiel:
Arduino méga + shield ethernet
Lcd 16x 2 + i2c
- Jeedom : 3.3.29
- Raspbian : 10.0 BUSTER LITE | Stretch
- Materiel : RFXcom|Arduino mega shield ethernet|Philips Hue|Amazon Alexa
|Broadlink|Netatmo welcome |syno video station|syno surveillance station
- Raspberry Pi : Pi 3 B+
- Raspbian : 10.0 BUSTER LITE | Stretch
- Materiel : RFXcom|Arduino mega shield ethernet|Philips Hue|Amazon Alexa
|Broadlink|Netatmo welcome |syno video station|syno surveillance station
- Raspberry Pi : Pi 3 B+
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour, je galère franchement avec ce plugin et je suis concé au tout début. Qu"'es ce que je fait mal svp?
Merci
Merci
- Pièces jointes
-
- Capture2.JPG (112.52 Kio) Consulté 1454 fois
-
- Capture3.JPG (72.17 Kio) Consulté 1454 fois
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Quel est ta méthode de connections pour le arduino ? Usb ou ethernet ?
Envoyé de mon SM-N950F en utilisant Tapatalk
Envoyé de mon SM-N950F en utilisant Tapatalk
- Jeedom : 3.3.29
- Raspbian : 10.0 BUSTER LITE | Stretch
- Materiel : RFXcom|Arduino mega shield ethernet|Philips Hue|Amazon Alexa
|Broadlink|Netatmo welcome |syno video station|syno surveillance station
- Raspberry Pi : Pi 3 B+
- Raspbian : 10.0 BUSTER LITE | Stretch
- Materiel : RFXcom|Arduino mega shield ethernet|Philips Hue|Amazon Alexa
|Broadlink|Netatmo welcome |syno video station|syno surveillance station
- Raspberry Pi : Pi 3 B+
Re: [Plugin Tiers][Sujet Principal] Jeedouino
en ethernet
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour,
Quelqu'un aurait-il réussi à utiliser le plugin pour le GPIO sur un orangePi? Si oui, je serais preneur d'un conseil...
Merci à tous! Laurent
Quelqu'un aurait-il réussi à utiliser le plugin pour le GPIO sur un orangePi? Si oui, je serais preneur d'un conseil...
Merci à tous! Laurent
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour,
Est-il possible d'utiliser un capteur Pimoroni BME680 Breakout, connecté en I2C à un Raspberry Pi, pour récupérer les valeurs de température, humidité, pression et qualité de l'air à l'aide de ce plugin?
Dans la configuration des PINs, pour le GPIO2 I2C (SDA), je ne vois que le capteur de pression BMP085/180 dans la liste.
Merci d'avance pour votre aide!
Envoyé de mon Pixel en utilisant Tapatalk
Est-il possible d'utiliser un capteur Pimoroni BME680 Breakout, connecté en I2C à un Raspberry Pi, pour récupérer les valeurs de température, humidité, pression et qualité de l'air à l'aide de ce plugin?
Dans la configuration des PINs, pour le GPIO2 I2C (SDA), je ne vois que le capteur de pression BMP085/180 dans la liste.
Merci d'avance pour votre aide!
Envoyé de mon Pixel en utilisant Tapatalk
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Non ce capteur n'est pas supporté non plus malheureusementcrivchri a écrit : ↑13 août 2019, 09:03Bonjour,
Est-il possible d'utiliser un capteur Pimoroni BME680 Breakout, connecté en I2C à un Raspberry Pi, pour récupérer les valeurs de température, humidité, pression et qualité de l'air à l'aide de ce plugin?
Dans la configuration des PINs, pour le GPIO2 I2C (SDA), je ne vois que le capteur de pression BMP085/180 dans la liste.
Merci d'avance pour votre aide!
Envoyé de mon Pixel en utilisant Tapatalk
J'ai demandé pour un 280 en haut de cette même page, mais je n'ai pas eu de retour encore :
Il utilise les mêmes ports de communication que ton 680 si je ne me trompe pas.
Du coup, j'ai installé les librairies AdaFruit et fait un petit script Python qui remonte les infos dans un virtuel toutes les x minutes.
Tu dois pouvoir faire pareil avec le tiens à vue de nez
BLEA :
Autostart au boot : viewtopic.php?t=28608#p500124
Relance auto (Monit) : https://www.the-hawkes.de/monitor-your- ... monit.html
Alternative : viewtopic.php?t=25492
Autostart au boot : viewtopic.php?t=28608#p500124
Relance auto (Monit) : https://www.the-hawkes.de/monitor-your- ... monit.html
Alternative : viewtopic.php?t=25492
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Bonjour Jef73,Jef73 a écrit :Non ce capteur n'est pas supporté non plus malheureusementcrivchri a écrit : ↑13 août 2019, 09:03Bonjour,
Est-il possible d'utiliser un capteur Pimoroni BME680 Breakout, connecté en I2C à un Raspberry Pi, pour récupérer les valeurs de température, humidité, pression et qualité de l'air à l'aide de ce plugin?
Dans la configuration des PINs, pour le GPIO2 I2C (SDA), je ne vois que le capteur de pression BMP085/180 dans la liste.
Merci d'avance pour votre aide!
Envoyé de mon Pixel en utilisant Tapatalk
J'ai demandé pour un 280 en haut de cette même page, mais je n'ai pas eu de retour encore :Il utilise les mêmes ports de communication que ton 680 si je ne me trompe pas.
Du coup, j'ai installé les librairies AdaFruit et fait un petit script Python qui remonte les infos dans un virtuel toutes les x minutes.
Tu dois pouvoir faire pareil avec le tiens à vue de nez
Merci pour ta réponse.
C'est bien les mêmes ports de communication pour les BME280 et BME680.
Est-ce que tu serais d'accord de partager ton script python et ton virtuel ?
Merci d'avance pour ton aide.
Envoyé de mon Pixel en utilisant Tapatalk
Re: [Plugin Tiers][Sujet Principal] Jeedouino
Oui bien sûr, avec plaisir
Tout d'abord, vérifies bien l'adresse sur laquelle se trouve ton module, pour éventuellement soit le modifier lui-même, soit modifier les paramètres dans les librairies que tu installes (car forcément, ce n'est jamais pré-réglé sur la bonne LOL). Pour ça, lancer la commande :
i2cdetect -y 1
et le tableau en retour te donnera la (ou les) adresse(s) occupée(s).
Voici le résultat sur une BME280 en 0x76 :
Et le contenu de mon "petit" script (réglé pour l'utilisation sur le bus I2C) :
Au cas où la balise code modifierai malgré tout des apostrophes, guillemets ou que sais-je encore, je le renomme en ".txt" et le voici en pièce jointe :
Nota : bien penser à modifier 3 fois (ou 4 si tu veux aussi le point de rosée) :
- l'adresse IP pour mettre à la place celle de ton Jeedom,
- la valeur des ID de virtuels vers lesquels envoyer les valeurs de la sonde,
- ainsi que la clé API.
PS : oui je sais, on peut très bien factoriser le code via une fonction pour l'envoi des valeurs à Jeedom, mais par manque de temps je ne l'ai pas encore fait, c'est resté en mode test et je crois qu'il va rester comme ça puisqu'il marche très bien. Suis pas un dév moi, alors je fais comme je veux tant que ça marche, na
Pour le virtuel, rien de spécial, tu en crées simplement un avec autant de lignes d'infos numériques que tu souhaites faire remonter par le script et tu recopies bien les ID de chaque ligne du virtuel dans le script.
Voilà, j'espère que ça pourra t'aider
Tout d'abord, vérifies bien l'adresse sur laquelle se trouve ton module, pour éventuellement soit le modifier lui-même, soit modifier les paramètres dans les librairies que tu installes (car forcément, ce n'est jamais pré-réglé sur la bonne LOL). Pour ça, lancer la commande :
i2cdetect -y 1
et le tableau en retour te donnera la (ou les) adresse(s) occupée(s).
Voici le résultat sur une BME280 en 0x76 :
Code : Tout sélectionner
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- 76 --
Code : Tout sélectionner
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# ----------------------------------------------------------------------------
# JF - Envoi des informations de la sonde BME280 vers Jeedom.
# Version 1.0 du 2019/06/09.
# ----------------------------------------------------------------------------
# Virtuel Jeedom :
# Température=3329 / Humidité=3330 / Pression=3331 / Point de rosée=3332
# ----------------------------------------------------------------------------
# Penser à renseigner/modifier la clé API Jeedom dans l'URL, ainsi que l'IP.
# ----------------------------------------------------------------------------
###########
# MODULES #
###########
import sys # fonctions systeme
import requests # pour faire des requêtes HTTP
import syslog # pour écrire dans les journaux
import board # librairies AdaFruit
import busio # librairies AdaFruit
import adafruit_bme280 # librairies AdaFruit
# SOIT : Création d'objet librairie en utilisant le port du bus I2C :
i2c = busio.I2C(board.SCL, board.SDA)
bme280 = adafruit_bme280.Adafruit_BME280_I2C(i2c)
# SOIT : Création d'objet librairie en utilisant le port du bus SPI :
#spi = busio.SPI(board.SCK, board.MOSI, board.MISO)
#bme_cs = digitalio.DigitalInOut(board.D10)
#bme280 = adafruit_bme280.Adafruit_BME280_SPI(spi, bme_cs)
''' # Mise en commentaire car pas besoin de ça pour l'envoi à Jeedom
# Récupération et affichage des valeurs de la sonde :
print("\n")
print("Température : %0.1f °C" % bme280.temperature)
print("Humidité : %0.1f %%" % bme280.humidity)
print("Pression : %0.0f hPa" % bme280.pressure)
'''
# Calcul du point de rosée grâce à la formule de Magnus :
# https://en.wikipedia.org/wiki/Dew_point#Calculating_the_dew_point
import math
b = 17.62
c = 243.12
gamma = (b * bme280.temperature /(c + bme280.temperature)) + math.log(bme280.humidity / 100.0)
dewpoint = (c * gamma) / (b - gamma)
#print("Point de rosée : %0.1f °C" % dewpoint)
''' # Mise en commentaire car pas besoin de ça pour l'envoi à Jeedom
# Pour que le calcul de l'altitude soit correct, il faut indiquer la pression
# atmosphérique actuelle au niveau de la mer, donc la connaître à chaque appel.
# On cherche si un argument a été passé en ligne de commande, pour l'indiquer au script :
try: # On fait le test d'affecter l'argument à la variable :
bme280.sea_level_pressure = float(sys.argv[1])
except IndexError: # On intercepte l'erreur si l'argument n°1 n'existe pas
bme280.sea_level_pressure = bme280.pressure # et on prends la pression locale à la place
print("Altitude évaluée : %0.2f mètres" % bme280.altitude)
print("(pour %0.1f hPa au niveau de la mer)" % bme280.sea_level_pressure)
'''
#on envoie maintenant les données au serveur Jeedom
if bme280.temperature is not None:
transmissionERREUR=0
transmissionOK=0
base_URL_temp="http://192.168.0.82/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=virtual&id=3329&value="
url=base_URL_temp+str(bme280.temperature)
while ((transmissionOK !=1) & (transmissionERREUR <= 3)):
#debug
#print("Tranmission OK=",transmissionOK)
#print("transmissionERREUR =", transmissionERREUR)
try:
r=requests.get(url)
if (r.status_code!=200):
print("Erreur HTTP :",r.status_code)
syslog.syslog("Erreur HTTP :",r.status_code)
reponse=r.text
if reponse.find("OK"):
# print("Données de température transmises : résultat :",reponse)
# syslog.syslog("Données de température transmises.")
transmissionOK=1
else:
print("Problème :", reponse)
syslog.syslog("Problème : le serveur Jeedom n'a pas répondu par OK")
transmissionERREUR+=1
time.sleep(15) #on attend xx secondes avant d'essayer à nouveau de transmettre.
except:
transmissionERREUR+=1
print ("Essai",transmissionERREUR," : il n'y a probablement pas de liaison avec le serveur.")
syslog.syslog("Il n'y a probablement pas de liaison avec le serveur.")
time.sleep(15) # on attend xx secondes avant de recommencer
if (transmissionERREUR > 3):
print("Abandon pour aujourd'hui : les données de température n'ont pas pu être transmises après",transmissionERREUR, "essais !")
syslog.syslog("Abandon pour aujourd'hui : les données de température n'ont pas pu être transmises après plusieurs essais !")
if bme280.humidity is not None:
transmissionERREUR=0
transmissionOK=0
base_URL_hum="http://192.168.0.82/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=virtual&id=3330&value="
url=base_URL_hum+str(bme280.humidity)
while ((transmissionOK !=1) & (transmissionERREUR <= 3)):
#debug
#print("Tranmission OK=",transmissionOK)
#print("transmissionERREUR =", transmissionERREUR)
try:
r=requests.get(url)
if (r.status_code!=200):
print("Erreur HTTP :",r.status_code)
syslog.syslog("Erreur HTTP :",r.status_code)
reponse=r.text
if reponse.find("OK"):
# print("Données d'humidité transmises : résultat :",reponse)
# syslog.syslog("Données d'humidité transmises.")
transmissionOK=1
else:
print("Problème :", reponse)
syslog.syslog("Problème : le serveur Jeedom n'a pas répondu par OK")
transmissionERREUR+=1
time.sleep(15) #on attend xx secondes avant d'essayer à nouveau de transmettre.
except:
transmissionERREUR+=1
print ("Essai",transmissionERREUR," : il n'y a probablement pas de liaison avec le serveur.")
syslog.syslog("Il n'y a probablement pas de liaison avec le serveur.")
time.sleep(15) # on attend xx secondes avant de recommencer
if (transmissionERREUR > 3):
print("Abandon pour aujourd'hui : les données d'humidité n'ont pas pu être transmises après",transmissionERREUR, "essais !")
syslog.syslog("Abandon pour aujourd'hui : les données d'humidité n'ont pas pu être transmises après plusieurs essais !")
if bme280.pressure is not None:
transmissionERREUR=0
transmissionOK=0
base_URL_temp="http://192.168.0.82/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=virtual&id=3331&value="
url=base_URL_temp+str(bme280.pressure)
while ((transmissionOK !=1) & (transmissionERREUR <= 3)):
#debug
#print("Tranmission OK=",transmissionOK)
#print("transmissionERREUR =", transmissionERREUR)
try:
r=requests.get(url)
if (r.status_code!=200):
print("Erreur HTTP :",r.status_code)
syslog.syslog("Erreur HTTP :",r.status_code)
reponse=r.text
if reponse.find("OK"):
# print("Données de pression transmises : résultat :",reponse)
# syslog.syslog("Données de pression transmises.")
transmissionOK=1
else:
print("Problème :", reponse)
syslog.syslog("Problème : le serveur Jeedom n'a pas répondu par OK")
transmissionERREUR+=1
time.sleep(15) #on attend xx secondes avant d'essayer à nouveau de transmettre.
except:
transmissionERREUR+=1
print ("Essai",transmissionERREUR," : il n'y a probablement pas de liaison avec le serveur.")
syslog.syslog("Il n'y a probablement pas de liaison avec le serveur.")
time.sleep(15) # on attend xx secondes avant de recommencer
if (transmissionERREUR > 3):
print("Abandon pour aujourd'hui : les données de pression n'ont pas pu être transmises après",transmissionERREUR, "essais !")
syslog.syslog("Abandon pour aujourd'hui : les données de pression n'ont pas pu être transmises après plusieurs essais !")
if dewpoint is not None:
transmissionERREUR=0
transmissionOK=0
base_URL_temp="http://192.168.0.82/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=virtual&id=3332&value="
url=base_URL_temp+str(dewpoint)
while ((transmissionOK !=1) & (transmissionERREUR <= 3)):
#debug
#print("Tranmission OK=",transmissionOK)
#print("transmissionERREUR =", transmissionERREUR)
try:
r=requests.get(url)
if (r.status_code!=200):
print("Erreur HTTP :",r.status_code)
syslog.syslog("Erreur HTTP :",r.status_code)
reponse=r.text
if reponse.find("OK"):
# print("Données de point de rosée transmises : résultat :",reponse)
# syslog.syslog("Données de point de rosée transmises.")
transmissionOK=1
else:
print("Problème :", reponse)
syslog.syslog("Problème : le serveur Jeedom n'a pas répondu par OK")
transmissionERREUR+=1
time.sleep(15) #on attend xx secondes avant d'essayer à nouveau de transmettre.
except:
transmissionERREUR+=1
print ("Essai",transmissionERREUR," : il n'y a probablement pas de liaison avec le serveur.")
syslog.syslog("Il n'y a probablement pas de liaison avec le serveur.")
time.sleep(15) # on attend xx secondes avant de recommencer
if (transmissionERREUR > 3):
print("Abandon pour aujourd'hui : les données de point de rosée n'ont pas pu être transmises après",transmissionERREUR, "essais !")
syslog.syslog("Abandon pour aujourd'hui : les données de point de rosée n'ont pas pu être transmises après plusieurs essais !")
## FIN
Nota : bien penser à modifier 3 fois (ou 4 si tu veux aussi le point de rosée) :
- l'adresse IP pour mettre à la place celle de ton Jeedom,
- la valeur des ID de virtuels vers lesquels envoyer les valeurs de la sonde,
- ainsi que la clé API.
PS : oui je sais, on peut très bien factoriser le code via une fonction pour l'envoi des valeurs à Jeedom, mais par manque de temps je ne l'ai pas encore fait, c'est resté en mode test et je crois qu'il va rester comme ça puisqu'il marche très bien. Suis pas un dév moi, alors je fais comme je veux tant que ça marche, na
Pour le virtuel, rien de spécial, tu en crées simplement un avec autant de lignes d'infos numériques que tu souhaites faire remonter par le script et tu recopies bien les ID de chaque ligne du virtuel dans le script.
Voilà, j'espère que ça pourra t'aider
BLEA :
Autostart au boot : viewtopic.php?t=28608#p500124
Relance auto (Monit) : https://www.the-hawkes.de/monitor-your- ... monit.html
Alternative : viewtopic.php?t=25492
Autostart au boot : viewtopic.php?t=28608#p500124
Relance auto (Monit) : https://www.the-hawkes.de/monitor-your- ... monit.html
Alternative : viewtopic.php?t=25492
Qui est en ligne ?
Utilisateurs parcourant ce forum : Google [Bot] et 4 invités