after few months of hard development, I'm happy to give you an information of my new library to interface ESP8266 with any microcontroller and/or PC using AT commands. I made simple name for lib, ESP-AT Library.
In general, ESP-AT library was designed with RTOS-only in mind and for devices where memory footprint is not huge limitation. Detailed features list is available below:
- Supports latest ESP8266 and ESP32 AT commands software
- Platform independent and very easy to port
- Development of library under Win32 platform
- Provided examples for ARM Cortex-M or Win32 platforms
- Written in C language (C99)
- Allows different configurations to optimize user requirements
- Supports implementation with operating systems with advanced inter-thread communications
- Currently only OS mode is supported
- 2 different threads handling user data and received data
- First (producer) thread (collects user commands from user threads and starts the command processing)
- Second (process) thread reads the data from ESP device and does the job accordingly
- Allows sequential API for connections in client and server mode
- Includes several applications built on top of library:
- HTTP server with dynamic files (file system) support
- MQTT client for MQTT connection
- Embeds other AT features, such as WPS, PING, Hostname
Available examples and development
Library is developed under Windows environment and all the examples come by default as Visual Studio projects. What is more interested for user on this forum is for sure something you can use on embedded STM32 device.
ST offers many development kits with ESP-01 connector included
- STM32L496G-Discovery (with extension STMod+ connector)
- STM32L4R9-Discovery (with extension STMod+ connector)
Library includes examples for boards marked in green and they come with Atollic TrueSTUDIO (GCC), Keil uVision (MDK-ARM) and IAR development tools.
To get a list of examples and corresponding pinout for each board, please refer to this link.
Source code and documentation
Feel free to report a bug and/or ask a question if there are any problems and/or suggestions.