lorawan/sodaq_one/sodaq_one.ino

122 lines
2.2 KiB
Arduino
Raw Normal View History

2016-10-24 19:34:02 +00:00
#include <Arduino.h>
#include <Wire.h>
#include <math.h>
2016-10-24 19:34:02 +00:00
#include "nsarduino.h"
#define debugSerial SerialUSB
void signal_loop_start()
{
blink(30); delay(50);
blink(30); delay(50);
blink(30); delay(50);
}
2016-11-12 19:01:48 +00:00
#define TEMP_PIN 2
#define LOUDNESS_PIN 0
#define BUZZER_PIN 2
#define WATER_SENSOR_PIN 6
2016-11-02 16:38:56 +00:00
int cnt;
2016-10-24 19:34:02 +00:00
void setup() {
while ((!SerialUSB) && (millis() < 10000)){
// Wait 10 seconds for the Serial Monitor
}
/* Enable the pins 2/3, 6/7 and 8/9 */
pinMode(11, OUTPUT);
digitalWrite(11, HIGH);
setupLED();
2016-11-12 19:01:48 +00:00
// setupWater(WATER_SENSOR_PIN);
// setupBuzzer(BUZZER_PIN);
gpsSetup();
// setupBuzzer();
2016-11-02 16:38:56 +00:00
// setupCompass();
// setupSunLight();
2016-10-24 19:34:02 +00:00
loraSetup();
2016-11-02 16:38:56 +00:00
cnt = 0;
2016-10-24 19:34:02 +00:00
}
String tmps;
2016-11-02 16:38:56 +00:00
float tmp;
2016-10-24 19:34:02 +00:00
2016-11-02 16:38:56 +00:00
#define SLEEPTIME 10000
2016-11-12 19:01:48 +00:00
#define LOUDNESS_AVG 60
2016-11-02 16:38:56 +00:00
int loudnesses[LOUDNESS_AVG];
2016-10-24 19:34:02 +00:00
void loop() {
signal_loop_start();
2016-11-12 19:01:48 +00:00
/* if(hasWater(WATER_SENSOR_PIN)) { */
/* debugSerial.println("Having water"); */
/* loraSend(getWater(WATER_SENSOR_PIN)); */
/* buzz(BUZZER_PIN, 5000); */
/* } else { */
/* loraSend(getWater(WATER_SENSOR_PIN)); */
/* debugSerial.println("it's dry"); */
/* } */
2016-11-02 16:38:56 +00:00
// loraSend(getSunLight());
// loraSend(getTempHumidHDC1000());
// loraSend(getCompass());
2016-10-24 19:34:02 +00:00
2016-11-02 16:38:56 +00:00
2016-11-12 19:01:48 +00:00
if((tmps = gpsGetPostion(120)) != "") {
loraSend(tmps);
}
2016-11-03 07:08:08 +00:00
2016-11-12 19:01:48 +00:00
sendIntAsString("battery=", getBatteryVoltage());
/* if(cnt < LOUDNESS_AVG) { */
/* loudnesses[cnt] = readLoudness(LOUDNESS_PIN); */
/* debugSerial.println("temploudness=" + String(loudnesses[cnt])); */
/* cnt++; */
/* } else { */
/* tmp = 0; */
/* for(cnt = 0; cnt < LOUDNESS_AVG; cnt++) { */
/* tmp += loudnesses[cnt]; */
/* } */
/* tmp = tmp / (float) (cnt+1); */
/* sendIntAsString("battery=", getBatteryVoltage()); */
/* sendFloatAsString("loudness=", tmp); */
/* sendFloatAsString("temperature=", getTemperature(TEMP_PIN)); */
/* cnt = 0; */
/* } */
2016-11-03 07:08:08 +00:00
2016-11-02 16:38:56 +00:00
delay(SLEEPTIME);
2016-10-24 19:34:02 +00:00
}
/* Node = 2
48
48
48
52
65
51
48
66
hex: 3030303441333042
*/
/* temp / humidity code (not functional)
/* humid / temperature */
/*
*/