Diode Temperature Calibration - alanbjohnston/CubeSatSim GitHub Wiki

This page describes how to calibrate the Diode temperature sensor on the CubeSatSim Main board.

Materials:

You will need:

  • CubeSatSim v2 Main board (or a v1.3.2 STEM Payload board) either inside the CubeSatSim frame or just the board.
  • micro USB cable to connect Raspberry Pi Pico microcontroller on the Main board to your computer.
  • Computer with Arduino IDE installed so you can use the Serial Monitor. Other software to access the USB serial port will also work fine.
  • Somewhere which is either hotter or colder than room temperature so you can do the calibration at two different temperatures. For example, a refrigerator or freezer for a colder temperature, or outdoors for a hotter or colder than room temperature.

Steps

Plug the micro USB cable into your computer and into the Raspberry Pi Pico microcontroller on the Main board.

Img

If your CubeSatSim is in the frame, you might need to remove a solar panel on the -Y side:

TBD

Your CubeSatSim can be powered or up or down - it doesn't matter.

Run the Arduino IDE on your computer. If you haven't used it before, you will need to select a Board - Uno will work fine if you haven't installed the Pico board as described in: Adding New Sensors

Img

You will also need to select the Port by going under Tools then Port. Now, you should be able to run the Serial Monitor by clicking on the magnifying glass icon (in red box in previous screenshot). If your Pico is programmed, you will get a row of telemetry each second as the sensors are read and displayed:

Img

Note the temperature from the BME280 sensor, and the Diode Temperature, inside the red box in the previous screenshot. If these are significantly different ( more than 5 degrees C difference), then you need to calibrate.

You will need to do the calibration at two different temperatures for accuracy. You can do it at a higher or lower temperature, then again at room temperature. For instance, you could use outside as a higher or lower temperature. You could also use a refrigerator or freezer as a lower temperature. You can either have the USB cable plugged in while the board or CubeSatSim is at the temperature, or you can move the board from the temperature and quickly plug in the USB cable and do the calibration before the temperature changes too much. Then, you can wait until it goes back to room temperature and do the calibration again.

Calibration Procedure

When the CubeSatSim or Main board is at the higher or lower temperature, in the Arduino IDE Serial Monitor, type the letter S then click Send to transmit this character over the USB serial port to the Pico:

Img

You now should see the BME temperature and the Diode temperature approximately the same.

Now do the same procedure again after it is back to room temperature. IMPORTANT: the Pico needs to stay powered between the two calibration temperatures.

Img

When your CubeSatSim goes back to room temperature, the diode temperature should approximately read correctly (within a few degrees C).

This calibration is always done in pairs - two data points so simple linear interpolation can be done with the software to find temperatures in between. Any calibration replaces a previous calibration. The calibration data is stored in the flash memory of the Pico, so it will be present unless the Pico is reprogrammed or replaced.