 {  
   nh.initNode();
   nh.advertise(pub_temp);
+  nh.advertise(pub_count);
   nh.subscribe(sub_temp);
-
-  unsigned int sensor_count = 0;
+  nh.subscribe(sub_count);
+  
+  uint32_t sensor_count = 0;
   // Create analog temperature sensor
   TemperatureSensor analog_sensor;
   create_sensor(sensor_count, ANALOG_PIN, TYPE_ANALOG, &analog_sensor);

}

static void handle_analog(TemperatureSensor* sensor) {
  unsigned int raw_voltage = analogRead(sensor->pin_addr);
  float volts = raw_voltage / 205.0f;
  float celsius = 100.0 * volts - 50;
  sensor->curr_temp = celsius;

} OneWireData;

typedef struct temperature_sensor {
  uint32_t id;
  float prev_temp;
  float curr_temp;
  uint32_t type;
  uint32_t pin_addr;
  uint32_t sample_rate;
  uint32_t sample_count;
  unsigned long publisher_timer;
  OneWireData* one_wire_data;
} TemperatureSensor;
