  }
 
 
+//current_sense_raw=analogRead(CURRENT_SENSE);  need to figure out how to read this only when the PWM is on.
+ 
  //block interrupts while retreiving the temperature values.
- noInterrupts();
+  noInterrupts();
  int16_t adc_copy=adc_value;
  int16_t temperature_copy=temperature_value;
  int16_t current_sense_raw_copy = current_sense_raw;
- Setpoint = enc; //set the PID loop to our encooder knob value
+ if (in_cradle)
+ {
+  Setpoint = 0; //turn off the power while in the cradle.
+  //pixels.setPixelColor(0, pixels.Color(0,0,10)); // Blue
+ }
+ else
+ {
+  Setpoint = enc; //set the PID loop to our encoder knob value
+  //pixels.setPixelColor(0, pixels.Color(10,0,0)); // Red
+ }
+ //pixels.show(); 
+ //enable interrupts
  interrupts();
  
  //convert to degrees C

 * 
 * MIT License. See LICENSE file for details. 
 */
 
#include <SPI.h>
#include <Wire.h>
#include <EEPROM.h>

#include <Adafruit_GFX.h>       //https://github.com/adafruit/Adafruit-GFX-Library
#include <Adafruit_SSD1306.h>   //https://github.com/adafruit/Adafruit_SSD1306

// The main program 
void loop(void)
{
  static bool in_cradle;
  
  static long next_millis = millis()+1000; 

 int16_t enc = knob.read()>>1;
 if (enc<0 || fastDigitalRead(ENC_BUTTON)==false)
 {
    knob.write(0);
