1.. zephyr:board:: st25dv_mb1283_disco
2
3Overview
4********
5
6The ST25DV04K device is a dynamic NFC/RFID tag IC with a dual interface. It embeds a
74 Kbits EEPROM memory. It can be operated from an I2C interface, or by a 13.56 MHz
8RFID reader, or by a NFC phone. The ST25DV04K Class 5 antenna daughter card, included
9in the kit, can be replaced by Class 1 or Class 6 antennas.
10
11The ST25DV-DISCOVERY is a demonstration kit to evaluate the features and capabilities
12of the ST25DV series.
13It is based on the NFC ST25DV04K device embedded on a daughter card using a Class 5 antenna
14and a STM32 processor driving a mother board.
15
16.. note::
17   The ST25DV itself is not implemented yet.
18
19Hardware
20********
21
22The ST25DV Discovery kit provides the following hardware components:
23
24- Main board: ST25DV_Discovery_Mboard:
25
26  - STM32F405VGT6 LQFP100 32-bit microcontroller, with 1 Mbyte Flash memory, 192 + 4 Kbytes SRAM.
27  - LCD color screen (320 x 200 pixels)
28  - Touch screen driver
29  - Different color LEDs (power, user, ST link)
30  - User push button
31  - Joystick for menu selection
32  - Reset button
33  - On board ST link for microcontroller firmware upgrade and debug
34  - ST link mini USB
35  - User micro USB
36  - USB micro or mini connector for board powering
37  - Demonstration edition (optional add-on module) with Bluetooth Low Energy module,
38    Wi-Fi ® module and JTAG 20 pin connector
39
40It exists in two variants, MB1283 and MB1285.
41
42- Antenna daughter board: ST25DV_Discovery_ANT_C5:
43
44  - 40 mm x 24 mm, 13.56 MHz inductive antenna etched on the PCB
45  - ST25DV04K Dynamic NFC / RFID tag
46  - I 2 C interface connector
47  - Energy harvesting output (VOUT) with a 10nF capacitance filtering circuit
48  - GPO configurable as RF WIP/BUSY output, to indicate that an RF operation is ongoing
49
50The antenna board can be removed, and its 14-pin 0.254mm header connector used as an eval kit header.
51
52Connections and IOs
53===================
54
55Default Zephyr Peripheral Mapping
56---------------------------------
57
58- UART_6 TX/RX : PC6/PC7 (ST-Link Virtual Port Com)
59- UART_2 TX/RX : PA2/PA3 (Available on J6 connector)
60- I2C1 SCL/SDA : PB6/PB7 (Touchscreen STMPE811, interrupt pin PB5)
61- SPI2 SCK/MOSI/CS : PB13/PC3/PB12 (LCD display FRD24048TP, reset pin PC1, DC pin PC0)
62- SPI1 SCK/MISO/MOSI/CS : PA5/PA6/PA7/PA4 (External ST25DV connector J6)
63- GPIO : PE8/PE9/PE10/PE11/PE12 (Joystick)
64- LD1 : PC13 (Orange led)
65- LD2 : PC4 (Yellow led)
66- GPIO : PE15/PE7 (Available on external ST25DV connector J6)
67- GPIO : PE14 (Available on J5 connector)
68
69Serial Port
70===========
71
72The Zephyr console output and shell are assigned to UART6, which is connected to the
73onboard ST-LINK/V2 Virtual COM port interface.
74Default communication settings are 115200 8N1.
75
76Programming and Debugging
77*************************
78
79Applications for the ``st25dv_mb1283_disco`` board configuration can be built and
80flashed in the usual way (see :ref:`build_an_application` and
81:ref:`application_run` for more details).
82
83If programming fails, press the reset button (black) and release it while "west flash" is running.
84
85Flashing
86========
87
88ST25DV Discovery kit includes an ST-LINK/V2 embedded debug tool interface.
89This interface is supported by the openocd version included in the Zephyr SDK.
90
91Flashing an application to ST25DV Discovery
92--------------------------------------------
93
94First, connect the ST25DV Discovery kit to your host computer using
95the USB port to prepare it for flashing. Then build and flash your application.
96
97Here is an example for the :zephyr:code-sample:`hello_world` application.
98
99.. zephyr-app-commands::
100   :zephyr-app: samples/hello_world
101   :board: st25dv_mb1283_disco
102   :goals: build flash
103
104Run a serial host program to connect with your board:
105
106.. code-block:: console
107
108   $ minicom -D /dev/ttyACM0
109
110You should see the following message on the console:
111
112.. code-block:: console
113
114   Hello World! st25dv_mb1283_disco
115
116Debugging
117=========
118
119You can debug an application in the usual way. Here is an example for the
120:zephyr:code-sample:`hello_world` application.
121
122.. zephyr-app-commands::
123   :zephyr-app: samples/hello_world
124   :board: st25dv_mb1283_disco
125   :goals: debug
126
127
128.. _ST25DV-DISCO website:
129   https://www.st.com/en/nfc/st25dv-i2c-series-dynamic-nfc-tags.html
130
131.. _ST25DV datasheet:
132   https://www.st.com/resource/en/datasheet/st25dv04k.pdf
133
134.. _STM32F40xxx reference manual:
135   https://www.st.com/resource/en/reference_manual/rm0090-stm32f405415-stm32f407417-stm32f427437-and-stm32f429439-advanced-armbased-32bit-mcus-stmicroelectronics.pdf
136