HCIP-IoT Developer V2.5 Training Material
HCIP-IoT Developer V2.5 Training Material
▫ Edge intelligence: flow analysis model and algorithm, video analysis model
algorithm, flow analysis engine, and video analysis engine.
▫ Sensor
▫ Network
▫ Platform
▫ Application
• DIS collects, processes, and distributes real-time stream data.
• IoT Analytics uses IoT data integration, cleaning, storage, analysis, and
visualization to provide one-stop services for IoT data developers.
• MRS provides enterprise-level big data cluster cloud services that can be
completely controlled by tenants.
• Big data analytics uses the high-availability big data processing, horizontally
expandable framework, tin-memory computing model, directed acyclic graph
(DAG) scheduling framework, and efficient optimizer to deliver the
comprehensive performance 100 times over that of the traditional MapReduce
model.
• Standard SQL jobs provide standard SQL interfaces and support abundant job
scheduling policy configuration. IoT data developers can stay focused on IoT
services and on developing analysis jobs without worrying about the deployment
and O&M of the SQL processing engine.
• When a device reports data, if Data Type is Binary, a codec needs to be
developed for the product. If Data Type is JSON, codec development is not
required.
• For example, in the NB-IoT scenario where devices communicate with the IoT
platform using CoAP, the payload of the CoAP message is the data at the
application layer and the data type is defined by the device. As NB-IoT devices
have high requirements on power saving, data at the application layer is in
binary format instead of JSON format. However, the IoT platform communicates
with the application by sending data in JSON format. Therefore, codec
development is required for the IoT platform to convert data in binary and JSON
formats.
• Upstream messages: CoAP packets are parsed to obtain the application layer
data. -> Product models and codec are called for encoding. -> Messages are sent
to the application platform.
• Downstream messages: Messages are sent. -> Product models and codec are
used for coding. -> CoAP messages are assembled and sent to devices.
• After defining a product model, you can use it during device registration.
• Identifies a service.
• The directory structure of the product model file must be the same as that shown
in the figure and cannot be added or deleted. For example, the second level can
contain only the product profile and service folders, and each service must
contain the product profile folder.
• Decoding binary data reported by the device into JSON data and sending the
data to the application.
• Encoding the JSON data returned by the NA into binary data and sending the
data to the device.
• In the command delivery process, the codec is used in the following scenarios:
• Encoding JSON data delivered by the NA into binary data and sending the code
to the device.
• Decoding the binary data returned by the device into JSON data and reporting
the data to the application.
• This page describes the components of REST API requests.
• Endpoint: domain name or IP address of the server bearing the REST service. It
can be obtained from Regions and Endpoints. For example, the endpoint of IAM
in the CN North-Beijing4 region is iam.cn-north-4.myhuaweicloud.com.
• query-string: query parameter, which is optional. Ensure that a question mark (?)
is included before each query parameter that is in the format of "Parameter
name=Parameter value". For example, ? limit=10 indicates that a maximum of 10
data records will be displayed.
• Use the returned X-Subject-Token value in the header field to update X-Auth-
Token in the IoT platform environment so that it can be used for other API calls.
If the token expires, the Authentication API needs to be called again.
▫ 3. The input parameter binaryData of the decode API is the payload of the
CoAP packet sent by the device. The input parameter of the encode API is in
the JSON format and is a message or response delivered by the IoT
platform.
• Stability and reliability: With reliability built into multiple levels of the
architecture, OBS achieves up to 99.9999999999% (12 nines) data durability, and
maintains an impressive 99.995% service continuity rate.
• Security and trustworthiness: OBS has been awarded the Trusted Cloud Services
(TRUCS) Certification. It secures your data with server-side encryption, URL
validation, black/white lists of IP addresses, VPC-based network isolation, log
audit, and fine-grained permission control.
• Easy-of-use: OBS has a management console, supports REST APIs, provides multi-
language SDKs, and is compatible with all mainstream client tools. Furthermore,
OBS gives you the freedom to upload, download, and manage your data
anytime, anywhere.
▫ 1. T
▫ 2. ABCD
• This market is commonly called the Low Power Wide
Area (LPWA) market.
• LPWA highlights two typical requirements of
applications in this market: low power consumption
and wide coverage. There is a third requirement for the
applications in this market: low cost. Because this
market requires a large number of connections and a
device needs to be installed on a single plant, animal,
or even instrument, the device cost cannot be too high.
• The Boudica chip is developed by Huawei HiSilicon.
• SoC: System-On-a-Chip
• BB: baseband
• RF: radio frequency
• PMU: power monitoring unit
• AP/SP/CP: three cores defined for the chip: the
application processor, security processor, and
communication protocol
• eFlash: embedded flash
• SRAM: static random access memory
• FOTA: firmware over the air
• Lightweight machine-to-machine (LwM2M) is a client-server-
based DM device management protocol and is mainly
used for restricted devices.
• Uu: the radio interface between the UE and the E-
UTRAN
• Evolved Universal Terrestrial Radio Access Network (E-
UTRAN): a radio access architecture proposed in 3GPP
release 8, featuring high transmission rate, low delay,
and optimized data packets. The E-UTRAN contains
several eNodeBs and provides the E-UTRA user plane
(PHY/MAC) and control plane (RRC) protocols, which
are terminated at the UE.
• UE: user equipment
• Non-Access Stratum (NAS): a functional layer between
the UE and the core network. It supports transmission
of services and signaling messages between the core
network and the UE.
• Evolved packet core (EPC) : an evolved 3GPP core
network framework featuring higher data rates, lower
delay, and optimized packets. It supports multiple radio
access technologies.
• The NB-IoT research and standardization is carried out
by the 3GPP standards organization.
• In May 2014, Huawei proposed NB M2M. In May 2015,
NB OFDMA was converged into NB-CIoT. In July 2015,
NB-LTE and NB-CIoT were further integrated into NB-
IoT. The NB-IoT standard was frozen in June 2016.
• 3GPP (Third Generation Partnership Project): a leading
3G technical specification organization that was
founded in December 1998 by ETSI in Europe, ARIB and
TTC in Japan, TTA in South Korea, and T1 in the United
States. It aims to research, formulate, and promote the
3G standards (WCDMA, TD-SCDMA, EDGE) based on
the evolved GSM core network. China Wireless
Telecommunication Standard Group (CWTS) joined
3GPP in 1999.
• The products covered by 3GPP include GSM, WCDMA,
TD-CDMA, TD-SCDMA, LTE, and LTE-Advanced. The
current key project is 5G (New RAT).
• At present, 3GPP has three technical specifications
groups covering Radio Access Network (RAN), Service
and System Aspects (SA), and Core Network and
Terminals (CT). NB-IoT standardization is carried out
under the RAN group. (It was carried out under the
GSM EDGE RAN (GERAN) group before August 2015.
Later, this group was incorporated into the RAN group).
• 3GPP specifications download link:
http://www.3gpp.org/specifications/79-specification-
numbering
• The 3GPP working group does not formulate standards.
Rather, it provides technical specifications (TS) and
technical reports (TR), which are approved by the TSG.
Once the TSG approves the TSs and TRs, they are
submitted to the members of the 3GPP working group
for standardization. 3GPP TSs and TRs are represented
by four- or five-digit numbers (xx.yyy). The first two
digits xx are the serial number, and the last two or
three digits yy or yyy indicate a specific specification in
a series.
• Orthogonal Frequency Division Multiple Access
(OFDMA): an evolution of OFDM that combines OFDM
and FDMA. It is a transmission technology that utilizes
OFDM to divide channels into several orthogonal
subcarriers and loads data to be transmitted to some of
these subcarriers.
• OFDMA is a multiple access modulation technology
through which users can access the system by sharing
frequency bands.
• OFDMA is classified into subchannel OFDMA and
frequency hopping OFDMA.
• Single-carrier Frequency-Division Multiple Access (SC-
FDMA): a modulation and demodulation technology
with continuous subcarriers. It is a mainstream multiple
access scheme in the uplink physical channel of LTE.
• Uplink transmission technologies include single- and
multi-tone transmissions.
• Single-tone:
▫ 3GPP specifications stipulate that NB-IoT should support single- and multi-
tone transmission in the uplink. Single-tone transmission is mandatory for
UEs, while multi-tone transmission is optional.
▫ Guard band deployment: Operators can use LTE edge bands not in use to
deploy NB-IoT.
▫ In-band deployment: Operators can use any resource block in LTE carriers
to deploy NB-IoT.
• Ultra-wide coverage: NB-IoT is designed for IoT,
especially LPWA connections. It uses retransmission
over the air interface and ultra-narrow bandwidths to
provide an extra gain of over 20 dB compared with
GSM. This gain reduces the number of sites needed to cover wider
areas with strong signal penetration that can reach
basement levels. Devices such as electricity or water
meters in hard-to-reach areas can be covered. Pet
tracking and other services that require wide coverage
can be used.
• Ultra-low cost: Huawei SingleRAN solution enables
upgrade and reconstruction on legacy network devices
to reduce network construction and maintenance costs.
NB-IoT chips are specifically designed for IoT devices.
The chips apply only to narrowband and low rates and
support only single-antenna transmission and half-
duplex mode in compliance with IoT requirements. In
addition, the signaling processing of NB-IoT chips is
simplified. These reduce the terminal chip price to only
several dollars.
• IoT devices have different communications
requirements from mobile phones. In most cases, an
IoT device sends only uplink data packets, and the
device itself determines whether to send these packets.
It does not need to stand by for calls from other
devices. By contrast, a mobile phone is ready to
respond to network-initiated call requests at any time.
• If IoT communication is designed in a 2G/3G/4G
manner, a large amount of power is consumed when constantly
• Scenarios:
▫ eDRX applies to scenarios where LTE UEs are used to perform IoT services
and there are energy-saving requirements for the UEs, such as smart
meters, sewer monitoring, and guards for the elderly and children.
• TCP ensures that messages are delivered error-free, in sequence, and with no
losses or duplications, but TCP is slower than UDP
• Note: CoAP runs over UDP. If we consider UDP as a road, messages are cars on
the road, and requests/responses are goods on the cars. Requests/Responses are
placed in CoAP message packages.
• T
• ABCD
• C
• The MQTT protocol was invented in 1999 by Andy Stanford-Clark (IBM) and
Arlen Nipper (Arcom, now Cirrus Link). They needed a protocol for minimal
battery loss and minimal bandwidth to connect to oil pipelines via satellite. The
two inventors set several technical objectives for the future protocol:
• About three years after the initial publication, it was announced that MQTT
would be standardized with the help of OASIS, an open organization aiming to
promote standards.
• The standardization process lasted for about one year. On October 29, 2014,
MQTT became an officially approved OASIS standard.
• Unlike the request/response mode, the publish/subscribe mode decouples the
relationship between a publisher and subscriber, making it unnecessary to
establish a direct connection between them. For example, if you call a friend, you
can start communication only after the friend answers the call. This is a typical
synchronous request/response scenario. However, sending an email to a friend
differs. You can do whatever you should do after the email is sent, and your
friend can check the email when they are free. This is a typical asynchronous
publish/subscribe scenario.
• Wildcards can only be used to subscribe to MQTT topics, not to broadcast MQTT
messages.
• Single level: +
• Multi level: #
▫ It must be placed as the last character of the topic filter and preceded by a
forward slash (/).
• At least once (QoS==1): This level guarantees that all messages arrive at least
once but allows for message duplication.
• Exactly once (QoS==2): This level guarantees that all messages arrive exactly
once. This level can be used in the charging system where message loss or
duplication may cause incorrect results.
• The remaining length is the number of bytes remaining within the current
packet, including data in the variable header (10 bytes) and the payload.
• 10 2C
• To initiate a connection, the client needs to send a CONNECT message to the
broker. If the CONNECT message is incorrect (see the MQTT specification) or too
much time is spent between opening a socket message and sending the
CONNECT message, the broker will close the connection. This behavior can
prevent malicious clients from dragging down the broker.
• Retained messages are used when you want new subscribers of a topic to know
the device status immediately after the subscription. The same is true for clients
that regularly send data such as temperature, GPS coordinates, and other data.
Without retained messages, new subscribers cannot obtain the current status
between publish intervals. However, using retained messages can provide a valid
piece of data for a new client immediately.
• LWT is designed to notify other subscribed clients of the unexpected connection
of a client. In practical use, LWT and retained messages are used together to
store the current state on a specific topic. For example, when the client connects
to the broker, it sends a retained message with the "payload" to the topic
client/status. During the connection, the client sends an LWT message with the
payload "offline" and sets the message as a retained message. If the client is
disconnected unexpectedly, the broker will publish the retained message with the
payload "offline". This mode allows other clients, including newly subscribed
clients, to obtain the client status on a specific topic.
• The keep-alive mechanism ensures that the connection is still available and that
the broker and client are informed of being connected to each other. The client
can set an interval of several seconds and send messages to the broker at the
interval after the connection is set up. The keep-alive mechanism defines the
maximum communication duration that can be accepted by the broker and
client.
• PINGREQ packet is sent by the client to the server in the following cases:
▫ When no other control packet is sent from the client to the server, the
client sends a PINGREQ packet to notify the broker that the client is still
alive. The broker sends a PINGRES packet to tell the client that the broker
keeps alive.
▫ TCP, Publish/Subscribe
▫ B
▫ ABC
▫ False
• The formula for converting rssi to dBm in CSQ is as follows:
• For example, when rssi is 30, the corresponding dBm is –53 dBm.
• Set commands, test commands, query commands, and execution commands with
and without parameters.
• Distributed loading: applicable to the quick startup of key services. Services are
loaded in phases, and key services are first.
• Static tailoring: For unnecessary functions and modules, after static tailoring, the
size of the bin and software package of a specific board decreases to reduce
memory overheads. When using static tailoring, remove the symbol dependency
by using the compilation configuration (such as a configuration item), ensuring
the compilation unit of the function or module is not linked.
• The NB-IoT+MCU mode is a common combination. In this mode, the MCU is
used as the main control unit to collect and control data. It sends AT commands
to the module, thereby implementing data interaction between the device and
Internet. The OpenCPU uses the processing capability of the module to complete
the MCU's work. Therefore, the MCU is not required.
• The MIPI RFFE interface is used to connect to an external RF circuit interface.
• One universal UART interface (1.5 Mbit/s in total), two low-power UART
interfaces (supporting asynchronous operations in low-power mode), two I2C
interfaces (1 Mbit/s in total), two SPI interfaces (24 Mbit/s in total), one 10-bit
ADC (818 ksps), one 10-bit DAC, one high-speed analog comparator, and 22
programmable I/Os (configurable)
• Among the 40 PIO pins of the Hi2115, 24 are available on the application core.
The I/O pin functions of each PIO are controlled by software, including the
direction, interrupt configuration, drive strength, and integrated pull-up and pull-
down resistors.
• High real-time performance and stability. Ultra-small kernel. The basic kernel can
be tailored to less than 6 KB. Low power consumption. Dynamic loading and
distributed loading. Static tailoring.