Robert Chin has a Bachelor of Science degree in computer engineering and is experienced in developing projects on the TI CC3200 SimpleLink, Android, Arduino, Raspberry Pi, and PC Windows platforms using C/C++, Java, Python, Unreal Script, DirectX, OpenGL, and OpenGL ES 2.0. He is the author of Home Security System DIY PRO Using Android and TI CC3200 SimpleLink, Home Security Systems DIY Using Android and Arduino, and Beginning Arduino ov7670 Camera Development. He is also the author of Beginning Android 3d Game Development and Beginning IOS 3d Unreal Games Development, both published by Apress, and was the technical reviewer for UDK Game Development, published by Course Technology CENGAGE Learning. Beginning Android 3d Game Development was licensed to Tsinghua University through Tsinghua University Press
Everyone, every day, uses technology. Most of us leave the programming to engineers because we think coding and electronics are complicated and difcult; actually, they can be fun and exciting activities. Thanks to Arduino, designers, artists, hobbyists and students of all ages are learning to create things that light up, move, and respond to people, animals, plants, and the rest of the world. Over the years Arduino has been used as the “brain” in thousands of projects, one more creative than the last. A worldwide community of makers has gathered around this open-source platform, moving from personal computing to personal fabrication, and contributing to a new world of participation, cooperation and sharing. Arduino is open and simple. It’s founded on lessons we’ve learned teaching our own classes: if you start with the assumption that learning to make digital technologies is simple and accessible, you can make it so. Suddenly electronics and code become creative tools that anyone can use – like brushes and paint. This book walks you through the basics in a hands-on way, with creative projects you build by learning. Once you’ve mastered the basics, you’ll have a palete of sofware and circuits that you can use to create something beautiful, and make someone smile with what you invent.
There are different ways to program the ESP8266, but I'll only cover the method using the Arduino IDE. This is really easy for beginners, and it's a very familiar environment if you've used Arduino boards before. Just keep in mind that it's not limited to this option: there's also an official SDK available to program it in real C, this is very useful if you want to optimize your code or do some advanced tricks that aren't supported by the Arduino IDE. Another possibility is to flash it with a LUA interpreter, so you can upload and run LUA scripts. Or maybe you're more familiar with Python? Then you should check out the MicroPython firmware to interpret MicroPython scripts. I'm sure there's other languages available as well, so just do a quick Google search and write your code in the language of your choice
A micro controller is an integrated circuit that is capable of running programs. There are many instances of those on the market today from a variety of manufacturers. The prices of these micro controllers keeps falling. In the hobbyist market, an open source architecture called "Arduino" that uses the Atmel range of processors has caught the imagination of countless folks. The boards containing these Atmel chips combined with a convention for connections and also a free set of development tools has lowered the entry point for playing with electronics to virtually nill. Unlike a PC, these processors are extremely low end with low amounts of ram and storage capabilities. They won't be replacing the desktop or laptop any time soon. For those who want more "oomph" in their processors, the folks over at Raspberry PI have developed a very cheap (~$45) board that is based on the ARM processors that has much more memory and uses micro SD for persistent data storage. These devices run a variant of the Linux operating system. I'm not going to talk further about the Raspberry PI as it is in the class of "computer" as opposed to microprocessor.