International Journal of Informatics Society, VOL.15, NO.2 (2023) 79-87

79

Industrial Paper

Firmware Distribution with Erasure Coding for IoT Devices
Takenori Sumi†*, Yukimasa Nagai†, Jianlin Guo‡ and Hiroshi Mineno*†

Information Technology R&D Center, Mitsubishi Electric Corporation, Japan*
Graduate School of Science and Technology, Shizuoka University, Japan‡
Mitsubishi Electric Research Laboratories, USA
Sumi.Takenori@dc.MitsubishiElectric.co.jp

Abstract – Due to the increase in the number of IoT devices
connected to the internet, 920 MHz frequency bands for
wireless communication systems are attracting attention forvarious IoT applications, e.g., environmental monitoring,smart metering, process monitoring & control. With wirelesscommunication systems on 920 MHz having the features oflong distance, low rate and low power consumption, a huge
number of IoT devices distributed in wide area can beconnected to communication networks. When distributing thesame data to IoT devices such as firmware distribution during
operation, improving the efficiency of distribution method
becomes an issue. We propose a new firmware distribution
method with erasure coding for IoT devices. Our computer
simulation result shows that proposed method improves theefficiency of distribution by 1.7 times for single-hop
networks and by 1.5 times for multi-hop networks comparedwith conventional method and achieves higher spectrum
efficiency.

Keywords: IoT, Firmware Distribution, Erasure Code1

INTRODUCTION

In addition to smart phone, laptop and tablet connecting to
the internet, IoT devices such as sensors are getting connect
to the internet. Due to the increase in the number of IoT
devices connected to the internet, 920 MHz frequency bands
for wireless communication systems are attracting attention
for various IoT applications, e.g., environmental monitoring
application for location, temperature, humidity and waterlevel, smart metering application, process monitoring &control application. Wireless communication systems on 920
MHz (Sub-1 GHz) have the features of long distance, low rate
(several 10 kbps – 100 kbps) and low power consumption forconventional standards, e.g., IEEE 802.15.4g [1], LoRaWAN[2], SigFox [3], but the higher data rate up to several Mbps isalso considered for applications such as infrastructure
monitoring, surveillance camera in IEEE 802.11ah [4][5],marketed as Wi-Fi HaLow. For long life IoT devices, thefirmware update for a large number of IoT devices is also
considered as new IoT application. Since 920 MHz has thefeatures of long distance from several 100 m to several km, alarge number of IoT devices are deployed in the area. Thus,
firmware distribution for IoT devices using 920 MHz withnarrow band is a challenge. Efficient firmware distribution
method for a large number of IoT devices should beconsidered. In this paper, we focus on 920MHz for IoT
applications and propose the new firmware distribution
method using erasure coding to achieve higher efficiency forlimited radio frequency. Furthermore, since firmware

distribution for IoT devices does not require real-time update,the hardware performance such as memory and CPU power
for using erasure coding is not a major issue. Generally,
updates are expected to occur within tens of minutes to hours
for IoT devices.
The rest of this paper is organized as follows. Section II
presents related work. Section III describes the proposed
firmware distribution with erasure coding. Section IV shows
the simulation architecture and results for various conditions.
Finally, we conclude our paper in Section V.

2

RELATED WORK

There are existing researches for wireless communications
using 920 MHz and firmware distribution. Since 920 MHz isnarrow bands compared to 2.4 GHz and 5 GHz for ISM band,
special regulation for “10 % transmission duty cycle” and“longer backoff mechanisms” are applied in Japan.
Throughput performance has been demonstrated in [6] and[7], which focus on the PHY and MAC protocol enhancement
for higher-throughput, protocol efficiency and delay via
simulation and measurement result using prototypes. For
example, D. Hotta et al. introduce the performance of multihop routing construction using Wi-SUN FAN (Field Area
Network) prototypes based on IEEE 802.15.4g FSK PHY [8].
Japanese standard ARIB STA-T108 (20 mW, unlicensed)
defines the use of IEEE 802.15.4g system from 920.5 –
928.1MHz (7.6 MHz bandwidth), but the ARIB STA-T107(250 mW, passive system) and the ARIB STD-T108 (250mW,
licensed/registered) also define operation from 920.5 – 923.5
MHz (3.0 MHz). Therefore, 923.5 – 928.1 MHz (4.6 MHz
bandwidth) is the only reasonable frequency band for IEEE
802.15.4g applications in the unlicensed spectrum. IEEE
802.15.4g is regulated to operate over 200 kHz bandwidthchannel in the Sub-1 GHz band. Even low duty cycle
constraint applied in the Sub-1 GHz band, e.g., Japanese andEuropean standard allow up to 10% transmission duty cycle[9]-[12] for the number of IoT Devices increased with various
standards. Therefore, ensuring higher efficiency for spectrum
use in the Sub-1 GHz is clearly important.
In IoT applications, such as environmental monitoring
applications for location, temperature, humidity, and water
quantity, as well as smart meter applications, network
topology is constructed around sensor information collection
nodes. IEEE 802.15.4g / Wi-SUN uses RPL (IPv6 Routing
Protocol for Low-Power and Lossy Networks) to construct
network topology. In RPL, network topology is constructedby DODAG (Destination Oriented Directed Acyclic Graph).
In DODAG, each node only has a route to the root, as shownin Figure 1. Routes are constructed by sending and receiving

ISSN1883-4566 © 2023 - Informatics Society and the authors. All rights reserved.

80

T. Sumi et al. / Firmware Distribution with Erasure Coding for IoT Devices

DODAG Information Object (DIO) messages to and fromneighboring nodes. Thus, each node can know the Rank andother information of its neighbors.
Considering firmware distribution, firmware is sent from
Root in Figure 1 to each node. When distributing the same
firmware data to a large number of nodes, it is more efficient
to distribute the firmware data using multicast instead ofsending it to each node via unicast. However, there is an issueof bandwidth congestion if the firmware data is transmitted
by flooding, in which all nodes transfer the firmware data.
Therefore, Multi-Point Relay (MPR) has been proposed as amore efficient transfer method [14]. According to [14],finding the smallest relay set is NP hard, but a heuristic relay
node select is proposed. In the heuristic method, each node
selects one-hop neighbors as a relay node to cover all twohop neighbors. This allows for efficient distribution bylimiting the number of nodes to which firmware data istransferred. Furthermore, to improve the reliability ofdelivery, a method using LT code, one of erasure codes, in
MPR has been proposed [15]-[17]. These schemes improvedelivery efficiency and reliability by network coding with LT
codes on the MPR-constructed transfer path.
However, MPR requires obtaining information on two-hop
nodes in addition to one-hop nodes. In RPL, only the
information of neighbor nodes is notified, and the informationof two-hop nodes is not necessary to notify sensor data to theroot. Furthermore, as mentioned earlier, the 920 MHz band isnarrow and the 10% duty cycle in Japan and Europe makes it
difficult to inform additional information among nodes forfirmware distribution. As the propagation environment
fluctuates, the connection relationships of the nodes alsochange, and the connection relationship information must be
updated among all nodes.
Therefore, this paper proposes a scheme to determine theforwarding node for firmware distribution without priordownward route construction, and a scheme to improve
distribution efficiency with erasure coding.

3
3.1

PROPOSED METHOD
Challenges in Firmware Distribution

Firmware distribution to IoT devices requires sending thesame firmware data to many IoT devices via wirelesscommunication. Firmware distribution using unicast isinefficient because the same firmware data is sent to eachdevice individually. Therefore, it is considered more efficient
to distribute to a large number of IoT devices using broadcast.
However, it is difficult to deliver all firmware data to all IoT
devices in a single communication because wirelesscommunication suffers from packet errors due to low
received signal power and/or interference from other wirelesssystems. As shown in Figure 2, packet errors occur randomly
in IoT devices, requiring large number of packets to be
retransmitted. Therefore, even when broadcasts are used forfirmware distribution, there are issues with distribution
efficiency. In this paper, we propose a method to reduce thenumber of transmitted packets in firmware distribution byusing erasure coding.

Root

Node
#1

Node
#4

Node
#3

Node
#2

Node
#5

Node
#6

Node
#7

Figure 1: Routing Construction using RPL

3.2

Erasure CodeIn this paper, RC QC-LDPC (Rate Compatible QuasiCyclic-LDPC) [18] is used as an erasure code for firmware
distribution. In general, erasure encoding are used for
distributed storage. In distributed storage, it is sufficient to beable to recover the loss of some data out of N, e.g., when someof the multiple storage devices fails. However, in wirelesscommunication, it is necessary to cope with packet errors forsome long time in the time axis direction because of bursty
packet errors. RC QC-LDPC can handle bursty packet errors
because it can take a large number of information packets andredundant packets, as described below. In the related studies
described in Chapter 2, network coding was applied using LT
code based on the forwarding path constructed by MPR. In
this paper, however, standard erasure coding is used insteadof network coding because the downward forwarding path isnot constructed in advance. As shown in Figure 3, RC QCLDPC generates redundant packets by erasure coding
information packets that divide the data to be transmitted into
packets of a certain data length. The data length of
information packets and redundant packets are the same. The
number of information packets, K, is a multiple of 36, and thenumber of redundant packets, M, is equal to K or twice aslarge. RC QC-LDPC can attempt to decode the transmitted
data if the total number of received information packets andredundant packets is K or more. Even if some of the received
information packets are missing, the transmitted data can berecovered using the redundant packets. Figure 4 shows therelationship between “coding redundancy rate” and decoding
success rate. Here, the “coding redundancy rate” is defined as
the sum of the number of information packets Krx and thenumber of redundant packets Mrx at decoding and the original
number of information packets K, using the following
formula (1).

𝐶𝑜𝑑𝑖𝑛𝑔 𝑅𝑒𝑑𝑢𝑛𝑑𝑎𝑛𝑐𝑦 𝑅𝑎𝑡𝑒 =𝐾𝑟𝑥 +𝑀𝑟𝑥
𝐾(1)

