1

IoT with PlatformIO

 1 year ago
source link: https://devm.io/iot/platformio-technology-stack-internet-of-things
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

The basics of the technology stack PlatformIO

IoT With PlatformIO


Have you already taken your first steps with maker boards like an Arduino and successfully implemented your first projects? The maker hardware and software is sufficient for the first steps in the Internet of Things, but questions arise. Andreas Schmidt will explore these questions and more in this three-part series. First, let’s start with the basics of the technology stack.

Arduino enjoys a very high reputation in the IoT maker community for its very good and easy to use combination of developer boards and the appropriate tools. As a developer, you don’t have to look at any details about the used electronics. Both the framework and the sample code can be used directly with the tools like the Arduino IDE. But what happens “behind the scenes” in the tool chain?

The embedded hardware is almost always accessible via so-called developer boards. These consist of a microcontroller (MCU) with integrated or additional external memory on the board, input/output pins for the connection of sensors or actuators, and an interface for connection to and communication with the PC – usually USB. This supplies the board directly with power (5V via USB), and – depending on the board – reduces it to a lower voltage, e.g. 3.3V. The microcontroller can be addressed via a serial interface because of an interface chip, e.g. from FTDI or SiliconLabs.

Where are the major differences? On the one hand, the MCUs used can have a big impact. They range from 8-bit MCUs such as the Arduino Uno to 16-bit MCUs such as an MSP430 from Texas Instruments, to 32-bit MCUs such as the ARM Cortex M series. This is coupled with a clock frequency that can range from the single-digit MHz range up to several hundred MHz. An increase in speed and computing power of the MCU allows faster or more powerful applications (e.g. modern encryption), but also requires more power.

In order to be able to program for these MCUs or boards, firmware (i.e. software that is embedded in the chip) is required. At this point, there are basically a lot of choices for developers. While “small” MCUs are programmed in C or C++, additional script languages are available for the more powerful 32-bit variants, e.g. Embedded Lua or subsets of Python (MicroPython) and Javascript (Espruino).

Shopping for embedded devices

How can you find out which combination of hardware, framework and software makes sense for your own introduction to the topic? This question can be answered from several perspectives:

  • If you are interested in development...

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK