Community Forum
    • Blog
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    question à propos du bod

    Scheduled Pinned Locked Moved ULPNode
    35 Posts 3 Posters 53.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • CharlesC Offline
      Charles
      last edited by

      J'imagine que tu veux aussi le WakeUp ;-). t’inquiète pas pour les traces de debug restantes, c'est parce que ce #!#!" de module th02 n'est pas compatible I2C. Tant qu'il est tout seul sur le bus tout va bien, dès qu'il est plus tout seul sur le bus I2C (dans mon cas le capteur de lumière) bien çà mettait la zone, tout plantait !!!! Et crois moi que j'ai mis un moment à comprendre que çà venait pas de mon code
      Résultat : changement de capteur, exit le TH02 !!

      
      /* ======================================================================
      Function: readTLS
      Purpose : 
      Input   : -
      Output  : -
      Comments: -
      ====================================================================== */
      uint16_t ULPNode::readTLS()
      {
        unsigned int ms, data0, data1;
      
        // Enable I2C (just in case)
        power_twi_enable();
      
        // Init I2C Bus
        // not needed, done in _tsl.begin
        // Wire.begin();
        //i2cScan();
      
        DebugF("Reading TSL2561...");
        _tsl.begin(); 
      
        DebugF(".0."); DebugFlush();
      
        // Set I2C 100KHz for 4MHz speed
        //TWBR = ((4000000L / 100000L) - 16) / 2;
      
        // The light sensor has a default integration time of 402ms,
        // and a default gain of low (1X).
        // If you would like to change either of these, you can
        // do so using the setTiming() command.
        // If gain = false (0), device is set to low gain (1X)
        // If gain = high (1), device is set to high gain (16X)
      
        // If time = 0, integration will be 13.7ms
        // If time = 1, integration will be 101ms
        // If time = 2, integration will be 402ms
        // If time = 3, use manual start / stop to perform your own integration
      
        // setTiming() will set the third parameter (ms) to the
        // requested integration time in ms (this will be useful later):
        
        // Gain=0, timing=1
        _tsl.setTiming( 0, 1, ms);
      
        DebugF(".1."); DebugFlush();
      
        // To start taking measurements, power up the sensor:
        if (!_tsl.setPowerUp())
        {
          DebugF("Error=");
          Debug(_tsl.getError());
         _status &= ~RF_NODE_STATE_TSL2561 ;
          return 0;
        }
      
        DebugF(".2.");DebugFlush();
      
        // We detected the module
        _status |= RF_NODE_STATE_TSL2561 ;
      
        // Wait to settle
        DebugFlush();
        sleepQuickWake( WDTO_120MS );
      
        DebugF(".3.");DebugFlush();
      
        // Getting data ok ?
        if (!_tsl.getData(data0,data1))
        {
          DebugF("Error=");
          Debug(_tsl.getError());
          return 0;
        }
      
        DebugF(".4.");DebugFlush();
      
        double lux;    // Resulting lux value
        boolean good;  // True if neither sensor is saturated
      
        // Perform lux calculation:
        if (!_tsl.getLux(0,ms,data0,data1,lux))
        {
          DebugF("getLux BAD!");
          DebugF(" data0: "); Debug(data0);
          DebugF(" data1: "); Debug(data1);
          return 0;
        }
        else
        {
          // Convert to integer value, keep one digit
          _lux = (int16_t) lux * 10;
      
          // Print out the results:
          //DebugF(" lux: ");
          //Debugln(lux);
        }
      
        DebugF(".5.");DebugFlush();
      
      
        // Set it to power down
        _tsl.setPowerDown();
      
        // release I2C bus
        //Wire.endTransmission(true);
        //I2c.end();
      
        DebuglnF("OK!");
        DebugFlush();
      
        return _lux;
      }
      
      
      1 Reply Last reply Reply Quote
      • S Offline
        scalz
        last edited by

        merci pour l'exclu c'est coool!
        j'ai bien vu ton astuce (registres et pinmode), du coup jviens d'essayer vite fait mais ça ne m'a pas amélioré mon souci. mais c'est bizarre, pour debug, j'ai ajouté le i2cscan après le wakeup mosfet et il me trouve bien l'adresse du sensor. mais la lecture des lux me donne 0. je reboot et tout rentre dans l'ordre jsqu'au sleep. jregarde la datasheet du bh et jfais un ptit clean dans mon code pour voir si jfais pas une betise. je te redis ça.
        bien vu sinon l'astuce! c'est du fin du fin tout ça!

        1 Reply Last reply Reply Quote
        • CharlesC Offline
          Charles
          last edited by

          J'imagine que tu refais bien une init complète de ton sensor au wake up ?

          1 Reply Last reply Reply Quote
          • S Offline
            scalz
            last edited by

            oui, pour être sûr je l'ai mis juste avant la lecture.
            jclean ça et jte montre si tu veux mais c'est simple pour l'instant.

            1 Reply Last reply Reply Quote
            • CharlesC Offline
              Charles
              last edited by

              peut être une particularité de ton capteur, j'me suis bien fait avoir avec le TH02 aussi 😉

              1 Reply Last reply Reply Quote
              • S Offline
                scalz
                last edited by

                oui c'est ce que j'envisage. faut que je test avec un autre capteur aussi. bmp180 par exemple, tu as déjà essayé en ulpnode?

                1 Reply Last reply Reply Quote
                • CharlesC Offline
                  Charles
                  last edited by

                  Heu non, je crois que j'en ai un mais jamais testé !!! bonne idée dès que je m'y remets
                  tu as pris quelle librairie, il doit en avoir 15 tonnes comme d'hab ?

                  1 Reply Last reply Reply Quote
                  • S Offline
                    scalz
                    last edited by

                    j'utilise celle que Mysensors utilise de base dans leur sketch (Adafruit_BMP085 compatible avec le 180). en checkant jviens de voir qu'ils en ont une autre faite par sparkfun mais j'ai pas test.
                    https://github.com/mysensors/Arduino/tree/master/libraries

                    1 Reply Last reply Reply Quote
                    • CharlesC Offline
                      Charles
                      last edited by

                      Ah perso jamais de mauvaises surprises avec les lib de Sparkfun, et c'est assez rare pour le souligner 😉

                      1 Reply Last reply Reply Quote
                      • S Offline
                        scalz
                        last edited by

                        c'est vrai qu'ils sont pas mal chez sparkfun, ça fait un bout de temps qu'ils sont présents en plus.

                        sinon, après un ptit clean , j'arrive à lire mon sensor après power up mosfet. ouf enfin! bon maintenant jvais pouvoir checker les consos. voir si rien n'as bougé!
                        en tout cas merci, car je pense que c'est ton astuce plus le clean qui m'ont dbloqué.

                        en fouinant pour trouver mon souci, je suis tombé sur cette routine pour clean le i2c. je m'en sers pas spécialement mais peut être que ça pourrait te servir un jour http://www.forward.com.au/pfod/ArduinoProgramming/I2C_ClearBus/index.html

                        1 Reply Last reply Reply Quote
                        • S Offline
                          scalz
                          last edited by scalz

                          au fait je t'ai pas demandé, pour ton capteur de temp/hum tu va prendre quoi comme ref? pour ma part je viens de me commander qq Si7021 sur ali pour voir. en espérant qu'ils soient bien, quasi le mm prix que les dht22, y a pas photo. c'est celui que mysensors mettent sur leur sensebender...wait&see

                          1 Reply Last reply Reply Quote
                          • CharlesC Offline
                            Charles
                            last edited by

                            Arrfffff t'aurais du me demander, j'ai ai fait 5 grove SI7021 qui trainent au fond d'une boite 😉

                            Combien et quelle réf chez ALI ? juste curieux car les prix ont doublés en qq mois pour ces trucs

                            1 Reply Last reply Reply Quote
                            • CharlesC Offline
                              Charles
                              last edited by

                              N'y vois pas une attaque personnelle, mais perso je ne comprends cet engouement pour le NRF24L01, c'est quand même super limité (et je pèse mes mots) en portée à coté du RFM69 😉

                              1 Reply Last reply Reply Quote
                              • S Offline
                                scalz
                                last edited by

                                ah ben zut c'est pas grave quoique faut voir tu en vendrais un? tu en penses quoi de ces capteurs? tu les as test avec ton ulp? 2.90€ fdpi sur ali.

                                1 Reply Last reply Reply Quote
                                • S Offline
                                  scalz
                                  last edited by

                                  http://fr.aliexpress.com/item/Industrial-High-Precision-Si7021-Humidity-Sensor-with-I2C-Interface-for-Arduino/32346083214.html

                                  Non, non, t'inquietes, je suis completement d'accord avec toi pour le nrf vs rfm. le nrf c'est du low cost 2.4ghz bourré de fake. et petite portée comparé au rfm qui en plus embarque des fonctions interessantes.

                                  Le truc j'ai l'impression c'est que pour beaucoup le diy ça veut dire lowcost avec pleins de fils (quelle horreur, lol). pour ma part je suis pas à 2-3 euros près si c'est plus pérein et performant. et j'aime pas la filasse dans tous les sens donc je préfère partir from scratch si c'est avantageux.

                                  pour l'instant j'ai pas trop eu le temps de tester comme je veux ce rfm. la lib mysensors n'est compatible avec que depuis peu. et c'est la branche de dev. ça me dérange pas trop encore, mais à vrai dire vu que ça fait pas longtemps que je me lance dans la domo, j'ai pas grand chose en prod. jsuis dans mes design et liste des besoins. mais c'est sûr que pour moi ce sera rfm. c'est vrai que beaucoup sont en nrf et jpense on peut toujours leur dire rfm ils diront que c'est trop cher. en plus pas d bol s'ils en ont plein en prod!

                                  Oulà, j'espère qu'il va pas y avoir de fervents défenseurs du nrf et fil volant sinon jvais me faire lincher, lol!!!

                                  1 Reply Last reply Reply Quote
                                  • CharlesC Offline
                                    Charles
                                    last edited by

                                    ah ah ah ils sont fort ces chinois, à ce prix là c'est pas du SI7021 c'est une certitude, d'ailleurs j'aimerais bien connaitre les différences entre le SI7021, HTU21 et le SHT21 au niveau caractéristiques.
                                    Oui l'ULPNode fonctionne avec un SI7021 acheté chez Digikey (genre 5€ juste le capteur), mais je ne prends pas le risque de tester avec des Fakes potentiels, j'ai déjà donné avec les faux FTDI !!!!

                                    Je veux bien t'en vendre une mais je peux pas m'aligner avec les chinois lol, je peux te la faire au prix que çà m'a coûté + un timbre 😉

                                    Les infos que je viens de mettre rien pour toi sur mon git avec des photos

                                    1 Reply Last reply Reply Quote
                                    • S Offline
                                      scalz
                                      last edited by

                                      tu as sans doute raison. c'est vrai qu'ils sont forts. mais en plus des fois y a de la qualité en travers. pour le si7021 c'est vrai qu'à ce prix là... c'est pareil j'ai reçu la semaine dernière des acs712 5A (acheté sur ali). j'ai pas eu le temps de test. mais ça fait pas longtemps que j'ai découvert ça ali en fait. avant j'commandais toujours chez farnell,rs et les autres.

                                      jpourrai m'amuser à comparer avec les fake du coup oui ça m'interesse une breadboard. pour le prix jme doute bien, t'inquietes. en plus c'est oshpark. et je l'aurai avant comme ça!

                                      jviens d'aller voir ton git. merci.
                                      c'est vraiment bien. pas bête l'idée du jumper pour les pullups.

                                      1 Reply Last reply Reply Quote
                                      • CharlesC Offline
                                        Charles
                                        last edited by

                                        Hello, je t'ai répondu par chat privé pour le capteur.

                                        1 Reply Last reply Reply Quote
                                        • S Offline
                                          scalz
                                          last edited by

                                          salut,
                                          une image valant mieux qu'un paragraphe d'explications....pourrait-tu me dire si j'ai cablé mon superviseur correctement stp??? tu me diras je le saurai quand j'aurai reçu les ncp, j'avais fait un mauvais choix avec les lm8364, ça fonctionnait pas comme je le voulais. le ncp a un schema interne bien mieux fait !
                                          2015-07-25_08-49-18.png
                                          en attendant mes ncp pour test ce montage, je vais regarder ce week end comment fonctionne l'ota et la signature.. je te fera un retour si cela t'interesse.

                                          1 Reply Last reply Reply Quote
                                          • CharlesC Offline
                                            Charles
                                            last edited by

                                            Ton câblage semble bon (c'est ballot j'avais fait des breakout NCP302 qui sont au fond d'un tiroir).
                                            En revanche tu dois inverser la sortie de ton FET car qd le superviseur passe à 0 (<2V) tu dois activer le booster (EN=1),

                                            upload-6d38be45-a721-465f-8ef9-af0e44897369
                                            Le Wake va sur l'IRQ, le BOOST est la sortie I/O pour activer le booster et la patte libre du FET va sur le enable du MCP

                                            1 Reply Last reply Reply Quote
                                            • First post
                                              Last post

                                            2

                                            Online

                                            5.7k

                                            Users

                                            534

                                            Topics

                                            5.0k

                                            Posts

                                            Top Topics

                                            • Denky 4 - Domoticz - Triphasé -
                                              Nicolas BernaertsN
                                              Nicolas Bernaerts
                                              0
                                              7
                                              266

                                            • Denky D4 et Linky Standard TInfo Rx Non Configuré
                                              CharlesC
                                              Charles
                                              0
                                              5
                                              286

                                            Popular Tags

                                            teleinfo
                                            24 topics
                                            arduino
                                            19 topics
                                            remora
                                            16 topics
                                            esp8266
                                            10 topics
                                            arduipi
                                            10 topics
                                            wifinfo
                                            7 topics
                                            raspberry
                                            7 topics
                                            broadcast
                                            7 topics
                                            Copyright © 2022 Charles-Henri Hallard | Return to blog page | Powered by NodeBB