Capteur de gaz

Oui elle est sur 9600

Ce que je comprends pas c’est que inByte c’est bien ce aye me renvoie le capteur ?
Du coup ça doit pas être un entier mais une chaîne non?

Possible, essaye la suggestion d'Artouste

Serial1.print("10") ;
ou Serial1.println("10") ;

J’ai essayé, mais rien à faire...

Honnêtement je suis perdu la ^^

As tu essayé de commenter la ligne serial1. Print('c') et de taper c puis 10 dans la console ?

Tu veux dire serial1.write(‘c’) ?

Non j’ai toujours des carré qui s’affiche

Et la console est réglée sur 9600 ?

Oui...

Peux tu copier dans un message l'ensemble du contenu de la console ?

Je fais ça demain quand je serai à l’IUT

Bonne soirée

Ok, ajoute aussi le code complet, entre balises code (pour savoir comment faire, lis les messages épinglés du forum)

lesept:
Ok, ajoute aussi le code complet, entre balises code (pour savoir comment faire, lis les messages épinglés du forum)

si on s'en tient au code "pas en balise code" :grin:
dans le loop()
il n'y a strictement aucun "décodage" de ce qui provient du capteur
et il y a un delay(100) AMHA un peu "intempestif" :wink:

void loop()
{

  while (Serial1.available()) // read from SDK port, send to Serial port to interupt continuous output send 'c' without line ending, may have to send more than once.
  {
    int inByte = Serial1.read();
    Serial.write(inByte);
  }
  while (Serial.available()) // read from Serial port, send to port SDK port
  {
    int inByte = Serial.read();
    
    Serial1.write(inByte);
    delay(100);
  }
}

Je pensais que le capteur envoyait ses trames octets par octets à la queue leu leu et donc qu'il n'y avait pas besoin de décodage...

Oula je suis plus trop la ^^.

Du coup il faut changer le code ? Honnêtement nous on y connaît pas grand chose on a simplement pris le code qui était dans la librairie du constructeur Spec Sensor. Apparemment il est pas fonctionnel... Vous sauriez quoi ajouter?

vins2311:
Oula je suis plus trop la ^^.

Du coup il faut changer le code ? Honnêtement nous on y connaît pas grand chose on a simplement pris le code qui était dans la librairie du constructeur Spec Sensor. Apparemment il est pas fonctionnel... Vous sauriez quoi ajouter?

bonjour

  • sur quel modéle d'arduino est connecté le capteur ?
    ATTENTION , comme signalé depuis le début par al1fch en #5 , il n'est pas tolérant aux alim et signaux 5V des arduinos les plus courants.
    un code à tester si le hard est bien en 3.3V
#include <SoftwareSerial.h>
//
SoftwareSerial BTSerial(10, 11); // RX | TX
// RX arduino <--- TX cible
// TX arduino ---> RX cible
byte inbyte;
void setup()

{
  Serial.begin(9600); // vitesse serial monitor

  BTSerial.begin(9600);  // vitesse software serial NB ne pas depasser 57600

  BTSerial.println("c");
  delay (500);  //stab
  BTSerial.println("10");
}

void loop()
{
  if (BTSerial.available()) {

    inbyte = BTSerial.read();
    if (inbyte < 16) Serial.print("0");
    Serial.print(inbyte, HEX);
    Serial.print(" ") ;
  }

}

C’est bon ça marche !!

On a mis des résistances sur le receive et transmit du capteur et recablé l’ensemble.

Maintenant le capteur nous envoie les données.

Il faut qu’on code maintenant pour récupérer juste la concentration, la température et l’hygrométrie.

vins2311:
C’est bon ça marche !!

On a mis des résistances sur le receive et transmit du capteur et recablé l’ensemble.

Maintenant le capteur nous envoie les données.

Il faut qu’on code maintenant pour récupérer juste la concentration, la température et l’hygrométrie.

Bon hé bien voilà déja au moins une bonne chose 8)

maintenant , il n reste qu'a "parser" les data utiles

elles sont sous cette forme

The format of the output is: SN [XXXXXXXXXXXX], PPB [0 : 999999], TEMP [-99 : 99], RH [0 :
99], RawSensor[ADCCount], TempDigital, RHDigital, Day [0 : 99], Hour [0 : 23], Minute [0 : 59],
Second [0 : 59]

mets une copie des infos data récupérées avec le programme que j'ai mis

Bonjour je vous fait ça jeudi car j’aurais une séance de 4h pour continuer le projet.

Merci pour votre aide en tout cas.

bonjour,

voila un exemple de ce qu'on obtient :

080618020342, 575, 22, 59, 32995, 25953, 34170, 00, 00, 18, 06.

Maintenant notre problématique est de devoir récupérer seulement la concentration, la température et l'hygrométrie.

A savoir : 575, 22, 59. Savez-vous comment procéder?