mirror of
https://github.com/esp8266/Arduino.git
synced 2025-06-16 11:21:18 +03:00
74 lines
2.7 KiB
Plaintext
74 lines
2.7 KiB
Plaintext
Arduino IDE with ESP8266 support
|
|
================================
|
|
|
|
This is an early beta. Things might not work as expected, please do report any bugs you find.
|
|
|
|
What works
|
|
----------
|
|
|
|
- pinMode, digitalRead, digitalWrite
|
|
- analogRead
|
|
- shiftIn, shiftOut
|
|
- millis, micros, delay, delayMicroseconds
|
|
- yield (call that once in a while in long loops; delay() works as well)
|
|
- Serial
|
|
Only 8n1 is supported right now. flush() doesn't work, and there is no proper TX buffer.
|
|
When sending long strings (>128 chars at a time) something might get lost.
|
|
There will be some diagnostic output from WiFi libraries unless you call Serial.begin.
|
|
|
|
- EEPROM
|
|
This is a bit different from standard EEPROM class. You need to call EEPROM.begin(size)
|
|
before you start reading or writing, size being the number of bytes you want to use.
|
|
EEPROM.write does not write to flash immediately, instead you must call EEPROM.commit()
|
|
whenever you wish to save changes to flash. EEPROM.end() will also commit, and will
|
|
release the RAM copy of EEPROM contents.
|
|
|
|
- I2C (Wire library)
|
|
Only master mode works, and I haven't tested if Wire.setClock gives correct frequency.
|
|
Before using I2C, you need to set pins you will use for SDA and SCL by calling
|
|
Wire.pins(int sda, int scl), i.e. Wire.pins(0, 2); on ESP-01.
|
|
|
|
- WiFi (ESP8266WiFi library)
|
|
This is mostly similar to WiFi shield library. Differences include:
|
|
* WiFi.mode(m): set mode to WIFI_AP, WIFI_STA, or WIFI_AP_STA.
|
|
* WiFi.softAP(ssid) or WiFi.softAP(ssid, passphrase) to set up an AP.
|
|
* WiFi.macAddress(mac) is for STA, WiFi.softAPmacAddress(mac) is for AP.
|
|
* WiFi.localIP() is for STA, WiFi.softAPIP() is for AP.
|
|
* WiFi.RSSI() doesn't work
|
|
* WiFi.scanNetworks() doesn't work yet
|
|
WiFiServer and WiFiClient behave mostly the same way as with WiFi shield library.
|
|
|
|
- Other libraries that don't rely on low-level access to AVR registers.
|
|
|
|
- Upload via serial port
|
|
Select "esptool" as a programmer, and pick the correct serial port.
|
|
You need to put ESP8266 into bootloader mode before uploading code (pull GPIO0 low and toggle power).
|
|
|
|
What is not done yet
|
|
--------------------
|
|
|
|
- pin interrupts (attachInterrupt, detachInterrupt)
|
|
- analogWrite (PWM)
|
|
- pulseIn, pulseOut
|
|
- SPI
|
|
- UDP
|
|
- I2C slave mode
|
|
- Serial modes other than 8n1
|
|
- Serial TX buffer
|
|
- WiFi.scanNetworks
|
|
- WiFi.RSSI
|
|
- Upload sketches via WiFi
|
|
- Samples for all the libraries
|
|
|
|
|
|
License and credits
|
|
-------------------
|
|
|
|
Arduino is licensed under GPL, with Arduino core libraries licensed under LGPL.
|
|
This build includes an xtensa gcc toolchain, which is also under GPL.
|
|
Espressif SDK included in this build is under Espressif Public License.
|
|
|
|
ESP8266 port contributed by Ivan Grokhotkov, igrokhotkov at gmail dot com.
|
|
Drop me a line if you find some bugs not mentioned here!
|
|
|