FlipperZero-IFTTT_WiFi_Module.ino 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #include <Arduino.h>
  2. #include "APMode.h"
  3. #include "IFTTTMode.h"
  4. #include "Global.h"
  5. #include "eepromclass.h"
  6. APMode apmode_obj;
  7. IFTTTMode iftttmode_obj;
  8. EEPROMclass eeprom_obj;
  9. #define MODULE_CONTROL_COMMAND_SEND 's'
  10. #define MODULE_CONTROL_COMMAND_REBOOT 'r'
  11. #define MODULE_CONTROL_COMMAND_CONFIG_ON 'c'
  12. #define MODULE_CONTROL_COMMAND_CONFIG_OFF 'd'
  13. #define MODULE_CONTROL_COMMAND_RESET 'a'
  14. #define FLIPPERZERO_SERIAL_BAUD 115200
  15. int runMode = 0;
  16. void CheckForFlipperCommands()
  17. {
  18. while(Serial.available() > 0)
  19. {
  20. int incommingCommand = Serial.read();
  21. if(incommingCommand == MODULE_CONTROL_COMMAND_SEND)
  22. {
  23. iftttmode_obj.IFTTTCommand();
  24. }
  25. if(incommingCommand == MODULE_CONTROL_COMMAND_REBOOT)
  26. {
  27. ESP.restart();
  28. }
  29. if(incommingCommand == MODULE_CONTROL_COMMAND_CONFIG_ON)
  30. {
  31. eeprom_obj.writeEEPROMint(0,1);
  32. delay(10);
  33. ESP.restart();
  34. }
  35. if(incommingCommand == MODULE_CONTROL_COMMAND_CONFIG_OFF)
  36. {
  37. eeprom_obj.writeEEPROMint(0,0);
  38. delay(10);
  39. ESP.restart();
  40. }
  41. if(incommingCommand == MODULE_CONTROL_COMMAND_RESET)
  42. {
  43. eeprom_obj.clearEEPROM();
  44. }
  45. }
  46. }
  47. void setup() {
  48. Serial.begin(FLIPPERZERO_SERIAL_BAUD);
  49. eeprom_obj.RunSetup();
  50. runMode = eeprom_obj.readEEPROMint(0);
  51. delay(10);
  52. if(runMode == 0){
  53. iftttmode_obj.RunSetup();
  54. }else if(runMode == 1){
  55. apmode_obj.RunSetup();
  56. }
  57. }
  58. void loop() {
  59. CheckForFlipperCommands();
  60. if(runMode == 1){
  61. apmode_obj.APCommand();
  62. }
  63. }