11#include < ArduinoJson.h>
2- #include < Http.h>
3- #include < Ftp.h>
42#include < LowPower.h>
53#include < SD.h>
64
5+ #include < Http.h>
6+ #include < Ftp.h>
7+
78#include " examples/utils/logger.h"
89#include " examples/utils/valve.h"
910#include " examples/utils/sensor.h"
1011#include " examples/utils/arducam.h"
1112
1213#define SD_CS_PIN 3
13-
1414#define RST_PIN 8
1515#define RX_PIN 10
1616#define TX_PIN 9
17- #define DEBUG true
1817
1918#define BAUD_RATE 19200
2019#define MAX_RETRIES 10
2120
2221#define CLOSE_VALVE_STATE 0
2322#define OPEN_VALVE_STATE 1
2423
25- const char BEARER[] PROGMEM = " " ;
26- const char FTP_SERVER[] PROGMEM = " " ;
27- const char FTP_USER[] PROGMEM = " " ;
28- const char FTP_PASS[] PROGMEM = " " ;
24+ const char BEARER[] PROGMEM = " your.bearer " ;
25+ const char FTP_SERVER[] PROGMEM = " ftp.server " ;
26+ const char FTP_USER[] PROGMEM = " user " ;
27+ const char FTP_PASS[] PROGMEM = " pass " ;
2928const char BODY_FORMAT[] PROGMEM = " {\" w\" :{\" m\" :%d,\" t\" :%d,\" h\" :%d,\" mv\" :%d,\" sv\" :%d,\" st\" :%d}}" ;
30- const char ENDPOINT[] PROGMEM = " " ;
29+ const char ENDPOINT[] PROGMEM = " https://your.api.com " ;
3130const char OPEN_VALVE[] PROGMEM = " open-valve" ;
3231const char CLOSE_VALVE[] PROGMEM = " close-valve" ;
3332const char RESET[] PROGMEM = " reset" ;
@@ -47,7 +46,7 @@ void(*reset) (void) = 0;
4746void resetArudino (){
4847 info (F (" Reset!" ));
4948 delay (1000 );
50- resetArudino ();
49+ reset ();
5150}
5251
5352void sleep () {
@@ -58,14 +57,16 @@ void sleep() {
5857}
5958
6059unsigned int readLipoVoltage () {
61- HTTP http (BAUD_RATE, RX_PIN, TX_PIN, RST_PIN, DEBUG);
60+ HTTP http (BAUD_RATE, RX_PIN, TX_PIN, RST_PIN);
61+ http.wakeUp ();
6262 unsigned int voltage = 0 ;
6363 for (unsigned int i = 0 ; i < 10 ; ++i) {
6464 unsigned int cv = http.readVoltage ();
6565 if (cv > voltage) {
6666 voltage = cv;
6767 }
6868 }
69+ http.sleep ();
6970 return voltage;
7071}
7172
@@ -83,7 +84,7 @@ void uploadFile(const char *filename) {
8384 File dataFile = SD.open (filename);
8485
8586 if (dataFile) {
86- FTP ftp (BAUD_RATE, RX_PIN, TX_PIN, RST_PIN, DEBUG );
87+ FTP ftp (BAUD_RATE, RX_PIN, TX_PIN, RST_PIN);
8788 ftp.wakeUp ();
8889 ftp.putBegin (BEARER, filename, FTP_SERVER, FTP_USER, FTP_PASS);
8990
@@ -121,15 +122,15 @@ void uploadFile(const char *filename) {
121122}
122123
123124Result postEntry (char *response) {
125+ info (F (" SRAM: " ), false );
126+ info (availableMemory (), true );
127+
124128 unsigned int temperature = readTemperature ();
125129 unsigned int humidity = readHumidity ();
126130 unsigned int moisture = readMoisture ();
127131 unsigned int litioVoltage = readLitioVoltage ();
128132 unsigned int liPoVoltage = readLipoVoltage ();
129133
130- info (F (" SRAM: " ), false );
131- info (availableMemory (), true );
132-
133134 char body[70 ];
134135 Result result;
135136 sprintf_P (body, BODY_FORMAT,
@@ -145,7 +146,7 @@ Result postEntry(char *response) {
145146 strcpy_P (endpoint, ENDPOINT);
146147 info (endpoint);
147148
148- HTTP http (BAUD_RATE, RX_PIN, TX_PIN, RST_PIN, DEBUG );
149+ HTTP http (BAUD_RATE, RX_PIN, TX_PIN, RST_PIN);
149150 http.wakeUp ();
150151 http.connect (BEARER);
151152 result = http.post (endpoint, body, response);
@@ -157,6 +158,8 @@ Result postEntry(char *response) {
157158
158159void manageGarden () {
159160 char buff[32 ];
161+ buildImageName (buff, currentImage);
162+ Serial.println (buff);
160163 Result result = postEntry (buff);
161164
162165 if (result == SUCCESS) {
@@ -182,8 +185,8 @@ void manageGarden() {
182185
183186 buildImageName (buff, currentImage);
184187 if (takePicture (buff)){
185- currentImage++;
186188 uploadFile (buff);
189+ currentImage++;
187190 }
188191 }
189192 else {
@@ -213,8 +216,9 @@ void setup() {
213216 currentState = CLOSE_VALVE_STATE;
214217
215218 info (F (" Starting!" ));
216- openValve ();
217- closeValve ();
219+
220+ // openValve();
221+ // closeValve();
218222}
219223
220224/*
0 commit comments