🤖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.
    • 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
                              • K
                                Kenzo @robski
                                last edited by

                                @robski I sent an email to M5Stack Support about the possible issue with the Tab5 and Tube Pressure sensor BUT no response so far....

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

                                  @Kenzo
                                  This is an ADC problem. We are fixing UiFlow2 codes. Please be patient.

                                  Good morning, and welcome to the Black Mesa Transit System.

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