The Ultimate Solution for ESP8266 WiFi Arduino with Bluemix – Part 1/2
I’d love to share my fun ESP8266 journey with all of you.
Greatest thanks to Tan Wei Kok, Edmund Teo, Anthony Elder and Joleen for the help and encouragement. Without them, I wouldn’t made this happen.
BELIEVE IT OR NOT, through working with them, a lot of exciting and innovative ideas are generated. Anyway, hope this article will help you in someway. Our next goal is to be able to control a car toy through the motion of my phone. Please wish us GOOD LUCK.
Most importantly, share your thoughts and opinions with us. Your say is going to be the next innovation. 🙂
Background Info
After exploring the cheapest ESP8266 Wifi Module and expensive Spark Core last month, I decided to work on something with an average price. My friend Wei Kok gave me an upgraded ESP8266. Woohoo, the fun journey started…
Preparation
System: Windows 7 64bits.
Hardware: ESP8266 Node MCU 1.0 (ESP-12E module), USB cable.
Software: Bluemix, Arduino.
Most Important: patient and encouragement from friends. LOL
By the way, I haven’t done any coding in this journey anything yet. This is coding-free.
Procedures
- Create a Bluemix account.
Anyone can register one. https://console.ng.bluemix.net/registration/.
2. Select IoT Platform from the Catalog.
After registration, go to the Bluemix main page, click on the Catalog on the top right menu.
Scroll down to find IoT platform. Click to open the first one.
Click on Create.
3. Register your device.
Now you are in the IoT Dashboard.
Note: Bluemix is way too powerful because it can handle massive organization. I got lost inside Bluemix (LOL) after I re-login my account. Below is a simple explanation about Bluemix’ structure. (If you know about Bluemix, please help verify whether my understanding is correct or not.) Look at the right sidebar, under your account, you have Region, then Organization. On the left side, you can see Space under Organization. Then you different Services inside a space. The hierarchy is from high to low is Region, Organization, Space, and Service. For Organization and Space, you can control the user access. Why I got lost last time is because I created many organizations and many spaces when I was playing with Bluemix. I had a difficult time trying to recall under which space I put my IoT Dashboard. Please laugh at me and don’t repeat my mistake.
Ok, go back to where we left just now.
Click on Open Dashboard shown in the previous screenshot.
The IBM Watson IoT Platform is opened in a new tab. From here onwards, it is very straightforward.
Click on Add Device.
There are only two critical fields, i.e., Device Type and Device ID. The rest you can leave empty.
Device Type = ESP8266. Device ID = test1.
Just keep clicking on the Next button.
4. Get your Authentication.
You will reach this page in the end. Keep the information on this page. You won’t be able to see it after you close it.
Now you can leave it aside first. Let’s move to Arduino.
5. Download the Arduino.
https://www.arduino.cc/en/Main/Software It is free. Great.
Arduino is easy to use. You just need to find the right code and paste it in the editable field. Then click on the Right Arrow on the top to run the code. The lower part shows the result.
6. Install Board Manager.
Open Preferences window from File – Preferences.
Enter http://arduino.esp8266.com/stable/package_esp8266com_index.json
into Additional Board Manager URLs field.
Open Boards Manager from Tools menu.
Select Contributed. Click on More Info to choose the version. Click on Install.
Afterwards, go back to select NodeMCU 1.0 (ESP – 12E Module) from Tools – Board.
See for the The Ultimate Solution for ESP8266 WiFi Arduino with Bluemix – Part 2/2 for the 2nd half of this solution.
Disclaimer
This is not my daily job. All content here has nothing to do with my employer. 😛 I use Bluemix is because I want to explore its Waston IoT platform and Cognition Analysis in the future. It might be easier to use other simple Cloud servers as some of them have ready-to-go solutions for ESP8266. Bluemix is way too powerful for blog.