 OutputPin ledPin(Board::LED);
 
 // Print the current temperature reading
-void print_temperature_P(const char* prefix, DS18B20* thermometer)
+void print_temperature_P(const char* prefix, DS18B20& thermometer)
 {
-  FixedPoint temp(thermometer->get_temperature(), 4);
+  FixedPoint temp(thermometer.get_temperature(), 4);
   int16_t integer = temp.get_integer();
   uint16_t fraction = temp.get_fraction(4);
   trace << prefix << integer << '.';

  ledPin.toggle();
  outdoors.convert_request();
  indoors.read_scratchpad();
  print_temperature_P(PSTR("indoors = "), &indoors);
  ledPin.toggle();
  SLEEP(1);


  ledPin.toggle();
  basement.convert_request();
  outdoors.read_scratchpad();
  print_temperature_P(PSTR(", outdoors = "), outdoors);
  ledPin.toggle();
  SLEEP(1);

