**Quote:**

co2 = co2 * 0.8317 * 44.01 / 10000;

// converts ppmv to ppmw

// quicker than co2/1000000 * 0.8317 * 44.01 / 1000000

// 0.8317 accounts for Henry's Law

// max ppmw will be 36.6 ppmw with 10,000 ppmv

hi mistergreen i followed this thread from TPT. just want to say i admire your work on the DIY parmeter also. now on to the CO2 meter...

the part where i quoted is where i believe the calc error lies. there is already an arithmetic mistake when "co2 * 0.8317 * 44.01 / 10000" is equated to "co2/1000000 * 0.8317 * 44.01 / 1000000"

it should actually be co2*0.8317*44.01/1000 to yield an answer in mg/L (ppm w). note that for 10,000 ppm v, this calculates to

366.01 mg/L (CO2/water).

this is where i discovered the second error. using the Henry constant value 0.8317 requires that the gas concentration of solute (CO2) be in

mole concentration(mol/L). the problem is that the sensor returns values in the unit of

mol ratio(number of CO2 atoms as a fraction of all other gas atoms passing the detector), which is equivalent to

ppmv due to Avogadro's Law. to put it simply, you have to take 366.01 and divide it by 24 if we want to use 0.8317 correctly. this due to 1L of gas only having 1/24th a mole of any gas particle (accurately 1/24.4 at 25C). ie, ~24 ppmv CO2 in air is 1/1000000 mol/L CO2 in air.

366/24=

**15.2 mg/L** or ppm w CO2 when the meter is maxed at 10k ppm v. this is in agreement with kkara's calcs.

a convenient constant i would use is CO2(dissolved ppm w) = CO2(ppm v) / 668.5. derivable from the other form of henry's constant 29.41 L*atm/mol and CO2 molar weight 44 g/mol.

of course this poses the problem that what we want is out of range for this sensor. and the highest CO2 log values (saw from the other forum) from your tank (about 18+ ppm w) is overstated by a factor of 2.44 assuming the above quoted code was in use