EVAL-CN0395-ARDZ configuration for Alphasense VOC-M31 gas sensor


After successfully testing EVAL-CN0395-ARDZ with its default sensor (Figaro TGS8100), I am now trying to make the necessary changes to make it compatible with an Alphasense VOC-M31.

To do so, I:

1. removed the TGS8100 sensor

2. replaced the 41.2 Ohm resistors on R17 and R19 with 2.2 Ohm resistors to extend maximum current to ~186 mA

3. connected VOC-M31 sensor 

There are a number of other changes that needs to be made in the firmware:

1. ADN8810.h: line 14, change ADN8810_RSN  from 41.2 to 2.2

2. CN0395.h: line 4, change ALPHA to 3255 (to match our sensor's heater TCR value)

3. CN0395.c: a number of changes to the temporal responses (delays, etc.) to account for the fact that this ceramic sensor is slower in responding to changes in heater settings.

By these changes I manage to get a signal from this sensor, but only if I use the default Gain Correction Factor K1 = 1.000. 

Every time I run the "calibration w" routine I get the K1 = 3.250 which is clearly wrong (it messes up all the current/voltage figures). So I suspect there are other changes needed to be applied to the firmware which affects this calibration?!

Please advise.

  • +1
    •  Analog Employees 
    on May 15, 2020 10:34 AM 8 months ago in reply to e669danesh

    Hi e669danesh,


    I have looked over the changes that you have made in the schematic and the code. Below are a couple things that I have noticed:

    • Changing the RSN resistors do change the current sourcing capabilities of the ADN8100. The changes you have made are well within the limits of the part.
    • The error you are seeing in the calibration is due to the calibration resistor R22 (71.5ohms). The new RSN resistors set the full scale current to 186mA and through the R22 it gives out a voltage of 13.299V.
    • The software reads the voltage on VH node, which is the voltage across R22
    • The maximum voltage the converter takes only 4.096V which would cause the error.

    To correct this here are some suggestions:

    • Instead of placing the shunt on 2.1 and 2.2, place it on 2.3 and 2.4. This should get your calibration voltage down to 1.86V that is manageable by the converter.               
    • Change the line 53 of the AD7988.h which contains the 71.5ohm in the calculation of calibration to 10ohm


    Let me know if this helps.




  • Hi Glenn, that solved the problem. K1 now reads 0.9989. 

    Thanks for your help!

Reply Children