here is a 32x24 sensor read for terminal. seems to be calibrated, and using 808 bytes of ram and working on Arduino!
https://github.com/jamesdanielv/thermal_cam_mlx90640/blob/master/32x24calibratedsensorRead.zip
not all rows fit on screen but you can see the degrees in . currently each sensor read routine is about 5000 microseconds. this is far from optimized yet, it just seems to be working.
temp seem to be calibrated, will test and put it into a color map to verify.
the only wrench for this is i seem to only get these values when i have sensor run in continuous mode, not single shot mode. this causes a small error in gain calculations because vdd varies +/- 0.01 v between reads.
i will try to resolve why, because some of these measurements are a frame behind the others, however the rate of change for sensor may not mean it makes much difference, especially with multiple samples to reduce noise, but i will try to fix it either by getting single shot mode fixed (possible bit setting) or have code that figures out how old sensor data is and apply correct Vdd sample to calculate temp with more precision. the example i list above is with 19 bits of resolution so in theory with a resolution of
-40°C-300°C ~340 range, and 524288 (19bit) levels sensor is capable of sensing difference of 0.000648 degrees. amg8833 is 0.025 degrees. the noise suppression is superior in the mlx90640 sensor making it excellent for thermal imaging at a distance!
![](https://cdn.hackaday.io/images/9004591544382842711.png)
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.