Figure 4 shows that RC QC-LDPC does not ensure
successful decoding even when the redundancy is greaterthan 1. The higher the number of information packets K, thehigher the decoding success rate for the coding redundancy
rate. However, the larger the number of information packets
K, the more memory and CPU resources are required for the
decoding process.

International Journal of Informatics Society, VOL.15, NO.2 (2023) 79-87

Firmware Distribution with Erasure Code

Before describing firmware distribution in multi-hop
networks, we describe how loss-correcting codes can beapplied to firmware distribution in single-hop networks. In
the proposed firmware distribution method, as shown in
Figure 5, the transmitter first erasure codes the firmware data
(K information packets in the figure) to generate M
redundancy packets ((1) in the figure). If firmware data islarge, the transmitter performs erasure coding multiple times.
Then, the Transmitter sends up to a total of K information
packets and redundant packets ((2) in the figure). Figure 7
shows the format of information packets and redundant
packets. The Information packet and the redundant packet
contain packet type indicating whether it is an information
packet or redundant packet, sequence number, packet index,
and payload. The sequence number is incremented each time
the transmitting station encodes firmware data and is used to
identify which data the response is to. The packet index
indicates the index of information packets or redundant
packets. After K packets have been sent, depending on thenumber of packet errors in the IoT device, additional
information packets and redundant packets are sent until the
IoT device can decode the firmware data ((3) in the figure).
Here, the additional packets to be sent are those not sent in(2) in the figure. The IoT device uses the received K or more
packets to decode and recover the firmware data ((4) in the
figure). As described in section 3.2, RC QC-LDPC may failin decoding. If decoding fails, additional packets are sentfrom the transmitter and the IoT device performs the
decoding process again.
To implement the proposed method, IoT devices need to
inform the transmitter which packets are missing. In the
proposed scheme, IoT devices notify the transmitter of a
NACK (Negative Acknowledgment) packet and an ACK(Acknowledgment) packet in the sequence shown in Figure 6.
The NACK packet is used to notify which packets are missing,
the ACK packet is used to notify that decoding was successful.
The packet formats of NACK and ACK packets are shown in
Figure 8. Multicast UDP packets is used to send NACK andACK packets, and Figure 8 shows only the UDP payload. The
NACK packet contains packet type indicating whether it is
NACK or ACK, destination node identifier, sequence number
and a bitmap indicating packet loss. The length of the bitmap
is the sum of the number of information packets K and thenumber of redundant packets M. The ACK packet contains
packet type, destination node identifier and sequence number.

Firmware Data
Packet#1

Packet#2

Packet#3

Packet#K

IoT device#1

Packet#1

Packet#2

Packet#3

Packet#K

IoT device#2

Packet#1

Packet#2

Packet#3

Packet#K

IoTdevice#N

Packet#1

Packet#2

Packet#3

Packet#K

Transmitter
Transmit packets to thelarge number of IoT devices

Time

Figure 2: Firmware Distribution for IoT Devices
Data to be transmitted
#1

#2

#3

：Information Packet#K：Redundant Packet

Erasure Coding
#1

#2

#3

#K

#1

#3

#2

#M

Figure 3: Erasure Coding

Decoding Sucess Rate

3.3

81

1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0

K=36
K=72
K=108
K=144
K=180
K=360
K=540

1

1.1
1.2
1.3
1.4
Coding Redundancy Rate

1.5

Figure 4: Redundancy Rate vs. Decoding Success Rate

Firmware Data
#1

#2

#1

#2

#3

#1

#1

#3

IoT device#1#1#1

IoT device#2#1

IoT devie#N#1：Information Packet#3#K：Redundant Packet(1) Generate redundant
packets with erasure code

Erasure Coding
#K

#1

#2

#3

#3

#2

#2

(3) Transmit additional packets
for erasure correcting

#3

#3

#2

#2

#1

#3

#3

#2

#2

#1

#3

#3

#2

#2

(2) Transmit K packets
Transmitter

Time

#M

(4) IoT devices correct
firmware data with received
information packets andredundant packets
Decodingwith EC
Firmware Data

Figure 5: Proposed firmware distribution with EC

82

T. Sumi et al. / Firmware Distribution with Erasure Coding for IoT Devices

IoT
IoT
IoT
device#1 device#2 device#3

Transmitter

Transmit
information/redundant
packet by broadcast

・・・

Packet loss

Decoding with EC
successfail

fail
IoT device#2 and #3 send NACK
packet for requesting additional
information/redundant packet

IoT device#1 sends
ACK packet to notify
decoding successTransmit additional
information/redundant
packet for IoT devices#2
and #3 by broadcast

Decodingwith EC
success successIoT device#2 and #3 send
ACK packet to notify
decoding success4: Information/Redundtant Packet: NACK Packet: ACK Packet

Figure 6: Packet sequence of the proposed method
1 Byte2 BytePacket Hop
type
count

Sequence
number

1 Byte2 BytePayloadPacketindex

