Embedded Computing: How to Start?
Learning Components
All circuits are based on components. They can be passive as resistors and capacitors, or active as diodes, LEDs and transistors.
Learning components is key to understand what each of them does and how to combine them. The best solution consists on a breadboard with a set of standard components. Now, buying components can be intimidating, so I'd recommend the Sidekick Basic Kit. It includes 90 components and features the Breadboard BoosterPack to be used with the Texas Instruments MSP430F5529 LaunchPad as micro-controller. The Energia IDE comes with a many examples and well-written training. |
Playing with Sensors
Today, most of the sensors are high-level components, some of them with their own micro-controller. Building a weather station requires a large set of specialised sensors for temperature, humidity, pressure, visible light and UV, and connections go messy.
I'd recommend the Grove system, with adapter board available for many platforms including Arduino, LaunchPad, BeagleBone, Raspberry Pi among others. The ready-to-use Grove Beginner Kit for Arduino comes with tutorials and step-by-step examples. The Grove system relies on a unique 4-pin connector for analog and digital GPIOs as well as ports like UART or I²C and a wide range of modules, including sensors, actuators and screens. Each peripheral comes with its library for the Wiring / Arduino framework. |
Exploring the Internet of Things
The Internet of Things connects things to a network, either local or Internet. A thing is a micro-controller with peripherals.
The thing gathers data from sensors and sends it to databases, and receives commands and acts accordingly, for example by turning lights on. The whole section Exploring IoT, the Internet of Things includes two lists of recommendations: one for IoT Platforms: Which Hardware? and another for IoT Services: Which Solution? Two popular solutions pictured: Blynk on the left, Node-RED on the right. |
Going Real Time
For more complex projects, running multiple tasks simultaneously and ensuring time-determinist process are critical. Here comes RTOS, or real time operating system.
Only the LaunchPad MSP432, the LaunchPad CC3200 WiFi —and other CC3200-based boards— and the SensorTag CC2650 support RTOS thank to Energia Multi-Tasking or EMT. The Galaxia library brings most of the RTOS elements, including the threads SWI and Task, and the synchronisation Event, Semaphore, Mailbox, Timer and Clock. |
Building Robots
Robots add a whole new dimension to embedded computing. The challenge with hardware is, how to deal with reality.
The two main building systems with sensors, actuators and controller are Lego Mindstorms and fischertechnik.
|
Dealing with Larger Projects
More advanced projects may require measurement equipment. Most popular equipment includes:
On my side, the most useful tool is the logic analyser. Non intrusive, it records the data sent on SPI and I²C buses. Then comes the debugger, especially for monitoring the variables. |
Training
Training can be delivered as a MOOC and as workshops from a silicon manufacturer.
The most important part is to know how to read a data-sheet! Finally, enthusiasts share their hobby on forums! |
Posted:
Edited: 13 Sep 2017, 23 Nov 2021
Edited: 13 Sep 2017, 23 Nov 2021