🤖Have you ever tried Chat.M5Stack.com before asking??😎
    M5Stack Community
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    Possible issue with Tab5 and UiFlow v2.3.1 - (i2c driver install error)

    General
    5
    31
    545
    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.
    • felmueF
      felmue @Kenzo
      last edited by felmue

      Hello @Kenzo

      I think you might have misread my post. I do not have a Tube Pressure unit so I cannot test this case, sorry.

      Thanks
      Felix

      GPIO translation table M5Stack / M5Core2
      Information about various M5Stack products.
      Code examples

      K 1 Reply Last reply Reply Quote 0
      • K
        Kenzo @felmue
        last edited by

        @felmue Yep, I read that wrong... my fault...

        1 Reply Last reply Reply Quote 0
        • K
          Kenzo
          last edited by

          Well I started doing the process of elimination and decided to compile a default blank Tab5 project in UiFlow v2.3.1 with no unit sensors and the i2c driver install error still occurred... See screen shots... So something else is trying to load the i2c drivers in UiFlow v2.3.1 for the Tab5 device and is having a problem installing it...

          Question: Could this be a possible bug somewhere when it comes to Tab5 and the UiFlow IDE???

          Tab5andTest4_Error_1.png

          Tab5andTest4_Error_2.png

          Tab5andTest4_Error_3.png

          1 Reply Last reply Reply Quote 0
          • A
            adamm5
            last edited by

            i'm getting the same i2c driver error on an Atom Lite, the error began following an erase but persists regardless of the UIflow2 version I attempt to refresh with.

            felmueF 1 Reply Last reply Reply Quote 0
            • felmueF
              felmue @adamm5
              last edited by

              Hello guys

              I think that is what I wanted to tell you guys with my previous post. The i2c driver install error, which I also get, does not prevent most of my units to work properly.

              Out of all my units only two did not work and two I2C units would only work after switching the i2c speed to 400 k.

              In other words I do not think the i2c driver install error matters in regard with the Tube Pressure unit, which is not an I2C unit.

              @Kenzo : do you have any other units you could try with your M5Tab5? Or any other core(s) you could try the Tube Pressure unit with?

              Thanks
              Felix

              GPIO translation table M5Stack / M5Core2
              Information about various M5Stack products.
              Code examples

              A 1 Reply Last reply Reply Quote 0
              • A
                adamm5 @felmue
                last edited by

                in my case i need to query an AIN unit, which is i2c...so this error is a total blocker.

                A 1 Reply Last reply Reply Quote 0
                • robskiR
                  robski
                  last edited by

                  @Kenzo as Ive said before try below: remove "get voltage" block and try your Tube Pressure unit with analog value only
                  kenzo0.PNG

                  M5StickC, M5StickCPlus, M5StickCplus2,M5GO, M5Core, M5Tough, M5Core2, M5 Demo Board, M5Dial, M5Paper, M5Atom, M5Cardputer, M5StampS3, CoreMP135, StamPLC, AirQ, M5Tab

                  K 1 Reply Last reply Reply Quote 0
                  • A
                    adamm5 @adamm5
                    last edited by

                    @adamm5 Ive rebuilt this project from scratch and can confirm that ignoring the i2c load error is possible even when using the AIN i2c unit and PAhub unit. This seems to be a change to my earlier experience but perhaps something else was happening with the code.

                    1 Reply Last reply Reply Quote 0
                    • K
                      Kenzo @robski
                      last edited by

                      Thanks everyone for your suggestions!

                      @robski - I went back to my Tube example and the only one that worked was the ADC parameter to pull data. (I used 12bit)

                      So I looked at the UiFlow1 example for the Tube Pressure and tried to duplicate it. The program now runs BUT I am not sure if I am using the correct math conversion to convert the raw data from the ADC parameter into Kpa. I have searched a couple of sources BUT can't seem to find documentation that fully explains how to correctly calculate Kpa with the ADC parameter to Kpa...

                      Does anyone know were to get really good documentation on the tube pressure sensor that explains how to properly calculate Kpa using the sensor with ADC option?

                      UiFlow2_WorkingCode.jpg

                      BlockyPythonCode!.jpg

                      UiFlow1_CalculationExample.jpg

                      K 1 Reply Last reply Reply Quote 0
                      • K
                        Kenzo @Kenzo
                        last edited by Kenzo

                        So if I assume the ADC 12 bit option will give me 4,096 different points and the ADC 16 bit option will give me 65,536 different points maybe I can come up with a formula ( using the voltage - Pressure graph) of how to calculate Kpa when using ADC option for the Tube pressure... Everyone I am just thinking out loud so don't bash me too badly... LOL!

                        1 Reply Last reply Reply Quote 0
                        • robskiR
                          robski
                          last edited by robski

                          what are RAW values you are getting from your sensor? pure analog read value?

                          try below

                          float raw = analogRead(sensorPin); // Read analog value
                          float Vout = raw / 4095.0 * 3.6; // Convert to voltage (assuming 3.6V reference)
                          float P = (Vout - 0.1) / 3.0 * 300.0 - 100.0; // Calculate pressure in kPa

                          M5StickC, M5StickCPlus, M5StickCplus2,M5GO, M5Core, M5Tough, M5Core2, M5 Demo Board, M5Dial, M5Paper, M5Atom, M5Cardputer, M5StampS3, CoreMP135, StamPLC, AirQ, M5Tab

                          K 1 Reply Last reply Reply Quote 0
                          • K
                            Kenzo @robski
                            last edited by

                            @robski Thanks for replying! With nothing connected to the Tube pressure sensor, I am getting a RAW value of 3,287 (12 bit option selected in the ADC parameter).

                            In regards to a 3.6V reference, where is that in the documentation?

                            RangeSpan_1.jpg

                            I think we are getting close to solving this problem!

                            K 1 Reply Last reply Reply Quote 0
                            • K
                              Kenzo @Kenzo
                              last edited by

                              @robski - I stumbled across this youtube video about an Arduino Pressure Sensor and was thinking about testing a version of his method for coming up with a calculation...

                              https://youtu.be/UrqPxwsPWGk?si=4Ho9CQwpoFZstMBk&t=321

                              1 Reply Last reply Reply Quote 0
                              • robskiR
                                robski
                                last edited by robski

                                with your raw value as 3287
                                sensor range -100 to 200
                                analog range 0 to 4095

                                your calculated pressure should be around 140

                                M5StickC, M5StickCPlus, M5StickCplus2,M5GO, M5Core, M5Tough, M5Core2, M5 Demo Board, M5Dial, M5Paper, M5Atom, M5Cardputer, M5StampS3, CoreMP135, StamPLC, AirQ, M5Tab

                                K 2 Replies Last reply Reply Quote 0
                                • K
                                  Kenzo @robski
                                  last edited by

                                  @robski - hmmm.... Well that raw value was with nothing connected to the Tube Pressor sensor. Because nothing is connected to the tube pressure sensor I would assume it would be closer to 0 Kpa... 140Kpa is a big difference from 0 Kpa... I wonder what we are missing?

                                  1 Reply Last reply Reply Quote 0
                                  • K
                                    Kenzo @robski
                                    last edited by

                                    @robski I keep coming up with 140Kpa also...
                                    We must be missing something...

                                    1 Reply Last reply Reply Quote 0
                                    • robskiR
                                      robski
                                      last edited by

                                      just connect voltage to sensor and measure what voltage it is giving out between output pin and ground. for 0 kPa your raw Analog value should be around 1300 i think

                                      M5StickC, M5StickCPlus, M5StickCplus2,M5GO, M5Core, M5Tough, M5Core2, M5 Demo Board, M5Dial, M5Paper, M5Atom, M5Cardputer, M5StampS3, CoreMP135, StamPLC, AirQ, M5Tab

                                      K 2 Replies Last reply Reply Quote 1
                                      • K
                                        Kenzo @robski
                                        last edited by

                                        @robski - I think you hit on something there! I measured the voltage between the ground and the sensor and it came to around 1.1v which according to the graph should be around 0 Kpa. (see attached photos) Something is definitely strange...

                                        VoltageReading_1.jpg

                                        PressureGraph_1.jpg

                                        K 2 Replies Last reply Reply Quote 1
                                        • K
                                          Kenzo @Kenzo
                                          last edited by

                                          This post is deleted!
                                          1 Reply Last reply Reply Quote 0
                                          • K
                                            Kenzo @Kenzo
                                            last edited by

                                            Also here is the formula I was using to calculate Kpa

                                            So for 12 bit parameter, this gives a kpa resolution of 300Kpa/4096 bits or 0.0732421875 kpa/bit (73.2pa/bit)

                                            x = ( (0.0732421875 kpa/bit * Raw Value bit) - 100Kpa)
                                            x = ( (0.0732421875 kpa/bit * 3287 bit) - 100Kpa) = 140.7Kpa

                                            For the 16 bit parameter this gives a kpa resolution of 300Kpa/65536 bits or 0.00457763671875 kpa/bit (4.6pa/bit)

                                            x = ( (0.00457763671875 kpa/bit * Raw Value bit) - 100Kpa)
                                            x = ( (0.00457763671875 kpa/bit * 52600 bit) - 100Kpa) = 140.8Kpa

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post