Menu

Low temperature operation

2017-01-26
2017-06-24
  • David Stephenson

    I am making a device that will monitor temperature and pressure in my hold luggage during a trans-atlantic flight.
    As a test I put it in my freezer and it froze! Freezers operate at about -20°C which should be well within the operating range of all the electronics (in fact the display froze at about -2°C).
    There is a 16F18326 (timing is using a clock crystal) a LPS22 temperature and pressure sensor and an LCD display.
    All devices say they are good to -20°C. Can anybody think of why it is freezing.

     
  • Anobium

    Anobium - 2017-01-26

    Not experienced this. My advice would be to a series of SWDT checkpoints saving the checkpoints to reprimanded or send to external data logger. This could help isolate issue.

    Hopefully, someone has a better answer.

     
  • William Roth

    William Roth - 2017-01-26

    The "Absolute Maximim" operating temperature of a NewHaven LCD display is -20C. I imagine that other have a similar spec. But "freezing" at -2C seems problematic.

    My guess is that the "freezing" may be moisture related. Was the board/Device in a sealed water tight enclosure ? Does the board have a conformal coating? Lots of stuff at play here.

     
  • Peter

    Peter - 2017-01-30

    When you say the display froze, what do you mean? Did it crack/break or did it just temporarily stop working until it warmed up?

    I have a 16F18326 and an OLED display. I'm going to make up a circuit and freeze it now :)

     

    Last edit: Peter 2017-01-30
  • Peter

    Peter - 2017-01-30

    Totally unscientific experiment here.
    I knocked up a circult on breadboard with with following:
    - PIC16F18326
    - SSD1306 OLED display
    - LED
    - 3xAA NiMH batteries

    The code is attached. Every 5 seconds it takes a temperature reading, puts it on the OLED and flashes the LED.
    Provided my code is correct, the temperature reading is taken from the core of the PIC. This is done by setting the ADC input to Temperature Indicator Module (see section 16 of the datasheet), then reading the ADC. (This required a hack of the a-d.h, adding #define ANTEMP 61 at the start).

    Initially, I put the circuit in the oven. The reading seemed to increase when the oven was turned on, then decrease when the oven was off and the door opened.
    I then put the circuit in the freezer, with a pot of water. The reading dropped dramatically and after 25 minutes it was showing 0 but everything was still running.
    After 60 minutes the water is froze over the top and everything is still running.

    Edit: https://www.youtube.com/watch?v=HLoyHuxRyE8

    I'll check again after leaving it overnight.

     

    Last edit: Peter 2017-01-30
    • Peter

      Peter - 2017-01-31

      After 24 hours in the freezer...it's working fine.
      To be honest, I was expecting the NiMH cells to give up in the cold because based on past experience the capacity of NiMH cells is much lower when they are below freezing.

      It's warming up now. There is condensation all over it and while it was OK to start with, the OLED is flickering every now and then. I'm sure it will be fine once it's warmed up and dried out.
      Youtube: https://youtu.be/n0DgWnVT9UQ

      This doesn't solve the original question though. My test confirms that the PIC16F18326 is good down to really low temperatures, however it could still be any of the other components.
      I'd suggest adding a heartbeat LED to check whether the PIC is still running, and there is power in the batteries.

       
      • Chris Roper

        Chris Roper - 2017-01-31

        I think you just invented the IcePIC Peter :)

         
  • CDRIVE

    CDRIVE - 2017-01-30

    I love this thread! Peter, I don't think NASA could have tortured that circuit better than you have.... Well maybe if they tossed in a cup of salt! ;-)

    Chris

     
  • Anobium

    Anobium - 2017-01-30

    Interesting.

    I did code review of lcd.h. To my surprise I found the following:

    Lcdwritebyte( 4 )
    BeChilled:
    If veryCold=true then goto  BeChilled
    

    So, my test scenerio. I put on my Earth, Wind and Fire outfit. I thought I looked cool but I actually looked pretty chilled. And, as expected the wife went cold. This did cause a freeze. The code operated as expected.

    Anyone else suffered this sort of crazy lockup?

     
  • Marc in the Dark

    Lol :-)

     
  • David Stephenson

    I tried out the circuit and it worked. So either it was a moisture problem or my hold baggage did not go below zero. I will analyse the data when I return. I just hope I've coded the data collection correctly as I had no time to do a complete test.
    The 'freeze' was the data stopped updating the lcd was still giving a static reading (midas I2C display). It may well have been a moisture problem.

     
  • David Stephenson

    Just to report that I have narrowed down the problem to the crystal oscillator*. I have changed the crystal and tried different capacitors and it now goes down to -17°C before stopping, but will restart when the temperature rises.
    * it's a 32.768 kHz clock crystal which claims to be good to -20°C

    As for the data the pressure data did not record properly, but the temperature showed that there was no extremes (lowest in flight was 14 °C) in fact the lowest temperature was on the ground before the bags were loaded on the plane (about 4°) which is strange as the ambient temperature that day was over 30.
    I am going to repeat the experiment and this time I have had time to test so it should work.

     
  • David Stephenson

    Finally got it to work (well sort of it's good to the nearest hPa in pressure). So here is the graph I got of pressure in the baggage hold of a plane (conclusion it is pressurized to a about 7500 feet).
    The baggage hold was also heated as no adverse temperatures were recorded.

     

    Last edit: David Stephenson 2017-06-20
  • Anobium

    Anobium - 2017-06-24

    Damn cool!!

     
  • David Stephenson

    Thanks! The steps are real and are 10millibar. So the pressure rapidly went to 806 mb then 796,786,776.
    The peak at the left is a short hop before the main flight and the wiggles on the right are hills driving from the airport (M23/M25 etc)

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.