User Guide🔗
Introduction🔗
The PAN B511 evaluation board (ENW89861AXKF) features a PAN B511-1C Bluetooth® Low Energy (LE) module which is based on the Nordic Semiconductor nRF5415L single-chip controller.
The PAN B511-1C module (ENW89861A3KF) comes without additional flash memory and 32 kHz crystal and has an on-board chip antenna.
You can access all the different module interfaces like USB, UART, NFC, and GPIOs easily, which makes the evaluation board ideally suited for the evaluation of the module and rapid prototyping of products.
Warning
During development, module-specific information, which also includes the Bluetooth Device Address, may get lost. Before you start any development, it is recommended to save module-specific information.
Please refer to Bluetooth Device Address Safeguard.
Features🔗
- Arduino interface configurable as shield or board
- mikroBUS
interface
- All GPIOs accessible via pin headers
- Power measurement interface
- Segger J-Link on-board debugger
- Virtual COM port over Segger J-Link on-board debugger
- Peripherals can be deactivated for low power applications
- 4x user buttons, 4x user LEDs
- FPC connector for NFC antenna (antenna is included)
- Compatible to nRF Connect SDK projects
Block Diagram🔗
Board Overview🔗
1
Reset Button - RST
You can use the reset button to reset the board to a known-good state.
2
USB connector - X1
You can use the USB connector to power the board and gain access to the UART communication and debugging capabilities. Also see Powering Options
3
User buttons - SW
You can use the user buttons to interact with the running application if the application supports it.
4
Current measurement pin header - P4
You can use the current measurement pin header to measure the current consumption of the currently running application. Also see Powering Options and Current Consumption Measurement
5
Peripheral disable pin header - P2
You can use the peripheral disable pin header to control the connection of the Segger J-Link on-board debugger to the power supply. This is useful to disconnect certain peripherals for power consumption measurements. Also see Peripheral Configuration
6
Module supply voltage selection - P3
You can use the module supply voltage selection to configure the supply voltage for the module to be either 3.3 V or 1.8 V. Please note that this also affects the voltage levels on the pin headers.
7
UART module connection pin header - P1
This pin header allows you to disconnect the connection between the virtual COM port of the Segger J-Link on-board debugger and the module. This can be useful in order to isolate the module for Current Consumption Measurement.
8
Breakout pin headers - P21 and P22
You can use the breakout pin headers to access all the module GPIO pins directly. Also see GPIO Pin Access
9
Arduino pin headers - P9, P10, P13 and P14
You can use Arduino pin headers to attach to Arduino shields or boards. Also see Arduino Interface
10
Power pins on breakout pin header - P22
You can use these power pins on the breakout pin header to power the board. Also see Powering Options
11
Power LED - PWR
You can observe the power LED to verify that the board is correctly powered.
12
mikroBUS pin headers
You can use the mikroBUS pin header to attach a Click
board. Also see mikroBUS Interface
13
U.FL antenna connector (non-populated) - X4
14
The module
15
NFC antenna connector - NFC
You can use the NFC antenna connector to connect an NFC antenna.
16
Arduino UART direction pin header - P16
You can use the Arduino UART direction pin headers to choose the configuration when running in shield or board mode. Also see Arduino Configuration
17
Segger J-Link LED
You can use the Segger J-Link LED to verify that the Segger J-Link on-board debugger is correctly powered.
18
User LEDs pin header - P20
You can use the user LED pin header to control the connection of the LEDs to the module pins.
19
User LEDs
You can use the user LEDs from the application to interact with the user.
20
Power pins on Arduino pin header - P10
You can use these power pins on the Arduino pin header to power the board. Also see Powering Options
21
Power pins on MikroBus pin header
You can use these power pins on the MikroBus pin header to power the board. Also see Powering Options
Initial Preparations🔗
Before you can work with the evaluation tool (again) you may have to check (or restore) the default jumper configuration or install device drivers, depending on the operating system you are using.
Default Jumper Configuration🔗
You can check the default jumper configuration easily because it is imprinted with white (or blue) line markings on the silkscreen of the PCB.
For example, the default jumper configuration in the following picture is:
- One jumper put on the lower left two pins
- One jumper put on the lower right two pins
Segger J-Link On-Board Debugger Driver🔗
When you install one of the Development Tools from Nordic Semiconductor a driver for the Segger J-Link on-board debugger is automatically installed as well.
First Steps🔗
You can use a USB-C cable to connect the evaluation board to your computer using the USB connector X1 2.
The PAN B511 module is pre-programmed with a test application that is used during the production of the evaluation board.
You can observe the following behavior of the evaluation board after the very first start:
- The LEDs blink periodically.
- Logging is redirected to the real time transfer (RTT) interface, you can observe it with a suitable RTT Viewer, like the one integrated in the nRF Connect for VS Code extension.
- If you touch the NFC antenna with an NFC-capable reader device like a mobile phone, then the tag information is read which contains a link to the Wireless Connectivity at Panasonic Industry website.
- The device works as an Eddystone Beacon and broadcasts the URL https://t1p.de/peoah which resolves to the Wireless Connectivity at Panasonic Industry website.
You can now start to set up a software development environment and then build and run your own application, check out the dedicated Getting Started guide.
Warning
During development, module-specific information, which also includes the Bluetooth Device Address, may get lost.
So before you start right now, it is recommended to save module-specific information first.
Please refer to Bluetooth Device Address Safeguard.
Pin Map🔗
Header | Item | Function | Module Footprint | Module Pin |
---|---|---|---|---|
P1 | 7 | UART Rx | 2 | P0.02 |
UART Tx | 1 | P0.01 | ||
UART CTS | 4 | P0.04 | ||
UART RTS | 3 | P0.03 | ||
NFC | 15 | NFC 1 | 15 | P1.02 |
NFC 2 | 14 | P1.03 | ||
P20 | 18 | LED 1 | A3 | P0.00 |
LED 2 | A2 | P1.10 | ||
LED 3 | C1 | P1.15 | ||
LED 4 | 19 | P2.07 | ||
SW | 3 | SW 1 | B3 | P1.11 |
SW 2 | B1 | P1.12 | ||
SW 3 | B2 | P1.13 | ||
SW 4 | C2 | P1.14 |
Powering Options🔗
You can power the evaluation board in different ways:
- USB connector X1 2
- current measurement pin header P4 4
- power pins on Arduino pin header P10 20
- power pins on MikroBus pin header 21
- power pins on breakout pin header P22 10
Risk of damaging board components
Do not supply 5 V on the 3.3 V pin of the power pins on Arduino pin header P10 20, the power pins on MikroBus pin header 21 or the power pins on breakout pin header P22 10.
USB Connector🔗
You can power the whole evaluation board using the USB connector X1 2.
Note
Please note that the module is still powered if the peripherals are deactivated using peripheral disable pin header P2 5.
Current Measurement Pin Header🔗
You can power the module by attaching VCC to the current measurement pin header P4 4.
You have to attach GND to the breakout pin headers P21 and P22 8 accordingly.
Arduino Pin Header🔗
You can power the whole evaluation board using the power pins on Arduino pin header P10 20.
Both the 3.3 V and the 5 V pins can be used.
mikroBUS
Pin Header🔗
You have the option to power the evaluation board using the power pins on MikroBus pin header 21.
Both the 3.3 V and the 5 V pins can be used.
Breakout Pin Header🔗
You can power the whole evaluation board using the power pins on breakout pin header P22 10.
Both the 3.3 V and the 5 V pins can be used.
GPIO Pin Access🔗
You can access every GPIO pin of the module through the breakout pin headers P21 and P22 8.
External flash memory
P2.00, P2.01, P2.02, P2.03, P2.04 and P2.05 are used to interface the external flash memory.
If you don't need the external flash memory and want to make the GPIOs accessible please see Deactivate External Flash Memory
You can check the details of the pin mappings between the evaluation board, the module and the nRF5415L in the following table.
Pin | Module Footprint | Module / nRF5415L Pin |
---|---|---|
3.3 V 1 | ||
5 V 2 | ||
0.00 | A3 | P0.00 |
0.01 | 1 | P0.01 |
0.02 | 2 | P0.02 |
0.03 | 3 | P0.03 |
0.04 | 4 | P0.04 |
1.00 | D1 | P1.00 |
1.01 | E1 | P1.01 |
1.02 | 15 | P1.02 |
1.03 | 14 | P1.03 |
1.04 | 13 | P1.04 |
1.05 | 12 | P1.05 |
1.06 | 11 | P1.06 |
1.07 | 10 | P1.07 |
1.08 | B4 | P1.08 |
1.09 | A1 | P1.09 |
1.10 | A2 | P1.10 |
1.11 | B3 | P1.11 |
1.12 | B1 | P1.12 |
1.13 | B2 | P1.13 |
1.14 | C2 | P1.14 |
1.15 | C1 | P1.15 |
2.00 | C4 | P2.00 |
2.01 | E4 | P2.01 |
2.02 | D4 | P2.02 |
2.03 | E3 | P2.03 |
2.04 | D3 | P2.04 |
2.05 | C3 | P2.05 |
2.06 | 18 | P2.06 |
2.07 | 19 | P2.07 |
2.08 | 20 | P2.08 |
2.09 | 21 | P2.09 |
2.10 | 22 | P2.10 |
nRESET | 23 | nRESET |
GND |
1 The maximum output current using 3.3 V is 500 mA.
2 The maximum output current depends on the USB supply.
Arduino Interface🔗
You can use the Arduino interface on the arduino pin headers P9, P10, P13 and P14 9 to stack the evaluation board with other boards and shields that have an Arduino connector.
You can check the details of the pin mappings between the arduino pin headers P9, P10, P13 and P14 9, the module, and the nRF5415L in the following sections.
Upper Arduino Connector🔗
Arduino Pin | Function | Module Footprint | nRF5415L Pin |
---|---|---|---|
SCL | I²C Clock | B4 | P1.08 |
SDA | I²C Data | A1 | P1.09 |
AREF | Analog Reference Input | ||
GND | Ground | ||
D13 | GPIO | 18 | P2.06 |
D12 | GPIO | 21 | P2.09 |
D11 | GPIO | 20 | P2.08 |
D10 | GPIO | 22 | P2.10 |
D9 | GPIO | 19 | P2.07 |
D8 | GPIO | C1 | P1.15 |
D7 | GPIO | C2 | P1.14 |
D6 | GPIO | B2 | P1.13 |
D5 | GPIO | A2 | P1.10 |
D4 | GPIO | 14 | P1.03 |
D3 | GPIO | 15 | P1.02 |
D2 | GPIO | A3 | P0.00 |
D1 | GPIO / UART TX1 | 13 | P1.04 |
D0 | GPIO / UART RX1 | 12 | P1.05 |
1 Depending on setup of Arduino UART direction pin header P16 16 described in section Arduino Configuration.
Lower Arduino Connector🔗
Arduino Pin | Function | Module Footprint | nRF5415L Pin |
---|---|---|---|
NC | Not connected | ||
IOREF | 3.3 V Reference Voltage | ||
NRST | Module Reset | 23 | nRESET |
3V3 | 3.3 V Power input/output | The maximum output current is 500 mA. | |
5V | 5 V Power input/output | The maximum output current depends on the USB supply. | |
GND | Ground | ||
GND | Ground | ||
VIN | Not connected | ||
A0 | Analog Input | 11 | P1.06 |
A1 | Analog Input | 10 | P1.07 |
A2 | Analog Input | B3 | P1.11 |
A3 | Analog Input | B1 | P1.12 |
A4 | Analog Input | B2 | P1.13 |
A5 | Analog Input | C2 | P1.14 |
Arduino Configuration🔗
You can use the evaluation board either as an Arduino board or as an Arduino shield. The main difference between the two is that the UART communication is changed.
Note
In the default configuration the evaluation board is configured as Arduino board.
You can configure the UART communication by using the Arduino UART direction pin header P16 16 which will flip the Rx and Tx direction of the UART communication.
Board Configuration🔗
You can configure the evaluation board to Arduino board configuration as follows:
-
Set the Arduino UART direction pin header P16 16 as shown
In this configuration the following interfaces are connected like this:
-
mikroBUS
UART RX and Arduino UART RX are connected to P1.05
-
mikroBUS
UART TX and Arduino UART TX are connected to P1.04
Shield Configuration🔗
You can configure the evaluation board to Arduino shield configuration as follows:
-
Set the Arduino UART direction pin header P16 16 as shown
In this configuration the following interfaces are connected like this:
-
mikroBUS
UART RX and Arduino UART RX are connected to P1.04
-
mikroBUS
UART TX and Arduino UART TX are connected to P1.05
mikroBUS
Interface🔗
The evaluation board allows you to easily stack shields onto it using the mikroBUS pin headers 12.
You can check the details of the pin mappings between the mikroBUS pin headers 12, the module, and the nRF5415L in the following table.
mikroBUS |
Function | Module Footprint | nRF5415L Pin |
---|---|---|---|
AN | Analog IO | 11 | P1.06 |
RST | Reset | ||
CS | SPI Chip Select | 22 | P2.10 |
SCK | SPI Clock | 18 | P2.06 |
MISO | SPI Data In | 21 | P2.09 |
MOSI | SPI Data Out | 20 | P2.08 |
+3.3V | 3.3V Power in/out | ||
GND | Ground | ||
PWM | Pulse Width Modulation | C1 | P1.15 |
INT | Interrupt | 19 | P2.07 |
RX | UART RX1 | 12 | P1.05 |
TX | UART TX1 | 13 | P1.04 |
SCL | I²C Clock | B4 | P1.08 |
SDA | I²C Data | A1 | P1.09 |
+5V | 5V Power in/out | ||
GND | Ground |
1 The configuration of the RX and TX pins depends on the setting of the Arduino UART direction pin header P16 16 as described in section Arduino Configuration.
Peripheral Configuration🔗
The following peripherals on the evaluation board are always enabled:
- The module itself
- Reset button
- User buttons
- User LEDs
- Current measurement interface
- Arduino interface
- Breakout pin interface
- mikroBUS
interface
But you can enable or disable some of the peripherals on the evaluation board by using the peripheral disable pin header P2 5.
Enable Peripherals🔗
You can enable the power to all peripherals by setting the jumper on the peripheral disable pin header P2 5 to the ON position.
Disable Peripherals🔗
You can disable the power to some peripherals by setting the jumper on the peripheral disable pin header P2 5 to the OFF position.
The following peripherals are disabled:
- Segger J-Link on-board debugger
This helps you to save energy when the evaluation board is powered from a battery or power-bank or if you want to do a Current Consumption Measurement.
Current Consumption Measurement🔗
You can measure the current consumption of the module independently of the peripheral components.
Tip
If you do not have any equipment for current consumption measurement, check out the Power Profiler Kit II from Nordic Semiconductor, which can be used both as an ammeter and source meter.
Using an Ammeter🔗
For a current consumption measurement using an ammeter you have to execute the following steps:
-
Connect the ammeter to current measurement pin header P4 4 as follows:
-
Put a jumper to the peripheral disable pin header P2 5 to deactivate the peripheral components.
Now you have two choices to power the board.
-
Power the board regularly using the USB connector X1 2.
-
Power the board using a variable voltage power supply by feeding directly into GND and 3.3 V on the breakout pin headers P21 and P22 8 to be able to simulate different battery voltage levels.
Using a Source Meter🔗
For a current consumption measurement using a source meter you have to execute the following steps:
-
Connect the source meter to current measurement pin header P4 4 as follows:
-
Put a jumper to the peripheral disable pin header P2 5 to deactivate the peripheral components.
-
Power the board using the USB connector X1 2.
Warning
You have to power the board additionally using the USB connector X1 2.
The jumper put on the peripheral disable pin header P2 5 disconnects certain peripheral components from the module by switching multiple analog switches. But for this to work, the analog switches themselves must be powered using the USB connector X1 2.
Otherwise, signal lines that are connected to the analog switches may float which may result in unexpected behavior and incorrect current consumption measurements in the end.
Deactivate External Flash Memory🔗
By default the external flash memory is connected directly to the module using P2.00, P2.01, P2.02, P2.03, P2.04 and P2.05.
You have the option to deactivate the flash memory and make the GPIOs usable for your application by doing a hardware modification to the evaluation board.
This involves moving 6 resistors and removing 1 resistor by soldering, as shown in the following image:
Software Development🔗
Warning
This module is radio certified. There are conditions on hardware and software which must be met for a valid usage of the certification.
For further information please refer to the module-specific product specification at
Nordic Semiconductor provides the nRF Connect SDK with building tools and sample projects.
The nRF Connect SDK contains the panb511_evb board definition which you can use when adding a build configuration to a project.
For further information also refer to the Software Documentation from Nordic Semiconductor and check out the Getting Started guide.
Bluetooth Device Address Safeguard🔗
Each module is pre-programmed and comes with a public Bluetooth Device Address and a random Bluetooth Device Address. Both can be easily used in applications, depending on the anticipated use case.
All applications from the nRF Connect SDK automatically use the built in random Bluetooth Device Address, but can easily be modified when the public Bluetooth Device Address shall be used.
Before starting development, it is necessary to read out the module specific information, so that it can be restored whenever needed.
During development, it is sometimes necessary to reset the module to the factory default state (“erase all”). This will also reset all the pre-programmed information in the module.
So special care must be taken that the public Bluetooth Device Address is not accidentally erased and lost, even if the public Bluetooth Device Address is not explicitly used during evaluation of the evaluation board.
Background Information🔗
During production of the module, some module specific information is stored in the user information configuration registers (UICRs) of the module.
UICRs are non-volatile memory (NVM) registers for configuring user specific settings and can be modified by the user.
The module specific information in the UICRs include:
- Public Bluetooth Device Address
- Hardware Revision
Panasonic Bluetooth Device Address Ranges
The Bluetooth Device Address of the module always starts with one of this prefix:
- 34:32:e6 - Panasonic Industrial Devices Europe GmbH
This module specific information is also encoded in the 2D barcode on the metal shield box on the module. The 2D barcode can only be read with a suitable barcode reader.
All module specific information is stored in the registers OTP[0]
and OTP[1]
of the UICR during production.
The UICRs behave like a single block of flash memory, i.e. they can only be written at once, and they can only be erased as a whole.
Whenever the module is reset to the factory default state (“erase all”), this will also reset the UICRs. Thus all module specific information is deleted that was stored during the production of the module.
Saving Production Information🔗
Warning
Please note that every module has a unique Bluetooth Device Address, so this step must be done for every module individually.
To save all module specific information that is programmed during the production of the module, it is sufficient to read out the UICR registers OTP[0]
and OTP[1]
.
The following requirement must be met:
- nRF Command Line Tools are installed.
-
Use the
nrfjprog
tool from a command line prompt to read the first half of the module specific information.nrfjprog.exe --memrd 0xFFD500
The output should look something like this:
0x00FF8100: E6 AA BB CC |....|
-
Use the
nrfjprog
tool again to read the second half of the module specific information.nrfjprog.exe --memrd 0xFFD504
The output should look something like this:
0x00FF8104: 01 02 34 32 |....|
These two values are unique and must be stored safely.
Restoring Production Information🔗
Warning
To modify already written portions of the UICR, the complete UICR area must be erased before.
To restore the previously saved module specific information, it is sufficient to write back the stored information into the UICR registers OTP[0]
and OTP[1]
.
The following requirement must be met:
- nRF Command Line Tools are installed.
-
Use the
nrfjprog
tool from a command line prompt and restore the first half of the module specific information that was previously saved.nrfjprog.exe --verify fast --memwr 0xFFD500 --val 0xe6aabbcc
The output should look something like this:
Parsing parameters. Writing.
-
Use the
nrfjprog
tool again and restore the second half of the module information that was previously saved.nrfjprog.exe --verify fast --memwr 0xFFD504 --val 0x01023432
The output should look something like this:
Parsing parameters. Writing.