/* This function loops forever --------------------------------------------*/ void loop() { if (millis() - old_time >= 500){ socValue = FUEL.getSoC(); PMIC.setInputCurrentLimit(500); //D0 to D7 for(uint8_t i = 0;i<8;i++){ digitalWrite(i,!digitalRead(i)); } //A0 to A5 for(uint8_t i = 10;i<17;i++){ digitalWrite(i,!digitalRead(i)); } //B0 to B5, C0 to C5 for(uint8_t i = 24;i<36;i++){ digitalWrite(i,!digitalRead(i)); } old_time = millis(); } if (millis() - pubSoc >= 5*60000){ Particle.publish("soc"+deviceName, String(FUEL.getSoC()), 120, PRIVATE); pubSoc = millis(); } }
/* This function is called once at start up ----------------------------------*/ void setup() { if (System.deviceID() == "5b0033000e51343035353132") deviceName = "-3g"; RGB.brightness(10); Serial.begin(9600); PMIC.begin(); FUEL.quickStart(); Serial.println(""); //D0 to D7 for(uint8_t i = 0;i<8;i++){ pinMode(i,OUTPUT); digitalWrite(i,LOW); } //A0 to A5 for(uint8_t i = 10;i<17;i++){ pinMode(i,OUTPUT); digitalWrite(i,LOW); } //B0 to B5, C0 to C5 for(uint8_t i = 24;i<36;i++){ pinMode(i,OUTPUT); digitalWrite(i,LOW); } electronMDM.setDebug(3); // enable this for debugging issues delay(3000); DEBUG_D("\e[0;36mHello from the Electron! Boot time is: %d\r\n",millis()); Particle.connect(); // blocking call to connect //Register all the Tinker functions Particle.function("digitalread", tinkerDigitalRead); Particle.function("digitalwrite", tinkerDigitalWrite); Particle.function("analogread", tinkerAnalogRead); Particle.function("analogwrite", tinkerAnalogWrite); Particle.variable("soc",&socValue,DOUBLE); Particle.variable("test","test-string",STRING); PMIC.setInputCurrentLimit(150); }
/* This function is called once at start up ----------------------------------*/ void setup() { RGB.control(true); RGB.color(0,0,255); delay(1000); Serial1.begin(9600); delay(200); power.begin(); delay(500); Serial1.println("Disabling PMIC watchdog timer"); power.disableWatchdog(); delay(50); //Serial1.println("Enabling OTG/PMID"); //power.enableOTG(); //delay(50); //Serial1.println("disabling buck regulator"); //power.disableBuck(); //delay(50); Serial1.print("power on returned:"); Serial1.println(electronMDM.powerOn("8934076500002587657")); //setupPower(); //delay(200); //fuel.sleep(); /* RGB.color(0,0,255); delay(200); RGB.color(0,255,0); delay(200); RGB.color(255,0,0); delay(200); RGB.color(0,0,0); power.begin(); delay(100); if (fuel.getVersion() == 3) { RGB.color(0,255,0); } else { RGB.color(255,0,0); } delay(2000); fuel.sleep(); delay(100); */ //electronMDM.powerOff(); //System.sleep(SLEEP_MODE_DEEP,60); //setupPower(); //electronMDM.setDebug(3); // enable this for debugging issues //delay(3000); //DEBUG_D("\e[0;36mHello from the Electron! Boot time is: %d\r\n",millis()); //Particle.connect(); // blocking call to connect //Register all the Tinker functions //Particle.function("digitalread", tinkerDigitalRead); //Particle.function("digitalwrite", tinkerDigitalWrite); //Particle.function("analogread", tinkerAnalogRead); //Particle.function("analogwrite", tinkerAnalogWrite); //Particle.function("sleep",sleep); //Particle.connect(); // blocking call to connect //Serial1.begin(9600); //Serial1.println("Setup complete"); //delay(1000); Serial1.print("Fuel Gauge Version Number: "); Serial1.println(fuel.getVersion()); delay(200); fuel.sleep(); delay(200); //Serial1.print("power off returned:"); //Serial1.println(electronMDM.powerOff()); }
void sleep_fuel_gauge() { FuelGauge gauge; gauge.sleep(); }