It's really confusing when your project just stops working overnight by laying on a table. In my case it turned out that there was a short somewhere inside a breadboard resulting in LEDs flickering. It took me over a week to debug this.
There is an issue with the library which I use for IR sensor. Datasheet defines that measured temperatures range is from 0 deg. C to 80 deg. C. It's not really true, as you can also get negative values, which result in variable overflow. As I have only 8 LEDs for temperature scale I decided to stick with default range from 0 to 80 deg. C. and cut any values above or below. But I will try to investigate if it will be possible to improve how library works.
Lastly, I changed button used to change temperature scale for a rotary encoder. There is a ready to use Adafruit library for this component as well, so it was really easy to do. Now the temperature scale is changed by rotating encoder left or right, which is much better than using a button for iterating over 8 values. Moreover, as encoder also has a button, I implemented a feature to send map of temperatures over serial port. So it will be possible to capture images when device will be connected to a PC. Cool! It may be a little bit less useless after all!
I planned to make a comparison between ItsyBitsy M0 and M4. Right now I'm using only M4 version, because there is a problem with not enough memory in M0. The fact is that the code is really sketchy, as I'm rather a poor programmer and focus on making thing work more than being effective or elegant. But I will try to make some optimizations, i.e. do not use floating point values for calculations everywhere.
As for right know all planned features are implemented, so I can move to power supply system and case designing. Here is the setup ready for test:
I moved the camera from the breadboard to set the stage easier. For a test I took a slightly warm tea and a piece of frozen meat.
Images are a bit dark to show colours of the LEDs. Here is the output: