Manual AMB2621 Release 2.4 SW-V3.0.0 S132 V3.1.0 + SDK12.1.0 AMBER wireless GmbH Phone +49.651.993.550 Email info@amber-wireless.de Internet www.amber-wireless.
Table of Contents 1 Summary ................................................................................................................................ 6 1.1 Key features...................................................................................................................... 6 1.2 Connectivity ...................................................................................................................... 7 2 Electrical parameters ......................................................
8.2.3 CMD_SECURITY_IND ............................................................................................. 48 8.2.4 CMD_CHANNELOPEN_RSP ................................................................................... 48 8.2.5 CMD_DISCONNECT_REQ ...................................................................................... 48 8.2.6 CMD_DISCONNECT_IND........................................................................................ 49 8.2.7 CMD_PASSKEY_REQ ..........................
9.2 List of user settings ....................................................................................................... 108 10 Peripheral only mode ...................................................................................................... 110 10.1 What the peripheral only mode is ................................................................................ 110 10.2 Reasons to use the peripheral only mode ................................................................... 110 10.
Abbreviations and abstract CS Checksum Byte wise XOR combination of the preceding fields BLE Bluetooth Low Energy According to Bluetooth 4.
1 Summary The AMB2621 exists in two variants, the AMB2621 with integrated PCB-antenna, and the AMB2621-1 with 50 Ohm connection to an external antenna. For the general functionality there is no difference between the variants. Beside chapter 18 and if not stated otherwise AMB2521 means both variants. The AMB2621 module is a radio sub module/device for wireless communication between devices such as control systems, remote controls, sensors etc. On the basis of Bluetooth 4.
Bluetooth 4.2 stack The Bluetooth 4.2 stack enables fast and energy efficient data transmission using stateof-the-art technology. All BLE roles supported. The integrated BLE stack supports all BLE roles. Depending on the current state of operation the AMB2621 firmware automatically switches its role to execute the user’s instructions.
2 Electrical parameters T = 25°C, VCC = 3V, f = 2,44 GHz unless otherwise specified 2.1 Operational range Description Supply voltage (VCC) min. typ. max. unit 1.8 3 3.6 V 60 ms 85 °C Supply rise time (0 V to >=1.7 V) Temperature range -40 25 The on-chip power-on reset circuitry may not function properly for rise times longer than the specified maximum.
Continuous Testmode overall AMB2621 min. typ. max. unit TX current consumption at +4 dBm 11 mA TX current consumption at 0 dBm 8 mA RX current consumption 8 mA 2.2.2 Typical current consumption Besides the static TX, RX, IDLE and Sleep current the average current is of interest. Here an example for a typical behaviour of a peripheral device in advertising mode (see Figure 1 and Figure 2). Currents and state durations are dependent on the configuration (User Settings) of the module.
Figure 2 Transient current consumption in advertising mode with 40ms advertising interval, excerpt of 5ms 2.3 Radio parameters (nRF52 data sheet) 50 Ohm tethered. Description min typ. max. unit Output power -40 +4 +6 dBm Input sensitivity (<= 37 bytes, BER=1E-3) RSSI accuracy valid range (± 2dB) -96*, -92** -90 dBm -20 dBm Enable TX or RX Delay 140 µs Enable TX or RX Delay (fast mode) 40 µs Disable TX Delay 6 µs Disable RX Delay 0 µs * nRF52832 Rev.1, QFN package ** nRF52832 Rev.
Output power RF_TXPower = 4 min typ. max. unit AMB2621-1 +4 dBm AMB2621 -2 dBm 2.4 Pin characteristics (nRF52 data sheet) Description min. typ. max. unit Input high voltage 0.7 * VCC VCC V Input low Voltage VSS 0.3 * VCC V Current at VSS+0.4 V, output set low, standard drive, VDD ≥1.7 1 2 4 mA Current at VSS+0.4 V, output set low, high drive, VDD >= 2.7 V 6 10 15 mA Current at VSS+0.4 V, output set low, high drive, VDD >= 1.7 V 3 Current at VDD-0.
4 Pinout Figure 3 Pinout The following Pinout represents the AMB2621 module pads and the corresponding µC pins as well as the function of the pad in the AMB2621 firmware. For customer specific firmware the function of a pad may vary. Pad µC Pin Designation I/O Description Antenna connection. 1 RF RF 2 GND Supply 3 SWDCLK Input AMB2621_MA_2_4 Only applicable for module variant with external Antenna (e.g. ABMB2621-1). Do not connect in case of modules with internal PCB antenna (e.g.
Pad µC Pin 4 5 6 P0.21 P0.05/AIN3 Designation I/O SWDIO Input RESET Input BOOT Input Description Serial wire input/output. (SWD Interface) Do not connect if not needed. Reset pin. A low signal resets the module. Uses internal pullup resistor.1 Boot pin. A low signal during and short after reset starts the module in OTA bootloader mode. Uses internal pullup resistor.1 Do not connect if not needed.
Pad µC Pin 17 Designation I/O GND Supply Description Ground Table 1 Pinout AMB2621_MA_2_4 Page 14 of 128 Date: 03/2017
5 Start-up and minimal configuration 5.1 Minimal configuration In factory state the modules are immediately ready for operation; the following pins are required in the minimal configuration: VDD, GND, UART TX, UART RX, RESET If the module has to be connected to a PC, a converter (TTL to RS-232 or TTL to USB) has to be used. See chapter 4 for details on all pins. Please refer to the AMB2621-EV schemes for a reference design.
Applying a reset (e.g. a host temporarily pulling the Reset pin down for at least 1ms and releasing it again) after the VCC is stable will also be sufficient. 5.4 Connecting to the AMB2621 via serial interface To control the module the UART interface of the AMB2621 may be used. The default data rate is 115200 Baud and the data format is 8 data bits, no parity and 1 stop bit ("8n1"). Please note that every command sent to the module correctly is confirmed by the module.
5.5 Quick start: Connection setup and first data transmission This section describes how to quick start the data transmission between two AMB2621. The goal is to setup a connection between module A and module B, transmit some data and close the connection again by the following steps. In this section, all packet data from or to the modules is given in hexadecimal notation. For quick testing a pair of AMB2621-EV is recommended.
3. Connect Module A to Module B. Note: this example is taken from an older firmware, so in the newer firmware with the optional BT 4.2 feature “LE Packet Length Extension“ you may see other values than 0x13 for max supported payload length per packet in the opened channel (e.g. 0x80 = 128 byte max payload per packet).
5. Reply with “EFGH” to module B. Info ► Request CMD_DATA_REQ Send “EFGH” to module B ◄ Response CMD_DATA_CNF Request received, send data now ◄ Indication CMD_DATA_IND Received string “EFGH” from FS_BTMAC 0x55 0x00 0x00 0xDA 0x18 0x00 with RSSI of 0xC1 (-63dBm) ◄ Response CMD_TXCOMPLETE_RSP Data transmitted successfully Module A 02 04 04 00 45 46 47 48 0E Module B 02 44 01 00 00 47 02 84 0B 00 55 00 00 DA 18 00 C1 45 46 47 48 D7 02 C4 01 00 00 C7 6.
6 State overview The AMB2621 module acts as a slave and can be fully controlled by an external host that implements the command interface. The configuration as well as the operation of the module can be managed by predefined commands that are sent as telegrams over the UART interface of the module. The AMB2621 can operate in different states.
Figure 4 States of the AMB2621 AMB2621_MA_2_4 Page 21 of 128 Date: 03/2017
6.1 State indication using the LED pins The pins LED_1 and LED_2 of the AMB2621 can be used to determine the module state. The states described in Figure 4 result in the following pin behaviour. The pins on the AMB2621 are active high.
In ACTION_SLEEP mode the UART is disabled, so the module will not receive or transmit any data. To prevent leakage current, the host shall not pull the UART_RX to LOW level (as the module has an internal pull-up resistor enabled on this pin). To leave the ACTION_SLEEP mode and enter ACTION_IDLE state again, the module has to be woken up by applying a low signal to the Wake-up pin for at least 5ms before releasing the signal back to high.
If module B cannot be found on the air within a timeout, module A outputs a CMD_CONNECT_IND with “failed” as status. Otherwise, as soon as the physical connection has been set up successfully, module A and B print a CMD_CONNECT_IND with the status of the successful connection and LED_1 turns on. Next some security and authentication messages will follow, like CMD_SECURITY_IND, if security is enabled. After the physical connection has been setup successfully the modules exchange their services.
6.5.1.1 Just works mode In case of the “Just works” mode, each time a connection is established, a new random key is exchanged in advance to be used for data encryption. Since no authentication will be performed, also devices without input and output capabilities (like keyboard or display) are able to connect. 6.5.1.1.1 Example: Secured connection with LE Legacy security method “Just Works” 1. Power-up the modules and make their UARTs accessible by the host(s).
3.
4. Connect Module A to Module B. Note: this example is taken from an older firmware, so in the newer firmware with the optional BT 4.2 feature “LE Packet Length Extension“ you may see other values than 0x13 for max supported payload length per packet in the opened channel (e.g. 0x80 = 128 byte max payload per packet).
5. Now Module A closes the connection, so both modules will get a disconnect indication. Info ► Request CMD_DISCONNECT_REQ Disconnect ◄ Response CMD_DISCONNECT_CNF Request received, disconnect now ◄ Indication CMD_DISCONNECT_IND Connection closed ◄ Indication CMD_DISCONNECT_IND Connection closed Module A Module B 02 07 00 00 05 02 47 01 00 00 44 02 87 01 00 16 92 02 87 01 00 13 97 6. You may want to perform a CMD_FACTORYRESET_REQ to restore default settings. 6.5.1.
Info ◄ Response CMD_GETSTATE_CNF The module A started in ACTION_IDLE mode. ◄ Response CMD_GETSTATE_CNF The module B started in ACTION_IDLE mode. Module A Module B 02 41 02 00 01 01 41 02 41 02 00 01 01 41 2. Request the FS_BTMAC of both modules.
4. Connect Module A to Module B. Note: this example is taken from an older firmware, so in the newer firmware with the optional BT 4.2 feature “LE Packet Length Extension“ you may see other values than 0x13 for max supported payload length per packet in the opened channel (e.g. 0x80 = 128 byte max payload per packet). Note further: The RF_PeerLTK of the module A coincides with the RF_OwnLTK of the module B. This is needed to setup successfully the connection.
5. Now Module A closes the connection, so both modules will get a disconnect indication. Info ► Request CMD_DISCONNECT_REQ Disconnect ◄ Response CMD_DISCONNECT_CNF Request received, disconnect now ◄ Indication CMD_DISCONNECT_IND Connection closed ◄ Indication CMD_DISCONNECT_IND Connection closed Module A Module B 02 07 00 00 05 02 47 01 00 00 44 02 87 01 00 16 92 02 87 01 00 13 97 6. You may want to perform a CMD_FACTORYRESET_REQ to restore default settings. 6.5.1.
8. Request the FS_BTMAC of both modules. Info ► Request CMD_GET_REQ with settings index 4 ◄ Response CMD_GET_CNF FS_BTMAC of module A is 0x55 0x00 0x00 0xDA 0x18 0x00 ► Request CMD_GET_REQ with settings index 4 ◄ Response CMD_GET_CNF FS_BTMAC of module B is 0x11 0x00 0x00 0xDA 0x18 0x00 Module A Module B 02 10 01 00 04 17 02 50 07 00 00 55 00 00 DA 18 00 C2 02 10 01 00 04 17 02 50 07 00 00 11 00 00 DA 18 00 86 9.
10. Connect Module A to Module B. Note: this example is taken from an older firmware, so in the newer firmware with the optional BT 4.2 feature “LE Packet Length Extension“ you may see other values than 0x13 for max supported payload length per packet in the opened channel (e.g. 0x80 = 128 byte max payload per packet). Note further: Here the RF_StaticPassKey of the module B is “123123”.
11. Now Module A closes the connection, so both modules will get a disconnect indication. Info ► Request CMD_DISCONNECT_REQ Disconnect ◄ Response CMD_DISCONNECT_CNF Request received, disconnect now ◄ Indication CMD_DISCONNECT_IND Connection closed ◄ Indication CMD_DISCONNECT_IND Connection closed Module A Module B 02 07 00 00 05 02 47 01 00 00 44 02 87 01 00 16 92 02 87 01 00 13 97 12. You may want to perform a CMD_FACTORYRESET_REQ to restore default settings. 6.
Info Module A Module B ◄ Reset both modules using reset pin, CMD_GETSTATE_CNF 02 41 02 00 01 01 41 02 41 02 00 01 01 41 ► Configure RF_BeaconFlags using CMD_SET_REQ to „beacon rx enabled, no filter“ 02 11 02 00 0E 01 1E ◄ CMD_SET_CNF from module B 02 51 01 00 00 52 ◄ Module B resetted such that the change in the user setting takes effect (CMD_GETSTATE_CNF) 02 41 02 00 01 01 41 ► Activate scanning on module B 02 09 00 00 0B ◄ Response CMD_SCANSTART_CNF 02 49 01 00 00 4A ► CMD_SETBEACON_REQ, c
The advertising packets can be received by performing a passive scan that will not request the scan response. Thus only one frame, instead of three frames, is transmitted per advertising interval. Besides the FS_BTMAC of the sending module, the RSSI value and the TX power is outputted in format of a CMD_RSSI_IND message via UART when an advertising packet of another AMB2621 has been received. To enable this function, the corresponding bit in the RF_BeaconFlags has to be set. 6.
modulation characteristics packet error rate intermodulation performance Conformance tests on the nRF52 with the DTM application as the device under test (DUT) are carried out by dedicated test equipment. To get access to the test functions the CMD_DTMSTART_REQ shall be used first. This command restarts the module in direct test mode. A CMD_GETSTATE_CNF message (0x02 0x41 0x02 0x00 0x10 0x05 0x54) confirms that the DTM has been started successfully.
2. Now both modules are ready for the DTM. Start the transmission test first. Info ► Request CMD_DTM_REQ to start the transmission test on module A with channel 0 and bit pattern 16 times 0x0F ◄ Response CMD_DTM_CNF Started test successfully Module A Module B 02 1E 04 00 02 00 10 01 0B 02 5E 03 00 00 00 00 5F 3. Start the reception test.
7 Timing behaviour 7.1 Reset and sleep After power-up, resetting the module or waking the module from sleep a CMD_GETSTATE_CNF is sent to the serial interface as soon as the module is ready for operation. Description Ready after reset/sleep typ. unit 4 ms 7.2 BLE timing parameters The timing parameters for sending advertising packets or scanning are determined by the user settings RF_ScanTiming, RF_ScanFactor and RF_AdvertisingTimeout.
Connection type Estimated number of exchanged messages Negotiation time for a connection interval of 50ms Unsecured connection 9-11 450-550ms Secured connection using predefined long term keys (LTK) 16-18 800-900ms Secured connection using the pairing method 22-24 1100-1200ms Knowing the connection interval and the number of messages that will be sent, the time necessary to setup a connection can be estimated by multiplying the number of messages with the connection interval. 7.
8 The command interface The AMB2621 acts as a slave and can be fully controlled by an external host. The configuration as well as the operation of the module can be managed by predefined commands that are sent as telegrams over the UART interface of the module. The commands of the command interface can be divided into 3 groups: Requests: The host requests the module to trigger any action, e.g. in case of the request CMD_RESET_REQ the host asks the AMB2621 to perform a reset.
If the transmission of the UART command has not finished within the packet transmission duration (depending on the currently selected UART Baud rate) + 5ms after having received the start signal, the module will discard the received bytes and wait for a new command. This means that the delay between 2 successive bytes in a frame must be kept as low as possible. Please note that the different commands are only valid in specific module states (see Figure 4).
8.1 Scan for other modules in range 8.1.1 CMD_SCANSTART_REQ This command starts the scan operation to find other AMB2621 in range. All found devices that fit the AMB2621 specification (i.e. devices that support AMBER SPP service UUID) are saved in an internal data base. Before outputting the data base content using the command CMD_GETDEVICES_REQ, the scan has to be stopped using CMD_SCANSTOP_REQ.
0x00: Request received, will stop scan now 0x01: Operation failed 0xFF: Operation not permitted 8.1.3 CMD_GETDEVICES_REQ This command returns the information about the devices found during the last scan operation. #Devices determines the number of devices that have been detected. The corresponding information will be outputted one after the other in the field behind #Devices in the CMD_GETDEVICES_CNF response. The RSSI and TXPower values are transmitted in the two’s complement notation.
If there are too many devices found to be outputted, the response of the CMD_GETDEVICES_REQ is split into several CMD_GETDEVICES_CNF messages. If RSSI = 0x80, there is no value available. If TXPower = 0x80, there is no value available. If Device name length = 0, then there is no device name available. 8.1.3.1 Example 1 Request for the FS_BTMAC of the devices found during the last scan.
8.1.4 CMD_RSSI_IND This telegram indicates the reception of an advertising packet sent by another AMB2621 module. It can be used to realize a position sensing application. This data can only be received, when the module is in ACTION_SCANNING mode (passive scan is sufficient) and the corresponding bit in the RF_BeaconFlags is set. Besides the FS_BTMAC, the RSSI value of the advertising packet and the transmission power of the sending device are outputted.
8.2 Setup connections 8.2.1 CMD_CONNECT_REQ This command tries to setup a connection to the AMB2621 which is identified by the FS_BTMAC used in the command. After the module prints a CMD_CONNECT_CNF to confirm that the request was received, the indication message CMD_CONNECT_IND follows which determines whether the connection request was accepted by the other device. In case of enabled security features (see the setting RF_SecFlags) a CMD_SECURITY_IND is outputted in addition.
8.2.3 CMD_SECURITY_IND This telegram indicates the security status and the FS_BTMAC of the connected device. This indication message is the result of a connection request (CMD_CONNECT_REQ).
Start signal Command Length CS 0x02 0x07 0x00 0x00 0x05 Response (CMD_DISCONNECT_CNF): Start signal Command | 0x40 Length Status CS 0x02 0x47 0x01 0x00 1 Byte 1 Byte Status: 0x00: Request received, try to disconnect 0x01: Operation failed 0xFF: Operation not permitted 8.2.6 CMD_DISCONNECT_IND This telegram indicates that the connection has shut down successfully. This indication message is the result of a disconnection request (CMD_DISCONNECT_REQ).
Format: Start signal Command Length Pass key CS 0x02 0x0D 0x06 0x00 6 Bytes pass key 1 Byte Response (CMD_PASSKEY_CNF): Start signal Command | 0x40 Length Status CS 0x02 0x4D 0x01 0x00 1 Byte 1 Byte Status: 0x00: Pass key accepted and pass key request answered 0x01: Operation failed, due to invalid pass key 0xFF: Operation not permitted 8.2.
8.3 Transmit and receive data 8.3.1 CMD_DATA_REQ This command provides the simple data transfer between two connected modules. Transmission takes place to the previously connected device(s). This command is suitable for transmission for a point-to-point connection. The number of payload data bytes is negotiated during the connection phase. It can be maximal 128 bytes, but at least 19 bytes. When the data is processed by the module a CMD_DATA_CNF is outputted by the UART.
8.3.3 CMD_DATA_IND This telegram indicates the reception of data sent by the previously connected device. This indication message is the result of a data request (CMD_DATA_REQ) sent to the associated device within a connection. The CMD_DATA_IND returns the FS_BTMAC of the sending device, the RSSI value of the received data packet and the data received via the RF-interface which can be found in the payload. The RSSI value is printed in two’s complement notation.
Start signal Command Length BTMAC RSSI Payload CS 0x02 0x8C 2 Bytes 6 Bytes 1 Byte Length -7 Byte 1 Byte AMB2621_MA_2_4 Page 53 of 128 Date: 03/2017
8.4 Configuring the module and modifying the device settings It is strongly recommended to have identical settings on all devices which have to open a connection with each other or are to be used in Beacon mode. The module’s parameters are stored in flash, but have a local copy in RAM. The flash parameters can be modified by the CMD_SET_REQ, read by the CMD_GET_REQ and retain their content even when resetting the module.
The modified parameters only take effect after a restart of the module. This may be done by a CMD_RESET_REQ if the module does not restart automatically. The flash memory used to store these settings has a limited count of write cycles. Try to avoid performing periodic CMD_SET_REQ as each command will use one write cycle. Caution: The validity of the specified parameters is not verified.
Start signal Command Length Settings index Parameter CS 0x02 0x11 0x03 0x00 0x07 0xB4 0x00 0xA3 Response: Start signal Command | 0x40 Length Status CS 0x02 0x51 0x01 0x00 0x00 0x52 Setting was set successfully. 8.4.1.2 Example 2 Setting the local long term key RF_OwnLTK to 0x52 0x63 0x43 0x44 0x34 0x73 0x45.
8.4.2 CMD_GET_REQ This command can be used to query individual setting parameters in flash. The respective parameters are accessed by means of the corresponding settings index which can be found in Table 8. Parameters of 2 or more bytes have to be transferred with the LSB first unless noted differently in the corresponding description. Read access to the memory area outside the setting is blocked.
8.4.3 CMD_SET_RAM_REQ This command enables direct manipulation of the parameters in the module’s settings in RAM. The available parameters are accessed by means of the corresponding settings index which can be found in Table 8. Parameters of 2 or more bytes have to be transferred with the LSB first unless noted differently in the corresponding description. Caution: The validity of the specified parameters is not verified.
8.4.4 CMD_GET_RAM_REQ This command can be used to query individual setting parameters in RAM. The respective parameters are accessed by means of the corresponding settings index which can be found in Table 8. Parameters of 2 or more bytes have to be transferred with the LSB first unless noted differently in the corresponding description. Read access to the memory area outside the setting is blocked.
8.5 Manage the device state 8.5.1 CMD_GETSTATE_REQ This command returns the current state of the module. Please refer to chapter 6 for details on the states of the module.
Start signal Command Length CS 0x02 0x01 0x00 0x00 0x03 Response: Start signal Command | 0x40 Length 0x02 0x41 0x08 0x00 Module role Module action 0x02 0x03 More info CS (Length - 2 byte) 0x11 0x00 0x00 0xDA 0x18 0x00 0x99 The module is connected to another module with FS_BTMAC 0x11 0x00 0x00 0xDA 0x18 0x00. 8.5.2 CMD_RESET_REQ This command triggers a software reset of the module.
Format: Start signal Command Length CS 0x02 0x02 0x00 0x00 0x00 Response (CMD_SLEEP_CNF): Start signal Command | 0x40 Length Status CS 0x02 0x42 0x01 0x00 1 Byte 1 Byte Status: 0x00: Request received, will go to sleep now 0x01: Operation failed 0xFF: Operation not permitted Please note that the Wake-up pin has a second function.
Start signal Command Length CS 0x02 0x1C 0x00 0x00 0x1E Response (CMD_FACTORYRESET_CNF): Start signal Command | 0x40 Length Status CS 0x02 0x5C 0x01 0x00 1 Byte 1 Byte Status: 0x00: Request received, will perform reset now 0x01: Operation failed 0xFF: Operation not permitted To save the parameters in the flash memory of the module, the particular memory segment must first be flushed entirely and then restored from RAM. If a reset occurs during this procedure (e.g.
0x00: Request received, will disable UART now 0x01: Operation failed 0xFF: Operation not permitted We insistently recommend to disable the UART using this command only, if it is foreseeable that there will be no UART communication for several seconds! Use cases could be during advertising phase to wait for connecting BLE devices or when broadcasting data via Beacons. Disabling the UART peripheral of the module results in a reduction of current consumption of about 1,15mA.
The bootloader mode will also be enabled if the firmware image is marked “invalid” or if the BOOT pin logic level (set by the host) is set to start the bootloader during start-up of the module.
8.6 Run the Bluetooth test modes The test modes “DTM” as specified by the Bluetooth SIG are defined in the Bluetooth Core specification v4.0 Volume 6. 8.6.1 CMD_DTMSTART_REQ This command restarts the module in direct test mode (DTM). When starting in DTM mode, a CMD_GETSTATE_CNF message (0x02 0x41 0x02 0x10 0x05 0x54) follows which indicates that the test mode has been enabled successfully. Now the CMD_DTM_REQ can be used to start and stop various test modes.
Format: Start signal Command Length Command code Channel / Vendor option Length / Vendor command Payload CS 0x02 0x1E 0x04 0x00 1 Byte 1 Byte 1 Byte 1 Byte 1 Byte Command code: 0x00: DTM reset (note: this command does not perform a module reset.
Response (CMD_DTM_CNF): Start signal Command | 0x40 Length Status Result CS 0x02 0x5E 2 Bytes 1 Byte 0-2 Byte 1 Byte Status: 0x00: Request received 0x01: Operation failed 0x03: Busy 0xFF: Operation not permitted Result: 0x0000: Test success 0x0001: Test error 0x8000 + n: Received n packets during RX test See example in chapter 6.9.1. 8.6.2.1 Example: Transmission, 16 times 0x0F, channel 0 Start the transmission test on channel 0 (2402 MHz).
Start signal Command 0x02 0x1E Length Command code 0x04 0x00 0x03 Channel / Vendor option Length / Vendor command Payload CS 0x00 0x00 0x01 0x0B Response (CMD_DTM_CNF): Start signal Command | 0x40 Length Status Result CS 0x02 0x5E 0x03 0x00 0x00 0x80 0x00 0xDF Test stopped successfully and received 0 packets. 8.6.2.
Start signal Command | 0x40 Length Status Result CS 0x02 0x5E 0x03 0x00 0x00 0x0E 0x67 0x36 Test stopped successfully and received 0x0E67 (3687dec) packets. 8.6.2.3 Example: Transmission, carrier test, channel 0 Start the carrier test on channel 0 (2402MHz).
8.7 Other messages 8.7.1 CMD_ERROR_IND This indication is shown when the module entered an error state. Indication: Start signal Command Length Status CS 0x02 0xA2 0x01 0x00 1 Byte 1 Byte Status: 0x01: UART_COMMUNICATION_ERROR The UART had a buffer overflow. Thus UART TX and RX was aborted and UART has restarted. Please restart module if UART is still malfunctioning.
8.
0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x82 0x84 0x86 0x87 0x88 0x8B 0x8C 0x8D 0x9B 0xA2 0xC4 0xC6 CMD_SLEEP_IND CMD_DATA_IND CMD_CONNECT_IND CMD_DISCONNECT_IND CMD_SECURITY_IND CMD_RSSI_IND CMD_BEACON_IND CMD_PASSKEY_IND CMD_UARTENABLE_IND CMD_ERROR_IND CMD_TXCOMPLETE_RSP CMD_CHANNELOPEN_RSP State will be changed to ACTION_SLEEP Data has been received Connection established Disconnected Secured connection established Advertising package detected Received Beacon data Received a pass
9 User settings The settings described in this chapter are stored permanently in the module's flash memory. Depending on their corresponding permissions, their current values can be read out by the CMD_GET_REQ command or modified by the CMD_SET_REQ command. To do so the corresponding settings index is used, which can be found in the primary table of each setting description. This settings cannot be accessed (read, write) from the Peripheral only mode introduced in a fallow-up chapter.
0x2002 : CI Chip ID: 0x00052832 : nRF52832 nRF52832 IC revision overview Packet variant Build code Package Flash size RAM size QF AAB0 QFN48 512 kB 64 kB QF ABB0 QFN48 256 kB 32 kB CI AABA WLCSP 512 kB 64 kB 9.1.1.
9.1.2 FS_FWVersion: Read the firmware version Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 1 FS_FWVersion - - read Flash 3 This setting contains the firmware version of the module. 9.1.2.1 Example 1 Request the firmware version of the module using CMD_GET_REQ with settings index 1. The firmware version consists of a 3 byte parameter.
9.1.3 RF_DeviceName: Modify the device name This parameter is using MSB first notation. Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 2 RF_DeviceName “A2621” See description read/write Flash 1-5 This parameter determines the name of the module which is used in the advertising packets to identify the module on air.
9.1.3.
9.1.4 FS_MAC: Read the MAC address Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 3 FS_MAC - - read Flash 6 This setting contains the unique MAC address of the module. 9.1.4.
9.1.5 FS_BTMAC: Read the BLE conform MAC address Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 4 FS_BTMAC - - read Flash 6 This setting contains the BLE conform MAC address of the module. The FS_BTMAC is introduced and used to find the respective device on the RF-interface. It consists of the Amber wireless company ID 0x0018DA followed by the FS_SerialNumber of the module. Please note that LSB is transmitted first in all commands. 9.1.5.
9.1.6 FS_SerialNumber: Read the serial number of the module Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 16 FS_SerialNumber - - read Flash 3 This setting contains the serial number of the module. 9.1.6.
9.1.7.1 Example 1 Set the own long term key of the module to 0x78 0x56 0x45 0x37 0x78 0x7A 0x41 = “xVE7xzA” using CMD_SET_REQ with settings index 5 Start signal Command Length Settings index Parameter (Length -1 byte) CS 0x02 0x11 0x08 0x00 0x05 0x78 0x56 0x45 0x37 0x78 0x7A 0x41 0x01 Response CMD_SET_CNF: Successfully modified the setting. Start signal Command | 0x40 Length Status CS 0x02 0x51 0x01 0x00 0x00 0x52 9.1.7.
9.1.8 RF_PeerLTK: Modify the security key to setup connections Setting s index Designation 6 RF_PeerLTK Permissible values Default value “AMB_ See DEFAUL description T_KEY” Permissions Stored in Number of bytes read/write Flash / RAM 7-16 This setting determines the long term key that is used to setup an encrypted connection to another device, when security mode “LTK” (see RF_SecFlags) was selected.
Start signal Command Length Settings index CS 0x02 0x10 0x01 0x00 0x06 0x15 Response CMD_GET_CNF: Successfully read out the key as 0x41 0x4D 0x42 0x5F 0x44 0x45 0x46 0x41 0x55 0x4C 0x54 0x5F 0x4B 0x45 0x59 = “AMB_DEFAULT_KEY” Start signal Command | 0x40 Length Status 0x02 0x50 0x10 0x00 0x00 AMB2621_MA_2_4 Parameter CS (Length -1 byte) 0x41 0x4D 0x42 0x5F 0x44 0x45 0x46 0x41 0x55 0x4C 0x54 0x5F 0x4B 0x45 0x59 Page 84 of 128 0x10 Date: 03/2017
9.1.9 RF_StaticPasskey: Modify the static pass key to setup connections Setting s index Designation 18 RF_StaticPasskey Permissible Default Permissions values value Stored in Number of bytes “12312 3” Flash / RAM 6 See description read/write This setting determines the static pass key of the peripheral device used for authentication. If the static pass key security mode is enabled by the peripheral, this key must be entered in the central device.
Start signal Command | 0x40 Length Status 0x02 0x50 0x07 0x00 0x00 AMB2621_MA_2_4 Page 86 of 128 Parameter CS (Length -1 byte) 0x31 0x32 0x33 0x34 0x35 0x36 0x52 Date: 03/2017
9.1.10 RF_SecFlags: Modify the security settings Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 12 RF_SecFlags See description 0 read/write Flash 1 This 8-bit field configures security settings of the module. Chapter 6.5.1 contains further information about secure connections. When connecting from an AMB2621 to another AMB2621, be sure that the same security mode is used.
Bit no. Description 2:0 Security mode configuration. Depending on its value, different modes are chosen when setting up a secure connection. In firmware version 2.1.0 and newer the peripheral decides which is the minimum security level to access its data. 0x0 No security Data is transmitted without authentication and encryption. 0x1 LTK A fixed long term key (LTK) is used for encrypting the data. This key is not exchanged by the RF-interface and has to correlate on both of the connected devices.
Start signal Command | 0x40 Length Status CS 0x02 0x51 0x01 0x00 0x00 0x52 9.1.10.2 Example 2 Request the security flags of the module using CMD_GET_REQ with settings index 12 Start signal Command Length Settings index CS 0x02 0x10 0x01 0x00 0x0C 0x1F Response CMD_GET_CNF: Successfully read out the value 2, which means that the pairing mode is enabled.
9.1.11 RF_SecFlagsPerOnly: Modify the security settings (Peripheral only mode) Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 44 RF_SecFlags See description 3 read/write Flash 1 Please refer to the setting RF_SecFlags for more details. This setting is only used in peripheral only mode. 9.1.11.
Start signal Command | 0x40 Length Status Parameter (Length -1 byte) CS 0x02 0x50 0x02 0x00 0x00 0x02 0x52 AMB2621_MA_2_4 Page 91 of 128 Date: 03/2017
9.1.12 RF_ScanFlags: Modify the scan behaviour Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 13 RF_ScanFlags See description 0 read/write Flash 1 This 8-bit field configures the scan behaviour of the module. To use multiple settings, add the bit numbers and choose the result as value for RF_ScanFlags. Bit no. Description 0 If this bit is set, an active scan is performed when using CMD_SCANSTART_REQ.
Start signal Command Length Settings index CS 0x02 0x10 0x01 0x00 0x0D 0x1E Response CMD_GET_CNF: Successfully read out the value 0, which means that active scan is disabled.
9.1.13 RF_BeaconFlags: Interpret the advertising data Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 14 RF_BeaconFlags See description 0 read/write Flash 1 This 8-bit field enables/disables the reception of Beacons. To use multiple settings, add the bit numbers and choose the result as value for RF_BeaconFlags. Bit no. Description 1:0 Enable/disable the reception of Beacons.
The internal database of the module may host the advertising data of 25 different devices. If the data base is full, the oldest entry is removed. To avoid too much traffic the usage of slow advertising intervals is recommended. 9.1.13.1 Example 1 Set the Beacon flags to 0x04 using CMD_SET_REQ with settings index 14. Thus when an advertising packet with AMBER UUID is received, a CMD_RSSI_IND message is printed.
9.1.14 RF_AdvertisingTimeout: Modify the advertising timeout Settings index Designation Permissible values 7 RF_AdvertisingTime out 0 (infinite) 1 – 65535 Default value Permissions Stored in Number of bytes 0 read/write Flash 2 This parameter defines the time in seconds after which the advertising of the module stops. If no peer connects before this timeout, advertising stops and the module goes to system-off mode. If the RF_AdvertisingTimeout is set to 0, the module advertises infinitely.
Start signal Command | 0x40 Length Status Parameter (Length -1 byte) CS 0x02 0x50 0x03 0x00 0x00 0x00 0x00 0x51 AMB2621_MA_2_4 Page 97 of 128 Date: 03/2017
9.1.15 RF_ScanFactor: Modify the scan factor Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 10 RF_ScanFactor 1 – 10 2 read/write Flash 1 This parameter defines the factor between the scan window and the scan interval. See RF_ScanTiming for more information.
9.1.16 RF_ScanTiming: Modify the scan timing settings Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 9 RF_ScanTiming 0–5 1 read/write Flash 1 The RF_ScanTiming enables the possibility to configure the timing behaviour of the module’s RF interface during advertising and scanning state.
In ACTION_IDLE mode, the advertising interval defines the time after which the module periodically sends its advertising packet. In between, the module enters a suspend mode (system-on mode). The connection setup timeout defines the time after which a connection request has to be answered by the peripheral. Please ensure that all members of a network support the same advertising and scan timing parameters.
9.1.17 RF_ConnectionTiming: Modify the connection timing settings Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 8 RF_ConnectionTiming 0–6 1 read/write Flash 1 The RF_ConnectionTiming enables the possibility to configure the timing behaviour of the module’s RF interface during an established connection.
If an AMB2621 module A (central) connects to an AMB2621 module B (peripheral), the connection interval settings of the central are used for connection setup. If both modules have different connection interval settings the peripheral requests the central to accept the peripheral’s settings after 5s. The central accepts these settings, and thus the peripheral’s connection interval is used. If now another BLE device (e.g.
Start signal Command | 0x40 Length Status CS 0x02 0x51 0x01 0x00 0x00 0x52 9.1.17.2 Example 2 Request the connection timing parameter of the module using CMD_GET_REQ with settings index 8 Start signal Command Length Settings index CS 0x02 0x10 0x01 0x00 0x08 0x1B Response CMD_GET_CNF: Successfully read out the value 1.
9.1.18 RF_TXPower: Modify the output power Setting s index Designation Permissible Default values value 17 RF_TXPower See description Permissions Stored in Number of bytes read/write Flash 1 4 This setting determines the output power in dBm of the module. The value has to be entered in hexadecimal and as two’s complement. The permissible values are listed in the following table.
Start signal Command | 0x40 Length Status Parameter (Length -1 byte) CS 0x02 0x50 0x02 0x00 0x00 0x04 0x54 AMB2621_MA_2_4 Page 105 of 128 Date: 03/2017
9.1.19 UART_BaudrateIndex: Configure the UART speed Settings index Designation Permissible values Default value Permissions Stored in Number of bytes 11 UART_BaudrateIndex See description 3 read/write Flash 1 This parameter defines the baud rate used by the module’s UART. Possible values are: UART_BaudrateIndex Rate [Baud] 0 1 2 3 4 9600 19200 38400 115200 230400 After changing the baud rate using the CMD_SET_REQ the module restarts using the new baud rate.
Start signal Command 0x02 0x10 Length Settings index CS 0x01 0x00 0x0B 0x18 Response CMD_GET_CNF: Successfully read out the value 0x03, which equals 115200 Baud.
9.
Settings index Designation Summary Permissible values Default value Permissions 18 RF_StaticPasskey 6 digit pass key See description “123123” read/write Flash 6 44 RF_SecFlagsPerOnly 3 read/write Flash 1 Security settings of the module (peripheral only See description mode only) Stored Number in of bytes Table 8 Table of settings AMB2621_MA_2_4 Page 109 of 128 Date: 03/2017
10 Peripheral only mode The version 3.0.0 of the AMB2621 implements a new feature, that allows the easy integration of the AMB2621 BLE module to an already existing host. The peripheral only mode offers a plug and play installation without previous configuration of the AMB2621. It is tailored for easy communication with mobile BLE devices like smart phones. 10.
open, the LED_2 pin switches on to signalize that data can be exchanged now. When the connection was shut down by the BLE central device, the LED_2 pin switches off again. Due to the transparent UART interface, data can be exchanged without additional headers. Furthermore, the peripheral only mode allows an energy efficient operation of the BLE interface, since the UART is only enabled when it is really used. 10.
Only in peripheral only mode, the name of the device is now longer the 5-digit RF_DeviceName that is saved in the user settings. The new 8-digit device name is “A123456” in case of the module has the FS_BTMAC 0x0018DA123456. This is a workaround for iOS which does not allow access to the BT-MAC for received BT frames. The content of the advertising packet was changed in peripheral only mode. The TX power information block was removed, as the device name was extended to 8 digits.
11 Firmware update The AMB2621 offers two possibilities of updating its firmware, namely wired or wireless. The firmware of the AMB2621 consists of 3 parts, the OTA-bootloader, the Softdevice and the application. Ensure that after updating the firmware all parts are still existent. 11.1 Firmware update using the SWD interface To update the firmware of the AMB2621 the SWD interface of the module and a supported flasher hardware (such as SEGGER J-Link plus) can be used.
After the bootloader has started successfully, the module goes into the advertising mode using the name “DFU2621”. Now, any BLE device hosting an application that understands the commands of the Nordic nRF52 BLE DFU Bootloader can connect in order to update the AMB2621 firmware. The DFU application of the AMB2621 Toolbox App is such an application. For more details, please refer to the AMB2621 Toolbox Quick Start Guide. As an alternative the plain apps from Nordic Semiconductor “nRF Toolbox” can be used.
12 Hardware integration 12.1 Footprint Figure 5 Footprint Dimensions in mm. 12.2 General advice for schematic and layout For less experienced RF users it is advisable to closely copy the relating evaluation board with respect to schematic and layout, as it is a proven design. The layout should be conducted with particular care, because even small deficiencies could affect the radio performance and its range or even the conformity.
A clean power supply is strongly recommended. Interference, especially oscillation can severely restrain range and conformity. Variations in voltage should be avoided. LDOs, properly designed in, usually deliver a proper regulated voltage. Blocking capacitors and a ferrite bead in the power supply line can be included to filter and smoothen the supply voltage when necessary.
Filter and blocking capacitors should be placed directly in the tracks without stubs, to achieve the best effect. Antenna matching elements should be placed close to the antenna/connector and blocking capacitors close to the module. Ground connections for the module and the capacitors should be kept as short as possible and with at least one separate through hole connection to the ground layer. ESD protection elements should be placed as close as possible to the exposed areas.
Example: a FR4 material with r = 4.3, a height H = 1000 µm and a copper thickness of Tmet= 18 µm will lead to a trace width of W ~ 1.9 mm. To ease the calculation of the micro strip line (or e.g. a coplanar) many calculators can be found in the internet. As rule of thumb a distance of about 3 x W should be observed between the micro strip and other traces / ground. The micro strip refers to ground, therefore there has to be the ground plane underneath the trace.
12.4.3 PCB antenna PCB antenna designs can be very different. The special attention can be on the miniaturization or on the performance. The benefits of the PCB antenna are their minimal (if PCB space is available) costs, however the evaluation of a PCB antenna holds more risk of failure than the use of a finished antenna. Most PCB antenna designs are a compromise of range and space between chip antennas and connector antennas. 12.4.4 Antennas provided by AMBER 12.4.4.1 AMB1926 The AMB1926 is a 2.
13 Manufacturing information The assembly contains moisture sensitive devices of the MSL classification 3. Only the dry packed Tape & Reel devices (AMB2621-TR) are suitable for the immediate processing in a reflow process. Further information concerning the handling of moisture sensitive devices, (e.g. drying) can be obtained from the IPC/ JEDEC J-STD-033.
14 References [1] Bluetooth Core Specifications 4.0 and 4.2 Source: https://www.bluetooth.com/specifications/adopted-specifications [2] Nordic Semiconductor Infocenter Source: http://infocenter.nordicsemi.
15 Firmware history Version 0.x.x Pre-Release for test run Version 1.0.0 First production release New command interface with 2 Byte length field using Softdevice 2.0.1 + SDK 11.0 SPP-Like Protocol Known issues: CMD_SET_REQ does not run with parameter RF_AdvertisingTimeout Version 1.0.1 Fixed issues: o CMD_SET_REQ does not run with parameter RF_AdvertisingTimeout UART checks for max buffer size Known issues: None Version 1.1.
Version 3.0.0 Change notes: o Using Softdevice 3.1.0 and SDK 12.1.0 o Changed default value of user setting parameter RF_AdvertisingTimeout from 180s to 0s. This means, that in default configuration the module does not go to sleep after 180s as in the previous firmware versions. o Function of LED_2 has changed. Now it indicates whether a channel is open or not.
16 License information The AMB2621 firmware contains the following software or software-parts provided by Nordic Semiconductor: „S132 Softdevice“ which is the actual BLE 4.2 Stack in a binary format nRF5 SDK containing drivers, library’s and source code example projects Those software parts are allowed to be used only on Nordic Semiconductor hardware.
18 Regulatory compliance information 18.1 Important notice The use of RF frequencies is limited by national regulations. The AMB2621 has been designed to comply with the R&TTE directive 1999/5/EC and the RED directive 2014/53/EU of the European Union (EU). The AMB2621 can be operated without notification and free of charge in the area of the European Union. However, according to the R&TTE / RED directive, restrictions (e.g. in terms of duty cycle or maximum allowed RF power) may apply.
18.
18.3 FCC Compliance statement AMB2621 FCC ID: R7TAMB2621 This device complies with Part 15 of the FCC Rules. Operation is subject to the following two conditions: (1) this device may not cause harmful interference, and (2) this device must accept any interference received, including interference that may cause undesired operation. (FCC 15.19) Modifications (FCC 15.
19 Important information 19.1 Exclusion of liability AMBER wireless GmbH presumes that the information in this document is correct at the time of publication. However, AMBER wireless GmbH reserves the right to modify technical specifications or functions of its products or discontinue the production of these products or the support of one of these products without any written announcement or notification to customers. The customer must make sure that the information used is valid.