Did you know: the Arduino GSM shield also has a thermperature sensor?

To activate the thermometer, first send the AT command: AT+QTEMP=1
To read the current temperature, send the AT command: AT+QTEMP?

How to send AT commands:
http://forum.arduino.cc/index.php?topic=206159.0

Connecting to GSM network...
Connected to GSM, now GPRS...
GSM shield fully connected.

Sending command: AT+QTEMP=1

OK

Sending command: AT+QTEMP?

+QTEMP: 1,22

OK

interesting find, some questions pop up:

  • Celsius, Fahrenheit,
  • how accurate?
  • Does it measure temperature of the GSM chip (overheating calls :wink: or the environment?

Hey robtillaart. the documentation is not very accurate but here is what I think:

  • definitely Celsius,
  • how accurate? --> well, it's rounded to 1 °C
  • Does it measure temperature of the GSM chip (overheating calls smiley-wink or the environment? --> no idea, I get a pretty constant value all the time but I'm not doing anything major with the GSM board. I'll check again when I do some uploads

What I forgot to mention in my first post is that the response from the board:
+QTEMP: 1,22

,, is from the documentation. I don't know why there are only 2 parameters but since the current ambient temperature is 21°, the second parameter is probably . If you send the command

AT+QTEMP=? then you get:
Sending command: AT+QTEMP=?

+QTEMP:<mode>(0,1),<Temperature>(-40 - 90))

Also form documentation:
= 1 if enabled.
The current voltage of the temperature sensitive resistor(mV)
The current temperature of the temperature sensitive resistor
Range is from -40 to 90(?)

I'm using the GSM shield for data upload from a remote (outside) location. I already measure the ambient temperature outside my box but I thought of using this sensor values for inside box temperature measurement (nice to have but not necessairy).

Thanks for this extensive explanation!

You're welcome! :slight_smile:

Thanks for your advice!