 // NOTE if this is disabled, everything runs on battery power, even in daytime.
 void enableSolar() {
   Serial.println("Solar panel ENABLED via enableSolar();");
-  pinMode(PIN_SOLAR_DISABLE, OUTPUT);                 // prepares Solar Panel control pin
+  pinMode(PIN_SOLAR_DISABLE, INPUT);                 // prepares Solar Panel control pin
   digitalWrite(PIN_SOLAR_DISABLE, SOLAR_ENABLED);     // turns Solar Panel on
 
 }

MPL3115A2 myPressure;            //Sparkfun pressure sensor
HTU21D myHumidity;               //Sparkfun humidity sensor

//Hardware pin definitions, weather station
//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
// digital I/O pins
const byte WSPEED = 3;
const byte RAIN = 2;
const byte STAT1 = 7;
const byte STAT2 = 8; //TODO: This pin (second status LED) seems wrong

const byte PIN_ETH_DISABLE = 8; // Ethernet power control; on=LOW, off=HIGH
const byte ETH_DISABLED = HIGH;

//    weatherString += String(charComma);
//    weatherString += String(freeRam());

  // 20: print raw wind direction ADC reading, to see why 270 degree sometimes comes back as "invalid"
  if (true) {
    weatherString += String(charComma);
    weatherString += String("wd=");