Figure 7: Packet format of information packet andredundant packet
1 Byte2 Byte(K + M)/8 Byte

NACK Packet

Packet Destination Sequence
type
numberPacket loss bitmap
1: Received, 0: Packet lost

ACK Packet

Packet Destination Sequence
type
number

1 Byte2 Byte2 Bytenotification is the same as Node#4. After each node sends its
first K packet, only the node that receives an ACK or NACK
packet from the next hop node will perform the transfer,
thereby reducing the number of nodes transferring firmware
data in a multi-hop network and improving delivery
efficiency. Furthermore, the number of hops in theinformation packet or redundant packet of each node and thereception power of the packet can be used to determine thecandidate destination for ACK or NACK packet notification,
so that the network topology can be maintained and a nodewith stable reception power can be selected as the ACK or
NACK packet destination. In addition, the timing of ACK or
NACK notification is shifted for each node by a random
number to consolidate the ACK or NACK notification
destinations.

2 ByteFigure 8: Packet formats of NACK and ACK packet

3.4 Firmware Distribution in Multi-hop
Networks
Section 3.3 described the firmware distribution method insingle-hop networks. In this section, we describe thefirmware distribution method in multi-hop networks.
As discussed in Chapter 2, in IoT applications, each node
only needs to know the path to the root node in order to collectsensor data to the root node. However, firmware distribution
is distributed from the root node via a downward path. To
improve the efficiency of distribution, the number offorwarding nodes needs to be reduced, as in MPR. The
proposed method reduces the number of forwarding nodes byusing ACK or NACK packets used to confirm the delivery of
firmware distribution. In the multi-hop network shown in
Figure 9, firmware data can be delivered to all nodes if only
Node#1 and Node#3 perform forwarding. The red dottedlines in the figure indicate possible communication paths. In
the proposed scheme, firmware data is divided into packets
of a certain size and transmitted with erasure coding for each
K packets. After receiving the first K packets, each node
sends ACK or NACK to the source node by multicast. Here,if Node#4 sends an ACK or NACK packet to Node#1 first,
Node#5 can receive the ACK or NACK packet sent by
Node#4. If Node#5 has not yet sent an ACK or NACK packet,
Node#5 can make Node#1 the destination for ACK or NACK
packets, so that the destination for ACK or NACKSIMULATION EVALUATION

We evaluate the proposed method using computer
simulation. Table 1 shows simulation parameters. In thecomputer simulation, IEEE 802.15.4g, which is used in IoT
devices in the 920 MHz band, was used as the wirelesscommunication method and evaluated in an environment
where IoT devices are connected in a star network or meshnetwork from a transmitter. IEEE 802.15.4g is acommunication method used for smart utility networks [19],and according to TTC JJ-300.10 [20], it is also used for smart
meters in Japan. In this simulation, the parameter values of
MAC and PHY of IEEE 802.15.4g and JJ-300.10 are used.
Assuming environmental monitoring using smart sensors, thenumber of IoT devices is assumed to range from 1 to 100 inconsideration of installation on office (indoor use case) anduniversity campus (outdoor use case) for single-hop network,and from 100 to 1000 in consideration of installation on
suburban area for multi-hop network. The firmware data is
divided into 248 Bytes each and multicast to the IoT device
as the payload of information packets. RC QC-LDPC wasused as erasure code, and the number of information packets
K and redundancy packets M were set to 36 - 540. In thecomputer simulation, the conventional firmware distribution
without erasure code also broadcasts the firmware data to the
IoT devices by dividing it into 248 Bytes each, as in the
proposed method. Then, after the K-packet transmission isfinished, the IoT devices send ACK or NACK to thetransmitter to notify whether it needs to retransmit data. This
is to ensure that the opportunities to send ACK and NACK
packets are the same for the conventional and proposed
methods. In the conventional method, the number of
redundancy packets M is 0 because erasure coding is not
performed for the firmware data.
Root

Relay Firmware Data

Node
#4

Node
#1

Tx Firmware Data

Node
#3

Node
#2

Node
#5

Node
#6

Relay Firmware Data

Node
#7

Figure 9: Firmware distribution in multi-hop networks

International Journal of Informatics Society, VOL.15, NO.2 (2023) 79-87

Table 1: Simulation parameters

Firmware distribution parameters

Value

The number of IoT devices

Single-hop: 1 – 100
Multi-hop : 100 - 1000
Rate-Compatible QC-LDPC
36, 72, 108, 144, 180, 360,
540
Conventional method: 0
Proposed method: same as K
248 Byte
1 Byte1+(K+M)/8 Byte
53 ByteIEEE 802.15.4g
Value
5
8
1000 us1130 us130 us1000 us1000 us
11 Byte2 ByteValue
100 kbps
2-FSK
1.0
923.7 MHz
400 kHz
SEAMCAT Extended Hata
Model (Suburban)
1.5 m

