IoT Networking - bobbae/gcp GitHub Wiki

The Internet of things (IoT) describes the network of physical objects.

802.15.4

IEEE 802.15.4 is a technical standard that defines the operation of low-rate wireless personal area networks (LR-WPANs). It specifies the physical layer and media access control for LR-WPANs, and is maintained by the IEEE 802.15 working group, which defined the standard in 2003.

https://standards.ieee.org/standard/802_15_4-2020.html

ZigBee

ZigBee is a 2.4 GHz mesh local area network (LAN) protocol. It was originally designed for building automation and control—so things like wireless thermostats and lighting systems often use ZigBee.

LoRaWAN

LoRaWAN is a media access control (MAC) layer protocol designed for large-scale public networks with a single operator. It is built using Semtech’s LoRa modulation as the underlying PHY, but it is important to note that LoRa and LoRaWAN are two seperate things that are often (mistakenly) conflated.

https://www.trendmicro.com/en_us/research/21/a/Low-Powered-but-High-Risk-Evaluating-Possible-Attacks-on-LoRaWAN-Devices.html

helium

https://docs.helium.com/lorawan-on-helium/

Telecom

GPRS

General Packet Radio Service (GPRS) is a packet oriented mobile data standard on the 2G and 3G cellular communication network's global system for mobile communications (GSM). GPRS was established by European Telecommunications Standards Institute (ETSI) in response to the earlier CDPD and i-mode packet-switched cellular technologies. It is now maintained by the 3rd Generation Partnership Project (3GPP).

GSM

The Global System for Mobile Communications (GSM) is a standard developed by the European Telecommunications Standards Institute (ETSI) to describe the protocols for second-generation (2G) digital cellular networks used by mobile devices such as mobile phones and tablets. It was first deployed in Finland in December 1991.

LTE

The Long-Term Evolution LTE is a standard for wireless broadband for mobile access based on GSM/EDGE and UMTS/HSPA.

LTE-M1

LTE-M1 is the first cellular wireless protocol that was build from the ground up for IoT devices.

NB-IoT

NB-IoT, or Narrowband IoT, is another way to tackle Cellular M2M for low power devices. It is based on a DSSS modulation similar to the old Neul version of Weightless-W. Huawei, Ericsson, and Qualcomm are active proponents of this protocol and are involved in putting it together.

3G & 4G

3G was the first “high speed” cellular network, and is a name that refers to a number of technologies that meet IMT-2000 standards. 4G is the generation of cellular standards that followed 3G, and is what most people use today for mobile cellular data. You can use 3G and 4G for IoT devices, but the application needs a constant power source or must be able to be recharged regularly.

5G

5G is the fifth generation technology standard for broadband cellular networks, which cellular phone companies began deploying worldwide in 2019, and is the planned successor to the 4G networks which provide connectivity to most current cellphones. 5G networks are predicted to have more than 1.7 billion subscribers worldwide by 2025, according to the GSM Association.

https://cloud.google.com/blog/topics/telecommunications/how-csps-can-use-cloud-networks-to-deliver-5g

O-RAN

https://cloud.google.com/blog/topics/telecommunications/google-cloud-joins-o-ran-alliance

Cellular IoT Overview

https://www.iotforall.com/cellular-iot-explained-nb-iot-vs-lte-m

IoT Application and Message protocols

MQTT

An MQTT (Message Queuing Telemetry Transport) is a lightweight IoT data protocol. It features a publisher-subscriber messaging model and allows for simple data flow between different devices.

MQTT’s main selling point is its architecture. Its genetic make-up is basic and lightweight and, therefore, it’s able to provide low power consumption for devices. It also works on top of a TCP/IP protocol.

IoT data protocols were designed to tackle unreliable communication networks. This became a need in the IoT world due to the increasing number of small, cheap, and lower-power objects that have appeared in the network over the past few years.

https://en.wikipedia.org/wiki/MQTT

CoAP

A CoAP (Constrained Application Protocol) is an application layer protocol. It’s designed to address the needs of HTTP-based IoT systems.

AMQP

An Advanced Message Queuing Protocol (AMQP) is an open standard application layer protocol used for transactional messages between servers.

AMQP was originated at JPMorgan Chase in London and RabbitMQ was developed in Erlang.

DDS

DDS (Data Distribution Service) is another scalable IoT protocol that works to a publisher-subscriber model.

PLC

https://en.wikipedia.org/wiki/Programmable_logic_controller

Ladder Logic

https://en.wikipedia.org/wiki/Ladder_logic

OPC UA

OPC Unified Architecture (OPC UA) is a cross-platform, open-source, IEC62541 standard for data exchange.

https://en.m.wikipedia.org/wiki/OPC_Unified_Architecture

Industrial Networking

Modbus

Modbus is an industrial serial communication protocol based on Modicon plus Fieldbus.

https://www.ni.com/en-us/innovations/white-papers/14/the-modbus-protocol-in-depth.html

Foundation Fieldbus

https://en.wikipedia.org/wiki/Foundation_Fieldbus

PROFIBUS

PROFIBUS (a portmanteau for Process Field Bus) is a standard for Fieldbus communication in automation technology and was first promoted in 1989 by BMBF (German department of education and research) and then used by Siemens, published as part of IEC 61158.

PROFINET

PROFINET is a standard for Industrial Ethernet.

Because it's ethernet-based, PROFINET can operate on a much higher transmission speed than PROFIBUS. With PROFINET, the cycle times are also adjustable for each device, whereas PROFIBUS has a fixed cycle time. PROFINET is applied in a wide variety of industries, such as automotive, oil and gas, logistics, etc.

https://us.profinet.com/profinet-vs-ethernet-definitions-and-a-comparison/

CANOpen

https://en.wikipedia.org/wiki/CANopen

DeviceNet

https://en.wikipedia.org/wiki/DeviceNet

Ethernet/IP

https://en.wikipedia.org/wiki/EtherNet/IP

https://www.digikey.com/en/articles/ethernet-ip-versus-profinet

Sinec H1

https://en.wikipedia.org/wiki/Sinec_H1

CAN Bus

A Controller Area Network (CAN bus) is a vehicle bus standard and a message-based protocol designed to allow microcontrollers and devices to communicate with each other's applications without a host computer.

SCADA

Supervisory control and data acquisition (SCADA) is a control system architecture used in the Machine industry.

https://en.wikipedia.org/wiki/SCADA

Bacnet

https://cdn.chipkin.com/files/pdf/Bacnet%20For%20Field%20Technicians.pdf

Mesh

Bluetooth Mesh

Bluetooth mesh networking uses Bluetooth Low Energy to allow for many-to-many communication over Bluetooth radio.

Wireless mesh

Wireless mesh network organizes radio nodes in a mesh topology. Many use a FDM method while some use TDM.

Projects

Micro controller projects

https://www.elprocus.com/advanced-microcontroller-based-mini-projects-for-engineering-students/

IoT Networking projects

https://projectabstracts.com/iot-based-networking-projects