The caveat at the moment of writing in 2014/2015 was to find a way to eliminate the “middle” MCU, the well-loved Arduino Uno (or Arduino Mega). It doesn’t make sense to forgo the ESP8266 that sports a 32bit CPU by using an Arduino Uno that sports an 8bit CPU for computations. Over the several months of dec14 to sept15, several IDE flavours/methodologies was released on the Internet to use standalone ESP8266, e.g to use ESP8266 and the available IO pins sans the Arduino Uno or Arduino Mega. From retrospective view, the cost of deploying an IoT framework to collect data has gone down drastically with just the standalone ESP8266 alone as the sentinel device. The flavours of standalone mode are ESP8266 Lua, and ESP8266 Arduino IDE. Check out the reference section for details.

Step 1: Parts needed

In this write up, yours truly is introducing the use of NodeMCU v1.0 (black) with ESP8266 Arduino IDE 1.6.5. There are lots of write up on the NodeMCU v0.9 or ESP8266 ESP-01 and variants with LUA, but information is scarce for NodeMCU v1.0 and ESP8266 Arduino IDE. This post is also a superseding update of an earlier how-to post of using ESP8266 ESP-01 with Arduino Mega and the temperature data is streamed to thingspeak http://shin-ajaran.blogspot.sg/2015/01/iot-streaming-temperature-data-acquired.html .

3. Program the source code to read DS18B20 using one wire protocol and the acquired data to be sent to thingspeak. (source code at the end)

Step 4:

1. Compile & upload source code to NodeMCU v1.0

Step 5:

Observe

data update of sensor data on thingspeak.

Step 6: Observation, Implications, What's Next

Observation

Having done the above, congratulations on sending sendor data using NodeMCU v1.0 with Arduino IDE. Now the biggest question comes begging, does this ESP8266 Arduino IDE supports all the fancy pansy libraries supported on vanilla Arduino IDE?? That is for us to discover and update on the git hub page.

Implications

Internet enable any of your creations realised on Arduino Uno (or mega) have become even simpler than previously thought. Yours truly traversed the era of sending serial data, packing data for Ethernet, WiFly, ZigBee, and now ESP8266. ESP8266 is very convenient to use.

What’s next?

Alright, time to internet enable my sous vide setup: temperature sensor DS18B20 data streamed over the Internet to a cloud computing facility to compute PID and then output the control data over the internet to control the state of the solid state relay that in turn controls the AC appliance. Earlier yours truly have controlled a IoT lamp from a virtual machine http://shin-ajaran.blogspot.sg/2015/01/internet-controlled-ac-appliances-with.html, now is to connect the dots.