Erasure code
K, the number of information packets
M, the number of redundant packets
Firmware distribution packet length
Firmware distribution ACK packet
Firmware distribution NACK packet
6LowPAN and UDP header
PHY/MAC
MAC parameters
macMinBE
macMaxBE
LIFS
aUnitBackoffPeriod
phyCcaDuration
aTurnaroundTimetack
MAC header size
FCS
PHY parameters
Data rate
Modulation
Modulation index
Frequency
Channel spacing
Propagation Model
Antenna height

4.1

Single-hop Network Evaluation

First, the relationship between the number of information
packets K and effective throughput is shown in Figure 10,
which shows the simulation results when firmware is
distributed to 20 IoT devices and PER is 10%. Since a PERof 10% or less is often set for wireless communication
systems to take operations into account [19], the simulations
for single-hop network in this paper are based on an
evaluation at a PER of 10%. According to the figure, thethroughput of the proposed method with erasure coding ishigher than that of the conventional method without erasurecoding, regardless of the value of K. As the value of K
increases, the effective throughput of the proposed method
increases. As mentioned in section 3.2, this is because thelarger K is, the higher decoding success rate at the same
redundancy rate. However, the memory and decoding
processing load increases as K increases. The relationshipbetween K ant the memory size required for erasure coding isshown in Figure 11. The required memory size increases
linearly with K. On the other hand, Figure 10 shows thatthroughput improvement slows down when K is greater than180. Furthermore, if K is greater than 180, the required
memory size exceeds 100 KB. Therefore, for embedded
devices with limited memory size, it is better to set K to 180.
The subsequent simulation evaluation will be performed forthe case where the number of information packets K is 180,
where the effective throughput increase rate by the proposed
method is relatively high.
Next, Figure 12 shows the simulation result on therelationship between PER and effective throughput whenfirmware is distributed to 20 IoT devices with the number of83

information packets K set to 180. The figure shows that if the
PER is 1% or higher, the effective throughput is higher withthe proposed method than with the conventional method.
However, the effective throughput at a PER of 0% with nopacket errors is approximately 40 kbps for the conventional
method, but 33 kbps for the proposed method, which islower than the conventional method. As mentioned in Section
3.2, this is because RC QC-LDPC codes may not succeed in
decoding even if a total of K or more information packets andredundancy packets are received. Additional packets need to
be sent from the transmitter to the IoT devices. Since packet
errors occur in wireless communication systems, theproposed method can be applied to improve the effective
throughput in an environment with a PER < 10%, where
wireless communication systems are normally operated.
Finally, the relationship between the number of IoT
devices and effective throughput is shown in Figure 13,
which shows simulation results when the number of
information packets K is 180 and PER is 10%. The figure
shows that the effective throughput of the proposed method
is higher than that of the conventional method when firmware
distribution is performed to two or more IoT devices. In thecase of a single IoT device, the effective throughput is lower
than the conventional method due to the significant impact ofthe possibility of unsuccessful decoding even if the numberof received packets is K or more. For 20 IoT devices, it is 1.60
times the effective throughput of the conventional method;for 50 devices, it is 1.73 times; and for 100 devices, it is 1.76
times. However, as the number of IoT devices increases, theeffective throughput decreases: 29.7 kbps for 20 IoT devices,24.8 kbps for 50 devices, and 19.8 kbps for 100 devices. Thisis likely due to an increase in NACK packets.
The transmission duty cycle of the transmitter in thesimulation of Figure 13 is shown in Figure 14. As mentioned
in Chapter 2, Japanese and European standard allow up to
10% transmission duty cycle. Figure 14 shows that regardlessof the number of IoT devices, the transmission duty cycle ofthe transmitter exceeds 10% for both the proposed andconventional methods. The transmission duty cycle of the
proposed method is lower than that of the conventional
method, and it tends to be lower when the number of IoT
devices is larger. Therefore, in Japan and Europe, when thetransmission duty cycle is 10% or less, the difference between
the effective throughput of the proposed method and theconventional method is expected to widen. The firmware
delivery time to 100 IoT devices is shown in Figure 15
considering that IoT devices are communicating in normal
operation, i.e., notifying sensor data, the firmware
distribution time was evaluated with the firmware delivery
bandwidth usage rate as 1%, 5%, and 10%. The difference infirmware delivery time when erasure coding is applied or not
applied is about 8.5 hours when the firmware data size is 256
KB, 1.7 hours when the bandwidth utilization is 1%, 1.7 hours
when 5%, and 0.85 hours when 10%. However, when thefirmware data size increases, for example, to 1024 KB, thedifference is 34 hours at 1%, 13.6 hours at 5%, and 6.8 hours
at 10%. If the normal state communication of the IoT device
is bandwidth-hungry and the firmware data size is 1024 MB
or larger, the proposed method can improve the firmware
delivery time by half a day to a day or more.

84

T. Sumi et al. / Firmware Distribution with Erasure Coding for IoT Devices

35
30

25
20

with Erasure Coding

15

w/o Erasure Coding

10

5Transmission Duty Cycle[%]Effective Throughput[kbps]

40

0
0

100

200

300
K

400

500

100
90
80
70
60
50
40
30
20
10
0

with Erasure Coding
w/o Erasure Coding

0 10 20 30 40 50 60 70 80 90 100
IoT Devices

600

Figure 10: K vs. Throughput (PER: 10%, 20 devices)

Figure 14: The number of IoT devices vs. Duty Cycle(K: 180, PER: 10%)

300
160

140

200

120

Distribution Time[h]Memory Size[KB]

250

150
100
50

80

Bandwith usage rate 10% (withErasure Coding)60

Bandwith usage rate 1% (w/oErasure Coding)
Bandwith usage rate 5% (w/oErasure Coding)
Bandwith usage rate 10% (w/oErasure Coding)

20

0

100

200

300
K

400

500

600
0

0

Figure 11: K vs. Memory Size

35

4.2

30
25
20

with Erasure Coding

15

w/o Erasure Coding

10
5
0

0

5

10
PER[%]

15

20

Figure 12: PER vs. Throughput (K: 180, 20 devices)
40
35
30
25
20

with Erasure Coding

15

200 400 600 800 1000 1200 1400 1600 1800 2000 2200
Firmware Data Size[KB]

Figure 15: Firmware Data Size vs. Distribution Time
(K: 180, PER: 10%, 100 devices)

40

Effective Throughput[kbps]

Bandwith usage rate 5% (withErasure Coding)400Effective Throughput[kbps]

Bandwith usage rate 1% (withErasure Coding)100

w/o Erasure Coding

10
50
0 10 20 30 40 50 60 70 80 90 100
IoT Devices

Figure 13: The number of IoT devices vs. Throughput(K: 180, PER: 10%)Multi-hop Network Evaluation

For the evaluation of the multi-hop network, firmware datatransmitter is placed at the center of a circle with a radius of
500 m, and 100 to 1000 nodes are randomly placed within thecircle. Suburban of SEAMCAT Extended Hata Model wasused as the propagation model and the received power was
calculated. Figure 16 shows the relationship between distanceand received power. With 2-FSK, the modulation scheme
used in the simulation, reception is stable down to a minimumof -90 dBm, which is about 89 m from the figure. In MPR, 1hop and 2-hop nodes were calculated with an upper limit of
80 m distance to account for packet errors due to interference.
For the number of information packets K of erasure coding,
180 was used based on the single-hop evaluation. In the
single-hop evaluation, since only the transmitter sends
firmware data packets, frame collisions did not occur, so thepacket error rate was set and packet errors were generated
randomly, but in multi-hop, multiple nodes transfer firmware
data packets, so frame collisions occur. Therefore, the packet
error rate was not set, and the evaluation was based on packet
loss due to frame collisions.
First, Figure 17 shows an example of terminal placement
under the MPR method and the proposed method in which therelay node is determined by ACK or NACK packets forfirmware distribution. The figure shows an example with 500
nodes. The black dotted line connecting each node indicatesthat firmware data is being transferred by relay. In theInternational Journal of Informatics Society, VOL.15, NO.2 (2023) 79-87

-60
-70
-80
-90
-100
-110
0

20

40

CONCLUSION

We proposed the new firmware distribution method using
erasure coding to achieve higher efficiency for limited radio
frequency and the method for selecting relay nodes in a multihop network without additional downward routing
information. The performance of the proposed method wasevaluated by computer simulation and compared to theeffective throughput of conventional firmware distribution
methods. For single-hop network, by applying the proposed
method to firmware distribution, the effective throughput was
found to be 1.60 times higher than that with the conventional
method when there are 20 IoT devices receiving firmware
data, 1.73 times higher when there are 50 devices, and 1.76
times higher when there are 100 devices. For multi-hop
network, by applying the proposed method to firmware
distribution, effective throughput was found to be about 1.5

60

80

100
120
Distance[m]

140

160

180

200

Figure 16: Distance vs. Received power(2)Here, PFWn is the total size of firmware data packets(information packets or redundant packets) sent by node#n,
PACKn is the total size of ACK packets sent by node#n, PNACKn
is the total size of NACK packets sent by node#n, PFW is thesize of a firmware data packet, K is the number of information
packets for erasure coding, and N is the number of nodes. In
other words, the redundancy of packet transmission is
calculated based on the size of the transmitted data when all
nodes except the firmware data transmission node transmit
the firmware data once. The figure shows that the proposed
method and MPR have almost the same level of redundancy,
ranging from 0.5 to 0.6. In the case of flooding, theredundancy is about 1.1 to 1.2, indicating that the proposed
method can deliver firmware data in about half thetransmission time compared to flooding.

5-50Proposed

MPR

y[m]

𝑃𝐹𝑊 𝐾𝑁-40

Relay nodes: 244

Relay nodes: 237
x[m]

x[m]

Figure 17: Example of relay node selection (500 nodes)
5
4.5

Effective Throughput[kbps]∑𝑁
𝑛=1 𝑃𝐹𝑊𝑛 +𝑃𝐴𝐶𝐾𝑛 +𝑃𝑁𝐴𝐶𝐾𝑛

-30

y[m]

