Regenerating PPM signal based on distances from ultrasonic sensors, ESP8266 for connectin via wifi. Autonomous quadcopter behaviour, autonomou height holding. Flying direction based on front and back ultrasonic sensors.

Dependencies:   ConfigFile HCSR04 PID PPM2 mbed-rtos mbed

Revision:
11:002927b2675d
Parent:
10:bb9c778f8e3e
Child:
13:33024b5880b3
--- a/hardware.h	Fri Oct 27 09:29:29 2017 +0000
+++ b/hardware.h	Fri Oct 27 10:30:06 2017 +0000
@@ -1,5 +1,5 @@
-#ifndef HARDWARE
-#define HARDWARE
+#ifndef HARDWARE_H
+#define HARDWARE_H
 
 #include "mbed.h"
 #include "PpmRegen.h"
@@ -7,7 +7,19 @@
 #include "hcsr04.h"
 #include "ConfigFile.h"
 
+
+void loadConfigFile(void);
+void writeSettingsToConfig(void);
+void writeErrorLog(char *message);
+void ConvertToCharArray(float number);
+
 Serial pc(USBTX, USBRX); // tx, rx
+PID* _groundDistance;
+HCSR04* _sonic;
+PpmRegen* _ppmRegen;
+
+ConfigFile _configFile;
+LocalFileSystem local("local");
 
 Thread serverThread;
 Thread distanceThread;
@@ -19,23 +31,16 @@
 PwmOut*         _yaw =              new PwmOut(p24);
 PwmOut*         _aux1 =             new PwmOut(p25);
 PwmOut*         _aux2 =             new PwmOut(p26);
-PpmRegen* _ppmRegen;
 
-PID* _groundDistance;
 
-HCSR04* _sonic;
-
-ConfigFile _configFile;
-LocalFileSystem local("local");
 char*  _str = new char[1024];
-
 float _P = 0;
 float _I = 0;
 float _D = 0;
 
-void loadConfigFile(void);
-void writeServerSettingsToConfig(void);
-void ConvertToCharArray(float number);
+
+
+
 
 void loadConfigFile(void){
     //reading configFile
@@ -50,7 +55,7 @@
         
 }
 
-void writeServerSettingsToConfig(void){
+void writeSettingsToConfig(void){
     ConvertToCharArray(_P);
     _configFile.setValue("P", _str);    
     ConvertToCharArray(_I);
@@ -62,6 +67,15 @@
     
 }
 
+
+void writeErrorLog(char *message){
+    FILE *fp = fopen("/local/errorlog.txt", "w");  
+    fprintf(fp, message);
+    fclose(fp);
+    
+}
+
+
 //Converts float to char array
 void ConvertToCharArray(float number)
 {