ESP8266 Wi-Fi – Getting Started

I came across these tiny Wi-Fi modules thanks to Brett Balogh’s Wilderness Wireless project presented at Radical Networks. During a residency at Signal Culture, during which I wanted to make a wearable network point, I had time to play with one. It took me a while to get started so I’m sharing my super basic intro here.

I just bought an Adafruit Feather Huzzah, an all in one development board that could be hooked up to usb. Before I could interact with it I needed to install the USB > COM drivers. I followed these instructions that tell you where to download the drivers from. There was some mac related jiggery pokery that meant that I had to go into system preferences and Security and Privacy to get the drivers to work. I followed AdamVenturalla’s fix here.

Next I need a terminal to communicate with teh ESP8266. I started by using CoolTerm.

Once the drivers were installed and the cool term was up and running it is worth checking that you have a connection. Plug in the ESP 8266 and launch cool term. You shoudl see SLAB_USBtoUART as an available port, select that. The build that comes loaded onto the Huzzah works at a baudrate of 9600, so change that too. I didn’t mess with any of the other settings then just pressed the reset button on the board and it connected. I could now send commands to the board!

Updating the build of NodeMCU seemed like a good idea too, as the firmware build seemed like quite an old one. Node MCU is the firmware platform that uses the Lua scripting language. This might sound like I know what I’m talking about, but I don’t. The easiest way to update the firmware, I found, was to follow these instructions and use NodeMCU PyFlasher.

The port should be there. Set the baud rate to 921600 too, as above. I just needed to download the latest version of NodeMCU. This can be custom built for you at Select the master build and add any other modules you like the sound of. I added Wi-Fi as I wanted to set up an access point. They will be built for you and emailed. When you get the email save the float.bin file somewhere then browse to it in NodeMCU PyFlasher ‘NodeMCU firmware’ box. The Huzzah is Dual Flash I/O so set that if it’s not already. I variously wiped the firmware and didn’t, it’s up to you. Click Flash.

Back in Coolterm set the baudrate to 57600 as changed in this version. Click the rest button and you should be off and away with a upgraded version of NodeMCU.

I had some fun setting up a soft access point using the wifi module. All the info I used is here.

I also had a go at setting up a cative portal/http server from here Rather than use CoolTerm it requires NodeMCU-Tool, which just runs in terminal and allows you to upload .lua files to your Huzzah, which is great. NodeMCU-Tool was a bastard to install though. I ended up having to install node.js and a load of other stuff. There were mac permission problems that I didn’t end up fixing, just running it locally, not globally. That meant I had to navigate to the nodemcu-tool directory in node_modeules and call nodemcu-tool.js directly. It worked in the end though, kind of.