HUM-A-FFF-PRO [LINX]
Amplified HumPROTM Series 900MHz Transceiver Module;型号: | HUM-A-FFF-PRO |
厂家: | Linx Technologies |
描述: | Amplified HumPROTM Series 900MHz Transceiver Module |
文件: | 总61页 (文件大小:3449K) |
中文: | 中文翻译 | 下载: | 下载PDF数据表文档文件 |
Amplified HumPROTM Series
900MHz Transceiver Module
Data Guide
Warning: Some customers may want Linx radio frequency (“RF”)
!
Table of Contents
products to control machinery or devices remotely, including machinery
or devices that can cause death, bodily injuries, and/or property
damage if improperly or inadvertently triggered, particularly in industrial
settings or other applications implicating life-safety concerns (“Life and
Property Safety Situations”).
1 Description
1 Features
2 Ordering Information
2 Absolute Maximum Ratings
3 Electrical Specifications
5 Typical Performance Graphs
10 Pin Assignments
NO OEM LINX REMOTE CONTROL OR FUNCTION MODULE
SHOULD EVER BE USED IN LIFE AND PROPERTY SAFETY
SITUATIONS. No OEM Linx Remote Control or Function Module
should be modified for Life and Property Safety Situations. Such
modification cannot provide sufficient safety and will void the product’s
regulatory certification and warranty.
10 Pin Descriptions
Customers may use our (non-Function) Modules, Antenna and
Connectors as part of other systems in Life Safety Situations, but
only with necessary and industry appropriate redundancies and
in compliance with applicable safety standards, including without
limitation, ANSI and NFPA standards. It is solely the responsibility of any
Linx customer who uses one or more of these products to incorporate
appropriate redundancies and safety standards for the Life and
Property Safety Situation application.
12 Module Pin Assignments
13 Module Dimensions
14 Theory of Operation
15 Module Description
16 Overview
18 Addressing Modes
20 Automatic Addressing
20 Address Register Use
21 Acknowledgements and Assured Delivery
22 Frequency Hopping Spread Spectrum
23 Compatibility with the 250 Series
23 Networking
Do not use this or any Linx product to trigger an action directly
from the data line or RSSI lines without a protocol or encoder/
decoder to validate the data. Without validation, any signal from
another unrelated transmitter in the environment received by the module
could inadvertently trigger the action.
All RF products are susceptible to RF interference that can prevent
communication. RF products without frequency agility or hopping
implemented are more subject to interference. This module does have
a frequency hopping protocol built in, but the developer should still be
aware of the risk of interference.
24 Transmitting Packets
25 Receiving Packets
29 Using the Buffer Empty (BE) Line
30 Exception Engine
32 Carrier Sense Multiple Access (CSMA)
33 Using the Command Response (CRESP) Line
34 Using the CMD Line
35 AES Encryption
38 Using the MODE_IND Line
39 Using the PB Line
Do not use any Linx product over the limits in this data guide.
Excessive voltage or extended operation at the maximum voltage could
cause product failure. Exceeding the reflow temperature profile could
cause product failure which is not immediately evident.
Do not make any physical or electrical modifications to any Linx
product. This will void the warranty and regulatory and UL certifications
and may cause product failure which is not immediately evident.
40 Restore Factory Defaults
40 Using the Low Power Features
41 Baud Rate and Transmitter Output Power
42 The Command Data Interface
43 Reading from Registers
Amplified HumPROTM Series 900MHz
RF Transceiver Module
Data Guide
Description
44 Writing to Registers
45 Command Length Optimization
46 Example Code for Encoding Read/Write Commands
48 The Command Data Interface Command Set
95 Typical Applications
96 Usage Guidelines for FCC Compliance
96 Additional Testing Requirements
97 Information to the user
The Amplified HumPROTM Series transceiver
module is the most cost effective and easiest
to implement solution for a long range wireless
connection. It is a frequency hopping spread
spectrum (FHSS) transceiver designed for the
reliable transfer of digital data. It has a fast
lock time so it can quickly wake up, send data
and go back to sleep. A high-power 25dBm
amplifier gives the module exceptional range.
0.66 in
(16.66 mm)
1.01 in
(25.70 mm)
0.12 in
(2.90 mm)
0.05 in
(1.27 mm)
Figure 1: Package Dimensions
98 Product Labeling
98 FCC RF Exposure Statement
98 Antenna Selection
100 Power Supply Requirements
100 Antenna Considerations
101 Interference Considerations
102 Pad Layout
The module has several features that increase the data transfer reliability.
It ensures that no other modules are transmitting before it begins
transmitting data. Automatic acknowledgements ensure that the remote
side received valid data. Multiple hopping patterns enable several systems
to operate in proximity without interference. A standard UART interface
is used for module configuration and data transfer. The module’s code
is pre-compiled, so a few serial commands are all that are needed for
configuration. No compiler or special tools are required.
102 Castellation Version Reference Design
103 Microstrip Details
104 Board Layout Guidelines
105 Helpful Application Notes from Linx
106 Production Guidelines
106 Hand Assembly
106 Automated Assembly
108 General Antenna Rules
All modules have a unique 32-bit serial number that can be used as an
address. Source and destination addressing support point-to-point,
broadcast and star links. Address masking by the receiving module allows
for creating subnets. Other network topologies can also be implemented.
Housed in a tiny compact reflow-compatible SMD package, the transceiver
requires no external RF components except an antenna, which greatly
simplifies integration and lowers assembly costs. The module has obtained
FCC and Industry Canada modular certifications.
110 Common Antenna Styles
112 Regulatory Considerations
114 Notes
Features
•ꢀ Long Range (up to 8 miles)
•ꢀ Simple UART interface
•ꢀ Pre-compiled code
•ꢀ FCC and IC Pre-certified
•ꢀ Secure and encrypted
•ꢀ Multiple addressing modes
•ꢀ Tiny extended PLCC-44 footprint
•ꢀ Mixed-mode systems
–
–
1
Revised 6/19/2017
Ordering Information
Electrical Specifications
Amplified HumPROTM Series Transceiver Specifications
Ordering Information
Parameter
Symbol
Min.
Typ.
Max.
Units Notes
Part Number
Description
Amplified HumPROTM Series High Power Data Transceiver with
Castellation Connection
Power Supply
HUM-A-900-PRO-CAS
Operating Voltage
TX Supply Current
@ +25dBm
VCC
2.7
3.3
3.6
VDC
Amplified HumPROTM Series High Power Data Transceiver with
U.FL Connector
lCCTX
HUM-A-900-PRO-UFL
380
260
39
*
*
mA
mA
mA
µA
1,2
1,2
Amplified HumPROTM Series Carrier Board, Castellation
Connection with an edge-mount RP-SMA connector
EVM-A-900-PRO-CAS
@ +22dBm
EVM-A-900-PRO-UFL Amplified HumPROTM Series Carrier Board, U.FL Connector
RX Supply Current
Power-Down Current
RF Section
lCCRX
lPDN
1,2,3
1,2
MDEV-A-900-PRO
Amplified HumPROTM Series Master Development System
<1
Figure 2: Ordering Information
Operating Frequency Band
HUM-900-PRO-vvv
Number of hop channels
@ 19.2kbps RF Rate
@ 153.6kbps RF Rate
Channel spacing
FC
MHz
MHz
902
928
50
26
Absolute Maximum Ratings
Absolute Maximum Ratings
Supply Voltage Vcc
@ 19.2kbps RF Rate
@ 153.6kbps RF Rate
20 dB OBW
375.9
kHz
kHz
−0.3
−0.3
to
to
+3.9
VDC
VDC
dBm
ºC
751.81
Any Input or Output Pin
RF Input
VCC + 0.3
+5
to
@ 19.2kbps RF Rate
@ 153.6kbps RF Rate
Receiver BW
98
kHz
kHz
Operating Temperature
Storage Temperature
−40
−40
+85
+85
319
to
ºC
Exceeding any of the limits of this section may lead to permanent damage to the device.
Furthermore, extended operation at these maximum ratings may reduce the life of this
device.
@ 19.2kbps RF Rate
@ 153.6kbps RF Rate
FSK deviation
102
232
kHz
kHz
@ 19.2kbps RF Rate
@ 153.6kbps RF Rate
Scan time / channel (avg)
@ 19.2kbps RF Rate
@ 153.6kbps RF Rate
FHSS Lock time
19.2
51
kHz
kHz
Figure 3: Absolute Maximum Ratings
1.2
ms
ms
0.335
Warning: This product incorporates numerous static-sensitive
components. Always wear an ESD wrist strap and observe proper ESD
handling procedures when working with this device. Failure to observe
this precaution may result in module damage or failure.
@ 19.2kbps RF Rate
@ 153.6kbps RF Rate
Modulation
63
26
ms
ms
2FSK
6/7 RLL
Data Encoding
Number of Hop Sequences
6
–
–
–
–
3
2
Amplified HumPROTM Series Transceiver Specifications
Amplified HumPROTM Series Transceiver Specifications
Parameter
Symbol
Min.
Typ.
Max.
Units Notes
Parameter
Interface Section
UART Data rate
Input
Symbol
Min.
Typ.
Max.
Units Notes
Receiver Section
Saturation (max input level)
@ 19.2kbps RF rate
@ 153.6kbps RF rate
IF Frequency
9,600
115,200
0.3*VCC
bps
–21
–23
dBm
dBm
kHz
5
Logic Low
Logic High
Output
VIL
VIH
VDC
VDC
304.7
0.7*VCC
0.7*VCC
Receiver Sensitivity
@ 19.2kbps RF rate
@ 153.6kbps RF rate
RSSI Dynamic Range
@ 19.2kbps RF rate
@ 153.6kbps RF rate
Transmitter Section
Max Output Power
@ 19.2kbps RF rate
@ 153.6kbps RF rate
Minimum Output Power
2nd Harmonic Emissions
3rd Harmonic Emissions
Antenna Port
–108
–101
dBm
dBm
5
5
Logic Low, MODE_IND,
BE
VOLM
VOHM
0.3*VCC
0.3*VCC
VDC
VDC
1,9
1,9
Logic High, MODE_IND,
BE
85
80
dB
dB
Logic Low
Logic High
VOL
VOH
1,10
1,10
11
0.7*VCC
10
CRESP Hold Time
Bits
Flash (Non-Volatile) Memory Specifications
Flash Write Cycles
PO
PO
PO
PH
PH
+25
+22
–9
dBm
dBm
dBm
dBc
6
6
16,000 cycles
10. 6mA source/sink
11. End of CMD_DATA_OUT stop bit to
change in CRESP
12. Number of register write operations
13. With CSMA disabled
14. Start of factory reset command to end
of last ACK response
12
1. Measured at 3.3V VCC
2. Measured at 25ºC
3. Input power < -60dBm
4. Characterized but not tested
5. PER = 1%
6. Into a 50-ohm load
7. No RF interference
8. From end of command to start of
response
6
–20
-54
6
dBuV/m
6,15
15. Radiated field strength @3m w/
approved antennas
RF Impedance
RIN
50
Ω
4
4
Environmental
9. 60mA source/sink
Operating Temp. Range
Timing
−40
87
+85
138
ºC
Figure 4: Electrical Specifications
Module Turn-On Time
Via VCC
ms
ms
ms
4
4
4
Via POWER_DOWN
Via Standby
6
6
Serial Command Response
Volatile R/W
0.4
2.4
5
ms
ms
ms
ms
8
8
NV Update
31.5
329
400
Factory Reset
204
2
14
Channel Dwell Time
CMD low to trigger TX with
option TXnCMD
tTXnCMD
ms
13
–
–
–
–
4
5
500.00
450.00
400.00
350.00
300.00
250.00
200.00
150.00
100.00
50.00
Typical Performance Graphs
28.0
27.0
26.0
25.0
24.0
23.0
22.0
21.0
20.0
-40°C
-40°C
25°C
25°C
85°C
85°C
0.00
-15.00 -10.00 -5.00
0.00
5.00
10.00 15.00 20.00 25.00 30.00
TX Output Power (dBm)
2.7
3.0
3.3
3.6
Figure 9: Amplified HumPROTM Series Transceiver Average TX Current vs. Transmitter Output Power at 3.3V
Supply Voltage (V)
Figure 5: Amplified HumPROTM Series Transceiver Max Output Power vs. Supply Voltage
520.0
-40°C
470.0
420.0
25°C
370.0
320.0
400.00
350.00
300.00
85°C
270.0
-40°C
25°C
220.0
250.00
200.00
150.00
100.00
50.00
2.7
3.0
3.3
3.6
85°C
Supply Voltage (V)
Figure 8: Amplified HumPROTM Series Transceiver TX Current vs. Supply Voltage at Max Power
450.0
-40°C
400.0
350.0
300.0
250.0
200.0
0.00
-15.00 -10.00 -5.00
0.00
5.00
10.00
15.00
20.00
25.00 30.00
TX Output Power (dBm)
25°C
85°C
Figure 6: Amplified HumPROTM Series Transceiver Average Current vs. Transmitter Output Power at 2.7V
2.7
3.0
3.3
3.6
Supply Voltage (V)
Figure 7: Amplified HumPROTM Series Transceiver TX Current vs. Supply Voltage at 24dBm
–
–
–
–
7
6
2.50
2.00
1.50
1.00
0.50
0.00
240.0
220.0
200.0
180.0
160.0
140.0
120.0
-40°C
85°C
25°C
85°C
25°C
-40°C
2.7
3.0
3.3
3.6
2.7
3.0
3.3
3.6
Supply Voltage (V)
Supply Voltage (V)
Figure 10: Amplified HumPROTM Series Transceiver TX Current vs. Supply Voltage at 20dBm
Figure 12: Amplified HumPROTM Series Transceiver Standby Current Consumption vs. Supply Voltage
44.00
42.00
40.00
38.00
36.00
34.00
32.00
-10
-20
-30
-40
-50
-60
-70
-80
-90
85°C
25°C
-40°C
-100
-110
-120
-120 -110 -100
-90
-80
-70
-60
-50
-40
-30
-20
-10
2.7
3.0
3.3
3.6
Input Power (dBm)
Supply Voltage (V)
Figure 11: Amplified HumPROTM Series Transceiver RX Scan Current vs. Supply Voltage, 115.2kbps
Figure 13: Amplified HumPROTM Series Transceiver RSSI Reading vs. Input Power at 25°C
Current consumption while the module is scanning for a transmission. The current is
approximately 0.3mA higher when receiving data at 115.2kbps.
–
–
–
–
9
8
Pin Assignments
Pin Descriptions
Pin Number
Name
I/O Description
Command Response. This line is low when
the data on the CMD_DATA_OUT line is
a response to a command and not data
received over the air.
13
14
CRESP
O
44 43 42 41 40 39 38 37 36 35 34
Push Button input. This line can be
connected to Vcc through a normally open
push button. Button sequences can reset
configurations to default and join modules
into a network. Pull low when not in use;
do not leave floating.
33
32
NC
NC
NC
BE
1
2
PB
I
ANT
3
4
NC
NC
NC
NC
GND
NC
NC
5
Command Data Out. Output line for data
and serial commands
6
15
16
CMD_DATA_OUT
CMD_DATA_IN
O
I
7
Command Data In. Input line for data (CMD
is high) and serial commands (CMD is low).
8
9
22
33
VCC
—
—
Supply Voltage
10
11
ANTENNA
50-ohm RF Antenna Port
12 13 14 15 16 17 18 19 20 21 22
UART Clear To Send, active low. This line
indicates to the host microcontroller when
the module is ready to accept data. When
CTS is high, the module is busy. When CTS
is low, the module is ready for data.
34
CTS
O
Command Input. When this line is low,
incoming bytes are command data.
When high, incoming bytes are data to be
transmitted.
35
36
CMD
I
Figure 14: Amplified HumPROTM Series Transceiver Pin Assignments (Top View)
Mode Indicator. This line indicates module
activity. It can source enough current to drive
a small LED, causing it to flash. The duration
of the flashes indicates the module’s current
state.
MODE_IND
O
Pin Descriptions
Pin Descriptions
This line resets the module when pulled low.
It should be high for normal operation. This
line has an internal 10k resistor to supply, so
leave it unconnected if not used.
Pin Number
Name
I/O Description
40
43
RESET
I
I
1, 2, 3, 5, 6,
7, 8, 10, 11,
17-21, 37, 38,
39, 41, 42, 44
No Electrical Connection. Do not connect
any traces to these lines.
NC
—
Power Down. Pulling this line low places the
module into a low-power state. The module
is not functional in this state. Pull high for
normal operation. Do not leave floating.
POWER_DOWN
Buffer Empty. This line is high when the
UART input buffer is empty, indicating
that all data has been transmitted. If
acknowledgment is active, it also indicates
that the receiving module has acknowledged
the data or a retry exception has occurred.
4
BE
O
Figure 15: Amplified HumPROTM Series Transceiver Pin Descriptions
9, 32
12
GND
EX
—
O
Ground
Exception Output. A mask can be set
to take this line high when an exception
occurs. The line is lowered when the
exception register is read (EXCEPT).
–
–
–
–
11
10
Module Pin Assignments
The module has two versions that differ in the antenna connection. The
antenna connection is routed to either a castellation (-CAS) or a u.FL
connector (-UFL), depending on the part number ordered.
Module Dimensions
0.66 in
(16.66 mm)
44 43 42 41 40 39 38 37 36 35 34
33
32
NC
NC
NC
BE
1
2
NC
3
4
NC
NC
NC
NC
GND
NC
NC
5
6
1.01 in
(25.70 mm)
7
8
9
10
11
0.12 in
12 13 14 15 16 17 18 19 20 21 22
(2.90 mm)
0.05 in
(1.27 mm)
Figure 16: Amplified HumPROTM Series Transceiver Pre-certified Version Pin Assignments - Castellation Connection
(Top View)
Figure 18: Amplified HumPROTM Series Transceiver Pre-certified Version Dimensions
44 43 42 41 40 39 38 37 36 35 34
33
32
NC
NC
NC
BE
1
2
ANT
3
4
NC
NC
NC
NC
GND
NC
NC
5
6
7
8
9
10
11
12 13 14 15 16 17 18 19 20 21 22
Figure 17: Amplified HumPROTM Series Transceiver Pre-certified Version Pin Assignments - UFL Connection
(Top View)
–
–
–
–
13
12
Theory of Operation
Module Description
The Amplified HumPROTM Series transceiver is a low-cost,
high-performance synthesized FSK transceiver. Figure 19 shows the
module’s block diagram.
The Amplified HumPROTM Series module is a completely integrated RF
transceiver and processor designed to transmit digital data across a
wireless link. It employs a fast-locking FHSS system for noise immunity and
amplified transmitter and receiver for best-in-class range.
ADC
LNA
When the module does not have data to send it scans all of the channels
for incoming data. If it finds a valid preamble, it pauses and looks for
the start of a packet. When it receives a valid packet with a matching
destination address the module outputs the data through the UART.
ADC
LNA
FREQ
SYNTH
GPIO /
INTERFACE
ANTENNA
0
PROCESSOR
INTERFACE
90
PA
MODULATOR
PA
The transmitting module accepts data bytes through its UART until a
configurable number of bytes is reached or a configurable timeout expires
between bytes on the UART. At this point the module transmits the packet.
Figure 19: Amplified HumPROTM Series Transceiver RF Section Block Diagram
The Amplified HumPROTM Series transceiver operates in the 902 to
When the module has data to send it goes to the next channel in its
hopping pattern. It measures the RSSI on that channel to ensure that the
channel is clear. If the RSSI check passes, then it transmits the packets. If
the RSSI fails, then it implements a random wait time and tries again. When
the channel is clear, the module transmits the data.
928MHz frequency band. The transmitter output power is programmable.
The range varies depending on the antenna implementation and the local
RF environment.
The RF carrier is generated directly by a frequency synthesizer that includes
an on-chip VCO. An additional front-end power amplifier boosts the
transmitter power for maximum range. The received RF signal is amplified
by an initial low noise amplifier (LNA) then fed into the main receiver. It is
further amplified and down-converted to I/Q quadrature signals. The I/Q
signals are digitized by ADCs.
The module can stay on one channel for up to 400ms. If the module is
ready to start transmitting near the end of the channel time, it transmits the
number of bytes that it can in the remaining time. It then hops to the next
channel in its hopping pattern to transmit the remaining data.
The module supports automatic acknowledgements for assured delivery.
When enabled, the receiving module responds to a valid transmission with
an acknowledgement to let the transmitting module know that it received
the data. If an acknowledgement is not received then the transmitting
module repeats the transmission for a configurable number of retries. If the
retry limit is exceeded without an acknowledgement then the transmitting
module issues an exception error to let the host micro know of the
communication problem.
A low-power onboard communications processor performs the radio
control and management functions including Automatic Gain Control
(AGC), filtering, demodulation and packet synchronization. A control
processor performs the higher level functions and controls the serial and
hardware interfaces.
A crystal oscillator generates the reference frequency for the synthesizer
and clocks for the ADCs and the processor.
A standard UART interface is used to configure the module for operation
and for the data input and output. This is suitable for direct connection to
UARTs on many microcontrollers, USB converters and RS-232 converters.
A simple command set is used for configuration and control.
Modules can be pre-configured for fixed point-to-point or broadcast
topologies allowing streaming data (no commands) during operation.
–
–
–
–
15
14
Streaming Data and Explicit Packets
Overview
The Amplified HumPROTM Series RF transceiver module offers a number
of features that make it suitable for many data transfer applications. This
section provides a basic overview of the features while following sections
dive into them in more detail.
The module’s default configuration is for streaming data. At some UART
rates the module sends the data at a higher rate over-the-air than it is input
on the UART. This hides the time required for the protocol transactions
and the frequency hopping. The result is that the data appears to stream
through the module with no breaks in the data apparent to the host
processor.
Addressing
The modules have a very powerful addressing method. Each module is
given a unique 16 or 32 bit address. The receiving modules use an address
mask that determines how it responds to a received transmission.
Alternatively, the module can be configured for explicit packet transmission.
This allows the host processor to control when packets are sent and what
data is in each packet
The addressing and masking allow for the creation of point-to-point,
many-to-one and one-to-many wireless links. This allows the creation of
many network topologies, such as star, tree and mesh. The routing for the
network topology is managed outside the module.
Exceptions and Host Processor Interface
The module has several indicator lines that provide feedback to the host
processor on the module’s operation and current status. This includes an
exception line (EX) that informs the processor when errors occur so that it
can take steps to manage the issue gracefully. The state of the status lines
can also be read through the module’s Command Data Interface to reduce
the number of hardware connections that are required.
The addressing is the primary configuration when getting started with the
modules. RG-00105, the HumPROTM Addressing Mode Reference Guide
has details about configuring the addressing.
Command Data Interface
Acknowledgements and Assured Delivery
The module has a Command Data Interface that consists of a set of serial
commands entered through a UART. These are shorter and simpler than AT
commands that are popular with many modules. These commands control
the configuration of the module as well as allow feedback on the operation
and status of the module.
The modules support assured delivery in the form of acknowledgements
and retries. When the acknowledgements are enabled, the receiving
device sends an acknowledge message to let the sender know that the
transmission was received. If the sender does not get an acknowledgement
it resends the message up to a configurable number of retries. If there is
still no acknowledgement, the module triggers an exception to let the host
processor know of the error.
Carrier Sense Multiple Access (CSMA)
The module implements a Carrier Sense Multiple Access method. It listens
to the channel and makes sure that it is clear before it transmits. If the
channel is in use, the module either waits for it to clear or hops to the next
channel depending on its current state. This reduces the overall potential
for interference and improves the robustness of the link.
Command Mode and Data Mode
The module has two main interface modes controlled by the state of the
CMD line. Command mode routes the data coming in on the CMD_DATA_
IN line to the processor for configuring the module. Data mode routes
the data to the transmitter for transmission over-the-air. The CMD line is
normally controlled by an external microcontroller.
High Power Front End Amplifiers
The HumPRO-A adds a high-power 25dBm power amplifier and an
additional low noise amplifier to greatly increase the module’s link budget.
With +25dBm transmit power and -108dBm sensitivity, the resulting link
budget of 133dBm gives the module a line-of-sight range of over 6 miles
with good antennas and a good operational environment.
Encryption
The module supports AES-128 encryption to provide a secure wireless link.
All of the modules must have encryption enabled and be using the same
key in order for communication to be successful. There are two ways of
entering an encryption key: directly by writing the key to registers through
the Command Data Interface or through a JOIN process.
–
–
–
–
17
16
User Addressing Mode
Addressing Modes
User Addressing Mode is a more flexible method than DSN Addressing
Mode. It uses the customer ID bytes (CUSTID[1-0]) for unencrypted
messages and two of the user destination bytes (UDESTID[1-0]) as a
destination address. The customer ID bytes are programmed at the factory
and cannot be changed. These are determined by the factory for specific
customers to prevent their systems from operating with any other systems.
Contact Linx for more details.
The module has very flexible addressing methods selected with the
ADDMODE register. It can be changed during operation. The transmitting
module addresses packets according to the addressing mode
configuration. The receiving module processes all addressing types
regardless of the ADDMODE configuration. If the received message
matches the addressing criteria, it is output on the UART. Otherwise it is
discarded. The ADDMODE configuration also enables assured delivery.
The module’s local address is contained in two of the user source ID
registers (USRCID[1-0]). In this mode, USRCID [1-0] contain the node
address and USRCID [3-2] must be 0 in the receiver.
There are three addressing modes: DSN, User and Extended User. Each
mode offers different communications methods, but all use source and
destination addressing. The source address is for the transmitting unit,
the destination address is the intended receiver. Each mode uses different
registers for the source and destination addresses.
In normal operation each module has a user ID mask (UMASK[3-0]) that
splits the 32 address bits into up to three fields to provide a network
address and address fields for sub-networks, supporting both individual
addressing and broadcast addressing within the user’s network. A detailed
explanation and examples are given in Reference Guide RG-00105. The
16 bits in the UDESTID[1-0] registers are transmitted. The upper 16 bits of
USRCID[3-2] in the receiver must be 0.
All three addressing modes can be configured to be compatible with the
older 250 Series modules. The default operation has an additional level
of masking on the receiving module that helps prevent interference from
adjacent networks.
The following sections give brief descriptions of the three modes, but a
detailed explanation and examples are given in RG-00105, the HumPROTM
Addressing Mode Reference Guide.
If acknowledgements are enabled, only the module with a user source ID
that exactly matches the transmitted user destination ID responds. The
mask is not used for this determination.
DSN Addressing Mode
Extended User Addressing Mode
Device Serial Number Addressing mode is the simplest mode and
supports point-to-point communications. Each module is programmed at
the factory with a unique 4-byte serial number that cannot be changed.
These bytes are found in the non-volatile read-only MYDSN registers
(MYDSN[3-0]). DSN Addressing mode uses this serial number as an
address. The transmitting unit’s DSN is used as the source address and
the intended receiver’s DSN is written into the destination address registers
(DESTDSN[3-0]). All modules within range hear the transmission, but only
the module with the serial number that matches the destination address
outputs the data on its UART. All others ignore the transmission.
Extended User Addressing mode is the same as User Addressing mode
but uses 32-bit addresses. The two customer ID bytes are still used
(CUSTID[1-0]) for unencrypted messages but four bytes are used for the
user destination address (UDESTID[3-0]), user source ID (USRCID[3-0]) and
user ID mask (UMASK[3-0]). This provides more addressing capabilities at
the expense of more overhead in the packet.
Network Addressing
Network Addressing is selected by setting COMPAT to 0x03. It allows
the receiver to receive all messages sent in User Address or Extended
User Address mode with a destination address matching the USRCID
group 1 bits (continuous high-order zero bits in UMASK). For example,
with USRCID = 0x12345678 and UMASK = 0x000FFFFF, messages with
destination address 0x123zzzzz, where z is any value, is received.
–
–
–
–
19
18
Automatic Addressing
Acknowledgements and Assured Delivery
The module supports an automatic addressing mode that reads the Source
Address from a valid received packet and uses it to fill the Destination
Address register. This makes sure that a response is sent to the device that
transmitted the original message. This also allows the host microcontroller
to read out the address of the sending unit. The automatic addressing is
enabled for the different addressing modes with register AUTOADDR.
When a module transmits with assured delivery enabled, the receiving
module returns an acknowledgement packet. The transmitting module
waits for this acknowledgement for a preset amount of time based on the
data rate. If an acknowledgement is not received, it retransmits the packet.
If the receiver receives more than one of the same packet, it discards
the duplicate packet contents but sends an acknowledgment. This way,
duplicate data is not output by the module.
Address Register Use
If the received destination address matches the local address, the
receiving module immediately sends an acknowledgement. This packet
lets the sending module know that the message has been received.
An acknowledgement packet is sent immediately following reception;
CSMA delay is not applied to these packets since permission belongs
to the interacting modules. When the sending module receives the
acknowledgement packet, it marks the current block of data as completed.
If this is the last message in the queue, the sending module takes the BE
line high to indicate that all outgoing data has been sent.
Figure 20 shows the address registers that are used with each addressing
mode.
Amplified HumPROTM Series Transceiver Address Registers
COMPAT
0x00 (Relaxed Addressing)
0x02 (Normal Addressing)
0x04
(DSN)
0x06
0x07
0x04
0x06
0x07
(User)
(Ex User)
(DSN)
(User)
(Ex User)
ADDMODE
0x14
(DSN
0x16
(User
+ACK)
0x17
(ExUser
+ACK)
0x14
(DSN
+ACK)
0x16
(User
+ACK)
0x17
(ExUser
+ACK)
+ACK)
UDESTID[3-0]
UDESTID[1-0]
USRC[3-0]
X
X
X
X
X
X
Assured delivery should only be used when addressing a specific module
in a point-to-point link. It should not be used when multiple receivers are
enabled. When address masking is used, only the receiver with an exact
match to the address in the transmitted packet responds. If none of the
enabled receivers has an exact match, then there is no response and the
transmitting module continues to re-transmit the data until the max number
of retries is attempted. This causes the transmitting module to appear slow
or unresponsive. It also impedes valid communications.
X
X
X
X
X
USRC[1-0]
UMASK[3-0]
UMASK[1-0]
DESTDSN[3-0]
X
X
X
Figure 20: Amplified HumPROTM Series Transceiver Address Register Use
–
–
–
–
21
20
modules that just woke up the chance to synchronize to any transmitted
packet instead of having to wait for the transmitter to complete its time slot
and jump to the next channel. This can reduce the synchronization time
and power consumption of the sleeping nodes.
Frequency Hopping Spread Spectrum
The module uses Frequency Hopping Spread Spectrum to allow operation
at higher power levels per regulations and to reduce interference with other
transmitters. The module is configured for operation in one of 6 different
hopping sequences. Each sequence uses 26 channels for the high RF data
rate or 50 channels for the low RF data rate. Modules must use the same
hopping sequence to communicate. Assigning different hopping sequences
to multiple networks in the same area minimizes the interference.
Compatibility with the 250 Series
When DSN mode is used with a specific address, the module can
communicate with 250 Series modules at UART data rates of 38,400 to
115,200 bps, non-encrypted. For other addressing modes, the Amplified
HumPROTM Series modules can be configured to operate with them.
Setting the COMPAT register to 0x00 enables the compatible operation.
This allows mixed-mode systems and upgrades of legacy products that
still maintain backwards compatibility. Only the higher baud rates are
compatible.
When the module is awake and not transmitting, it rapidly scans all
channels for a packet preamble. When a module starts transmitting at the
beginning of a new channel, it transmits a packet with a long preamble of
alternating 0 and 1 bits. This long preamble is sufficient to allow receiving
modules to scan through all of the channels in the hopping sequence and
find it. Modules that are scanning detect the preamble and pause on that
channel, waiting for a valid packet.
The main feature of compatibility operation is that it configures the same
addressing methods used by the 250 Series. These methods are more
susceptible to interference from adjacent networks of 250 Series modules
which use DSN (GUI) broadcast messages. Please see Reference Guide
RG-00105 for more details.
If a packet is received with a valid CRC (unencrypted) or authentication
(encrypted), the header is examined to determine whether the module
should synchronize to the transmitter. Synchronization requires that the hop
sequence matches and that the message is addressed to the receiver.
When synchronized, the receiver stays on the current channel to either
transmit a packet or to receive an additional packet. Additional packets
transmitted on the same channel within the time slot use short preambles
since the receivers are already listening to the current channel.
Networking
The Amplified HumPROTM Series modules can be used to create many
types of wireless networks. The modules do not provide network routing
since the internal memory size of the module would limit the overall
network size. The Amplified HumPROTM can work as the MAC/PHY layers
of a network stack and the memory and processing speed of the external
microcontroller can be sized according to the size of the network that is
needed for the application.
At the end of the time slot for the current channel, all modules which locked
to the original transmission switch to the next channel in the hop sequence.
The first transmission on each new channel has a long preamble.
A receiver that has synchronized to a transmitter continues to stay in
synchronism by staying on the received channel until the expiration of the
time slot, then waiting on the next hop channel for the duration of the time
slot. If no further packets are received, the receiver loses lock and reverts
to scanning. This allows the receiver to stay synchronized for a short while
if a packet is not received correctly.
This requires more software development, but avoids the cost of adding
extra memory on the module for applications that don’t need it. Linx can
assist with network frameworks and concepts and can create custom
designs on a contract basis. Contact Linx for more details.
The module supports the option to send the long preamble with every
packet rather than just the first packet on each channel. This can be
beneficial for systems that have modules asleep most of the time. It gives
–
–
–
–
23
22
Transmitting Packets
Receiving Packets
In default operation when transmitting, the host microcontroller writes bytes
to the CMD_DATA_IN line while the CMD line is held high at the baud rate
selected by the UARTBAUD register. The incoming bytes are buffered until
one of the following conditions triggers the packet to be transmitted:
In default operation when receiving valid packets, the module outputs all
received bytes as soon as the packet is validated (CRC checks pass if
unencrypted or key-based verification if encrypted) and if the addressing
permits it at the baud rate selected by the UARTBAUD register. No
command or control bytes are output and no action is required of an
external microcontroller. The first byte from a packet directly follows the last
byte of the previously received packet.
1. The number of bytes in the buffer exceeds the value in the Byte Count
Trigger (BCTRIG) register.
2. The time since the last received byte exceeds the value in the Data
Timeout (DATATO) register.
In cases where the host microcontroller needs more control over the data
or where dynamic configuration changes could set up race conditions
between incoming data and outgoing commands, the module offers
explicit control over received packets.
3. A SENDP command is written to the CMD register.
4. The CMD line is taken low with option PKOPT: TXnCMD = 1.
5. The number of buffered bytes exceeds what can be sent before the
radio must hop channels.
When the RXPKT option is enabled (PKTOPT register, bit 2 = 1), received
data is output on the CMD_DATA_OUT line one packet at a time after a
GETPH, GETPD, or GETPHD command is written to the CMD register.
Writing one of these commands begins the received packet transfer cycle.
The first four conditions can be controlled by the host microcontroller. In
the last case, the module transmits what it can in the remaining time then
sends the rest on the next channel. This can cause the data to be divided
up into multiple packets and is not within the control of the host micro.
Two lines are used as flow control and indicators during the transfer cycle.
The CMD line is controlled by the host microcontroller. The module uses
either the CTS line or the CRESP line as a status line, depending on the
state of the RXP_CTS option in the PKOPT register.
In cases where all data needs to be sent in the same packet or where
the microcontroller needs greater control over the radio, the Amplified
HumPROTM Series offers explicit control of packet transmission with options
in the PKTOPT register.
When a valid packet is received, the EX_RXWAIT exception flag is set in
the EEXFLAG1 register. If the corresponding bit in the EEXMASK1 register
is set, then the EX line goes high. The host microcontroller can monitor
the EX line or periodically check the EEXFLAG or LSTATUS registers to
determine if data is ready to be read.
When the TXPKT option is enabled (PKTOPT register, bit 0 = 1), the data is
held until a SENDP command is written to the CMD register. Alternatively,
if option TXnCMD is enabled (PKTOPT register, bit 1 = 1), then lowering
the CMD line triggers the packet transmission, reducing the number of
UART transactions that are required. The BCTRIG, DATATO and hop-timing
conditions are ignored when the TXPKT option is enabled.
The transfer cycle is begun by writing a Get Packet Header (GETPH),
Get Packet Data (GETPD), or Get Packet Header and Data (GETPHD)
command to the CMD register. The module sends the command ACK byte
and sets the selected status line high. Once the status line goes high, the
host microcontroller sets the CMD line high and the module outputs the
received data. The command sent determines whether the bytes sent are
the header, data, or header followed by data.
Once triggered, the transmitted packet contains the bytes in the buffer as
of the trigger event, even if more data bytes are received before the packet
can be sent. Multiple outgoing packets can be buffered in this way.
If the full packet cannot be sent in the time remaining on the current
channel, then it is held until the module hops to the next channel.
When all packet bytes have been sent the control line goes low. When
the host microcontroller detects that the line is low, it sets CMD low,
completing the transfer cycle. The cycle is shown in Figure 21.
This option gives the host microcontroller very fine control over when
packets are transmitted and what they contain.
–
–
–
–
25
24
DSN Address Packet Header
CMD
CMD_DATA_IN
CMD_DATA_OUT
CONTROL
Tag
Header
Length
1
Frame
Type
1
Hop ID Sequence Dest DSN Source
DSN
Data
Length
1
Any Command
Read Packet Command
0x01
1
1
4
4
Any Response
ACK
Packet to UART
User Address Packet Header
Tag
Header
Length
1
Frame
Type
1
Hop ID Sequence Cust ID Dest Addr Source
Addr
Source
DSN
4
Data
Length
1
0x01
1
1
2
2 or 4
2 or 4
EX
Exception for unread packet
Packet Data
Tag
Packet In
Data
Length
1
Data
0x02
Data Length Bytes
Figure 21: HumPRO-ATM Series Transceiver Received Packet Transfer Cycle
Figure 22: HumPRO-ATM Series Transceiver Unencrypted Packet Header and Data Structure
If a GETPH was sent and header data received, the following data can
then be read by repeating the cycle with the GETPD command. If the next
GETPx command is a GETPH or GETPHD, the data associated with the
header read by GETPH is discarded and the header or header plus data of
the following packet is returned.
Amplified HumPROTM Series Transceiver Frame Types
Frame Type
0x04
Packet Type
DSN Addressing Mode
User Addressing Mode
Extended User Addressing Mode
Acknowledgements Enabled
Encrypted Packet
0x06
0x07
If there is RF-received data waiting to be sent to the UART and the mask
for EX_RXWAIT is set in the EEXMASK register, EX is raised if it is low.
+0x10
+0x20
+0x40
If there is no packet waiting when a GETPx command is sent, the control
line is still taken high and not reset until after CMD goes high, thereby
performing a zero-byte transfer cycle.
Long Preamble Packet
Figure 23: Amplified HumPROTM Series Transceiver Frame Types
The header and payload structures differ between encrypted packets
and unencrypted packets. The header and data structures for explicit
unencrypted packets are shown in Figure 22.
The Cust ID field is a number that can be assigned to a specific customer.
Only modules with the same customer ID respond to unencrypted
transmissions. By default, Cust ID is 0x7FFF for packets transmitted with
COMPAT = 2 or 0xFFFF for packets transmitted with COMPAT = 0. This
field is not used in DSN mode.
The Tag field identifies the start of the block and if it is the header
information (0x01) or the packet data (0x02).
The Dest Addr field has the received destination address. This is 2 bytes
long with User Addressing Mode and 4 bytes with DSN and Extended User
Addressing Modes.
The Header Length field identifies the number of header bytes that follow.
The Frame Type field identifies what kind of packet was received. The
values are shown in Figure 23.
The Source Addr Field is the address of the transmitting module. This
is 2 bytes long with User Addressing Mode and 4 bytes with DSN and
Extended User Addressing Modes.
The Hop ID field is the hop sequence number, 0 - 5.
The Sequence byte is incremented for each new packet, modulo 255. A
received packet is discarded if the sequence byte matches the previously
received packet to prevent delivering duplicate copies of an automatically
retransmitted packet.
The Data Length byte indicates how many bytes of data are in the packet.
This value is the same in the packet header and the associated data block.
–
–
–
–
27
26
The header and data structures for explicit encrypted packets are shown
in Figure 24. The header and data blocks returned by the module are the
decrypted message contents.
The Dest DSN, Source DSN, Dest Addr and Source Addr fields are the
source and destination addresses, the same as in unencrypted packets.
Encrypted DSN Address Packet Header
The EBlock length field is the total number of bytes of data in the encrypted
payload block. This length includes the Payload Type byte.
Tag
Header
Length
1
Frame
Type
1
Hop Key Sequence Dest DSN Source
DSN
EBlock
Length
1
Payload
Type
1
0x11
1
6
4
4
The Payload Type byte indicates what data is contained in the payload.
0x00 indicates that the payload is user data. 0x01 indicates that the
payload is the 16-byte AES key followed by any user data. This is used for
transferring the network encryption key during the JOIN process.
Encrypted User Address Packet Header
Tag
Header
Length
1
Frame
Type
1
Hop Key Sequence Dest Addr Source
Addr
Source
DSN
4
EBlock
Length
1
Payload
Type
1
0x11
1
6
2 or 4
2 or 4
For the Encrypted Packet Data packet, the Data Length byte indicates the
number of bytes of data payload that follow. This value is one less than the
EBlock length in the header. The reason for this is that the Payload Type
byte is included in the encrypted block, but is reported with the header
since it is not user data.
Encrypted Packet Data
Tag
Data
Length
1
Data
0x12
Data Length Bytes
Figure 24: HumPRO-ATM Series Transceiver Encrypted Packet Header and Data Structure
The Tag, Header Length and Frame Type fields are the same as for
unencrypted packets.
Using the Buffer Empty (BE) Line
The BE line indicates the state of the module’s UART buffer. It is high to
indicate that the UART input buffer is empty, indicating that all data has
been transmitted. When the module receives data on the CMD_DATA_IN
line and the CMD line is high, the BE line is lowered until all data in the
buffer has been processed by the protocol engine. If acknowledgement
is not enabled, the BE line is raised as soon as the module transmits the
outgoing packets. If acknowledgement is enabled, the buffer is not updated
until either the data transmissions are acknowledged by the remote end or
delivery fails after the maximum number of retries. When the BE line returns
high, the EX line may be sampled, or the EXCEPT or EEXFLAG register
polled to determine if an error occurred during transmission.
The Hop Key field uses the first three low-order bits to indicate the Hop
Sequence number, which is the same as unencrypted packets. The upper
two bits indicate which key is being used. Either the factory-set key that is
used to securely transfer the network key or a network key that has been
written or created by the JOIN process. This is shown in Figure 25.
Amplified HumPROTM Series HopKey Byte Values
HopKey Bit
0 - 3
Value
Hop Sequence Number, 1 to 5
= 0
4 - 5
Encryption key
0 = factory
6 - 7
The state of the BE line can be read in the LSTATUS register, reducing the
number of hardware connections that are needed.
1 = user network
Figure 25: Amplified HumPROTM Series HopKey Byte Values
The Sequence bytes contain a counter that is incremented for each new
transmitted message. The initial value is randomized when the module
is reset. The extended sequence becomes part of an initialization vector
which is used to vary the encrypted contents of identical packets. A
received packet is discarded if the sequence byte matches the previously
received packet to prevent delivering duplicate copies of an automatically
retransmitted packet.
–
–
–
–
29
28
The EX line can be asserted to indicate to the host that an error has
occurred. The EXCEPT register must be read to reset the line. Figure 27
lists some example exception masks.
Exception Engine
The Amplified HumPROTM Series is equipped with an internal exception
engine to notify the host microcontroller of an unexpected event. If errors
occur during module operation, an exception is raised. There are two
methods of driving the EX pin when an exception condition exists:
Amplified HumPROTM Series Transceiver Example Exception Masks
Exception Mask Exception Name
0x08
0x10
0x20
Allows only EX_BUFOVFL and EX_RFOVFL to trigger the EX line
Allows only EX_WRITEREGFAILED to trigger the EX line
Allows only EX_NORFACK to trigger the EX line
1. From the EXMASK and EXCEPT registers (legacy operation)
2. From the EEXMASKx and EEXFLAGx registers (standard operation)
Allows only EX_BADCRC, EX_BADHEADER, EX_BADSEQID and
EX_BADFRAMETYPE exceptions to trigger the EX line
If EXMASK is non-zero, the first method is used, otherwise the second
method is used.
0x40
Allows EX_BADCRC, EX_BADHEADER, EX_BADSEQID, EX_
0x60
0xFF
BADFRAMETYPE and EX_NORFACK exceptions to trigger the EX
line
For legacy operation with the 250 and 25 Series, the EX line is set and
reset by the Exception (EXCEPT) register processing. It is set when
an exception occurs and the exception code ANDed with the current
Exception Mask (EXMASK) register is non-zero. It is reset when the
EXCEPT register is read through a command. No other operations affect
the state of EX. Setting EXMASK non-zero does not change the state of
EX.
Allows all exceptions to trigger the EX line
Figure 27: Amplified HumPROTM Series Transceiver Example Exception Masks
The exception mask has no effect on the exceptions stored in the
exception register. It only controls which exceptions affect the EX line.
The extended exception registers offer more functionality with more
exceptions and a separate bit for each exception. These registers are the
default and should be used with new applications. When an exception sets
an exception code in the EXCEPT register, the corresponding flag in the
EEXFLAG register is also set.
If an exception code is already present in the register when an error occurs,
the new exception code overwrites the old value. Exception codes are
organized by type for ease of masking. Figure 26 lists the exception codes
and their meanings.
Amplified HumPROTM Series Transceiver Exception Codes
The EX line is set and reset by the Extended Exception Flags (EEXFLAG)
and Extended Exception Mask (EEXMASK) register processing. It is set
whenever the EEXFLAG value ANDed with the EEXMASK value is non-zero.
EX can change on any write to either of these registers that affects the
result of ANDing the registers. Clearing an EEXFLAG register bit or value
can leave EX set if there is another masked condition bit set.
Exception Code Exception Name
Description
0x08
0x09
0x13
EX_BUFOVFL
EX_RFOVFL
Incoming UART buffer overflowed.
Outgoing UART buffer overflowed.
EX_WRITEREGFAILED Attempted write to register failed.
Acknowledgement packet not received
EX_NORFACK
0x20
after maximum number of retries.
0x40
0x42
0x43
EX_BADCRC
Bad CRC detected on incoming packet.
Bad CRC detected in packet header.
Sequence ID was incorrect in ACK packet.
The state of the EX line can also be read in the LSTATUS register, reducing
the number of hardware lines that are required.
EX_BADHEADER
EX_BADSEQID
Attempted transmit with Invalid setting in
reg:NETMODE or invalid packet type in
received packet header
0x44
EX_BADFRAMETYPE
Figure 26: Amplified HumPROTM Series Transceiver Exception Codes
–
–
–
–
31
30
Carrier Sense Multiple Access (CSMA)
Using the Command Response (CRESP) Line
CSMA is an optional feature. It is a best-effort delivery system that listens
to the channel before transmitting a message. If CSMA is enabled and
the module detects another transmitter on the same channel, it waits until
the active transmitter finishes before sending its payload. This helps to
eliminate RF message corruption and make channel use more efficient.
The CRESP line is high when sending data bytes and low when
sending command response bytes. This indicates to an external host
microcontroller that the data on the CMD_DATA_OUT line is a response
to a command and not data received over-the-air. CRESP is held in the
correct state at least one byte time after the last byte for the indicated
source (command response or data, although it normally stays in the same
state until a change is required).
When a module has data ready to transmit and CSMA is enabled, it listens
on the intended transmit channel for activity. If no signal is detected,
transmission is started.
If a data packet is received when the module is processing a command, it
sends the command response, raises CRESP, and then sends the received
data bytes.
If a carrier is detected with an RSSI above the CSMA threshold in the
CRSSI register, transmission is inhibited. If a signal below the threshold is
detected that has a compatible preamble or packet structure, transmission
is also inhibited.
When reading or writing the module’s register settings, it is possible for
incoming RF data to intermix with the module’s response to a configuration
command. This can make it difficult to determine if commands were
successfully processed as well as to capture the received RF data. Setting
the CMDHOLD register to 0x01 causes the module to store incoming
RF traffic (up to the RF buffer capacity) while the CMD line is low. When
the CMD line is returned high, the module outputs the buffered data on
the UART. This allows the external host microcontroller to have separate
configuration times and data times instead of potentially having to handle
both at once.
If the module is synchronized from a recent packet transfer, it waits for a
random interval, then checks again for activity. If the detected carrier lasts
longer than the time allowed for the current channel, the module hops to
the next channel in the hop sequence and again waits for a clear channel
before transmitting.
If the module is not synchronized, it hops to the next channel and again
checks for interference. When no activity is detected it starts transmitting.
The CRESP line stays low for at least ten bit times after the stop bit of the
last command response. Figure 28 shows the timing.
Start
D0
...
D6
D7 Stop
CMD_DATA_OUT
CRESP
10 bit
times
Figure 28: Amplified HumPROTM Series Transceiver CRESP Line Timing
–
–
–
–
33
32
Using the CMD Line
AES Encryption
The CMD line informs the module where incoming UART data should be
routed. When the line is high, all incoming UART data is treated as payload
data and is routed to the transmitter to be sent over the air. If the CMD line
is low, the incoming UART data is treated as command bytes and is routed
to the controller for processing.
The Amplified HumPROTM Series modules offer AES encryption. Encryption
algorithms are complex mathematical calculations that use a large number
called a key to scramble data before transmission. This is done so that
unauthorized persons who may intercept the signal cannot access the
data. To decrypt the data, the receiver must use the same key that was
used to encrypt it. It performs the same calculations as the transmitter and
if the key is the same, the data is recovered.
Since the module’s controller looks at UART data one byte at a time, the
CMD line must be held low for the entire duration of the command plus
time for ten bits as margin for processing. Leaving the line low for additional
time (for example, until the ACK byte is received by the application) does
not adversely affect the module. If RF packets are received while the CMD
line is active, they are still processed and output on the module’s UART
(assuming CMDHOLD=0 and PKOPT:RXPKT=0). Figure 29 shows this
timing.
The amplified HumPROTM Series module has the option for AES encryption,
arguably the most common encryption algorithm on the market. This is
implemented in a secure mode of operation to ensure the secrecy of the
transmitted data. It uses a 128-bit key to encrypt the transmitted data. The
source and destination addresses are sent in the clear.
Encryption is disabled by default. There are two ways to enable encryption
and set the key: sending serial commands and using the JOIN process.
Start
D0
...
D6
D7 Stop
CMD_DATA_IN
≥10 bit
times
CMD
Writing an encryption key to the module with the CDI
Figure 29: Amplified HumPROTM Series Transceiver CMD Line Timing
The module has no network key when shipped from the factory. An
encryption key can be written to the module using the CDI. The CMD
register is used to write or clear a key. The key cannot be read.
Commands can be entered sequentially without having to raise the CMD
line after each one. The CMD line just needs to be raised to be able to
enter data for transmission.
The same key must be written to all modules that are to be used together.
If they do not have the same key then they will not communicate in
encrypted mode.
If the CMDHOLD register is 0x01 then any received data is held until the
CMD line is raised. This prevents received data from being intermingled
with command responses.
The JOIN Process
The JOIN process is a method of generating an encryption key and
distributing the key and addresses to associated modules through a series
of button presses. This makes it very simple to establish an encrypted
network in the field or add new nodes to an existing network without any
additional equipment. It is also possible to trigger the JOIN process through
commands on the Command Data Interface.
The JOIN process configures a star network with the central unit as system
administrator. Other units are added to the network one at a time.
The hardware required is a pushbutton that is connected to the PB
line. This takes the line to VCC when it is pressed and ground when it
is released. An LED connected to the MODE_IND line provides visual
indication of the module’s state.
–
–
–
–
35
34
A module is set as an administrator by pressing and holding the button for
30 seconds to start the Generate Key function. While the button is held, the
MODE_IND line is on. After 30s, the MODE_IND line repeats a double blink,
indicating that the function has begun. When the button is released the key
and address generation are complete and the module is an administrator.
Key Generation and Network Join from Factory Default
A)
Generate Key
D
A
UMASK = FF FF FF FF
USRCID = FF FF FF FF
UDESTID = FF FF FF FF
No Key
UMASK = 00 00 00 FF
USRCID = 76 54 32 00
UDESTID = 76 54 32 FF
Network Key
When Generate Key is performed, the unit is set as the network
administrator. It generates a random 128-bit AES encryption key based on
ambient RF noise and scrambled by an encryption operation. If UMASK
is the default value (0xFFFFFFFF), it is set to 0x000000FF, supporting
up to 255 nodes, and ADDMODE is set to Extended User Address
with encryption (0x27) (or without encryption (0x07) if flag PGKEY in the
SECOPT register is 0). UMASK and ADDMODE are not changed if UMASK
is not 0xFFFFFFFF. A random 32-bit address is generated. By default, the
lower 8 bits are 0, forming the network base address. Other nodes are
assigned sequential addresses, starting with network base address +1.
UDESTID is set to the bitwise OR of USRCID and UMASK, which is the
network broadcast address.
JOIN
D
N
UMASK = FF FF FF FF
USRCID = FF FF FF FF
UDESTID = FF FF FF FF
No Key
UMASK = 00 00 00 FF
USRCID = 76 54 32 01
UDESTID = 76 54 32 00
Network Key
A
UMASK = 00 00 00 FF
USRCID = 76 54 32 00
UDESTID = 76 54 32 FF
Network Key
A module becomes a node by joining with an administrator. This is done
by pressing and releasing the PB button on both units. The modules
automatically search for each other using a special protocol. When they
find each other, the administrator sends the node the encryption key,
UMASK and its network address. The UDESTID is set to the address of the
administrator. The values are encrypted using a special factory-defined key.
Once the JOIN process is complete, the MODE_IND blinks on both units
and they now operate together. This is shown in Figure 30 A.
B)
Key Generation and Network Join from Preset Mask
Generate Key
P
A
UMASK = 00 00 0F FF
USRCID = FF FF FF FF
UDESTID = FF FF FF FF
No Key
UMASK = 00 00 0F FF
USRCID = 76 54 30 00
UDESTID = 76 54 3F FF
Network Key
If UMASK is pre-set when Generate Key is initiated, then the JOIN process
uses that mask and sets the address accordingly. This can allow more
nodes in the network. This is shown in Figure 30 B. Likewise, the network
key can be written to the module with the CDI interface and the JOIN
process used to create an address and associate new modules. Or the
administrator can be completely configured through the CDI and the
JOIN process used to associate nodes in the field. This gives the system
designer many options for configuration.
JOIN
D
N
UMASK = FF FF FF FF
USRCID = FF FF FF FF
UDESTID = FF FF FF FF
No Key
UMASK = 00 00 0F FF
USRCID = 76 54 30 01
UDESTID = 76 54 30 00
Network Key
A
The SECOPT register is used to configure options related to the JOIN
process. This allows the OEM to set desired values at the factory and allow
final network configuration in the field. This includes disabling the ability to
change the address, change the key and share the key. The built-in security
prohibits changing a node to an administrator without changing the key.
D = Factory Default
A = Network Administrator
N = Network Node
UMASK = 00 00 0F FF
USRCID = 76 54 30 00
UDESTID = 76 54 3F FF
Network Key
P = OEM Preset Unit
Figure 30: Amplified HumPROTM Series JOIN Process
–
–
–
–
37
36
Figure 33 shows the MODE_IND displays in a graphical format.
Using the MODE_IND Line
Operation
Administrator Join
Node Join
Key Transfer Active
Key Transfer Complete
JOIN Cancelled
Long Hold
MODE_IND Display
Comments
The MODE_IND line is designed to be connected to an LED to provide
visual indication of the module’s status and current actions. The pattern of
blinks indicates the particular feedback from the module. Figure 31 shows
the different blink patterns and their meanings.
Repeats for 30 seconds or until JOIN is complete
Repeats for 30 seconds or until JOIN is complete
Repeats for the duration of the transfer
Six blinks total
Amplified HumPROTM Series MODE_IND Line Timing
Repeats for as long as the PB line is asserted
after the long hold period has been recognized
Display
[on/off time in seconds]
Failure
No Key Set
Module Status
Repeats, three times total
Repeats, three times total
Repeats, three times total
Key Set, Node
Key Set, Administrator
Time (seconds)
Join Operation
Administrator Join. The administrator is looking for a node
Two quick blinks
to join with.
2.5
0
0.5
1
1.5
2
Node Join. The node is looking for an administrator to join
Figure 33: Amplified HumPROTM Series MODE_IND Displays
One quick blink
with.
Key Transfer Active. Key transfer is taking place
(administrator and node).
Quick blink
Key Transfer Complete. The module has completed a key
transfer (administrator and node).
Slow Blink
Using the PB Line
The PB Line is used to trigger functions associated with the JOIN process.
This line should be connected to a momentary pushbutton that pulls the
line to VCC when it is pressed and opens the circuit when it is released.
There is no internal pull-down, so a resistor to ground should be used
to pull the line down when the button is not pressed. A value of 10kΩ to
100kΩ works well.
Temporary On
Two quick blinks, one time Join Canceled.
Failure. For Share Key or Get Key, there are multiple
On when the PB line is high
Slow blink, repeat 3 times
units attempting to pair, protocol error, or timeout without
response
Long Hold Acknowledgement. The long hold period for
Generate Key or Reset Sequence was recognized (PB is
asserted)
Slow blink and two quick
blinks
The sequence of presses determines which function is triggered. Figure 32
shows the sequences.
Key Test Results
One quick blink Three
times
No Key. There is no network key or network address.
Amplified HumPROTM Series PB Line Operation
Two quick blinks Three
times
Key Set, node. The network key and network address are
set on a node.
Function
Sequence
Join a network
1 short pulse
Three quick blinks Three
times
Key Set, administrator. The network key and network
address are set on an administrator.
Cancel a Join Process that is in progress 1 short pulse
Normal operation
Off
Generate a network key and address
Reset to factory defaults
Hold PB high for 30 seconds
4 short pulses and hold high for 3 seconds
3 short pulses
No activity
Temporarily on
Transmitting or receiving packet
Test key and address
A short pulse is a logic high that is between 100 and 2,000ms in duration.
Figure 31: Amplified HumPROTM Series MODE_IND Line Timing
Figure 32: Amplified HumPROTM Series PB Line Operation
–
–
–
–
39
38
Restore Factory Defaults
Amplified HumPROTM Series Output Line Sleep States
The transceiver is reset to factory default by taking the PB line high briefly
4 times, then holding PB high for more than 3 seconds. Each brief interval
must be high 0.1 to 2 seconds and low 0.1 to 2 seconds. (1 second
nominal high / low cycle). The sequence helps prevent accidental resets.
Once the sequence is recognized, the MODE_IND line blinks in groups
of three until the PB line goes low. After PB goes low, the non-volatile
configurations are set to the factory default values and the module is
restarted. The default UART data rate is 9,600bps.
Output Line
EX
Sleep State
Unchanged
Low
CRESP
LNA_EN
PA_EN
TXD
Low
Low
High
CTS
High
MODE_IND
BE
Low
If the timing on PB does not match the specified limits, the sequence is
ignored. Another attempt can be made after lowering PB for at least 3
seconds.
Unchanged
Figure 34: Amplified HumPROTM Series Output Line Sleep States
If the volatile registers have been corrupted during sleep, a software reset
is performed. This restarts the module as if power were cycled. This can be
caused by power surges or brownout among other things.
Using the Low Power Features
The module supports several low-power features to save current in
battery-powered applications. This allows the module to be asleep most of
the time, but be able to quickly wake up, send data and go back to sleep.
After the module wakes up, it sets the IDLE register to 0 (active). If the
WAKEACK register is set to 1, then the module outputs the 0x06 byte on
the CMD_DATA_OUT line. The CRESP line is taken high and the module
then begins normal operation.
Taking the Power Down (POWER_DOWN) line low places the module into
the lowest power state. In this mode, the internal voltage regulator and all
oscillators are turned off. All circuits powered from the voltage regulator
are also off. The module is not functional while in this mode and current
consumption drops to below 1µA. Taking the line high wakes the module.
Pulsing RESET low causes the module to restart rather than continue from
sleep.
Baud Rate and Transmitter Output Power
When the POWER_DOWN line is high, the IDLE register determines sleep
operation.
The FCC and Industry Canada regulations link the maximum transmitter
output power and the number of hopping channels in a frequency hopping
system. A transmitter with 50 or more hopping channels is allowed up to
1W of output power. A transmitter with at least 25 channels is allowed up
to 0.25W of output power.
If IDLE is set to 1 during normal operation, the module sends an ACK byte,
waits for completion of an active transmission, then goes into sleep mode.
Unsent data in the incoming UART data buffer does not inhibit sleep.
During sleep mode, the output lines are in the states in Figure 34.
The Amplified HumPROTM Series uses a different number of hopping
channels based on the value of the UARTBAUD register. Rates of 9,600bps
(0x01) and 19,200bps (0x02) use 50 channels. The rest of the rates use 26
channels. This means that UARTBAUD values of 0x01 or 0x02 are allowed
the full range of TXPWR register values. All other UARTBAUD values are
limited to 24dBm, or a TXPWR register value of 0x07 or less.
A rising transition on the PB, POWER_DOWN or CMD_DATA_IN lines
wakes the module. If a negative-going pulse is needed to generate a rising
edge, the pulse width should be greater than 1µs.
Other lines also wake the module but it immediately goes back to sleep.
Floating inputs should be avoided since they may cause unintended
transitions and cause the module to draw additional current.
The module automatically links these values, so the output power is limited
appropriately.
–
–
–
–
41
40
Command field contains the register address that is to be accessed and,
in the case of a write command, the value to be written. Neither Length nor
Command can contain a 0xFF byte.
The Command Data Interface
The Amplified HumPROTM Series transceiver has a serial Command Data
Interface (CDI) that is used to configure and control the transceiver through
software commands. This interface consists of a standard UART with a
serial command set. The CMD_DATA_IN and CMD_DATA_OUT lines are
the interface to the module’s UART. The UART is configured for 1 start
bit, 1 stop bit, 8 data bits, no parity and a serial data rate set by register
UARTBAUD (default 9,600bps). The CMD line tells the module if the data
on the UART is for configuration commands (low) or data transmission
(high).
Byte values of 128 (0x80) or greater can be sent as a two-byte escape
sequence of the format:
0xFE, [value - 0x80]
For example, the value 0x83 becomes 0xFE, 0x03. The Length count
includes the added escape bytes.
The module has a 256 byte buffer for incoming data. The module starts
transmitting when the buffer reaches a specified limit or when the time
since the last received byte on the UART reaches a specified value. This
allows the designer to optimize the module for fixed length and variable
length data.
A response is returned for all valid commands. The first response byte is
CMD_ACK (0x06) or CMD_NACK (0x15). Additional bytes may follow, as
determined by the specific command.
If the buffer gets nearly full (about 224 bytes), the module pulls the CTS line
high, indicating that the host should not send any more data. Data sent by
the host while the buffer is full is lost, so the CTS line provides a warning
and should be monitored. When there is outgoing data waiting to be
transmitted or acknowledged the BE line is low, otherwise BE is high.
Reading from Registers
A register read command is constructed by placing an escape character
(0xFE) before the register number. The module responds by sending an
ACK (0x06) followed by the register number and register value. The register
value is sent unmodified, so if the register value is 0x83, 0x83 is returned.
If the register number is invalid, the module responds with a NACK (0x15).
The command and response are shown in Figure 35.
Configuration settings are stored in two types of memory inside the
module. Volatile memory is quick to access, but it is lost when power is
removed from the module. Non-volatile memory has a limited number of
write cycles, but is retained when power is removed. When a configuration
parameter has both a non-volatile and volatile register, the volatile register
controls the operation unless otherwise stated. The non-volatile register
holds the default value that is loaded into the volatile register on power-up.
Amplified HumPROTM Series Read From Configuration Register
Command
Header
0xFF
Size
Escape Address
0x02
0xFE
REG
Response
ACK
Configuration settings are read from non-volatile memory on power up
and saved in volatile memory. The volatile and non-volatile registers have
different address locations, but the same read and write commands. The
two locations can be changed independently.
Address
REG
Value
V
0x06
Command for an Address greater than 128 (0x80)
Header
0xFF
Size
Escape
0xFE
Addr1
0xFE
Addr2
0x03
REG-80
The general serial command format for the module is:
[FF] [Length] [Command]
Response
ACK
Address
REG
Value
V
0x06
The Length byte is the number of bytes in the Command field. The
Figure 35: Amplified HumPROTM Series Read from Configuration Register Command and Response
–
–
–
–
43
42
Writing to Registers
Command Length Optimization
To allow any byte value to be written, values of 128 (0x80) or greater can
be encoded into a two-byte escape sequence of the format 0xFE, [value
- 0x80]. This includes register addresses as well as values to be written to
the registers. The result is that there are four possible packet structures
because of the possible escape sequences. These are shown in Figure 36.
Some commands may be shortened by applying the following rules:
1. Escape sequences are not required for byte values 0x00 to 0xEF
(besides 0xFE and 0xFF, bytes 0xF0 – 0xFD are reserved for future
use).
2. An escape byte inverts bit 7 of the following data byte.
Amplified HumPROTM Series Write to Configuration Register Command
3. The 0xFE as the first byte of the Read Register Command field is an
escape byte.
Register and Value less than 128 (0x80)
Header Size Address
0xFF 0x02 REG
Value
V
4. Two consecutive escape bytes cancel unless the following data byte
is 0xf0-0xff.
Register less than 128 (0x80) and a Value greater than or equal to 128 (0x80)
Header Size Address
0xFF 0x03 REG
Escape
0xFE
Value
Examples:
V-0x80
•ꢀ FF 02 FE 02 (read nv:TXPWR) is equivalent to FF 01 82.
•ꢀ FF 03 FE FE 53 (read v:PKOPT) is equivalent to FF 01 53.
•ꢀ FF 03 1A FE 7F (write FF to nv:UMASK0) cannot be shortened.
Register greater than or equal to 128 (0x80) and a Value less than 128 (0x80)
Header Size Escape
0xFF 0x03 0xFE
Address
Value
V
REG-0x80
Register and Value greater than or equal to 128 (0x80)
•ꢀ FF 03 1A FE 40 (write C0 to nv:UMASK0) is equivalent to FF 02 1A
Header Size Escape
0xFF 0x04 0xFE
Address
Escape Value
0xFE V-0x80
C0.
REG-0x80
These rules are implemented in the sample code file EncodeProCmd.c,
which can be downloaded from the Linx website.
Figure 36: Amplified HumPROTM Series Write to Configuration Register Command
Generally, there are three steps to creating the command.
1. Determine the register address and the value to be written.
2. Encode the address and value as either the number (N) or the encoded
number (0xFE, N-0x80) as appropriate.
3. Add the header (0xFF) and the size.
The module responds with an ACK (0x06). If the ACK is not received, the
command should be resent. The module responds with a NACK (0x15) if a
write is attempted to a read-only or invalid register.
As an example, to write 01 to register 0x83, send
FF 03 FE 03 01
Note: The non-volatile memory has a life expectancy of 16,000 write
operations.
–
–
–
–
45
44
return dx;
Example Code for Encoding Read/Write Commands
This software example is provided as a courtesy in “as is” condition. Linx
Technologies makes no guarantee, representation, or warranty, whether
express, implied, or statutory, regarding the suitability of the software for
use in a specific application. The company shall not, in any circumstances,
be liable for special, incidental, or consequential damages, for any reason
whatsoever.
}
/* Function: HumProRead
** Description: This function encodes a read command to the specified
**
*/
register address.
unsigned char
HumProRead(
unsigned char *cmd,
unsigned char reg
) {
/* number of encoded bytes, 3 to 4 */
/* out: encoded read command, length >= 4 */
/* register number to read, 0..0xff */
unsigned char ra;
/* read register byte */
File EncodeProCmd.c
ra = reg ^ 0x80;
/* Sample C code for encoding Hum-xxx-PRO commands
return HumProCommand(cmd, &ra, 1);
**
}
** Copyright 2015 Linx Technologies
** 155 Ort Lane
** Merlin, OR, US 97532
/* Function: HumProWrite
** Description: This function encodes a command to write a single byte to
** www.linxtechnologies.com
**
*/
a specified register address.
**
** License:
unsigned char
HumProWrite(
unsigned char *cmd,
unsigned char reg,
unsigned char val
) {
/* number of encoded bytes, 4 to 6 */
** Permission is granted to use and modify this code, without royalty, for
** any purpose, provided the copyright statement and license are included.
*/
/* out: encoded read command, length >= 6 */
/* register number to write, 0..0xff */
/* value byte, 0..0xff */
#include “EncodeProCmd.h”
unsigned char cs[2];
cs[0] = reg;
/* Function: HumProCommand
** Description: This function encodes a command byte sequence.
cs[1] = val;
return HumProCommand(cmd, &cs, 2);
**
**
**
**
*/
If len = 1, a read command is generated.
If len > 1, a write command is generated.
rcmd[0] = register number
}
rcmd[1..(n-1)] = bytes to write
unsigned char
HumProCommand(
unsigned char *ecmd,
const unsigned char *rcmd,
unsigned char n
) {
/* number of encoded bytes, n+2 to 2*n+2 */
/* out: encoded command, length >= 2*n + 2 */
/* in: sequence of bytes to encode */
/* number of bytes in rcmd, 1..32 */
unsigned char dx;
unsigned char sx;
unsigned char v;
dx = 2;
/* destination index */
/* source index */
/* value to be encoded */
sx = 0;
while (n--) {
v = rcmd[sx++];
if (v >= 0xf0) {
ecmd[dx++] = 0xfe;
v &= 0x7f;
}
ecmd[dx++] = v;
}
ecmd[0] = 0xff;
ecmd[1] = dx - 2;
–
–
–
–
47
46
The Command Data Interface Command Set
DESTDSN0
EXMASK
CMDHOLD
COMPAT
AUTOADDR
MYDSN3
MYDSN2
MYDSN1
MYDSN0
CUSTID1
CUSTID0
CRSSI
0x20 0x6B R/W
0x21 0x6C R/W
0x23 0x6E R/W
0x25 0x70 R/W
0x26 0x71 R/W
0xFF Destination Device Serial Number
0x00 Exception Mask to activate EX
0x00 Hold RF data when nCMD pin is low
0x02 Compatibility
The following sections describe the registers.
Amplified HumPROTM Series Configuration Registers
NV
Vol
Default
Value
Name
R/W
Description
Addr Addr
0x00 Automatic Reply Address
Factory programmed Serial Number
Factory programmed Serial Number
Factory programmed Serial Number
Factory programmed Serial Number
0xFF Factory programmed customer ID
0xFF Factory programmed customer ID
0xBA Carrier Sense minimum RSSI
Release number
CRCERRS
HOPTABLE
TXPWR
0x40 R/W
0x00 0x4B R/W
0x02 0x4D R/W
0x03 0x4E R/W
0x04 0x4F R/W
0x05 0x50 R/W
0x00 CRC Error Count
0x00 Channel Hop Table
0x09 Transmit Power
0x34
0x35
0x36
0x37
0x39
0x3A
0x3F
0x78
R
R
R
UARTBAUD
ADDMODE
DATATO
0x01 UART data rate
R
0x04 Addressing mode
0x10 Data timeout
R
R
MAXTXRETRY 0x07 0x52 R/W
0x1A Maximum Transmit Retries
0x01 Enable CRC checking
0x40 Byte Count trigger
0x01 Show version on startup
0x01 Enable CSMA
R/W
R
ENCRC
0x08 0x53 R/W
0x09 0x54 R/W
RELEASE
EXCEPT
BCTRIG
SHOWVER
ENCSMA
IDLE
0x79
0x7B
0x7C
R
0x00 Exception code
0x0A
R/W
PRSSI
R
0x00 Packet RSSI
0x0B 0x56 R/W
0x0D 0x58 R/W
0x0E 0x59 R/W
ARSSI
R
0x00 Ambient RSSI
0x00 Idle Mode
FWVER3
FWVER2
FWVER1
FWVER0
NVCYCLE1
NVCYCLE0
LSTATUS
CMD
0xC0
0xC1
0xC2
0xC3
0xC4
0xC5
R
Firmware version, major
WAKEACK
0x01 UART Acknowledge on Wake
R
Firmware version, minor
Destination Address for User Packet
Type, extended
R
Firmware version, increment
Firmware version, suffix
UDESTID3
UDESTID2
UDESTID1
UDESTID0
USRCID3
USRCID2
0x0F 0x5A R/W
0x10 0x5B R/W
0x11 0x5C R/W
0x12 0x5D R/W
0x13 0x5E R/W
0x14 0x5F R/W
0xFF
R
Destination Address for User Packet
Type, extended
0xFF
R
NV Refresh Cycles, MS
R
NV Refresh Cycles, LS
Destination Address for User Packet
0xFF
Type
0xC6
0xC7
0xC9
0xCA
R
Output line status
W
R
0x00 Command register
Destination Address for User Packet
0xFF
Type
SECSTAT
JOINST
Security Status
Source Address for User Packet Type,
extended
R
0x00 Join Status
0xFF
EEXFLAG2
EEXFLAG1
EEXFLAG0
EEXMASK2
EEXMASK1
EEXMASK0
PKTOPT
SECOPT
0xCD R/W
0xCE R/W
0xCF R/W
0x00 Extended exception flags
0x00 Extended exception flags
0x00 Extended exception flags
0x00 Extended exception mask
0x00 Extended exception mask
0x00 Extended exception mask
0x00 Packet options
Source Address for User Packet Type,
extended
0xFF
USRCID1
USRCID0
0x15 0x60 R/W
0x16 0x61 R/W
0xFF Source Address for User Packet Type
0xFF Source Address for User Packet Type
0x80 0xD0 R/W
0x81 0xD1 R/W
0x82 0xD2 R/W
0x83 0xD3 R/W
0x84 0xD4 R/W
Address Mask for User Packet Type,
extended
UMASK3
UMASK2
0x17 0x62 R/W
0x18 0x63 R/W
0xFF
Address Mask for User Packet Type,
extended
0xFF
0xFF Security Options
UMASK1
0x19 0x64 R/W
0x1A 0x65 R/W
0x1D 0x68 R/W
0x1E 0x69 R/W
0x1F 0x6A R/W
0xFF Address Mask for User Packet Type
0xFF Address Mask for User Packet Type
0xFF Destination Device Serial Number
0xFF Destination Device Serial Number
0xFF Destination Device Serial Number
LASTNETAD[3] 0x8C
LASTNETAD[2] 0x8D
LASTNETAD[1] 0x8E
LASTNETAD[0] 0x8F
R/W
R/W
R/W
R/W
0x00 Last Network Address Assigned
0x00 Last Network Address Assigned
0x00 Last Network Address Assigned
0x00 Last Network Address Assigned
UMASK0
DESTDSN3
DESTDSN2
DESTDSN1
Figure 37: Amplified HumPROTM Series Configuration Registers
–
–
–
–
49
48
CRCERRS - CRC Error Count
Volatile Address = 0x40
hopping channels. Figure 41 shows the hop sequences referenced by
channel number. When the baud rate is 38,400bps and higher, the module
uses 26 hopping channels and only even channels are used. Figure 42
shows the hop sequences referenced by channel number. The default hop
sequence is 0.
The value in the CRCERRS register is incremented each time a packet with
a valid header is received that fails the CRC check on the payload. This
check applies only to unencrypted packets. Overflows are ignored. Writing
0x00 to this register initializes the count. Figure 38 shows the command
and response.
Amplified HumPROTM Series RF Channels
Channel Number
Frequency (MHz)
902.971
903.347
903.723
904.099
904.475
904.851
905.227
905.602
905.978
906.354
906.730
907.106
907.482
907.858
908.234
908.610
908.986
909.361
909.737
910.113
910.489
910.865
911.241
911.617
911.993
912.369
912.745
913.120
913.496
913.872
914.248
914.624
Channel Number
Frequency (MHz)
915.000
915.376
915.752
916.128
916.504
916.880
917.255
917.631
918.007
918.383
918.759
919.135
919.511
919.887
920.263
920.639
921.014
921.390
921.766
922.142
922.518
922.894
923.270
923.646
924.022
924.398
924.773
925.149
925.525
925.901
926.277
926.653
Amplified HumPROTM Series CRC Error Count
0
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
1
Read Command
Read Response
2
Header
0xFF
Size
Escape Address
ACK
0x06
Address
0x40
Value
V
3
0x02
0xFE
0x40
4
Write Command
5
Header
0xFF
Size
Address
0x40
Value
V
6
7
0x02
8
9
Figure 38: Amplified HumPROTM Series CRC Error Count Command and Response
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
HOPTABLE - Channel Hop Table
Volatile Address = 0x4B; Non-Volatile Address = 0x00
The module supports 6 different hop sequences with minimal correlation.
The sequence is set by the value in the HOPTABLE register. Changing the
hop sequence changes the band utilization, much the same way that a
channel does for a non-hopping transmitter. The hop table selection must
match between the transmitter and receiver. Valid values are 0-5. Figure 39
shows the command and response.
Amplified HumPROTM Series Channel Hop Table
Read Command
Read Response
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
0x4B
0xFE
0x4B
0x00
0x02
0x00
Write Command
Header
0xFF
Size
Address
Value
V
0x4B
0x00
0x02
Figure 39: Amplified HumPROTM Series Channel Hop Table Command and Response
Figure 40: Amplified HumPROTM Series RF Channels
Figure 40 shows the RF channels used by the Amplified HumPROTM Series.
When the baud rate is set to 9,600 or 19,200 bps, the module uses 50
–
–
–
–
51
50
HumPROTM Series Hop Sequences by Channel Number, 19,200bps and below
HumPROTM Series Hop Sequences by Channel Number, 38,400bps and Above
0
1
2
3
4
5
0
1
2
3
4
5
25
63
28
26
16
61
4
30
60
59
14
16
32
4
47
26
43
1
25
36
15
57
10
48
21
8
17
37
45
44
13
33
0
11
12
0
58
11
52
37
36
42
25
15
1
52
10
54
62
21
33
44
51
61
36
34
2
57
50
12
29
6
35
23
41
45
7
42
63
24
9
27
10
17
20
22
18
32
3
32
2
30
60
58
52
42
20
40
16
34
4
6
56
22
20
14
4
44
14
16
22
32
54
34
58
40
6
18
48
46
40
30
8
40
42
48
58
16
60
20
2
4
62
23
43
25
34
61
26
24
6
31
7
32
55
39
1
41
29
15
57
3
42
47
2
56
33
9
14
30
21
4
54
59
51
22
38
58
60
52
45
37
13
35
36
8
10
20
42
22
46
28
58
54
44
24
48
34
6
46
2
29
0
28
4
42
60
30
34
44
0
44
46
22
36
34
24
2
21
11
27
1
55
2
22
56
60
6
32
28
18
62
22
8
12
26
27
41
9
8
2
18
38
14
28
56
48
32
0
56
36
60
46
18
26
42
10
8
26
2
40
54
18
10
58
26
28
32
38
50
12
62
36
8
16
44
36
20
52
54
58
0
31
49
13
47
14
33
48
38
45
59
3
46
0
39
57
56
5
40
23
62
24
54
17
22
32
7
61
34
63
50
30
43
28
8
8
15
4
44
52
4
46
48
11
39
4
45
22
56
18
43
60
31
47
0
20
37
59
35
7
15
25
16
23
42
24
32
28
26
13
3
14
30
62
60
56
50
38
12
26
52
35
37
55
8
0
48
13
61
31
56
52
54
55
62
6
37
36
38
51
59
5
43
21
40
14
12
30
16
34
46
60
39
58
33
36
34
30
24
12
50
0
2
6
4
10
54
13
32
43
12
23
48
14
39
40
15
57
18
60
41
9
49
58
38
45
56
50
42
62
47
12
24
50
36
10
62
50
24
38
0
12
38
24
62
46
62
34
7
26
24
22
58
42
50
12
20
39
27
2
Figure 42: Amplified HumPROTM Series Hop Sequences for UART rates of 38,400bps and above
35
5
28
49
29
18
38
3
46
40
49
52
40
5
49
Figure 41: Amplified HumPROTM Series Hop Sequences for UART rate of 19,200bps and below
–
–
–
–
53
52
TXPWR - Transmitter Output Power
UARTBAUD - UART Baud Rate
Volatile Address = 0x4D; Non-Volatile Address = 0x02
The value in the TXPWR register sets the module’s output power. Figure 43
shows the command and response and Figure 44 available power settings
and typical power outputs for the module. The default setting is 0x09.
Volatile Address = 0x4E; Non-Volatile Address = 0x03
The value in UARTBAUD sets the data rate of the UART interface.
Changing the non-volatile register changes the data rate on the following
power-up or reset. Changing the volatile register changes the data rate
immediately following the command acknowledgement. Figure 45 shows
the command and response and Figure 46 shows the valid settings.
Amplified HumPROTM Series Transmitter Output Power Mode
Read Command
Read Response
Amplified HumPROTM Series UART Baud Rate
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
PWR
Read Command
Read Response
0x4D
0xFE
0x4D
0x02
0x02
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
0x02
0x4E
0xFE
0x4E
0x03
Write Command
0x02
0x03
Header
0xFF
Size
Address
Value
PWR
Write Command
0x4D
0x02
0x02
Header
0xFF
Size
Address
Value
V
0x4E
0x03
0x02
Figure 43: Amplified HumPROTM Series Transmitter Output Power Mode Command and Response
Figure 45: Amplified HumPROTM Series UART Baud Rate Command and Response
Amplified HumPROTM Series Transmitter Output Power Mode Register Settings
Typical Output Power
19.2kbps RF Rate (dBm)
Typical Output Power
153.6kbps RF Rate (dBm)
Amplified HumPROTM Series UART Baud Rate Register Settings
PWR
V
Baud Rate (bps)
9,600
RF Data Rate (bps)
19,200
0x00
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
0x0A
-9.2
-9.2
3.2
-9.2
-9.2
3.2
0x01
0x02
0x03
0x04
0x05
0x06
0x07
19,200
19,200
38,400
153,600
7.0
7.0
57,600
153,600
12.7
18.5
20.3
22.4
24.0
25.0
25.0
12.7
18.5
20.3
22.4
22.4
22.4
22.4
115,200
10,400*
31,250*
153,600
153,600
153,600
* These data rates are not supported by PC serial ports. Selection of these rates may
cause the module to fail to respond to a PC, requiring a reset to factory defaults.
Figure 46: Amplified HumPROTM Series UART Baud Rate Settings
If the module’s UART baud rate is different than the host processor UART
baud rate then the module will not communicate correctly. If mismatched,
every rate can be tested until the correct one is found or the module can be
reset to factory defaults. The default baud rate is 9,600bps (0x01).
Figure 44: Amplified HumPROTM Series Transmitter Output Power Mode Settings
Note: The maximum transmitter output power allowed by regulations is
24dBm (TXPWR = 0x07) if the UART rate is set to 38,400bps or higher
(UARTBAUD = 0x03 or higher). All power levels are allowed if the UART
rate is 19,200bps or less (UARTBAUD = 0x01 or 0x02). The module
automatically restricts the max power based on the UARTBAUD value.
–
–
–
–
55
54
ADDMODE - Addressing Mode
Amplified HumPROTM Series Addressing Mode Register Settings
Volatile Address = 0x4F; Non-Volatile Address = 0x04
The module supports three addressing modes: DSN, User, and Extended
User, which are configured using bits 0 - 2.
Addressing Mode Meaning
0x04
DSN Addressing Mode
User Addressing Mode
Extended User Addressing Mode
Send normal preamble
Send long preamble
0x06
If bit 3 is set, the module sends an extended preamble. This allows
modules that have just awakened or have not yet synchronized to find and
temporarily synchronize with the transmitting module. This can be useful
in systems that require the endpoints to spend most of their time sleeping.
Endpoints can awaken, receive a message from the transmitter, and go
back to sleep. This message could contain scheduling information as to
when to wake again for a full bi-directional communications session.
0x07
+0x00
+0x08
+0x10
+0x20
Request acknowledgments
Encrypt packets
All other addressing modes are reserved and may cause undesired operation.
Figure 48: Amplified HumPROTM Series Addressing Mode Register Settings
If bit 4 is set, then the receiver is instructed to transmit an
acknowledgement packet for assured delivery signifying to the transmitter
that the message was received.
If bit 5 is set then the module transmits data in encrypted mode.
Figure 47 shows the command and response and Figure 48 shows the
valid settings.
Amplified HumPROTM Series Addressing Mode
Read Command
Read Response
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
0x4F
0xFE
0x4F
0x04
0x02
0x04
Write Command
Header
0xFF
Size
Address
Value
V
0x4F
0x04
0x02
Figure 47: Amplified HumPROTM Series Addressing Mode Command and Response
–
–
–
–
57
56
DATATO - Transmit Wait Timeout
MAXTXRETRY - Maximum Transmit Retries
Volatile Address = 0x50; Non-Volatile Address = 0x05
When a byte is received from the UART, the module starts a timer that
counts down every millisecond. The timer is restarted when each byte is
received. The value for the DATATO register is the number of milliseconds
to wait before transmitting the data in the UART receive buffer. The default
setting for this register is 0x10 (~16ms delay).
Volatile Address = 0x52; Non-Volatile Address = 0x07
The value in the MAXTXRETRY register sets the number of transmission
retries performed if an acknowledgement is not received. If an
acknowledgement is not received after the last retry, exception EX_
NORFACK is raised. Figure 51 shows examples of the command.
Amplified HumPROTM Series Maximum Transmit Retries
Read Command
Read Response
If the timer reaches zero before the next byte is received from the UART,
the module begins transmitting the data in the buffer. This timeout value
should be greater than one byte time at the current UART baud rate with a
minimum of 0x02. It should not be set any value less than one byte time as
unpredictable results could occur.
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
0x52
0xFE
0x52
0x07
0x02
0x07
Write Command
Header
0xFF
Size
Address
Value
V
0x52
0x07
If the timeout value is set to 0x00, the transmit wait timeout is deactivated.
In this case, the transceiver waits until a number of bytes equal to the
UART Byte Count Trigger (BCTRIG) have been received by the UART. All
of the bytes are sent once the trigger has been reached. Figure 49 shows
examples of the commands. Figure 50 shows the minimum timeout values
based on baud rate.
0x02
Figure 51: Amplified HumPROTM Series Maximum Transmit Retries Command and Response
The time between retries depends on the current baud rate. Figure 52
shows the time between retries based on baud rate. The elapsed transmit
and acknowledgment time is (retries+1) × (PacketTransmitTime + Timeout).
Amplified HumPROTM Series Transmit Wait Timeout
Amplified HumPROTM Series Acknowledgement Timeout Times
Read Command
Read Response
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
Baud Rate
9,600
Timeout Time
50ms
0x50
0xFE
0x50
0x05
0x02
0x05
19,200
38,400
57,600
115,200
50ms
Write Command
30ms
Header
0xFF
Size
Address
Value
V
30ms
0x50
0x05
0x02
30ms
Figure 52: Amplified HumPROTM Series Acknowledgement Timeout Times
Figure 49: Amplified HumPROTM Series Transmit Wait Timeout Command and Response
Amplified HumPROTM Series Minimum DATATO Values
Baud Rate
9,600
Minimum DATATO
3ms
2ms
2ms
2ms
2ms
19,200
38,400
57,600
115,200
Figure 50: Amplified HumPROTM Series Transmit Wait Timeout Minimum Values
–
–
–
–
59
58
ENCRC - CRC Enable
BCTRIG - UART Byte Count Trigger
Volatile Address = 0x53; Non-Volatile Address = 0x08
Volatile Address = 0x54; Non-Volatile Address = 0x09
The protocol includes a Cyclic Redundancy Check (CRC) on the received
unencrypted packets to make sure that there are no errors. Encrypted
packets use a key-based error detection method. Any packets with errors
are discarded and not output on the UART. This feature can be disabled
if it is desired to perform error checking outside the module. Set the
ENCRC register to 0x01 to enable CRC checking, or 0x00 to disable it. The
default CRC mode setting is enabled. Figure 53 shows examples of the
commands and Figure 54 shows the available values.
The BCTRIG register determines the UART buffer level that triggers
the transmission of a packet. The minimum value is decimal 1 and the
maximum value is 192. The default value for this register is 64, which
provides a good mix of throughput and latency. At the maximum data rate,
a value of 128 optimizes throughput. This register does not guarantee a
particular transmission unit size; rather, it specifies the minimum desired
size. If there is not enough time left in the channel dwell time before the
module must hop to the next channel, for instance, the protocol engine
sends as many characters as it can to fill the current channel dwell time,
and sends the remaining characters on the next channel. Figure 55 shows
examples of the commands.
Amplified HumPROTM Series CRC Enable
Read Command
Read Response
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
Amplified HumPROTM Series UART Byte Count Trigger
0x53
0xFE
0x53
0x08
0x02
Read Command
Read Response
0x08
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
Write Command
0x54
0xFE
0x54
0x09
Header
0xFF
Size
Address
Value
V
0x02
0x09
0x53
0x08
0x02
Write Command
Header
0xFF
Size
Address
Value
V
Figure 53: Amplified HumPROTM Series CRC Enable Command and Response
0x54
0x09
0x02
Amplified HumPROTM Series CRC Enable Register Settings
Figure 55: Amplified HumPROTM Series UART Byte Count Trigger Command and Response
V
Mode
This trigger can be overridden by enabling the TXPKT option (PKTOPT
register, bit 0).
0x00
0x01
CRC Disabled
CRC Enabled
Figure 54: Amplified HumPROTM Series CRC Enable Register Settings
Although disabling CRC checking allows receiving packets with errors
in the payload, errors in the header can still prevent packets from being
output by the module.
–
–
–
–
61
60
SHOWVER - Show Version
ENCSMA - CSMA Enable
Non-Volatile Address = 0x0A
Volatile Address = 0x56; Non-Volatile Address = 0x0B
Carrier-Sense Multiple Access (CSMA) is a best-effort transmission protocol
that listens to the channel before transmitting a message. If another
device is already transmitting on the same channel when a message is
ready to send, the module waits before sending its payload or changes
to an unused channel. This helps to eliminate RF message corruption at
the expense of additional latency. By default, CSMA is enabled. Figure
58 shows examples of the commands and Figure 59 shows the available
values.
Setting the SHOWVER register to 0x00 suppresses the start-up message,
including firmware version, which is sent out of the UART when the module
is reset. A value of 0x01 causes the message to be output after reset. By
default, the module start-up message is output. Figure 56 shows examples
of the commands and Figure 57 shows the available values.
Amplified HumPROTM Series Show Version
Read Command
Read Response
Header
0xFF
Size
Escape Address
ACK
0x06
Address
0x0A
Value
V
Amplified HumPROTM Series CSMA Enable
0x02
0xFE
0x0A
Read Command
Read Response
Write Command
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
Header
0xFF
Size
Address
0x0A
Value
V
0x56
0xFE
0x56
0x0B
0x02
0x02
0x0B
Write Command
Figure 56: Amplified HumPROTM Series Show Version Command and Response
Header
0xFF
Size
Address
Value
V
0x56
0x0B
0x02
Amplified HumPROTM Series Show Version Register Settings
V
Meaning
Figure 58: Amplified HumPROTM Series CSMA Enable Command and Response
0x00
Startup message is NOT output on reset or power-up.
Startup message is output on reset or power-up. This is a
blocking operation, and any incoming UART data is lost during the
transmission of this message through the CMD_DATA_OUT line. All
UART commands must be sent after this message has completed.
Amplified HumPROTM Series CSMA Enable Register Settings
0x01
V
Mode
0x00
0x01
Disable CSMA
Enable CSMA
Figure 57: Amplified HumPROTM Series Show Version Register Settings
Example:
Figure 59: Amplified HumPROTM Series CSMA Enable Register Settings
HUM-900-PRO v1.2.3
(C) 2014 Linx Technologies Inc. All rights reserved.
See the Carrier Sense Multiple Access section for details.
–
–
–
–
63
62
IDLE - Idle Mode
WAKEACK - ACK on Wake
Volatile Address = 0x58; Non-Volatile Address = 0x0D
The value in the IDLE register sets the operating mode of the transceiver.
If the module remains properly powered, and is awakened from a low
power mode properly, the volatile registers retain their values. If the volatile
registers become corrupted during low power, a software reset is forced
and the module reboots.
Volatile Address = 0x59; Non-Volatile Address = 0x0E
When UART Acknowledge on Wake is enabled, the module sends an ACK
(0x06) character out of the CMD_DATA_OUT line after the module resets
or wakes from sleep. If the SHOWVER register is 1, the ACK is sent after
the firmware version. This indicates that the module is ready to accept data
and commands. A value of 0x01 enables this feature; 0x00 disables it. The
default value is 0x01. Figure 62 shows examples of the commands and
Figure 63 shows the available values.
Awake is the normal operating setting. This is the only setting in which the
RF circuitry is able to receive and transmit RF messages.
Amplified HumPROTM Series ACK on Wake
Read Command
Read Response
Sleep disables all circuitry on-board the module. This is the lowest-power
setting available for the module.
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
0x59
0xFE
0x59
0x0E
0x02
0x0E
Please see the Low Power States section for more details. Figure 60 shows
examples of the commands and Figure 61 shows the available values.
Write Command
Header
0xFF
Size
Address
Value
V
Amplified HumPROTM Series Idle Mode
0x59
0x0E
0x02
Read Command
Read Response
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
Figure 62: Amplified HumPROTM Series ACK on Wake Command and Response
0x58
0xFE
0x58
0x0D
0x02
0x0D
Write Command
Amplified HumPROTM Series ACK on Wake Register Settings
Header
0xFF
Size
Address
Value
V
V
Mode
0x58
0x0D
0x02
0x00
0x01
Disable ACK
Enable ACK
Figure 60: Amplified HumPROTM Series Idle Mode Command and Response
Figure 63: Amplified HumPROTM Series ACK on Wake Register Settings
Amplified HumPROTM Series Idle Mode Register Settings
V
Mode
Awake
Sleep
0x00
0x01
Figure 61: Amplified HumPROTM Series Idle Mode Register Settings
–
–
–
–
65
64
UDESTID - User Destination Address
USRCID - User Source Address
Volatile Address = 0x5A-0x5D; Non-Volatile Address = 0x0F-0x12
These registers contain the address of the destination module when User
Addressing mode or Extended User Addressing mode are enabled. User
Addressing mode uses bytes 0 and 1 to determine the destination address.
Extended User Addressing mode uses all four bytes. These registers are
automatically filled with the source address from a received message if the
received message address type matches the value in AUTOADDR. Please
see the Addressing Modes section for more details. Each register byte
is read and written separately. Figure 64 shows the User Destination ID
registers.
Volatile Address = 0x5E-0x61; Non-Volatile Address = 0x13-0x16
These registers contain the address of the module when User Addressing
mode or Extended User Addressing mode are enabled. User Addressing
mode uses bytes 0 and 1 to determine the source address for both
transmitted messages and matching received messages. Extended User
Addressing mode uses all four bytes. When the COMPAT register is 0x02 in
User Address mode, bytes 3 and 2 must be 0. Please see the Addressing
Modes section for more details. Each register byte is read and written
separately. Figure 65 shows the User Source ID registers.
Amplified HumPROTM Series User Source Address Registers
Amplified HumPROTM Series User Destination Address Registers
Volatile Non-Volatile
Name
Description
Address
Address
Volatile Non-Volatile
Name
Description
Address
Address
USRCID3
USRCID2
0x5E
0x13
MSB of the extended source address
Byte 2 of the extended source address
UDESTID3
UDESTID2
0x5A
0x0F
MSB of the extended destination address
Byte 2 of the extended destination address
0x5F
0x14
0x5B
0x10
Byte 1 of the extended source address
MSB of the short source address
USRCID1
USRCID0
0x60
0x61
0x15
0x16
Byte 1 of the extended destination address,
MSB of the short destination address
UDESTID1
UDESTID0
0x5C
0x5D
0x11
0x12
LSB of the extended source address and short
source address
LSB of the extended destination address and
short destination address
Figure 65: Amplified HumPROTM Series User Source Address Registers
Figure 64: Amplified HumPROTM Series User Destination Address Registers
–
–
–
–
67
66
UMASK - User ID Mask
EXMASK - Exception Mask
Volatile Address = 0x62-0x65; Non-Volatile Address = 0x17-0x1A
These registers contain the user ID mask when User Addressing mode or
Extended User Addressing mode are enabled. Please see the Addressing
Modes section for more details. Each register byte is read and written
separately.
Volatile Address = 0x6C; Non-Volatile Address = 0x21
The module has a built-in exception engine that can notify the host
processor of an unexpected event. When an exception occurs, this register
is ANDed with the exception code. A non-zero result causes the EX line
to go high. Reading the EXCEPT register clears the exception and resets
the EX line. If the ANDed result is zero, the EX line is not asserted but the
exception code is stored in the EXCEPT register. Please see the Exception
Engine section for more details.
Figure 66 shows the User ID Mask registers.
Amplified HumPROTM Series User ID Mask Registers
Volatile Non-Volatile
It is recommended to use the EEXMASK registers instead for new designs.
Name
Description
Address
Address
UMASK3
UMASK2
0x62
0x17
MSB of the extended mask
Byte 2 of the extended mask
Figure 68 shows examples of the commands and Figure 69 shows the
available values.
0x63
0x18
Byte 1 of the extended mask
MSB of the short mask
Amplified HumPROTM Series Exception Mask
UMASK1
UMASK0
0x64
0x65
0x19
0x1A
Read Command
Read Response
LSB of the extended mask and short mask
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
Figure 66: Amplified HumPROTM Series User ID Mask Registers
0x6C
0xFE
0x6C
0x21
0x02
0x21
Write Command
DESTDSN - Destination Serial Number
Header
0xFF
Size
Address
Value
V
Volatile Address = 0x68-0x6B; Non-Volatile Address = 0x1D-0x20
These registers contain the serial number of the destination module when
DSN Addressing Mode is enabled. Please see the Addressing Modes
section for more details. Each register byte is read and written separately.
0x6C
0x21
0x02
Figure 68: Amplified HumPROTM Series Transceiver Exception Mask Command and Response
Figure 67 shows the Destination DSN registers.
Amplified HumPROTM Series Example Exception Masks
Amplified HumPROTM Series Destination DSN Registers
V
Exception Name
Volatile Non-Volatile
Name
Description
Address
Address
0x08
0x10
0x20
Allows only EX_BUFOVFL and EX_RFOVFL to trigger the EX line
Allows only EX_WRITEREGFAILED to trigger the EX line
Allows only EX_NORFACK to trigger the EX line
DESTDSN3
DESTDSN2
DESTDSN1
DESTDSN0
0x68
0x1D
MSB of the destination DSN
Byte 2 of the destination DSN
Byte 1 of the destination DSN
LSB of the destination DSN
0x69
0x1E
0x6A
0x1F
Allows only EX_BADCRC, EX_BADHEADER, EX_BADSEQID and EX_
BADFRAMETYPE exceptions to trigger the EX line
0x40
0x6B
0x20
Allows EX_BADCRC, EX_BADHEADER, EX_BADSEQID, EX_BADFRAMETYPE
and EX_NORFACK exceptions to trigger the EX line
0x60
0xFF
Figure 67: Amplified HumPROTM Series Destination DSN Registers
Allows all exceptions to trigger the EX line
Figure 69: Amplified HumPROTM Series Transceiver Example Exception Masks
–
–
–
–
69
68
CMDHOLD - CMD Halts Traffic
COMPAT - Compatibility Mode
Volatile Address = 0x6E; Non-Volatile Address = 0x23
Volatile Address = 0x70; Non-Volatile Address = 0x25
Compatibility mode allows the HumPROTM Series modules to communicate
with the 250 Series modules. Please see the Compatibility Mode section
for more details. Figure 72 shows examples of the commands and Figure
73 shows the available values.
A CMDHOLD register setting of 0x01 causes the module to store incoming
RF traffic (up to the RF buffer size) while the CMD line is low. When the
CMD line is returned high, the module outputs all buffered data. A register
value of 0 allows received bytes to be output on the UART immediately with
CRESP high to indicate that the bytes are received data. See Using the
Command Response (CRESP) Line section for details. This register setting
is overridden when PKOPT:RXPKT=1.
Amplified HumPROTM Series Compatibility Mode
Read Command
Read Response
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
0x70
0xFE
0x70
0x25
Figure 70 shows examples of the commands and Figure 71 shows the
available values.
0x02
0x25
Write Command
Amplified HumPROTM Series CMD Halts Traffic
Header
0xFF
Size
Address
Value
V
Read Command
Read Response
0x70
0x25
0x02
Header
0xFF
Size
Escape Address
ACK
0x06
Address
Value
V
0x6E
0xFE
0x6E
0x23
0x02
Figure 72: Amplified HumPROTM Series Transceiver Compatibility Mode Command and Response
0x23
Write Command
Header
0xFF
Size
Address
Value
V
Amplified HumPROTM Series Compatibility Mode Register Settings
0x6E
0x23
0x02
V
Mode
0x00
0x02
0x03
Enable 250 Series Compatibility Mode
Enable Normal Addressing Operation
Enable Network Addressing Operation
Figure 70: Amplified HumPROTM Series Transceiver CMD Halts Traffic Command and Response
Amplified HumPROTM Series CMD Halts Traffic Register Settings
Figure 73: Amplified HumPROTM Series Compatibility Mode Register Settings
V
Mode
0x00
0x01
Disable Halt (received data is sent to the UART immediately)
Enable Halt (received data is sent when the CMD line is high)
Figure 71: Amplified HumPROTM Series CMD Halts Traffic Register Settings
–
–
–
–
71
70
AUTOADDR - Auto Addressing
Volatile Address = 0x71; Non-Volatile Address = 0x26
Amplified HumPROTM Series Auto Addressing Register Settings
Auto Address Value Meaning
Action
When the AUTOADDR feature is enabled, the module reads the Source
Address from a received packet and uses it to fill the Destination Address
registers (UDESTID or DESTDSN, depending on the addressing mode of
the received message). This ensures that a response is sent to the device
that transmitted the original message. The response ADDMODE should be
the same as ADDMODE used to send the original message.
Destination Registers not
populated
0x00
0x04
0x06
0x07
Auto Addressing disabled
Auto-populates DSN Address
Destination Register Only
DSN Auto Address
Auto-populates User Address
Destination Register
User Auto Address Mode
Extended User Auto Address Auto-populates Extended User
The non-volatile register only uses the lower 4 bits to configure the
automatic addressing. The upper 4 bits must be set to 0.
Mode
Address Destination Register
Auto-populates DSN
Destination or User Address
Destination, depending on the
received message type.
0x0F
Any Auto Address Mode
The volatile register is split in half with the lower 4 bits configuring the
automatic addressing, the same as the non-volatile register. The upper 4
bits indicate the type of the last received packet satisfying the AUTOADDR
mask. These bits must be written as 0. This indication is the same as the
Addressing Mode register setting. These bits are not used by the module
and are only written by the module after successfully receiving a packet.
Figure 74: Amplified HumPROTM Series Transceiver Auto Addressing Register Settings
Amplified HumPROTM Series Auto Addressing Mode Indicator
As an example, if AUTOADDR is set to 0x0F (Any Auto Address) and a
DSN packet is received from another module, then AUTOADDR reads back
as 0x4F. The lower 4 bits (0xF) indicate that the module is set to any auto
address (0xF). The upper 4 bits (0x4) indicate that the packet that was just
received was a DSN Addressing Mode packet.
Addressing Mode Meaning
0x4
0x6
0x7
DSN Addressing Mode
User Addressing Mode
Extended User Addressing Mode
Figure 74 summarizes the configuration values for the lower 4 bits of the
register.
Figure 75: Amplified HumPROTM Series Transceiver Auto Addressing Mode Indicator
Figure 75 shows the Addressing Mode values that the module writes to the
upper 4 bits after successfully receiving a packet.
–
–
–
–
73
72
MYDSN - Local Device Serial Number
CRSSI - Carrier Sense Minimum RSSI
Non-Volatile Address = 0x34-0x37
Non-Volatile Address = 0x3F
These registers contain the factory-programmed read-only Device Serial
Number. This address is unique for each module and is included in all
packet types as a unique origination address.
This value is the minimum RSSI that causes the module to wait for a
clear channel when CSMA is enabled. Figure 78 shows examples of the
commands.
Amplified HumPROTM Series Carrier Sense Minimum RSSI
Figure 76 shows the Device Serial Number registers.
Read Command
Read Response
Amplified HumPROTM Series DSN Registers
Header
0xFF
Size
Escape Address
ACK
0x06
Address
0x3F
Value
V
0x02
0xFE
0x3F
Non-Volatile
Name
Description
Address
Write Command
MYDSN3
MYDSN2
MYDSN1
MYDSN0
0x34
MSB of the serial number
Byte 2 of the serial number
Byte 1 of the serial number
LSB of the serial number
Header
0xFF
Size
Address
0x3F
Value
V
0x35
0x02
0x36
Figure 78: Amplified HumPROTM Series Transceiver Carrier Sense Minimum RSSI Command and Response
0x37
The value is a negative number in two’s complement from -128 (0x80) to -1
(0xff). The default value is -70dBm.
Figure 76: Amplified HumPROTM Series DSN Registers
Warning: The CRSSI value can have a significant impact on the
!
performance of the module. Setting it too low could prevent the module
from ever transmitting. Setting it too high can result in transmission
collisions. Care must be taken if this value is adjusted.
CUSTID - Customer ID
Non-Volatile Address = 0x39-0x3A
These registers contain the factory-programmed customer ID. A unique
value is assigned to a specific customer and that value is programmed
into that customer’s modules. The unencrypted User and Extended User
Addressing modes use these bytes as part of the addressing. The unique
value ensures that the custom modules will not communicate with any
other systems. Contact Linx for details. Figure 77 shows the Customer ID
registers.
Amplified HumPROTM Series Customer ID Registers
Non-Volatile
Address
Name
Description
CUSTID1
CUSTID0
0x39
MSB of the customer ID
LSB of the customer ID
0x3A
Figure 77: Amplified HumPROTM Series Transceiver Customer ID Registers
–
–
–
–
75
74
RELEASE - Release Number
EXCEPT - Exception Code
Non-Volatile Address = 0x78
Volatile Address = 0x79
This register contains a number designating the firmware series and
hardware platform. Figure 79 shows examples of the commands and
Figure 80 lists current releases to date.
The module has a built-in exception engine that can notify the host
processor of an unexpected event. If an exception occurs, the exception
code is stored in this register. Reading from this register clears the
exception and resets the EX line. If an exception occurs before the previous
exception code is read, the previous value is overwritten. Please see the
Exception Engine section for more details.
Amplified HumPROTM Series Release Number
Read Command
Read Response
Header
0xFF
Size
Escape Address
0xFE 0x78
ACK
0x06
Address
0x78
Value
V
0x02
It is recommended to use the EEXFLAG registers for new designs.
Figure 79: Amplified HumPROTM Series Transceiver Release Number Command and Response
Figure 81 shows examples of the commands and Figure 82 shows the
available values.
Amplified HumPROTM Series Release Number Register Settings
Amplified HumPROTM Series Exception Code
V
Release Number
HUM-900-PRO
HUM-868-PRO
HUM-A-900-PRO
Read Command
Read Response
0x20
0x22
0x26
Header
0xFF
Size
Escape Address
0xFE 0x79
ACK
0x06
Address
0x79
Value
V
0x02
Figure 81: Amplified HumPROTM Series Transceiver Exception Code Command and Response
Figure 80: Amplified HumPROTM Series Transceiver Release Number Register Settings
A more detailed firmware version is available for versions 0x20 and above in
the FWVER register.
Amplified HumPROTM Series Transceiver Exception Codes
V
Exception Name
EX_BUFOVFL
EX_RFOVFL
Description
0x08
0x09
0x13
Internal UART buffer overflowed.
Internal RF packet buffer overflowed.
EX_WRITEREGFAILED Attempted write to register failed.
Acknowledgement packet not received after
EX_NORFACK
0x20
maximum number of retries.
0x40
0x42
0x43
0x44
EX_BADCRC
Bad CRC detected on incoming packet.
Bad CRC detected in packet header.
Sequence ID was incorrect in ACK packet.
Unsupported frame type specified.
EX_BADHEADER
EX_BADSEQID
EX_BADFRAMETYPE
Figure 82: Amplified HumPROTM Series Transceiver Exception Codes
–
–
–
–
77
76
PRSSI - Last Good Packet RSSI
FWVER - Firmware Version
Volatile Address = 0x7B
Non-Volatile Address = 0xC0 - 0xC3
This register holds the received signal strength in dBm of the last
successfully received packet. A successful packet reception is one that
causes payload data to be output on the UART interface. The value in this
register is overwritten each time a new packet is successfully processed.
The register value is an 8-bit signed integer representing the RSSI in dBm.
It is accurate to 3dB at 25ºC.
These read-only registers contain the firmware version number currently
on the module. Each byte is a hexadecimal value: 12 03 01 00 indicates
version 18.3.1.0. Each register byte is read separately. Figure 85 shows the
Firmware Version registers.
Amplified HumPROTM Series Firmware Version Registers
Non-Volatile
Address
Name
Description
Amplified HumPROTM Series Last Good Packet RSSI
Read Command
Read Response
FWVER3
FWVER2
FWVER1
FWVER0
0xC0
Major version number
Minor version number
Incremental version number
Suffix
Header
0xFF
Size
Escape Address
0xFE 0x7B
ACK
0x06
Address
0x7B
Value
V
0xC1
0x02
0xC2
0xC3
Figure 83: Amplified HumPROTM Series Transceiver Last Good Packet RSSI Command and Response
Figure 85: Amplified HumPROTM Series Firmware Version Registers
ARSSI - Ambient RSSI
Volatile Address = 0x7C
Note: Encryption is implemented on modules with FWVER3 = 2 and
This register returns the ambient receive signal strength on the current
channel in dBm. The signal strength is measured as soon as the command
is received. The register value is an 8-bit signed integer representing the
RSSI in dBm. It is accurate to 3dB at the high RF data rate, and +3 to -20
dB at the low RF data rate at 25ºC. The channel being read may be any of
the channels in the selected hopping sequence.
higher.
Amplified HumPROTM Series Ambient RSSI
Read Command
Read Response
Header
0xFF
Size
Escape Address
0xFE 0x7C
ACK
0x06
Address
0x7C
Value
V
0x02
Figure 84: Amplified HumPROTM Series Transceiver Ambient RSSI Command and Response
–
–
–
–
79
78
NVCYCLE - Non-Volatile Refresh Cycles
LSTATUS - Output Line Status
Non-Volatile Address = 0xC4-0xC5
Volatile Address = 0xC6
These read-only non-volatile registers contain the number of lifetime
refresh cycles performed for the non-volatile memory. The minimum lifetime
refreshes is 2,000 refresh cycles. Beyond this the refreshes may not be
complete and the module’s operation can become unpredictable.
This register contains the logic states of the output indicator lines, providing
information to the host processor while using fewer GPIO lines.
Amplified HumPROTM Series Output Line Status
Read Command
Read Response
Amplified HumPROTM Series Non-Volatile Refresh Cycles Registers
Header
0xFF
Size
Escape Escape Address
0xFE 0xFE 0x46
ACK Address
Value
Non-Volatile
0x03
0x06
0xC6
LSTATUS
Name
Description
Address
NVCYCLE1
NVCYCLE0
0xC4
MSB of the number of refresh cycles
LSB of the number of refresh cycles
Figure 87: Amplified HumPROTM Series Transceiver Output Line Status Command and Response
0xC5
Each bit in the byte that is returned by the read represents the logic state
of one of the output indicator lines. Figure 88 shows which line each bit
represents.
Figure 86: Amplified HumPROTM Series Non-Volatile Refresh Cycles Registers
Between 8 and 150 non-volatile write operations can be made before
a refresh cycle is necessary. Writing the registers from lowest to highest
address maximizes the number of write operations per refresh cycle.
Amplified HumPROTM Series Output Line Status LSTATUS Values
LSTATUS Bit Line Status
0
1
2
3
4
5
6
7
EX – Exception, 1 = exception has occurred
PA_EN – PA Enable, 1 = the transmitter is active
LNA_EN – LNA Enable, 1 = the receiver is active
CTS – Clear To Send, 1 = incoming data buffer near full
MODE_IND – Mode Indicator, 1 = RF data transfer is active (TX or RX)
BE – Buffer Empty, 1 = UART buffer is empty
Reserved
It is recommended to write the desired default values to non-volatile
memory and use the volatile registers for values that change frequently.
These registers show the total number of refresh cycles that have occurred.
This gives an indication of the remaining life expectancy of the memory.
Figure 86 shows the Non-Volatile Refresh Cycles registers.
Reserved
Figure 88: Amplified HumPROTM Series Output Line Status LSTATUS Values
–
–
–
–
81
80
CMD - Command Register
Volatile Address = 0xC7
This volatile write-only register is used to issue special commands.
The Get Packet Header command returns the received packet header
using a received packet transfer cycle (see the Receiving Packets section).
The header is discarded after transfer. This command is normally issued
after receiving an RXWAIT exception. The packet data can be read after
completion of the header transfer. If the data is not read before this
command is issued a second time, then the packet data is discarded
and the header for the following packet is returned. A NACK response is
returned if option RXPKT is disabled in the PKTOPT register or the previous
GETPx command was not completed.
Amplified HumPROTM Series Command Register
Write Command
Header
0xFF
Size
Escape Address
0xFE 0x47
Value
V
0x03
Figure 89: Amplified HumPROTM Series Transceiver Command Register Command and Response
Value V is chosen from among the options in Figure 90.
Amplified HumPROTM Series CMD Values
The Get Packet Data command returns the received packet data using a
received packet transfer cycle. If the packet header is not read first, then
it is discarded. The packet data is then discarded after transfer. A NACK
response is returned if option RXPKT is disabled in the PKTOPT register or
the previous GETPx command was not completed.
CMD Value
0x01
Operation
SENDP – Send Packet
The Get Packet Header and Data command returns the received packet
header, followed by the packet data using a received packet transfer cycle.
The packet is discarded after transfer. A NACK response is returned if
option RXPKT is disabled in the PKTOPT register or the previous GETPx
command was not completed.
0x02
GETPH – Get Packet Header
GETPD – Get Packet Data
GETPHD – Get Packet Header and Data
CLRRXP – Clear Received Packet
CLROB – Clear Outbound Buffer
CLRIB – Clear Input Buffer
JOINCTL – Join Process Control
WRKEY – Write Key
0x03
0x04
0x05
0x06
0x07
The Clear Received Packet command removes the next unread packet
from the RF incoming queue if RXPKT is enabled in the PKTOPT register.
0x10
0x11
If the packet header was read but not the data, this command causes
the data to be discarded. Although not required before reading the next
packet’s header, it frees buffer space for more or longer messages.
0x12
CLRKEY – Clear Key
0x13
RLDKEY – Reload Key
0x20 0xAA 0xBB
NVRESET – Reset non-volatile registers to factory default
If a previous GETPx command did not deliver all the associated data,
this command removes the undelivered data and terminates the previous
GETPx command.
Figure 90: Amplified HumPROTM Series Command Register Values
The Send Packet command starts data transmission. Operation differs
depending on whether option TXPKT is set in the PKTOPT register.
If option RXPKT is disabled this command discards all received data which
has not been delivered.
•ꢀ TXPKT = 0; this command operates the same as a data timeout with
DATATO. All waiting data, up to the maximum allowed in the remaining
channel time, is transmitted.
The Clear Outbound Buffer command cancels any transmission in
progress and clears the buffer of data to be transmitted.
•ꢀ TXPKT = 1; this command marks the end of an explicit packet in
the outgoing buffer. All bytes in the packet are transmitted together.
Following bytes are sent in the next packet. The max packet length is
192 bytes. Multiple packets can be queued with this command.
The Clear Input Buffer command discards all RF-received bytes and
clears the EX_RXWAIT flag.
–
–
–
–
83
82
The Join Process Control command allows the software to initiate or stop
Figure 92 shows the command for writing the AES key to the module.
the secure JOIN process. It has the following subcommands.
If KeyN is 0x01, the command writes to the volatile key register. If it is 0x02,
it writes to the non-volatile key register.
Amplified HumPROTM Series JOINCTL Subcommand Values
Subcommand Value Operation
0
1
2
Halt JOIN operation
The Clear Key command sets the selected key to all zeros. Figure 93
shows the structure of this command.
Generate a random network key and address. This sets the
module as the network administrator (SECOPT:KEYRCV=0)
Amplified HumPROTM Series Clear Key Command
Perform the JOIN operation with another module
Write Command
Figure 91: Amplified HumPROTM Series JOINCTL Subcommand Values
Header
0xFF
Size
Escape Address
0xFE 0x47
Value
0x12
KeyN
KeyN
These operations are equivalent to the push-button initiated operation.
If a JOIN operation is started by the serial command (CMD:JOINCTL[2]),
push-button operation is ignored until the JOIN operation finishes.
0x04
Figure 93: Amplified HumPROTM Series Transceiver Clear Key Command
Register write operations are inhibited when a JOIN process is active
except that a Halt JOIN command is never inhibited. A Halt JOIN operation
completes before the ACK is sent.
If KeyN is 0x01, the command clears the volatile key registers. If it is 0x02,
it clears the non-volatile key registers.
The Reload Key command copies the key in non-volatile memory (NKN)
to the volatile location (NKV). This allows a sophisticated system to change
the keys during operation and quickly revert back to the default key.
When the JOIN operation is started the KEYRCV flag in the SECOPT
register determines whether the module is an administrator or node and
whether a key can be sent or changed. The JOIN process uses and
modifies the non-volatile address registers. After a successful JOIN, the
modified non-volatile registers are copied to the corresponding volatile
registers.
The Non-volatile Reset command (FF 07 FE 47 20 FE 2A FE 3B) sets
all non-volatile registers to their default values. When the configuration is
reset, the following message, shown in quotes, is sent out the UART at the
current baud rate, then the module is reset, similar to a power cycle:
The Write Key command writes a 16-byte AES key to the selected key
register. As with most of the registers, the encryption key has both volatile
and non-volatile registers. The volatile register is used during run time, but
is lost on a power cycle or reset. When the module powers up, the volatile
register is loaded from the non-volatile register. This makes the non-volatile
register value the default on power-up.
“\r\nConfiguration Reset\r\n”.
This reset can also be done by toggling the PB line as described in the
Restore Factory Defaults section.
The key value of all zero bytes is reserved as a “no key” indication.
Amplified HumPROTM Series Write Key Command
Write Command
Header
0xFF
Size
Size
Escape Address
0xFE 0x47
Value
0x11
KeyN
KeyN
Key0
Key0
...
...
Key15
Key15
Figure 92: Amplified HumPROTM Series Transceiver Write Key Command
–
–
–
–
85
84
SECSTAT - Security Status
JOINST - Join Status
Volatile Address = 0xC9
Volatile Address = 0xCA
This volatile read-only register provides status of the security features.
This volatile read-only register shows the current or previous state of join
activity since the module was last reset.
Amplified HumPROTM Series Security Status
Amplified HumPROTM Series Join Status
Read Command
Read Response
Header
0xFF
Size
Escape Escape Address
0xFE 0xFE 0x49
ACK
0x06
Address
0xC9
Value
V
Read Command
Read Response
0x03
Header
0xFF
Size
Escape Escape Address
0xFE 0xFE 0x4A
ACK
0x06
Address Value
0xCA
0x03
V
Figure 94: Amplified HumPROTM Series Transceiver Security Status Command and Response
Figure 96: Amplified HumPROTM Series Transceiver Join Status Command and Response
The command returns a single byte. Figure 95 shows the meanings of the
bits in the returned value byte.
The command returns a single byte. Figure shows the meanings of the
returned value byte.
Amplified HumPROTM Series Security Status Value
Bit
Status
Amplified HumPROTM Series Join Status Value
0
Reserved
Bit Status
0 = No volatile key is set
1 = A volatile key is set
1
2
Last Join Result (decimal):
0 = No non-volatile key is set
1 = A non-volatile key is set
Last Operation Successful
0x00: Module unpaired since restart
0x01: New key generated
3
4
5
6
7
Reserved
Reserved
Reserved
Reserved
Reserved
0x02: Successfully sent address to another unit
0x03: Successfully sent address and key to another unit
0x04: Successfully obtained key from administrator
0x05: Successfully obtained address from administrator
0x06: Successfully obtained key and address from administrator
0x07: New address generated without key
0x08: New key generated without address
Figure 95: Amplified HumPROTM Series Security Status Values
Last Operation Failed
0 - 5 0x0A: Fail: operation canceled
0x0B: Fail: timeout
0x0C: Fail: Invalid Generate Key and Address request
0x0D: Fail: Assignment message didn’t contain key
0x0E: Fail: Administrator has no key to send when SECOPT:PSHARE=1
0x0F: Fail: Administrator has no address to send
0x10: Fail: Inconsistent Network Address Registers USRC, UMASK, LASTNETAD
0x11: Fail: LASTNETAD overflow
0x12: Fail: GET_KEY key and address change disabled.
Current Operation
0x20: Detecting PB sequence
0x21: Waiting for joining unit
0x22: Another joining unit detected. Joining is in progress.
+0x40: JOINACT – MODE_IND is active with pairing status, serial write
operations are inhibited
6
Figure 97: Amplified HumPROTM Series Transceiver Join Status Value
–
–
–
–
87
86
EEXFLAG - Extended Exception Flags
Volatile Address = 0xCD - 0xCF
These volatile registers contain flags for various events. Similar to the
EXCEPT register, they provide a separate bit for each exception.
Flag EX_SEQSKIP is 1 when a received encrypted packet has a sequence
number that is more than one higher than the previously received packet.
Possible causes are an attempt to replay a previous message by an
attacker, receiving a message from a different transmitter or restarting the
transmitter.
Amplified HumPROTM Series Extended Exception Flags Registers
Amplified HumPROTM Series Transceiver Extended Exception Codes
Volatile
Address
Name
Description
Bit
Exception Name
Description
EEXFLAG2
EEXFLAG1
EEXFLAG0
0xCD
Byte 2 of the extended exception flags
Byte 1 of the extended exception flags
LSB of the extended exception flags
EEXFLAG0 (0xCF)
0xCE
0
1
2
EX_BUFOVFL
EX_RFOVFL
Internal UART buffer overflowed.
0xCF
Internal RF packet buffer overflowed.
EX_WRITEREGFAILED Attempted write to register failed.
Figure 98: Amplified HumPROTM Series Transceiver Extended Exception Code Registers
Acknowledgement packet not received after
EX_NORFACK
3
maximum number of retries.
When an exception occurs, the associated bit is set in this register. If the
corresponding bit in the EEXMASK is set and EXMASK is zero, the EX
status line is set. Reading an EEXFLAG register does not clear the register.
4
5
6
7
EX_BADCRC
Bad CRC detected on incoming packet.
Bad CRC detected in packet header.
Sequence ID was incorrect in ACK packet.
Unsupported frame type specified.
EX_BADHEADER
EX_BADSEQID
EX_BADFRAMETYPE
Writing to an EEXFLAG register causes the register to be set to the
BIT_AND(current_value, new_value). This provides a way of clearing bits
that have been serviced without clearing a bit that has been set since the
flag register was read. This prevents a loss of notification of an exception.
EEXFLAG1 (0xCE)
0
1
EX_TXDONE
A data packet has been transmitted.
EX_RXWAIT
Received data bytes are waiting to be read.
Received packet was not encrypted. This can
only occur when SECOPT: EN_UNENC=1.
2
3
4
EX_UNENCRYPT
Register bits can only be cleared, not set, from the write command though
some flags are also cleared internally. Unless otherwise noted, exceptions
are cleared by writing a zero to the corresponding register bit.
Received encrypted packet sequence number is
less than previous.
EX_SEQDEC
EX_SEQSKIP
Received encrypted sequence number is more
than one higher the previous sequence number.
Flag EX_TXDONE is set when a data packet has been transmitted. If the
packet was sent with acknowledgement enabled, this flag indicates that
the acknowledgment has also been received.
A JOIN operation has been started, which can
result in register changes and write lockouts.
5
EX_JOIN
Reserved
6 - 7
EEXFLAG2 (0xCD)
0 - 7 Reserved
Flag EX_RXWAIT is 1 when there are buffered incoming data bytes which
have not been sent to the UART. It is cleared by reading or discarding all
data bytes.
Figure 99: Amplified HumPROTM Series Transceiver Extended Exception Codes
Flag EX_UNENCRYPT is 1 when a received packet is not encrypted. This
can only occur when SECOPT:EN_UNC=1.
Flag EX_SEQDEC is 1 when a received encrypted packet has a smaller
sequence number than the previously received packet. Possible causes
are an attempt to replay a previous message by an attacker, receiving a
message from a different transmitter or restarting the transmitter.
–
–
–
–
89
88
PKTOPT - Packet Options
Volatile Address = 0xD3; Non-Volatile Address = 0x83
This register selects options for transferring packet data.
Multiple outgoing packets can be buffered. Changing this option clears the
incoming buffer, losing un-transmitted or unacknowledged data.
When TXnCMD is 1, lowering the CMD line has the same effect as writing
the SENDP command to the CMD register, triggering buffered data to be
transmitted. Packet grouping is affected by option TXPKT. The minimum
low time on the CMD line to terminate the packet is given in the Electrical
Specifications.
Amplified HumPROTM Series Packet Options
Read Command
Read Response
Header
0xFF
Size
Escape Escape Address
0x53
ACK
0x06
Address
Value
V
0xD3
0x83
0x03
0xFE
0xFE
0x03
Write Command
When RXPKT is 1, incoming packets are held until a GETPH, GETPD, or
GETPHD command is written to the CMD register. Transfer uses a Packet
Receive transfer. The CMDHOLD setting has no effect.
Header
0xFF
Size
Escape Address
Value
V
0x53
0xFE
0x03
0x03
When RXPKT is 0, incoming UART data is delivered without headers. The
data flow is controlled by the CMDHOLD setting.
Figure 100: Amplified HumPROTM Series Transceiver Packet Options Command and Response
Each bit in the register sets an option as shown in Figure 101.
When RXP_CTS is 1, the CTS line is used for the status line during a
Packet Receive transfer and not for controlling data flow into the module.
When it is 0, CTS is used for flow control and CRESP is used for the status
line.
Amplified HumPROTM Series Transceiver Packet Option Codes
Bit
0
Name
Description
TXPKT
Packet Transmit
1
TXnCMD
RXPKT
Transmit when nCMD Lowered
Packet Receive
2
3
RXP_CTS
Reserved
Use CTS for RXPKT Transfer
Reserved (must be 0)
4 - 7
Figure 101: Amplified HumPROTM Series Transceiver Packet Option Codes
The TXPKT option allows the module to transmit data in explicit packets.
•ꢀ TXPKT = 0 (default); a packet transmission is enabled when the
number of waiting bytes reaches BCTRIG bytes, the time since the
last received byte exceeds DATATO ms, the number of waiting bytes
exceeds the number that can be sent within the remaining slot time, or
a Send Packet command is written to the CMD register.
•ꢀ TXPKT = 1; all bytes written to the module are held until a SENDP
command is written to the CMD register or the CMD line is lowered
with TXnCMD = 1. The DATATO or BCTRIG conditions are ignored with
this option. The transmitted packet consists of the bytes in the buffer
at the time a packet is triggered, even if more data bytes are received
before the packet can be sent.
–
–
–
–
91
90
SECOPT - Security Options
Volatile Address = 0xD4; Non-Volatile Address = 0x84
This register selects options for security features.
When PGKEY is 1 the JOIN process is allowed to change or clear the
network key. The key can always be changed through serial commands.
When CHGADDR is 1 the JOIN process is allowed to generate a random
network address if the module is an administrator. If the module is a node it
is allowed to accept an address assignment from the administrator.
Amplified HumPROTM Series Security Options
Read Command
Read Response
Header
0xFF
Size
Escape Escape Address
0x54
ACK
0x06
Address
Value
V
When KEYRCV is 1 the module is set to receive a network key from an
administrator and act as a node. When it is 0, the module is set as an
administrator and sends a network key and assigns an address to the
node.
0xD4
0x84
0x03
0xFE
0xFE
0x04
Write Command
Header
0xFF
Size
Escape Address
Value
V
0x54
0xFE
0x03
0x04
In order for this bit to change from 1 to 0, both volatile and non-volatile
copies of the network key must be cleared, preventing nodes from being
manipulated to transmit the key. This bit is cleared by the GENERATE_KEY
push-button function.
Figure 102: Amplified HumPROTM Series Transceiver Packet Options Command and Response
Each bit in the register sets an option as shown in Figure 103. Unlike other
registers, the non-volatile register (0x84) affects all Join operations. The
EN_UNENC bit in the volatile register affects data packet reception.
When EN_UNENC is 1 the module accepts unencrypted packets. If this bit
is 0, unencrypted received packets are ignored.
Amplified HumPROTM Series Transceiver Security Option Codes
When EN_CHANGE is 1, changes are permitted to the SECOPT register,
except as noted for KEYRCV changes.
Bit
0
Name
Description
PB_RESET
PSHARE
PGKEY
Permit factory reset from PB input sequence
Permit key sharing
Clearing this bit prohibits the following SECOPT changes to enhance
security:
1
2
Permit clearing key and changing key
Permit changing an address
3
CHGADDR
1. changing PSHARE from 0 to 1
2. changing EN_CHANGE from 0 to 1.
3. changing EN_UNENC from 0 to 1.
1: Receive key and address during JOIN operation (node)
0: Send key and address during JOIN operation (admin)
4
KEYRCV
5
6
7
EN_UNENC
Reserved
Enable receiving unencrypted packets
Reserved (must be 1)
An attempt to make a prohibited change causes a NACK command
response.
EN_CHANGE Enable changes to security options
Figure 103: Amplified HumPROTM Series Transceiver Security Option Codes
When EN_CHANGE is 0, these restrictions can only be removed by
resetting the module configuration to the factory default.
When PB_RESET is 1 the Factory Reset function is enabled from the PB
input. This allows a user to reset the module configurations back to the
factory defaults with 4 short presses and a 3 second hold of a button
connected to the PB input.
When PSHARE is 1 the Share Network Key function is enabled during the
JOIN process. This allows an administrator to share the encryption key it
created. When 0, a JOIN process sends the network address, but no key.
–
–
–
–
93
92
EEXMASK - Extended Exception Mask
Typical Applications
Figure 106 shows a typical circuit using the Amplified HumPROTM Series
transceiver.
Volatile Address = 0xD0-0xD2; Non-Volatile Address = 0x80-0x82
These registers contain a mask for the events in EEXFLAG, using the same
offset and bit number.
GPIO
GPIO
GPIO
µ
VCC
GND
GPIO
INT/GPIO
GPIO
or
Amplified HumPROTM Series Extended Exception Mask Registers
GND
RXD
TXD
Volatile Non-Volatile
Name
Description
Address
Address
1
2
3
4
5
6
7
8
9
NC
EEXMASK2
EEXMASK1
EEXMASK0
0xD0
0x80
Byte 2 of the extended exception mask
Byte 1 of the extended exception mask
Byte 0 of the extended exception mask
NC
NC
BE
0xD1
0x81
NC
NC
NC
NC
GND
NC
NC
0xD2
0x82
GND
10
11
Figure 104: Amplified HumPROTM Series Transceiver Extended Exception Mask Registers
To use this value, register EXMASK must be zero. If EXMASK is non-zero,
this register has no effect on the EX line.
VCC
GND
VCC
GND
When an exception bit is set in EEXFLAG, the corresponding EEXMASK
bit is set, and EXMASK is zero, the EX status line is set, otherwise the
EX line is reset. Mask bits for unassigned flags should be zero for future
compatibility.
Figure 106: Amplified HumPROTM Series Transceiver Basic Application Circuit
An external microcontroller provides data and configuration commands.
Its UART (TXD, RXD) is connected to the module’s UART (CMD_DATA_IN,
CMD_DATA_OUT). The CTS line is monitored for flow control. GPIOs on
the microcontroller are connected to lines on the module:
LASTNETAD - Last Network Address Assigned
Non-Volatile Address = 0x8C-0x8F
These bytes contain the last address assigned using the JOIN process.
When a new unit joins the network, it is assigned the next address
and this value is incremented in the administrator. It is initially set to the
administrator address when a network key is generated.
It monitors the CRESP line to know when the data coming out of the
module is transmitted data or a response to a command (optional).
It monitors the EX line to know if there is an error. This line may be
connected to an interrupt line for faster response (optional).
Amplified HumPROTM Series Extended Exception Mask Registers
Non-Volatile
Address
It controls the POWER_DOWN line to place the module into a low power
state (optional).
Name
Description
LASTNETAD3
LASTNETAD2
LASTNETAD1
LASTNETAD0
0x8C
MSB of the last network address assigned
Byte 2 of the last network address assigned
Byte 1 of the last network address assigned
LSB of the last network address assigned
0x8D
It controls the CMD line to toggle between configuration commands and
data to be transmitted over the air.
0x8E
0x8F
The MODE_IND line is connected to an LED for visual indication that the
module is active.
Figure 105: Amplified HumPROTM Series Transceiver Extended Exception Mask Registers
The PB line is connected to a button that takes the line to VCC when it is
pressed. A resistor pulls the line to ground when the button is not pressed.
–
–
–
–
95
94
Usage Guidelines for FCC Compliance
Information to the user
The pre-certified versions of the HumPRO-ATM Series module
(HUM-A-900-PRO-UFL and HUM-A-900-PRO-CAS) are provided with an
FCC and Industry Canada Modular Certification. This certification shows
that the module meets the requirements of FCC Part 15 and Industry
Canada license-exempt RSS standards for an intentional radiator. The
integrator does not need to conduct any further intentional radiator testing
under these rules provided that the following guidelines are met:
The following information must be included in the product’s user manual.
FCC / IC NOTICES
This product contains FCC ID: OJM-HUMA-900 / IC: 5840A-HUMA900.
This device complies with Part 15 of the FCC rules and Industry Canada
license-exempt RSS standards. Operation of this device is subject to the
following two conditions:
•ꢀ An approved antenna must be directly coupled to the module’s U.FL
connector through an approved coaxial extension cable or to the
module’s castellation pad using an approved reference design and
PCB layer stack.
1. This device may not cause harmful interference, and
2. this device must accept any interference received, including interference that
may cause undesired operation.
•ꢀ Alternate antennas can be used, but may require the integrator to
This equipment has been tested and found to comply with the limits for a Class
B digital device, pursuant to Part 15 of the FCC Rules. These limits are designed
to provide reasonable protection against harmful interference in a residential
installation. This equipment generates, uses and can radiate radio frequency
energy and, if not installed and used in accordance with the instructions,
may cause harmful interference to radio communications. However, there is
no guarantee that interference will not occur in a particular installation. If this
equipment does cause harmful interference to radio or television reception, which
can be determined by turning the equipment off and on, the user is encouraged
to try to correct the interference by one or more of the following measures:
perform certification testing.
•ꢀ The module must not be modified in any way. Coupling of external
circuitry must not bypass the provided connectors.
•ꢀ End product must be externally labeled with “Contains FCC ID:
OJM-HUMA-900 / IC: 5840A-HUMA900”.
•ꢀ The end product’s user’s manual must contain an FCC statement
equivalent to that listed on page 97 of this data guide.
•ꢀ The antenna used for this transceiver must not be co-located or
operating in conjunction with any other antenna or transmitter.
•ꢀ Reorient or relocate the receiving antenna.
•ꢀ The integrator must not provide any information to the end-user on
•ꢀ Increase the separation between the equipment and receiver.
•ꢀ Connect the equipment into an outlet on a circuit different from that to which
the receiver is connected.
how to install or remove the module from the end-product.
Any changes or modifications not expressly approved by Linx Technologies
could void the user’s authority to operate the equipment.
•ꢀ Consult the dealer or an experienced radio/TV technician for help.
Any modifications could void the user’s authority to operate the equipment.
Additional Testing Requirements
The HUM-A-900-PRO-UFL and HUM-A-900-PRO-CAS have been tested
for compliance as an intentional radiator, but the integrator is required to
perform unintentional radiator testing on the final product per FCC sections
15.107 and 15.109 and Industry Canada license-exempt RSS standards.
Additional product-specific testing might be required. Please contact
the FCC or Industry Canada regarding regulatory requirements for the
application. Ultimately is it the integrator’s responsibility to show that their
product complies with the regulations applicable to their product.
Le présent appareil est conforme aux CNR d’Industrie Canada applicables
aux appareils radio exempts de licence. L’exploitation est autorisée aux deux
conditions suivantes:
1. l’appareil ne doit pas produire de brouillage, et
2. ’utilisateur de l’appareil doit accepter tout brouillage radioélectrique subi,
même si le brouillage est susceptible d’en compromettre le fonctionnement.
–
–
–
–
97
96
utilisateurs, il faut choisir le type d’antenne et son gain de sorte que la
puissance isotrope rayonnée équivalente (p.i.r.e.) ne dépasse pas l’intensité
nécessaire à l’établissement d’une communication satisfaisante.
Le présent émetteur radio (HUM-A-900-PRO-CAS) a été approuvé par
Industrie Canada pour fonctionner avec les types d’antenne énumérés la
Figure 107 et ayant un gain admissible maximal et l’impédance requise
pour chaque type d’antenne. Les types d’antenne non inclus dans
cette liste, ou dont le gain est supérieur au gain maximal indiqué, sont
strictement interdits pour l’exploitation de l’émetteur.
Product Labeling
The end product containing the HUM-A-900-PRO-UFL or
HUM-A-900-PRO-CAS must be labeled to meet the FCC and IC product
label requirements. It must have the below or similar text:
Contains FCC ID: OJM-HUMA-900 / IC: 5840A-HUMA900
The label must be permanently affixed to the product and readily visible to
the user. ‘‘Permanently affixed’’ means that the label is etched, engraved,
stamped, silkscreened, indelibly printed, or otherwise permanently marked
on a permanently attached part of the equipment or on a nameplate of
metal, plastic, or other material fastened to the equipment by welding,
riveting, or a permanent adhesive. The label must be designed to last
the expected lifetime of the equipment in the environment in which the
equipment may be operated and must not be readily detachable.
Antennas / Antennes
Linx Part Number
Référence Linx
Impedance
Impédance
Type
Gain
Valid For
Tested Antennas
ANT-916-CW-HWR-RPS ½ Wave Dipole Helical
ANT-916-USP ¼ Wave Planar
1.2dBi
0.3dBi
50Ω
50Ω
Both
FCC RF Exposure Statement
–CAS
To satisfy RF exposure requirements, this device and its antenna must
operate with a separation distance of at least 20cm from all persons and
must not be co-located or operating in conjunction with any other antenna
or transmitter.
Antennas of the same type and same or lesser gain
ANT-916-CW-HW ½ Wave Dipole Helical 1.2dBi
50Ω
Both
Cable Assemblies / Assemblages de Câbles
Linx Part Number
Référence Linx
Description
Antenna Selection
CSI-RSFB-300-UFFR*
CSI-RSFE-300-UFFR*
RP-SMA Bulkhead to U.FL with 300mm cable
RP-SMA External Mount Bulkhead to U.FL with 300mm cable
Under FCC and Industry Canada regulations, the HUM-A-900-PRO-UFL
and HUM-A-900-PRO-CAS radio transmitters may only operate using
an antenna of a type and maximum (or lesser) gain approved for the
transmitter by the FCC and Industry Canada. To reduce potential radio
interference to other users, the antenna type and its gain should be so
chosen that the equivalent isotropically radiated power (e.i.r.p.) is not more
than that necessary for successful communication.
* Also available in 100mm and 200mm cable length
Figure 107: Amplified HumPROTM Series Transceiver Approved Antennas
The HUM-A-900-PRO-UFL and HUM-A-900-PRO-CAS radio transmitters
have been approved by the FCC and Industry Canada to operate with the
antenna types listed in Figure 107 with the maximum permissible gain and
required antenna impedance for each antenna type indicated. Antenna
types not included in this list, having a gain greater than the maximum gain
indicated for that type, are strictly prohibited for use with this device.
Conformément à la réglementation d’Industrie Canada, le présent émetteur
radio peut fonctionner avec une antenne d’un type et d’un gain maximal
(ou inférieur) approuvé pour l’émetteur par Industrie Canada. Dans le but
de réduire les risques de brouillage radioélectrique à l’intention des autres
–
–
–
–
99
98
Power Supply Requirements
Interference Considerations
The transceiver incorporates a precision low-dropout regulator which
allows operation over a wide input voltage range. Despite this regulator, it is
still important to provide a supply that is free of noise. Power supply noise
can significantly affect the module’s performance, so providing a clean
power supply for the module should be a high priority during design.
The RF spectrum is crowded and the potential for conflict with unwanted
sources of RF is very real. While all RF products are at risk from
interference, its effects can be minimized by better understanding its
characteristics.
Interference may come from internal or external sources. The first step
is to eliminate interference from noise sources on the board. This means
paying careful attention to layout, grounding, filtering and bypassing in
order to eliminate all radiated and conducted interference paths. For
many products, this is straightforward; however, products containing
components such as switching power supplies, motors, crystals and other
potential sources of noise must be approached with care. Comparing your
own design with a Linx evaluation board can help to determine if and at
what level design-specific interference is present.
Consider the module’s max supply current of 380mA when designing the
power delivery network. Thin traces for the supply and ground connections
may not be able to supply enough current and may degrade the module’s
performance.
Helpful Application Notes from Linx
It is not the intention of this manual to address in depth many of the issues
that should be considered to ensure that the modules function correctly
and deliver the maximum possible performance. We recommend reading
the application notes listed in Figure 108 which address in depth key areas
of RF design and application of Linx products. These applications notes
are available online at www.linxtechnologies.com or by contacting the Linx
literature department.
External interference can manifest itself in a variety of ways. Low-level
interference produces noise and hashing on the output and reduces the
link’s overall range.
High-level interference is caused by nearby products sharing the same
frequency or from near-band high-power devices. It can even come from
your own products if more than one transmitter is active in the same area.
It is important to remember that only one transmitter at a time can occupy
a frequency, regardless of the coding of the transmitted signal. This type of
interference is less common than those mentioned previously, but in severe
cases it can prevent all useful function of the affected device.
Helpful Application Note Titles
Note Number
AN-00100
AN-00126
AN-00130
AN-00140
AN-00500
AN-00501
RG-00105
RG-00106
RG-00107
RG-00110
Note Title
RF 101: Information for the RF Challenged
Considerations for Operation Within the 902–928MHz Band
Modulation Techniques for Low-Cost RF Data Links
The FCC Road: Part 15 from Concept to Approval
Antennas: Design, Application, Performance
Understanding Antenna Specifications and Operation
HumPROTM Series Addressing Mode Reference Guide
Basic Configurations for the HumPROTM Series
The HumPROTM Series Join Process
Although technically not interference, multipath is also a factor to be
understood. Multipath is a term used to refer to the signal cancellation
effects that occur when RF waves arrive at the receiver in different phase
relationships. This effect is a particularly significant factor in interior
environments where objects provide many different signal reflection paths.
Multipath cancellation results in lowered signal levels at the receiver and
shorter useful distances for the link.
The Amplified HumPROTM Series PCB Layout Guide
Figure 108: Helpful Application Note Titles
–
–
–
–
101
100
Pad Layout
Microstrip Details
The pad layout diagrams below are designed to facilitate both hand and
automated assembly. Figure 109 shows the footprint for the module.
A transmission line is a medium whereby RF energy is transferred from
one place to another with minimal loss. This is a critical factor, especially in
high-frequency products like Linx RF modules, because the trace leading
to the module’s antenna can effectively contribute to the length of the
antenna, changing its resonant bandwidth. In order to minimize loss and
detuning, some form of transmission line between the antenna and the
0.100"
0.170"
0.162"
0.063"
0.015"
0.063"
0.070"
module should be used unless the antenna can be placed very close (<1⁄
in)
8
0.051"
to the module. One common form of transmission line is a coax cable and
another is the microstrip. This term refers to a PCB trace running over a
ground plane that is designed to serve as a transmission line between the
module and the antenna. The width is based on the desired characteristic
impedance of the line, the thickness of the PCB and the dielectric constant
of the board material. For standard 0.062in thick FR-4 board material, the
trace width would be 111 mils. The correct trace width can be calculated
for other widths and materials using the information in Figure 110 and
examples are provided in Figure 111. Software for calculating microstrip
0.028"
0.050"
0.626"
lines is also available on the Linx website.
0.070"
Trace
0.015"
Board
Figure 109: HUM-A-***-PRO-ttt Recommended PCB Layout
Ground plane
Castellation Version Reference Design
The castellation connection for the antenna on the module allows the
use of embedded antennas as well as removes the cost of a cable
assembly for the u.FL connector. However, the PCB design and layer
stack must follow specific reference designs for the certification
on the HUM-A-900-PRO-CAS to be valid. Please see RG-110,
HUM-A-900-PRO PCB Trace Layout Reference Guide, for details on the
PCB requirements
Note: The PCB design and layer stack for the HUM-A-900-PRO-CAS
must follow the reference design for the pre-certification to be valid.
Figure 110: Microstrip Formulas
Example Microstrip Calculations
The HUM-900-PRO-CAS must use one of the antennas in Figure 107
in order for the certification to be valid.
Width / Height
Ratio (W / d)
Effective Dielectric
Constant
Characteristic
Impedance (Ω)
Dielectric Constant
4.80
4.00
2.55
1.8
2.0
3.0
3.59
3.07
2.12
50.0
51.0
48.8
All modules require unintentional radiator compliance testing in the end
product as it will go to market.
Figure 111: Example Microstrip Calculations
–
–
–
–
103
102
Each of the module’s ground pins should have short traces tying
immediately to the ground plane through a via.
Board Layout Guidelines
The module’s design makes integration straightforward; however, it
is still critical to exercise care in PCB layout. Failure to observe good
layout techniques can result in a significant degradation of the module’s
performance. A primary layout goal is to maintain a characteristic
50-ohm impedance throughout the path from the antenna to the module.
Grounding, filtering, decoupling, routing and PCB stack-up are also
important considerations for any RF design. The following section provides
some basic design guidelines.
Bypass caps should be low ESR ceramic types and located directly
adjacent to the pin they are serving.
A 50-ohm coax should be used for connection to an external antenna.
A 50-ohm transmission line, such as a microstrip, stripline or coplanar
waveguide should be used for routing RF on the PCB. The Microstrip
Details section provides additional information. The -CAS version must
follow a layout and PCB stack in RG-110.
During prototyping, the module should be soldered to a properly laid-out
circuit board. The use of prototyping or “perf” boards results in poor
performance and is strongly discouraged. Likewise, the use of sockets
can have a negative impact on the performance of the module and is
discouraged.
In some instances, a designer may wish to encapsulate or “pot” the
product. There are a wide variety of potting compounds with varying
dielectric properties. Since such compounds can considerably impact
RF performance and the ability to rework or service the product, it is
the responsibility of the designer to evaluate and qualify the impact and
suitability of such materials.
The module should, as much as reasonably possible, be isolated from
other components on your PCB, especially high-frequency circuitry such as
crystal oscillators, switching power supplies, and high-speed bus lines.
Antenna Considerations
The choice of antennas is a
When possible, separate RF and digital circuits into different PCB regions.
critical and often overlooked
Make sure internal wiring is routed away from the module and antenna and
is secured to prevent displacement.
design consideration. The range,
performance and legality of an RF
link are critically dependent upon the
antenna. While adequate antenna
performance can often be obtained
Do not route PCB traces directly under the module. There should not be
any copper or traces under the module on the same layer as the module,
just bare PCB. The underside of the module has traces and vias that could
short or couple to traces on the product’s circuit board.
by trial and error methods, antenna
design and matching is a complex
Figure 112: Linx Antennas
task. Professionally designed antennas such as those from Linx (Figure
112) help ensure maximum performance and FCC and other regulatory
compliance.
The Pad Layout section shows a typical PCB footprint for the module. A
ground plane (as large and uninterrupted as possible) should be placed
on a lower layer of your PC board opposite the module (generally the next
layer down). This plane is essential for creating a low impedance return for
ground and consistent stripline performance.
It is usually best to utilize a basic quarter-wave whip until your prototype
product is operating satisfactorily. Other antennas can then be evaluated
based on the cost, size and cosmetic requirements of the product.
Additional details are in Application Note AN-00500.
Use care in routing the RF trace between the module and the antenna
or connector. Keep the trace as short as possible. Do not pass it under
the module or any other component. Do not route the antenna trace on
multiple PCB layers as vias add inductance. Vias are acceptable for tying
together ground layers and component grounds and should be used in
multiples.
–
–
–
–
105
104
Reflow Temperature Profile
Production Guidelines
The single most critical stage in the automated assembly process is the
reflow stage. The reflow profile in Figure 115 should not be exceeded
because excessive temperatures or transport times during reflow will
irreparably damage the modules. Assembly personnel need to pay careful
attention to the oven’s profile to ensure that it meets the requirements
necessary to successfully reflow all components while still remaining
within the limits mandated by the modules. The figure below shows the
The module is housed in a hybrid SMD package that supports hand and
automated assembly techniques. Since the modules contain discrete
components internally, the assembly procedures are critical to ensuring
the reliable function of the modules. The following procedures should be
reviewed with and practiced by all assembly personnel.
Hand Assembly
recommended reflow oven profile for the modules.
Pads located on the bottom
of the module are the primary
300
Soldering Iron
Tip
Recommended RoHS Profile
Max RoHS Profile
Recommended Non-RoHS Profile
mounting surface (Figure 113).
Since these pads are inaccessible
during mounting, castellations
that run up the side of the module
have been provided to facilitate
solder wicking to the module’s
underside. This allows for very
255°C
250
200
150
100
50
235°C
217°C
Solder
185°C
180°C
PCB Pads
Castellations
125°C
Figure 113: Soldering Technique
quick hand soldering for prototyping and small volume production. If the
recommended pad guidelines have been followed, the pads will protrude
slightly past the edge of the module. Use a fine soldering tip to heat the
board pad and the castellation, then introduce solder to the pad at the
module’s edge. The solder will wick underneath the module, providing
reliable attachment. Tack one module corner first and then work around the
device, taking care not to exceed the times in Figure 114.
0
30
60
90
120
150
Time (Seconds)
180
210
240
270
300
330
360
Figure 115: Maximum Reflow Temperature Profile
Shock During Reflow Transport
Since some internal module components may reflow along with the
Warning: Pay attention to the absolute maximum solder times.
Absolute Maximum Solder Times
components placed on the board being assembled, it is imperative that
the modules not be subjected to shock or vibration during the time solder
is liquid. Should a shock be applied, some internal components could be
lifted from their pads, causing the module to not function properly.
Hand Solder Temperature: +427ºC for 10 seconds for lead-free alloys
Reflow Oven: +255ºC max (see Figure 115)
Figure 114: Absolute Maximum Solder Times
Washability
The modules are wash-resistant, but are not hermetically sealed. Linx
recommends wash-free manufacturing; however, the modules can be
subjected to a wash cycle provided that a drying time is allowed prior
to applying electrical power to the modules. The drying time should be
sufficient to allow any moisture that may have migrated into the module
to evaporate, thus eliminating the potential for shorting damage during
power-up or testing. If the wash contains contaminants, the performance
may be adversely affected, even after drying.
Automated Assembly
For high-volume assembly, the modules are generally auto-placed.
The modules have been designed to maintain compatibility with reflow
processing techniques; however, due to their hybrid nature, certain aspects
of the assembly process are far more critical than for other component
types. Following are brief discussions of the three primary areas where
caution must be observed.
–
–
–
–
107
106
plane as possible in proximity to the base of the antenna. In cases
where the antenna is remotely located or the antenna is not in close
proximity to a circuit board, ground plane or grounded metal case, a
metal plate may be used to maximize the antenna’s performance.
General Antenna Rules
The following general rules should help in maximizing antenna performance.
1. Proximity to objects such as a user’s hand, body or metal objects will
cause an antenna to detune. For this reason, the antenna shaft and tip
should be positioned as far away from such objects as possible.
5. Remove the antenna as far as possible from potential interference
sources. Any frequency of sufficient amplitude to enter the receiver’s
front end will reduce system range and can even prevent reception
entirely. Switching power supplies, oscillators or even relays can also
be significant sources of potential interference. The single best weapon
against such problems is attention to placement and layout. Filter the
module’s power supply with a high-frequency bypass capacitor. Place
adequate ground plane under potential sources of noise to shunt noise
to ground and prevent it from coupling to the RF stage. Shield noisy
board areas whenever practical.
2. Optimum performance is obtained from a ¼- or ½-wave straight whip
mounted at a right angle to the ground plane (Figure 116). In many
cases, this isn’t desirable for practical or ergonomic reasons, thus,
an alternative antenna style such as a helical, loop or patch may be
utilized and the corresponding sacrifice in performance accepted.
6. In some applications, it is advantageous to place the module and
antenna away from the main equipment (Figure 118). This can avoid
interference problems and allows the antenna to be oriented for
optimum performance. Always use 50Ω coax, like RG-174, for the
remote feed.
OPTIMUM
NOT RECOMMENDED
USABLE
Figure 116: Ground Plane Orientation
3. If an internal antenna is to be used, keep it away from other metal
components, particularly large items like transformers, batteries,
PCB tracks and ground planes. In many cases, the space around the
antenna is as important as the antenna itself. Objects in close proximity
to the antenna can cause direct detuning, while those farther away will
alter the antenna’s symmetry.
CASE
GROUND PLANE
(MAY BE NEEDED)
NUT
4. In many antenna designs, particularly ¼-wave whips, the ground plane
Figure 118: Remote Ground Plane
acts as a counterpoise, forming, in essence,
VERTICAL λ/4 GROUNDED
ANTENNA (MARCONI)
a ½-wave dipole (Figure 117). For this reason,
adequate ground plane area is essential.
The ground plane can be a metal case or
ground-fill areas on a circuit board. Ideally, it
should have a surface area less than or equal
to the overall length of the ¼-wave radiating
element. This is often not practical due to
size and configuration constraints. In these
instances, a designer must make the best use
of the area available to create as much ground
E
DIPOLE
ELEMENT
λ/4
I
GROUND
PLANE
VIRTUAL λ/4
λ/4
DIPOLE
Figure 117: Dipole Antenna
–
–
–
–
109
108
Loop Style
Common Antenna Styles
A loop or trace style antenna is normally printed
directly on a product’s PCB (Figure 122). This
makes it the most cost-effective of antenna
styles. The element can be made self-resonant or
externally resonated with discrete components,
but its actual layout is usually product specific.
Despite the cost advantages, loop style antennas
are generally inefficient and useful only for short
range applications. They are also very sensitive to changes in layout and
PCB dielectric, which can cause consistency issues during production.
In addition, printed styles are difficult to engineer, requiring the use of
expensive equipment including a network analyzer. An improperly designed
loop will have a high VSWR at the desired frequency which can cause
instability in the RF stage.
There are hundreds of antenna styles and variations that can be employed
with Linx RF modules. Following is a brief discussion of the styles most
commonly utilized. Additional antenna information can be found in Linx
Application Notes AN-00100, AN-00140, AN-00500 and AN-00501. Linx
antennas and connectors offer outstanding performance at a low price.
Whip Style
Figure 122: Loop or Trace Antenna
A whip style antenna (Figure 119) provides
outstanding overall performance and stability.
A low-cost whip can be easily fabricated from
a wire or rod, but most designers opt for the
consistent performance and cosmetic appeal of
a professionally-made model. To meet this need,
Linx offers a wide variety of straight and reduced
height whip style antennas in permanent and
Linx offers low-cost planar (Figure 123) and chip
antennas that mount directly to a product’s PCB.
These tiny antennas do not require testing and
provide excellent performance despite their small
size. They offer a preferable alternative to the often
connectorized mounting styles.
Figure 119: Whip Style Antennas
The wavelength of the operational frequency determines
234
an antenna’s overall length. Since a full wavelength
is often quite long, a partial ½- or ¼-wave antenna
is normally employed. Its size and natural radiation
resistance make it well matched to Linx modules.
The proper length for a straight ¼-wave can be easily
determined using the formula in Figure 120. It is also
possible to reduce the overall height of the antenna by
L =
F
MHz
problematic “printed” antenna.
Figure 120:
Figure 123: SP Series
“Splatch” and uSP
“MicroSplatch” Antennas
L = length in feet of
quarter-wave length
F = operating frequency
in megahertz
using a helical winding. This reduces the antenna’s bandwidth but is a great
way to minimize the antenna’s physical size for compact applications. This
also means that the physical appearance is not always an indicator of the
antenna’s frequency.
Specialty Styles
Linx offers a wide variety of specialized antenna
styles (Figure 121). Many of these styles utilize
helical elements to reduce the overall antenna size
while maintaining reasonable performance. A helical
antenna’s bandwidth is often quite narrow and the
antenna can detune in proximity to other objects, so
care must be exercised in layout and placement.
Figure 121: Specialty Style
Antennas
–
–
–
–
111
110
Questions regarding interpretations of the Part 2 and Part 15 rules or the
measurement procedures used to test intentional radiators such as Linx RF
modules for compliance with the technical standards of Part 15 should be
addressed to:
Regulatory Considerations
Note: Linx RF modules are designed as component devices that require
external components to function. The purchaser understands that
additional approvals may be required prior to the sale or operation of
the device, and agrees to utilize the component in keeping with all laws
governing its use in the country of operation.
Federal Communications Commission
Equipment Authorization Division
Customer Service Branch, MS 1300F2
7435 Oakland Mills Road
Columbia, MD, US 21046
Phone: + 1 301 725 585 | Fax: + 1 301 344 2050
Email: labinfo@fcc.gov
When working with RF, a clear distinction must be made between what
is technically possible and what is legally acceptable in the country where
operation is intended. Many manufacturers have avoided incorporating RF
into their products as a result of uncertainty and even fear of the approval
and certification process. Here at Linx, our desire is not only to expedite the
design process, but also to assist you in achieving a clear idea of what is
involved in obtaining the necessary approvals to legally market a completed
product.
ETSI Secretaria
650, Route des Lucioles
06921 Sophia-Antipolis Cedex
FRANCE
Phone: +33 (0)4 92 94 42 00
Fax: +33 (0)4 93 65 47 16
For information about regulatory approval, read AN-00142 on the Linx
website or call Linx. Linx designs products with worldwide regulatory
approval in mind.
International approvals are slightly more complex, although Linx modules
are designed to allow all international standards to be met. If the end
product is to be exported to other countries, contact Linx to determine the
specific suitability of the module to the application.
In the United States, the approval process is actually quite straightforward.
The regulations governing RF devices and the enforcement of them are
the responsibility of the Federal Communications Commission (FCC). The
regulations are contained in Title 47 of the United States Code of Federal
Regulations (CFR). Title 47 is made up of numerous volumes; however,
all regulations applicable to this module are contained in Volume 0-19.
It is strongly recommended that a copy be obtained from the FCC’s
website, the Government Printing Office in Washington or from your local
government bookstore. Excerpts of applicable sections are included
with Linx evaluation kits or may be obtained from the Linx Technologies
website, www.linxtechnologies.com. In brief, these rules require that any
device that intentionally radiates RF energy be approved, that is, tested for
compliance and issued a unique identification number. This is a relatively
painless process. Final compliance testing is performed by one of the many
independent testing laboratories across the country. Many labs can also
provide other certifications that the product may require at the same time,
such as UL, CLASS A / B, etc. Once the completed product has passed,
an ID number is issued that is to be clearly placed on each product
manufactured.
All Linx modules are designed with the approval process in mind and thus
much of the frustration that is typically experienced with a discrete design is
eliminated. Approval is still dependent on many factors, such as the choice
of antennas, correct use of the frequency selected and physical packaging.
While some extra cost and design effort are required to address these
issues, the additional usefulness and profitability added to a product by RF
makes the effort more than worthwhile.
–
–
–
–
113
112
Notes
–
–
–
–
115
114
Linx Technologies
159 Ort Lane
Merlin, OR, US 97532
Phone: +1 541 471 6256
Fax: +1 541 471 6251
www.linxtechnologies.com
Disclaimer
Linx Technologies is continually striving to improve the quality and function of its products. For this reason, we
reserve the right to make changes to our products without notice. The information contained in this Data Guide
is believed to be accurate as of the time of publication. Specifications are based on representative lot samples.
Values may vary from lot-to-lot and are not guaranteed. “Typical” parameters can and do vary over lots and
application. Linx Technologies makes no guarantee, warranty, or representation regarding the suitability of any
product for use in any specific application. It is the customer’s responsibility to verify the suitability of the part for
the intended application. NO LINX PRODUCT IS INTENDED FOR USE IN ANY APPLICATION WHERE THE SAFETY
OF LIFE OR PROPERTY IS AT RISK.
Linx Technologies DISCLAIMS ALL WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. IN NO EVENT SHALL LINX TECHNOLOGIES BE LIABLE FOR ANY OF CUSTOMER’S INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING IN ANY WAY FROM ANY DEFECTIVE OR NON-CONFORMING PRODUCTS
OR FOR ANY OTHER BREACH OF CONTRACT BY LINX TECHNOLOGIES. The limitations on Linx Technologies’
liability are applicable to any and all claims or theories of recovery asserted by Customer, including, without
limitation, breach of contract, breach of warranty, strict liability, or negligence. Customer assumes all liability
(including, without limitation, liability for injury to person or property, economic loss, or business interruption) for
all claims, including claims from third parties, arising from the use of the Products. The Customer will indemnify,
defend, protect, and hold harmless Linx Technologies and its officers, employees, subsidiaries, affiliates,
distributors, and representatives from and against all claims, damages, actions, suits, proceedings, demands,
assessments, adjustments, costs, and expenses incurred by Linx Technologies as a result of or arising from any
Products sold by Linx Technologies to Customer. Under no conditions will Linx Technologies be responsible for
losses arising from the use or failure of the device in any application, other than the repair, replacement, or refund
limited to the original product purchase price. Devices described in this publication may contain proprietary,
patented, or copyrighted techniques, components, or materials. Under no circumstances shall any user be
conveyed any license or right to the use or ownership of such items.
©2017 Linx Technologies. All rights reserved.
The stylized Linx logo, Wireless Made Simple, WiSE, CipherLinx and the stylized CL logo are trademarks of Linx Technologies.
相关型号:
SI9130DB
5- and 3.3-V Step-Down Synchronous ConvertersWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9135LG-T1
SMBus Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9135LG-T1-E3
SMBus Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9135_11
SMBus Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9136_11
Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9130CG-T1-E3
Pin-Programmable Dual Controller - Portable PCsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9130LG-T1-E3
Pin-Programmable Dual Controller - Portable PCsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9130_11
Pin-Programmable Dual Controller - Portable PCsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9137
Multi-Output, Sequence Selectable Power-Supply Controller for Mobile ApplicationsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9137DB
Multi-Output, Sequence Selectable Power-Supply Controller for Mobile ApplicationsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9137LG
Multi-Output, Sequence Selectable Power-Supply Controller for Mobile ApplicationsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9122E
500-kHz Half-Bridge DC/DC Controller with Integrated Secondary Synchronous Rectification DriversWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
©2020 ICPDF网 联系我们和版权申明