The set of devices that respond and have the capabilities to capture data and follow the instructions can be considered as the IoT Hardware. The following fall into such categories where they not only collect data but also respond to instructions based on the processed data.
The hardware infrastructure is mostly inheriting from the embedded systems of the SoC type. As IoT devices are by their nature network-enabled, many of the existing embedded platforms evolved towards network-enabled solutions, sometimes indirectly through delivering network processor (wired or wireless) as a peripheral device yet integrated on the development board (i.e. Arduino Uno with Ethernet Networking shield, GSM shield, etc.), sometimes a new system, integrating networking capabilities in one SoC (i.e. Espriff SoCs). More advanced devices that require OS to operate preliminarily benefited from externally connected peripheral network interfaces via common wired ports like USB (i.e. early versions of the Raspberry Pi, where WiFi card was delivered as USB stick), currently, usually integrate most of the network interfaces in a single board (i.e. RPi 3B, including Ethernet, WiFi and Bluetooth).
This is much a broader classification that contains all the electrical and electronic appliances such as microcontrollers, chips, integrated circuits, radio frequency systems, etc. A system on a chip is an integrated circuit (also known as a "chip") that integrates all components of a computer or other electronic system. These components typically (but not always) include a central processing unit (CPU), memory, input/output ports and secondary storage – all on a single substrate or microchip, the size of a coin.
Most noticeable platforms:
AVR: Arduino - a development board that uses Microchip SoC, that is no doubt the most popular development platform for enthusiasts and professionals. Arduino itself barely offers networking capabilities yet; there are a vast number of extension boards including network interfaces (both wired and wireless).
ESP: Espressif (Espressif Systems) - the great SoC solution of the single SoC including wireless network interfaces.
ARM: Raspberry Pi (and its clones) - advanced boards, including Linux operating system with GUI interface, even able to replace desktop computers.
Picture 4. SoC boards.
But, What is a Microcontroller? It is a SoC with data processing and storage capabilities. Microcontrollers contain a processor core (or cores), memory (RAM), and erasable programmable read-only memory (EPROM) for storing the custom programs that run on the microcontroller.
And, What is Arduino?
Arduino is an open-source electronics platform based on easy-to-use hardware and software. Arduino boards are able to read inputs - light on a sensor, a finger on a button, or a Twitter message - and turn it into an output - activating a motor, turning on an LED, publishing something online. You can tell your board what to do by sending a set of instructions to the microcontroller on the board. To do so you use the Arduino programming language (based on Wiring), and the Arduino Software (IDE), based on Processing.
The only fault was that it didn't have enough processing power and, as a result, no more than 4 network connections were supported. Its RAM being of 2KB. Shortly, the Arduino does not run an Operating System, what it runs is called Firmware. Basically, it runs only one program. The result is that you can estimate what program sequence gets executed at a certain time. Programs written to the Arduino remain there until they are replaced with another program. Even when powered off, Arduino stores its software. Please, visit Arduino website https://www.arduino.cc/en/IoT/HomePage and watch this Youtube video clip: https://www.youtube.com/watch?v=hrwrhwFa74k&feature=youtu.be
Picture 5. Arduino SoC boards.
If you are looking at upgrading from previous Arduino designs, or if you are just interested in boards with similar functionality, at Arduino you can find:
Arduino MKR WiFi 1010: the Pro version of the Nano 33 IoT, lacks the accelerometer, but includes a battery charger, and the Arduino Eslov connector for external I2C boards. Read more here: https://store.arduino.cc/arduino-mkr-wifi-1010
Arduino Uno WiFi rev2: the education version of the MKR WiFi 1010, with USB-B connector and embedded accelerometer. Read more here: https://store.arduino.cc/arduino-uno-wifi-rev2
MKR WiFi 1000: can only run WiFi applications, as it includes a different chipset than the Nano 33 IoT. Read more about it here: https://store.arduino.cc/arduino-mkr1000-wifi-with-headers-mounted
A single-board computer (SBC) is a complete computer built on a single circuit board, with microprocessor(s), memory, input/output (I/O) and other features required of a functional computer. They allow you to attach peripheral devices like keyboards, mice, and screens, as well as offering more memory and processing power.
What is Raspberry Pi?
The Raspberry Pi is a low cost, credit-card sized computer that plugs into a computer monitor or TV, and uses a standard keyboard and mouse. It is a capable little device that enables people of all ages to explore computing, and to learn how to program in languages like Scratch and Python. It’s capable of doing everything you’d expect a desktop computer to do, from browsing the internet and playing high-definition video, to making spreadsheets, word-processing, and playing games.
Picture 6. Rasperry Pi 4 SBC.
You should consider the key characteristics of your IoT device and your application requirements.
First watch this video clip: https://www.youtube.com/watch?time_continue=9&v=7vhvnaWUZjE&feature=emb_logo
There are some common rules to make decicion for IoT platform:
Sensors, which are one of the base components of an IoT system, have three modules to them - Power Management modules, Sensing modules, and the Energy modules. A sensor is an element which can turn a physical outer stimulus into an output signal which then can be used for further analysis, management or decision making. People also use sensors like eyes, ears and skin for gaining information about the outer world and act accordingly to their aims and needs. Sensors can be divided into multiple categories by the parameter that is perceived from the environment.
Sensors are the devices that start the whole process of data collection, verification. This could be any simple device like a temperature reading to an advanced level such as a video feed altogether. Sensor as such a component in the IoT system could be just a single device or a combination of various sensors, devices that collect data from the intended environment.
Picture 7. Different kinds of sensors.
Sensors transform analog data given from scanning the environment to digital data, but they merely do any processing. On the bright side, they don't consume much power and can live on batteries for a long time. Sensors are present in everyday life more than you would expect. They improve industry, agriculture, homes, transportation or smart phones for example. They are tools which help monitoring the environment, collecting data about it and with the help of computers, acting accordingly.
Picture 8. How sensors work.
These devices provide the motion to a data collection system such as the solenoids, comb drives etc. to fetch details based on movements. Actuators, as the name itself suggests, can act on their immediate environment to enable correct operation of the machines or devices they are embedded into. Small as they are, they are rarely visible during operation, but the effects of their work can be felt in vehicles, industrial machines or any other electronic equipment involving automation technologies. They can be separated into four main categories based on their construction pattern and the role they play in a specific IoT environment:
In picture 9 below there is a common IoT chain and example where actuators are located.
Picture 9. Common IoT chain.
Standard devices constitute of the generally used devices such as Tablets, Smartphones, Switches, Routers etc. Each of these devices have their own set of settings that allow them to collect data. Smartphone as a remote control for the Internet of things means that mobile phones running iOS and Android can be used as a remote control for TVs, home theaters, as well as navigation and multimedia electronics. Picture 10 is an example of the most popular smart home solutions.
Picture 10. Typical Smart home solutions. Source: https://promwad.com/platforms/internet-of-things
This is an external resource from IBM that explains practices to choose the best hardware for an IoT project. Read by clicking the link below: https://developer.ibm.com/articles/iot-lp101-best-hardware-devices-iot-project/