𝑃𝑎𝑐𝑘𝑒𝑡 𝑇𝑟𝑎𝑛𝑠𝑚𝑖𝑠𝑠𝑖𝑜𝑛 𝑅𝑒𝑑𝑢𝑛𝑑𝑎𝑛𝑐𝑦 =times. The memory size required for encoding is about 100
KB for the erasure encoding scheme used in this paper, whichis considered to be operable on mid- to high-performancemodels of embedded CPUs. However, we plan to investigate
memory-saving erasure coding schemes that can operate oneven lower-performance models in the future. Furthermore,in this paper, we evaluated the performance with computer
simulation. Our future work is conduct evaluations using
actual equipment taking into account the amount of memoryand other factors.

Received Power[dBm]proposed method, 244 out of 500 nodes are set as relay nodes,
while in MPR, 237 nodes are set as relay nodes, which arealmost equal in number. It can be seen that the proposed
method can set up the same number of relay nodes as MPR
without having any routing information other than the uplinkroute by RPL.
Next, Effective throughput is shown in Figure 18 for the
proposed method, MPR, and flooding with and without
Erasure coding, respectively. The figure shows that the
proposed method and MPR achieve almost the same effective
throughput. Compared to the flooding case, the proposed
method improves effective throughput by about 20-25%. In
addition, the effective throughput is improved by 52-57%
when Erasure coding is used in the proposed method
compared to the case where Erasure coding is not used inflooding. The average and maximum number of hops areshown in Figure 19. The figure shows that for 400 or more
IoT devices, the average and maximum hop counts are almost
equal. This means that the decrease in effective throughput is
not caused by an increase in the number of hops, but by anincrease in the number of terminals.
Finally, Figure 20 shows the packet transmission
redundancy. The redundancy of packet transmission isexpressed by the following formula (2).

85

4
3.5
3
Proposed with Erasure Coding

2.5

MPR with Erasure Coding
Flooding with Erasure Coding

2

Proposed w/o Erasure Coding
MPR w/o Erasure Coding

1.5

Flooding w/o Erasure Coding

1
0.5
0
0

200

400

600

800

1000

The number of nodes

Figure 18: Effective throughput (Multi-hop)

86

T. Sumi et al. / Firmware Distribution with Erasure Coding for IoT Devices

12

Number of hops

10
8
6

Average
Maximum

4
2

0
0

200

400
600
The number of nodes

800

1000

Redundancy

Figure 19: Average and maximum hops
1.5
1.4
1.3
1.2
1.1
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0

Proposed with Erasure Coding
MPR with Erasure Coding
Flooding w/o Erasure Coding
Proposed w/o Erasure Coding
MPR w/o Erasure Coding
Flooding with Erasure Coding

0

200

400

600

800

1000

The number of nodes

Figure 20: Packet transmission redundancy(Multi-hop)

REFERENCES[1] IEEE 802.15.4g-2012, “IEEE Standard for Local andmetropolitan area networks – Part 15.4: Low-RateWireless Personal Area Networks (LR-WPANs)
Amendment 3: Physical Layer (PHY) Specifications
for Low-Data-Rate, Wireless, Smart Metering Utility
Networks,” IEEE 802.15.4g-2012, IEEE, (2012).
[2] LoRa Alliance, “LoRaWAN 1.1 Specification,”(2017).
[3] Sigfox,“Sigfoxconnected
objects:
Radio
specifications Rev. 1.6,” (2022).
[4] IEEE 802.11ah-2016, “IEEE Standard for Information
technology-Telecommunications and informationexchange between systems – Local and metropolitan
area networks – Specific requirements – Part11:
Wireless LAN Medium Access Control (MAC) andPhysical Layer (PHY) Specifications Amendment 2:
Sub 1 GHz License Exempt Operation,” IEEE
802.11ah-2016, IEEE, (2016).
[5] 802.11ah Promotion Councill, “IEEE802.11ah Usecase,” https://www.11ahpc.org/pdf/usecase-eng.pdf,(2019).
[6] C.-S. Sum, F. Kojima, and H. Harada, ‘‘Performance
analysis of a multiPHY coexistence mechanism forIEEE 802.15.4g FSK network,’’ in Proc. IEEE
Wireless Communication Network. Conf. (WCNC),
pp. 41–46, (2013).
[7] F. Righetti, C. Vallati, D. Comola, and G. Anastasi,‘‘Performance measurements of IEEE 802.15.4g
wireless networks,’’ in Proc. IEEE 20th Int.

