Introducing ESPToy 1.2 (with Lua Firmware)
A little while back I released the very first version of ESPToy — a ESP8266 Development Board with a few useful on-board components like color LED, button, and temperature sensor.
It has a built-in ATmega644 microcontroller, and pin headers for plugging in a ESP-01 through-hole WiFI module. Shortly after that, I discovered the Lua firmware (named nodemcu) for ESP8266. At first I didn’t pay much attention — Lua is a new language that I’ve never used before, and I wasn’t sure if it’s worth my time learning about it. At the same time I was getting tired of the AT firmware (the original firmware that comes with ESP), partly because it’s not very stable, and partly because it’s complicated to use and involves an extra microcontroller to communicate with it.
Over time I saw increasing development and community support on the Lua firmware. So I became more curious. The final push came recently: there was a supply chain problem of the ATmega644 microcontroller. I was about to purchase a new batch of ESPToy 1.1, but the microcontroller is difficult to source from my suppliers in China. I decided that I should give the Lua firmware a try — if it works, I don’t have to use an extra microcontroller any more!
That’s where I wish I had known it earlier — the Lua firmware is, in my opinion, all around better than the AT firmware. It’s easy to use, especially for writing simple web servers; it’s more stable, and best of all, it runs Lua scripts directly on the ESP module, removing the need to use an extra microcontroller. So here comes ESPToy 1.2, with a surface mount ESP8266 module, pre-flashed with the Lua firmware and a start-up demo (WiFi color LED demo)
Pin Definitions. ESPToy 1.2 internally assigns the following pins for the built-in components:
- Lua pin 2 (hardware GPIO4): Red LED
- Lua pin 1 (hardware GPIO5): Green LED
- Lua pin 4 (hardware GPIO2): Blue LED
- Lua pin 3 (hardware GPIO0): Button (active low)
Note that these pin names refer to the pin indices defined by the Lua firmware. These are different from the hardware GPIO pin numbers.
For More Detail:Introducing ESPToy 1.2 (with Lua Firmware)