OpenSprinkler › Forums › Comments, Suggestions, Requests › Opensprinkler on ESP8266 › Reply To: Opensprinkler on ESP8266
TeguhTeknisi
Hi @pbecchi
Thanks for the reply.
I Will Use 8 Channel Relay Module, so it have LOW On,
And I will use OLED SSD1306,
it will glad if could change the code.
I will try to compile it again with Arduino IDE 1.8.3 64 bit + esp8266 v2.3.0 on Kubuntu Linux 17.04.
Because Linux is case sensitif, and using / for path, i got a lot of work when compile your.
FYI, I can compile OpenSprinkler-Firmware from Ray commit be0369d , without much work.
my arduino library is only:
Adafruit_Circuit_Playground, Adafruit-GFX-Library, arduino_424003, Firmata, Robot_Control, Robot_IR_Remote, Robot_Motor, SSD1306
With just that library, i can compile OpenSprinkler-Firmware and upload it with this step:
– then estrak it and rename the folder OpenSprinkler-Firmware-master to OpenSprinkler
– then rename mainArduino.ino to OpenSprinkler.ino
– after that, i put OpenSprinkler folder above to ~/Arduino/
– Download https://github.com/squix78/esp8266-oled-ssd1306/releases version 3.2.7, extract it and rename the folder to SSD1306
then move folder SSD1306 to ~/Arduino/libraries/
– then open OpenSprinkler.ino from the folder ~/Arduino/OpenSprinkler/ with Arduino IDE
– then Compile and Upload it to WeMos D1 Mini
For your mod , Here my step by step:
– I get github ForOS_Bee2_0-OS_Solar-OS_3_0 commit 03f15ae on 7 Jun 2017
– Then rename the folder OpenSprinkler_Arduino_V_2_1_6 to OpenSprinkler_ESP8266_V_2_1_6
– Then move the folder OpenSprinkler_ESP8266_V_2_1_6 to ~/Arduino/
– Then Go to ~/Arduino/OpenSprinkler_ESP8266_V_2_1_6/
– Change the Pin.h to proto 1
#define PROTO 1 ///////////////////////board type selection////////////
/////////////////////////////////////////////////////////////////////////
//////////////////////////////proto board 1////////////rear garden//////////////////////////////////
#if PROTO==1 // shift register
#define SDA_PIN D5 //:redefined
#define SCL_PIN D2 //:redefined
//#define OPENSPRINKLER_ARDUINO_W5100 //:required for ESP8266 not using shift registers
#undef OPENSPRINKLER_ARDUINO_DISCRETE //:shift registers
#define SHIFT_REG
#define BUTTON_ADC_PIN A0 // A0 is the button ADC input //:analog buttons
#define LCDI2C //:i2c LCD
#define SPIFFSDFAT //:no sd ....EMULATED ON fLASH
#define ADDITIONAL_SENSORS ESP8266_C //:additional sensors to ESP
//#undef EEPROM_ESP //modify in libsel.h EEPROM is now on flash
#elif PROTO==2
as you can see, in the Pin.h for Proto = 1 using #define SPIFFSDFAT
So i will delete it.
#define PROTO 1 ///////////////////////board type selection////////////
/////////////////////////////////////////////////////////////////////////
//////////////////////////////proto board 1////////////rear garden//////////////////////////////////
#if PROTO==1 // shift register
#define SDA_PIN D5 //:redefined
#define SCL_PIN D2 //:redefined
//#define OPENSPRINKLER_ARDUINO_W5100 //:required for ESP8266 not using shift registers
#undef OPENSPRINKLER_ARDUINO_DISCRETE //:shift registers
#define SHIFT_REG
#define BUTTON_ADC_PIN A0 // A0 is the button ADC input //:analog buttons
#define LCDI2C //:i2c LCD
#define ADDITIONAL_SENSORS ESP8266_C //:additional sensors to ESP
//#undef EEPROM_ESP //modify in libsel.h EEPROM is now on flash
#elif PROTO==2
– Remove file EtherCardW5100_o.cpp and EtherCardW5100_o.h
– Open File OpenSprinkler_ESP8266_V_2_1_6.ino using Arduino IDE
Then Hit Verify….