PlatformIO - markusrudolf/espurna GitHub Wiki
You can check the getting started page in the PlatformIO site to know how to setup the environment for your platform. There are also some videos on YouTube about it.
PlatformIO will take care of the library dependencies. The first time you run the build process it will fetch and install all the libraries required by ESPurna in the specified versions.
- Benoit Blanchon's ArduinoJson
- Marvin Roger's AsyncMqttClient [1]
- Pascal Kurtansky's Brzo I2C [2]
- The PatternAgents (et al.) Embedis
- Oscar Rovira's fork of Peter Lerup ESPSoftwareSerial [3]
- Hristo Gochkov's ESPAsyncTCP
- Hristo Gochkov's ESPAsyncWebServer
- Mark Szabo (et al.) IrRemoteES8266 [4]
- Myles Eftos's mDNSresolver [5]
- German Martin's NtpCLientLib
- Paul Stoffregen (et al.) OneWire [6]
- Mariusz Kacki's PMS [7]
- Nick O'Leary's PubSubClient [1]
- Randy Simons' RemoteSwitch [8]
- My fork of Michael Maregolis & Paul Stoffregen's Time
And my own libraries:
Notes in the list above:
1 The firmware will be compiled either with AsyncMqttClient or PubSubClient, depending on the MQTT_USE_ASYNC setting. Default to use AsyncMqttClient.
2 The firmware will be compiled either with Wire or Brzo I2C, depending on the I2C_USE_BRZO setting. Defaults to use the standard Wire library.
3 Required when either MHZ19_SUPPORT, PMSX003_SUPPORT or V9261F_SUPPORT are set to 1 (sensor).
4 Required for some LED controller with IR receivers.
5 Required when MDNS_CLIENT_SUPPORT is set to 1.
6 Required when DALLAS_SUPPORT is set to 1 (sensor).
7 Required when PMSX003_SUPPORT is set to 1 (sensor).
8 Required when RF_SUPPORT is set to 1.
9 Required when ALEXA_SUPPORT is set to 1. This is the default value.
10 Required when HLW8012_SUPPORT is set to 1 (sensor).
11 Required when using LIGHT_PROVIDER_MY92XX.
12 Required when NOFUSS_SUPPORT is set to 1.
These libraries are automatically installed once you first try to build the project. But if you are updating to a newer version it's always a good idea to manually force them to update:
> pio lib update
Once you have all the code, you can check if it's working by:
> pio run -e itead-sonoff-basic
If it compiles you are ready to flash the firmware.
Wire your board (check the Hardware page) and flash the firmware (with upload
):
> pio run -t upload -e itead-sonoff-basic
(or any other environment, depending on the board you are working with).