One of the shortcomings with my previous WiFi web server tutorial is the difficulty finding the IP address.
For this tutorial we will be taking advantage of the Grove LCD RGB Backlight to show the IP address, WiFi status and any remote connections.
Step 1: Materials Required
LinkIt One board
Grove LCD RGB Backlight
Micro USB cable
Grove LCD RGB Arduino library
WiFi encryption type (WEP, WPA or none)
Optional: Li-Ion battery
Step 2: Connecting Parts to the Board
Rather than reinventing the wheel, and to save time for us both I will henceforth only explain things if they have not been covered in a previous tutorial. By now this stuff will start to become second nature.
Follow step 2 of my 4th tutorial which will show you how to connect the WiFi antenna.
Follow step 2 of my 6th tutorial which will show you how to connect the Grove LCD display and battery (if you wish to run the board standalone). Ignore the GPS antenna as we won't be using it in this tutorial.
Step 3: Install the Web Server Code
Start the Arduino IDE.
Click on the LCDWiFiServer.ino file above and save it to your computer.
Load it into the Arduino IDE and upload it to the LinkIt One.
Once the program is uploaded the LCD will inform you of what step the LinkIt One is at.
Upon successful connection to WiFi the top line of the LCD will display the server's IP.
Connect to that IP in a browser window eg http://192.168.0.20
When you connect the LCD screen will display "client connected" and "client disconn".
If you want to toggle the onboard LED, add /on or /off to the server IP in your browser window.
When the state of the LED is altered, the last character on the top row will change to either "L" or "H" depending on whether you sent /off or /on respectively.
Step 4: Where Next?
As you can see by recycling the code we have created previously and changing the code to add new functionality makes developing quicker.
Where can we take this tutorial?
There are many sensors available that can be connected to an Arduino or Grove compatible board. How about a web page that tells you the ambient temperature? Or one that tells you the temperature in your fish tank?
How about a sensor that audibly warns of carbon monoxide or gas?
What about monitoring a plant and alerting when the water is getting low? Or even controlling a valve to automatically water the plant?
We know how to connect to the LinkIt One using direct pin connections and Grove headers.
We know how to extend the Arduino IDE and add new libraries.
We know how to make the device standalone using the battery.
We know how to make a WiFi web server.
We know how to find our location anywhere on the planet using GPS
There are still parts built into the board that we have not experimented with:
SD card (data logging)
GSM (mobile phone/SMS messaging)
so we still have stuff to play with and more tutorials to come.
If you have any ideas that you want me to write a tutorial on please don't hesitate to let me know in the comments section.
Until next time