Heimann Sensor HTPA 32x31

Hello!

Thanks to this topic http://forum.arduino.cc/index.php/topic,22384.0.html I was able to connect Heimann HTPA32x31 sensor to Arduino Uno and read analog data from it.

But when it comes to SPI communication, I get weird bytes, mainly 0-s and 255-s.
According to datasheet: Dropbox - Heimann_Sensor_complete_Datasheet_HTPA_Rev14.pdf - Simplify your life SPI interface differs from "traditional" one supported by Arduino library.

I tried different options with Arduino SPI library, connected sensor's DATA_IO and CONT pins in different combinations to Aruino's SPI MISO, MOSI, SS pins. Still no luck.

I'm wondering If anyone has successfully connected Heimann HTPA32x31 sensor to Arduino Uno or has any suggestions on troubleshooting.

Hi

Have you successfully connected the sensor?

I am connecting the sensor too, but got the unknown data.

Maybe we can help each other. :slight_smile: :slight_smile:

Hi!

I was able to retrieve data after consulting Heimann engineers. I received C code from them, so not sure I am allowed to spread it publicly. But anyway this is the main idea:

SPI for this module works only in either Slave or Master mode. I.e. it uses DATA_IO pin as combined MISO/MOSI. So Arduino SPI lib becomes irrelevant.

When you write data to sensor, the sensor is slave, Arduino - master (my code uses SW implementation, not SPI capabilities). When you get data from sensor, sensor should be master, Arduino - slave (ATmega built-in SPI used, not Arduino lib). DATA_IO pin is permanently connected to MOSI and switched between I/O.

P.S. My Sensor is a bare sensor module, without any PCBs attached.

Dimych:
Hi!

I was able to retrieve data after consulting Heimann engineers. I received C code from them, so not sure I am allowed to spread it publicly. But anyway this is the main idea:

SPI for this module works only in either Slave or Master mode. I.e. it uses DATA_IO pin as combined MISO/MOSI. So Arduino SPI lib becomes irrelevant.

When you write data to sensor, the sensor is slave, Arduino - master (my code uses SW implementation, not SPI capabilities). When you get data from sensor, sensor should be master, Arduino - slave (ATmega built-in SPI used, not Arduino lib). DATA_IO pin is permanently connected to MOSI and switched between I/O.

P.S. My Sensor is a bare sensor module, without any PCBs attached.

How do you calibrate the sensor? The temperature measurement is accurate?

Hi,

I have got Heimann Sensor 80*64 with SPI interface and so far I am able to receive the data from the status register, which means sensor is connected successfully. But reading the raw pixel data from the sensor's RAM seems confusing on the datasheet. Also, there is a sample code provided by Heimann people which is also sometimes confusing as there are so many stuff written in the code itself.
So I wanted to know if there is anyone here who has tried reading out the pixel data and could give me a simple explanation of it. I'd really appreciate that.