Symposium World Wireless, Mobile Multimedia
Network (WoWMoM), pp. 1–6, (2019).
[8] D. Hotta, R. Okumura, K. Mizutani, and H. Harada,‘‘Stabilization of multi-hop routing construction in
Wi-SUN FAN systems,’’ in Proc. IEEE 17th Annual
Consumer Communication and Network Conference(CCNC), pp. 1–6, (2020).
[9] ARIB STD-T107 version 1.1, “920MHz-Band RFID
Equipment for Specified Low Power Radio Station,”(2017).
[10] ARIB STD-T108 version 1.4, “920MHz-Band
Telemeter, Telecontrol and Data Transmission Radio
Equipment,” (2021).
[11] Y. Nagai, J. Guo, P. Orlik, B. A. Rolfe, and T. Sumi,“Proposal for Section 6.1 Japan on Recommended
Practice for Local and Metropolitan Area Networks Part 19: Coexistence Methods for 802.11 and802.15.4 based systems operating in the Sub-1 GHz
Frequency
Bands,”
IEEE
802.19-19/0049r0,
https://mentor.ieee.org/802.19/2019/, IEEE 802.19,(2019).
[12] T. Sumi, Y. Nagai, J. Guo, and P. Orlik, “920 MHz
Status Update in Japan,” IEEE 802.19-18/0084r0,
https://mentor.ieee.org/802.19/2018/, IEEE 802.19,(2018).
[13] RFC 6550, “RPL: IPv6 Routing Protocol for LowPower and Lossy Networks,” IETF, (2012).
[14] A. Qayyum, L. Viennot, and A. Laouiti, “Multipoint
Relaying: An Efficient Technique for Flooding in
Mobile Wireless Networks,” in The 35th Annual
Hawaii International Conference on System Sciences,(2001).
[15] N. Kadi and K. A. Agha, “Optimized MPR-based
flooding in wireless ad hoc network using network
coding,” in 1st IFIP Wireless Days, (2008).
[16] K. A. Agha, N. Kadi, and I. Stojmenovic, “Fountain
Codes with XOR of Encoded Packets for Broadcastingand source independent backbone in Multi-hop
Networks using Network Coding,” in IEEE VTC
Spring 2009, (2009).
[17] N. Kadi and K. A. Agha, “MPR-based flooding with
distributed fountain network coding,” in 2010 The 9th
IEIP Annual Mediterranean Ad Hoc Networking
Workshop (Med-Hoc-Net), (2010).
[18] W. Matsumoto, R. Sakai, H. Yoshida, “Rate
Compatible QC-LDPC codes,” SITA 2006, pp.387390, (2006).
[19] IEEE 802.15.4-2020, “IEEE Standard for Low ‐RateWireless Networks,” IEEE 802.15.4-2020, IEEE,(2020).
[20] TTC Standard JJ-300.10 Version 2.2, “Home Network
Communication Interface for ECHONET Lite(IEEE802.15.4/4g/4e 920 MHz-band Wireless),” TTC,
Version 2.2, (2015).
(Received: March 1, 2023)(Accepted: June 29, 2023)

International Journal of Informatics Society, VOL.15, NO.2 (2023) 79-87

Takenori Sumi received B.E. degree andM.E. degree in Faculty of Engineering of
Doshisha University, Kyoto, Japan in 2005
and 2007, respectively. He is currently a Ph.D
student in Graduate School of Science andTechnology, Shizuoka University, Japan. He
has been working as a senior researcher atInformation Technology R & D Center of
Mitsubishi Electric Corporation from 2007.
His current research interests include
spectrum sharing, wireless coexistence and V2X. He is also engaged
in the Wi-Fi architect and network architect for embedded system.
IEEE Senior member, IEICE member and IPSJ member.
Yukimasa Nagai received B.E. and M.E.
degrees from The University of ElectroCommunications, Japan in 1998 and 2000,
respectively. In 2022, he received his Ph.D.
degree in informatics from Graduate Schoolof Science and Technology, Shizuoka
University, Japan. He has been working at
Mitsubishi Electric Corporation in Japan(2000-2016, 2020-) and Mitsubishi ElectricResearch Laboratories in USA (2016-2020).
His research work has covered various topics on communication
systems, IoT, CN and he has acted as key parts of getting
standardization groups formed in Wi-Fi Alliance and IEEE
802.11/15/19. Wi-Fi Alliance Automotive MSTG Vice Chair, IEEE
Senior member, and IPSJ member.
Jianlin Guo is a Senior Principal Research
Scientist at Mitsubishi Electric ResearchLaboratories in Cambridge, Massachusetts,
USA. He received his Ph.D. in 1995 from
University of Windsor, Canada. His researchinterests include coexistence of theheterogeneous wireless networks, routing andresource management in wireless IoT
networks, distributed machine learning, time
sensitive networking, edge computing forvehicular networks, networked control systems, and fault detection
in industrial automation. He served as the Technical Editor for IEEE
802.19.3 Task Group. He is IEEE Senior Member.
Hiroshi Mineno received his B.E. and M.E.
degrees from Shizuoka University, Japan in
1997 and 1999, respectively. In 2006, hereceived his Ph.D. degree in information
science and electrical engineering from
Kyushu University, Japan. Between 1999 and
2002, he was a researcher in the NTT Service
Integration Laboratories. In 2002, he joined
the Department of Computer Science of
Shizuoka University as an Assistant Professor.
He is currently a Professor. His research interests include Intelligent
IoT systems as well as heterogeneous network convergence. He is asenior member of IEEE, IEICE and IPSJ, a member of ACM and theInformatics Society.

87