Most of the projects in STEM Stars are microcontroller based – but what is a microcontroller? In this post we will discuss the basics of what a microcontroller is, why we use them, what basic capabilities they have, and the basics of the most commonly used microcontroller in our course, the Adafruit ESP8266 HUZZAH Feather.
What is a microcontroller?
A microcontroller, at it’s most basic form, is an integrated circuit that modifies and input and provides an output. The input can be anything from a button press, a sensor, a keystroke, sound, light, or predetermined data set. The output can be motor movement, light color or brightness, a text message, graphic display, or sound, among others.
Why do we use microcontrollers?
Microcontrollers enable cheap and easy automation of electrical systems. You can find microcontrollers in almost all electrical devices nowadays – power tools, cars, copy machines and printers, toys, appliances, and more!
We use microcontrollers in our classes because they enable students to easily automate electrical systems that would otherwise be far too complicated for these students to build. Development boards are microcontrollers that companies have built to be user-friendly and have many built-in features that make otherwise complex problems very easy to construct and program, such as pull up resistors, pulse width modulation, h-bridges, and built-in LED’s.
Microcontrollers in STEM Stars – Adafruit ESP8266 HUZZAH Feather
Most of the first projects students will build in STEM Stars will be using the Adafruit ESP8266 HUZZAH Feather board. This microcontroller has all of the basic features of common microcontrollers with one huge advantage – internet connectivity! Additionally, the Adafruit company is a huge advocate of STEM education and provides exceptional product support. They also maintain a free internet of things dashboard, Adafruit IO, that students can use to control their projects remotely!
The ESP8266 Huzzah Feather is one of the new development boards from Adafruit that is thin, light, and relatively inexpensive at less than $20. The microcontroller can be connected using a micro-USB cord and programmed using the ever-user-friendly Arduino IDE Software. There is also a JST connector for rechargeable LiPo batteries, and an integrated charging circuit for the LiPo battery that uses the micro USB as a power input!
The HUZZAH has 22 pins for connecting to power, ground, inputs, and outputs, including:
- GND – ground pin
- BAT – positive battery in pin, tied to JST connector
- USB – positive power pin, tied to micro USB
- EN – enable the 3.3V regulator to protect the board from over-voltage
- 3V – 3V output from EN
- 2 serial pins, RX and TX
- 5 pins for I2C and SPI communication
- 9 pins for GPIO digital input/output
- 1 pin for analog input
- RST – reset pin to restart the board
- CH_PD – enables/reset the wifi (ESP8266) chip on the board
In addition there are 6 unused pins called NC which stands for “not connected” that are merely placeholders.
The Adafruit ESP8266 HUZZAH Feather is an excellent entry-level development board and we have had great success with projects based on this microcontroller in this class. To learn more about this board, visit Adafruit’s guide.