TinyCircuits Forum

TinyCircuits Products => Wirelings => Topic started by: josimi on October 30, 2020, 10:33:20 AM

Title: How to debug thermal camera capturer example code?
Post by: josimi on October 30, 2020, 10:33:20 AM
Using the TinyScreen along with the Wireling shield, the thermal camera (in port 0), and the microSD shield. All I see is this grey square (even when testing with aa lighter as a heat source) and saving photos yields only values of 0.25. I did modify line 15 of Adafruit_AMG88xx.h to

Code: [Select]
#define AMG88xx_ADDRESS                (0x68)
but also tried with the original value of 0x69 and get the same result in both cases.

What should I try next?
Title: Re: How to debug thermal camera capturer example code?
Post by: lennevia on October 30, 2020, 03:43:24 PM
Hello!

If you're following the tutorial with the example program from the tutorial page here: https://learn.tinycircuits.com/Wirelings/Thermal-Camera_Wireling_Tutorial/

You will want to plug the Wireling into Port 1. This is the only Wireling example different from all the others that use port 0 since it makes the most sense visually to put the sensor in port 1 and then wrap it to the back so that the graphic matches the direction the sensor is facing.

That should help!
Title: Re: How to debug thermal camera capturer example code?
Post by: josimi on October 30, 2020, 08:59:27 PM
Interesting. The "Thermal Camera SD Capture" code that I downloaded from your website using Wireling Port 0.

After switching to the tutorial code and Port 1, I am still experiencing the same problem. Maybe the Thermal Camera that I bought is defective?
Title: Re: How to debug thermal camera capturer example code?
Post by: lennevia on November 02, 2020, 02:34:06 PM
Hello,

You mentioned you edited the I2C address of the component in the adafruit library to 0x68. The library address should be 0x69, so make sure you have changed it back.

Let me know if that solves the problem.

I looked into the places where we have the program downloadable (GitHub, the product page, and the Wiki with the tutorial) and was unable to find a copy using port 0. Let me know where you found it, and I would be happy to correct the problem for future users.

Thank you!
Title: Re: How to debug thermal camera capturer example code?
Post by: josimi on November 03, 2020, 03:11:37 AM
I already tried both 0x68 and 0x69 for I2C addresses.

The program code here uses port 0 and says to change the I2C address to 0x68.
https://learn.tinycircuits.com/Wireling-Projects/Thermal-Camera-SD-Capture_Tutorial/

Code: [Select]
#include <Adafruit_AMG88xx.h> // Go into this library and change address to 0x68 for Thermal Camera whisker
Title: Re: How to debug thermal camera capturer example code?
Post by: lennevia on November 03, 2020, 10:08:15 AM
I forgot there was a project with it!

Yes, for that project you linked you will want to plug the Wireling into port 0 as noted in the program, and for all examples you will want to use address 0x69. There was a prototype before that used address 0x68, but we changed it before production so it looks like that note in the tutorial didn't get changed to reflect the production boards. I will fix it sometime today.

I would recommend first verifying the simpler program in the tutorial is working (use port 1, address 0x69): https://learn.tinycircuits.com/Wirelings/Thermal-Camera_Wireling_Tutorial/

I will take a look at the project program to see if I can sort anything out.
Title: Re: How to debug thermal camera capturer example code?
Post by: lennevia on November 03, 2020, 11:51:48 AM
I removed the incorrect comment in the program and tested the program itself.

The program works as it is detailed in the project writeup and I was not able to duplicate any errors. I would recommend moving the sensor around the room or waving your hand in front of it at some distance to see a change in the graphic. When I tested the program, I noticed it stopped working when the boards became loose in the stack - the Wireling Adapter TinyShield remained intact but loose, so this may be something to look for as well.

Have you been able to get working behavior using the correct port and address?  Let me know!