Skip to content

Here can be found different builds of a ESP8266 project. Even if at the end is going to be a complete project, the integration of different libraries through the entire project is valuable source of knowledge

Notifications You must be signed in to change notification settings

u93/esp8266-arduino-recipies

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 

Repository files navigation

ESP8266 Wi-Fi Module (Bare Metal - No RTOS)

In the following examples will be showed the use of different libraries and protocols by the ESP8266 using Arduino Core and Arduino IDE

Arduino IDE Installation Process

  • Follow the Installation Process in Arduino Core Documentation
  • Make sure that the OS has the drivers to use the USB-UART adaptor
    • If using macOS can install this software

ESP8266 Wiring and Power Supply (NOT READY YET)

Flash Firmware to ESP8266 (Subject to changes)

  • ESP8266 has to be set in BOOTLOADER mode, for this to happen the ESP8266 needs to be powered up with GP 0 pin set to "ground" in order to set it in BOOTLOADER mode.
    • If you have a firmware already uploaded you can confirm that the Wi-Fi module is ready to receive a new firmware due to "Serial Logs" absence.
    • In some cases you will see some errors like "espcomm_upload_mem failed" twice this could be the ESP9266 is not set in BOOTLOADER mode.
    • Always make sure that in Tools/Port of the Arduino IDE you have selected the USB Port that has connection to the Wi-Fi module.
      • In Linux (Ubuntu in this case)or macOS could exist "lack of permissions to use the USB port", in that case you will see an error like "espcomm_open failed" and "espcomm_upload_mem failed". In that case the next command has to be executed every time that you plan to set a new firmware using the Serial Port "sudo chmod -R 777 /dev/ttyUSB0" (if using Ubuntu) or "sudo chmod 777 /dev/tty.SLAB_USBtoUART" (if using macOS) changing "ttyUSB0" for you actual serial port with connection to the ESP8266

Integration examples (Subject to improvements)

  • dweet.io
    • To learn about Dweet visit the website.
    • To see a way of how to implement review the next example.
  • API Gateway
    • To use API Gateway from the ESP8266 side is only necessary to use WiFiClientSecure library for HTTPS communication.
    • A deployment of API Gateway will be needed in order to test the functionality.
    • To see a way of how to implement review the next example.
  • AWS IoT Core
    • Use of AWS-SDK for ESP8266 for use of IoT Core.
    • To see a way of how to implement review the next example.
  • S3
  • MQTT Mosquitto Broker
  • WebSockets Communication
  • Internal Web Server and access using RESTful APIs

Network Protocols

Scheduling Events

OTA Upgrades

  • Follow OTA documentation on Arduino Core for understanding on how OTA Upgrade works and the several ways to do it.
  • Read the following tutorial that acts as both example and documentation.
  • Here can be found an Example Code plus a tutorial on how implement OTA functions and how to use them.

SPIFFS

  • SPIFFS stands for SPI Flash File System, and can be used in the ESP8266 to store files like certificates for secure communication.
  • For information about how the File System works, itś limitations and how to implement ypur code visit here.
    • Information about your chip flash size can be obtained using ESP-specific SDK as hown in example.

Espressif Documentation

Internal SDK use

  • Arduino Core for ESP8266 allows the use for ESP-specific APIs with the objective of get information from board and firmware, and trigger certain functionalities like deepsleep and measuring power supply voltage. The information on how to use these ESP-specific APIs can be found in Arduino Core Documentation.

About

Here can be found different builds of a ESP8266 project. Even if at the end is going to be a complete project, the integration of different libraries through the entire project is valuable source of knowledge

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages