Main Content


Read one sample of temperature from sensor

Since R2021a


[tempReadings,timestamp] = readtemperature(sensorobj) returns one sample of the temperature measured in degree Celsius along with the timestamp. Timestamp is optional.


The readTemperature function is available for the LSM6DS3, LSM6DS3H, LSM6DSL, LSM6DSM, LSM6DSR, LSM6DSO, LPS22HB, LSM303C, HTS221, ICM20948, ADXL345, BMP280, and LIS3DH sensors.


Read temperature Data from Sensor

Create an Arduino object and include the I2C library.

a = arduino();

Or, you can explicitly specify it in the Libraries Name-Value pair while creating the Arduino object.

clear a;
a = arduino('COM4', 'Uno', 'Libraries', 'I2C');

Create the sensor object for the sensor in use.


The sample code and output in this example is for hts221 object. If you are using another sensor that supports readTemperature function, use the corresponding sensor object.

sensorobj = hts221(a);

Return one sample of temperature data.

temperatureReadings = readTemperature(sensorobj)
temperatureReadings =

Input Arguments

collapse all

The sensor object with the default or specified properties.

Output Arguments

collapse all

The temperature from the sensor.

The time at which MATLAB® receives temperature data from the sensor, specified as a datetime.

More About

collapse all

Code Generation Using MATLAB Function Block

  • Use readTemperature in a MATLAB Function block with the Simulink® Support Package for Arduino® Hardware to generate code that can be deployed on Arduino Hardware.

  • Timestamp returned is always in seconds.

Version History

Introduced in R2021a