11 Replies Latest reply on Feb 5, 2015 8:05 AM by Ruscoff

    AIO very high noise

    Ruscoff

        Hi all,

           i'm testing Edison analog input with precision adjustable power supply. Test result aren't good, measure of ADC isn't accurate and the returned value suffer of high noise about +-50mV make measure unstable.

      Have you ever noted this behavior? or it might depend on unstable voltage reference?

       

      Thansk

       

      Marco

        • 1. Re: AIO very high noise
          JPMontero_Intel

          Hi Ruscoff

           

          I’ll try to replicate it but I need more information. Are you using Arduino expansion board or Breakout board? Is your code on the Linux side or Arduino side? Actually, could you attach the code you are using for this test?

           

          Regards,
          JPMontero_Intel

          • 2. Re: AIO very high noise
            Ruscoff

            Hi Montero,

            This is my test bed:

                - Arduino Expansion Board without any arduino board.

                - Analog input A0

                - last version of mraa downloaded and compileded today

                - C++ code interface directly with mraa

                - 12bit acquisition every 200ms with command AIO::read()

                - I tryed internal reference and also external reference for ADC, in this moment i'm using external reference with 5V from TSP60110 stepup low noise charge pump with ripple 5mV.

                - Input signal come from dc power supply very stable (measured with oscilloscope)

              

            This is an extract from my code:

            mraa::Aio hikInput = new mraa::Aio(HIK_LOADCELL_CHANNEL);
              hikInput ->setBit(12);
              if (hikInput == NULL) {
                   cout << "Error initializing hik input circuit" << endl;
              }
            while(1)
            {
                 cout << hikInput->read() << endl;
            
                 usleep((200 - (getMSec()%200))*1000);
            }
            

             

            If you need some oscilloscope screenshot let's free to ask

             

            Thanks

            • 3. Re: AIO very high noise
              Ruscoff

              These are results of my test with same configuration. BT on WiFi on

              First column is msecond from midnight and secondo column is ADC channel 0 value in decimal.

               

              Using  external Vref at 5v from TPS60110 low noise, IOShield at 3v3

              A0 is tied to ground.

               

              52841671 0

              52841800 2

              52842001 0

              52842200 11

              52842400 2

              52842601 0

              52842800 8

              52843000 0

              52843200 5

              52843400 7

              52843600 0

              52843800 0

              52844001 14

              52844201 0

              52844400 0

              52844600 8

              52844801 4

              52845000 0

              52845200 0

              52845401 8

              52845600 0

              52845800 5

              52846001 1

              52846201 10

              52846400 8

              52846600 0

              52846800 0

              52847001 0

              52847200 9

              52847400 1

              52847601 12

              52847800 0

              52848000 0

              52848200 9

              52848401 7

              52848601 13

              52848800 0

              52849000 0

              52849201 0

              52849401 7

              52849600 0

              52849800 4

              52850001 0

              52850201 0

              52850401 10

              52850600 7

              52850800 13

              52851000 7

              52851200 0

              52851400 2

              52851600 10

              52851801 0

              52852000 8

              52852200 0

              52852400 1

              52852600 10

              52852800 0

              52853000 0

              52853201 7

              52853400 10

              52853600 9

              52853801 0

              52854001 0

              52854200 0

              52854400 5

              52854601 0

              52854801 11

              52855000 2

              52855200 0

              52855400 0

              52855601 11

              52855800 14

              52856000 0

              52856200 8

              52856401 10

              52856601 1

              52856800 12

              52857000 0

              52857200 0

              52857401 6

              52857601 0

              52857800 0

              52858001 12

              52858201 10

              52858401 0

              52858600 0

              52858800 0

              52859000 0

              52859201 0

              52859400 10

              52859600 9

              52859800 7

              52860000 9

              52860200 0

              52860400 0

              52860600 1

              52860800 0

              52861000 0

              52861201 0

              52861400 0

              52861601 10

              52861800 0

              52862000 10

              52862201 0

              52862400 0

              52862600 12

              52862801 0

              52863001 2

              52863200 0

              52863400 0

              52863601 1

              52863801 10

              52864000 0

              52864200 1

              52864400 11

              52864601 6

              52864801 3

              52865000 7

              52865200 0

              52865401 10

              52865601 10

              52865800 9

              52866000 2

              52866201 2

              52866401 0

              52866601 0

              52866800 9

              52867000 9

               

              There is about 15mV of noise

               

              Instead,these are results of same configuration but with internal ADC reference at IOShield 3v3:

               

              61682962 0

              61683000 9

              61683201 0

              61683401 11

              61683600 9

              61683800 0

              61684000 1

              61684200 0

              61684401 0

              61684601 0

              61684801 14

              61685000 0

              61685200 0

              61685400 7

              61685601 0

              61685801 0

              61686000 0

              61686200 0

              61686401 15

              61686601 7

              61686800 0

              61687000 0

              61687200 16

              61687401 15

              61687601 14

              61687800 5

              61688000 0

              61688201 11

              61688401 1

              61688600 0

              61688800 15

              61689000 0

              61689201 13

              61689401 13

              61689600 0

              61689800 18

              61690001 0

              61690201 10

              61690400 0

              61690600 4

              61690801 0

              61691000 14

              61691201 10

              61691401 3

              61691600 19

              61691800 6

              61692001 0

              61692201 0

              61692400 0

              61692600 18

              61692800 12

              61693001 16

              61693201 15

              61693400 0

              61693600 0

              61693801 0

              61694001 7

              61694200 20

              61694400 17

              61694601 0

              61694801 14

              61695000 0

              61695200 11

              61695401 0

              61695601 20

              61695800 0

              61696000 3

              61696201 0

              61696401 1

              61696601 0

              61696800 13

              61697000 7

              61697201 0

              61697400 11

              61697600 1

              61697800 7

              61698001 0

              61698201 17

              61698400 0

              61698600 1

              61698800 9

              61699001 14

              61699200 12

              61699400 0

              61699600 1

              61699801 0

              61700001 4

              61700200 20

              61700400 13

              61700601 6

              61700801 17

              61701000 1

              61701200 4

              61701401 17

              61701601 0

              61701800 15

              61702000 0

              61702201 0

              61702401 0

              61702600 18

              61702800 4

              61703001 0

              61703201 16

              61703400 0

              61703600 0

              61703801 22

              61704001 0

              61704201 0

              61704400 0

              61704600 3

              61704801 0

              61705001 0

              61705201 0

              61705400 0

              61705600 5

              61705801 18

              61706000 0

              61706200 3

              61706400 12

              61706601 0

              61706801 9

              61707000 14

              61707200 0

              61707400 0

              61707601 6

              61707801 20

              61708000 0

              61708201 14

              61708401 0

              61708601 14

              61708800 0

              61709000 0

              61709201 22

              61709401 0

              61709601 13

              61709801 17

              61710000 0

              61710200 0

              61710400 0

              61710601 0

              61710800 15

              61711001 0

              61711201 24

              61711401 0

              61711600 0

              61711800 11

              61712001 2

              61712201 0

              61712401 4

              61712600 7

              61712800 0

              61713001 0

               

              There is noise of +20mV,

               

              as if board had 8bit ADC. (i know that it is true 12bit ADC) but SNR is the same of 8bit ADC.

               

              Marco

              • 4. Re: AIO very high noise
                MPayne

                Thanks Marco!

                 

                I'm having the firmware team take a look.

                • 5. Re: AIO very high noise
                  Ruscoff

                  Thanks, i'm waiting news

                   

                  Regards

                  Marco

                  • 6. Re: AIO very high noise
                    David_J_Hunt

                    Marco,

                     

                    I'd be interested to know what you see when you run the 'analogy_a0' example provided with the mraa library?

                     

                    I'm running it here and get a solid '0' when AI0 is grounded, and 1015-1023 when I connect AI0 to 3.3v on the Arduino header. With higher voltages in, it's solid 1023.

                     

                    Also, I get a solid zero when I 'cat /sys/bus/iio/devices/iio\:device1/in_voltage0_raw' repeatedly, and 4064-4095 when I connect AI0 to the 3.3v rail.

                     

                    Are you seeing the same on other boards?

                     

                    Regards,

                    Dave.

                    • 7. Re: AIO very high noise
                      David_J_Hunt

                      Spell-check got me there. I meant to type 'analogin_a0'

                      • 8. Re: AIO very high noise
                        Ruscoff

                        Today i'll try with new board and with the board with i made test.

                        Marco

                        • 9. Re: AIO very high noise
                          Ruscoff

                          With new board, on it first power on:

                            with IO_SHIELD = 3v3 and A_REF tied to IO_SHIELD.. Power on with Barrel Jack at 9V. Wifi ON e BT OFF

                           

                          A0 tied to GND:

                          cat /sys/bus/iio/devices/iio\:device1/in_voltage0_raw    show   130+-10


                          A0 tied to 3v3

                          cat /sys/bus/iio/devices/iio\:device1/in_voltage0_raw    show   2500+-120


                          Same result with opkg update and upgrade.


                          With old board with upgraded libmraa from github the result are the same of old post.

                          • 10. Re: AIO very high noise
                            JPMontero_Intel

                            Hi Ruscoff,

                             

                            I just tested this as well with an Arduino Expansion board powered by the barrel jack and I got the following results from 30 samples I took.

                             

                            • From GND to A0. The value read is 0 every time.
                            • From 3.3V pin to A0. It reads from 2777 to 2819.
                            • From 5V pin to A0. It reads 4089 to 4095.

                             

                            We will run more tests to see how it behaves. Thanks for reporting this.

                             

                            Regards,
                            JPMontero_Intel

                            • 11. Re: AIO very high noise
                              Ruscoff

                              I went deeper into ADS7955  linux kernel (yes, it was for 10bit ADC, probably intel team modified it for 12bit ADC ADS7951) and spi libraries. They seems work correctly.

                              I made other measure into board, spi ADC signal behave correctly and they respect timing request of datasheet. I suppose of the problem maybe belongs to 33 and 5v line supply.

                              They are very noisy, especially 3v3 intel edison switching power regulator has large ripple.


                              I think that my measure showed these result because input source of low noise TPS60110 is 3v3 intel edison then my step up couldn't remove all noise. I tried also without my custom stepup but with board 5V from USB, and i let you guess, USB was noise too.


                              I made another test with LiIon battery power supply and result are more stable and reliably.

                              1 of 1 people found this helpful