Git Product home page Git Product logo

nrf52840-mdk's Introduction

nRF52840-MDK

An Open-Source, Micro Development Kit for IoT Applications using the nRF52840 SoC

Description

The nRF52840-MDK is a versatile, easy-to-use IoT hardware platform for Bluetooth 5, Bluetooth Mesh, Thread, IEEE 802.15.4, ANT and 2.4GHz proprietary applications using the nRF52840 SoC.

The development kit comes with a fully integrated debugger (also known as DAPLink) that provides USB drag-and-drop programming, USB Virtual COM port and CMSIS-DAP interface.

The kit contains a Microchip USB 2.0 Hi-Speed hub controller with two downstream ports: one for DAPLink interface and one for nRF52840 USB device controller. The kit also features ultra-low power 64-Mb QSPI FLASH memory, programmable user button, RGB LED, up to 24 GPIOs, antenna selection for custom applications.

It supports the standard Nordic Software Development Tool-chain using GCC, Keil and IAR. It can also be used to play with many popular frameworks, such as nRF5 SDK, nRF5 SDK for Mesh, OpenThread, ZigBee 3.0, Mbed OS 5, Zephyr, Mynewt, Web Bluetooth, iBeacon, Eddystone, and more.

Hardware Features

  • Nordic nRF52840 System-on-Chip
    • ARM® Cortex®-M4F processor optimized for ultra-low power operation
    • Combining Bluetooth 5, Bluetooth Mesh, Thread, IEEE 802.15.4, ANT and 2.4GHz proprietary
    • On-chip NFC-A tag
    • On-chip USB 2.0 (Full speed) controller
    • ARM TrustZone® Cryptocell 310 security subsystem
    • 1 MB FLASH and 256 kB RAM
  • Program/Debug options with DAPLink
    • MSC - drag-n-drop programming flash memory
    • CDC - virtual com port for log, trace and terminal emulation
    • HID - CMSIS-DAP compliant debug channel
    • WEBUSB HID - CMSIS-DAP compliant debug channel
  • Microchip 2-Port USB 2.0 Hi-Speed Hub Controller
  • External ultra-low power 64-Mb QSPI FLASH memory
  • Up to 24 GPIOs available via headers
  • IF Boot/Reset Button
  • User programmable Button and RGB LED
  • On-board 2.4G chip antenna
  • U.FL connector selectable for external antenna
  • 3.3V regulator with 1A peak current output
  • VBUS & VIN Power-Path Management
  • Reversible USB 3.1 Type-C Connector
  • Breadboard-friendly with dual 18-Pin headers
  • Measures 1.97" x 0.9" x 0.51" (50mm x 23mm x 13mm) with headers soldered in

Pinout Diagram

Documentation

We have provided develeopment docs to make it a pleasure to work with nRF52840-MDK. Get what you need here or visit https://wiki.makerdiary.com/nrf52840-mdk.

Software Resource

The nRF52840 Micro Dev Kit USB Dongle can be used to play with : nRF5 SDK, OpenThread, Web Bluetooth, iBeacon, Eddystone, and more.

Software Brief Description
nRF5 SDK Offical Software Development Kit for nRF51 and nRF52 Series
OpenThread Border Router An open source border router, designed to work with OpenThread
Thread Network Sniffer Help you to efficiently analyze Thread network traffic
Web Bluetooth Bluetooth support for the Web
iBeacon A Bluetooth low energy advertising message format designed by Apple
Eddystone A protocol specification that defines a Bluetooth low energy message format for proximity beacon messages
CircuitPython A Python language for microcontrollers designed to simplify experimentation and learning
TinyGo Go compiler for small devices, based on LLVM
Rust for nrf52840-mdk Rust support for the nrf52840-mdk development board
RIOT OS The friendly Operating System for the Internet of Things,

Hardware Resource

Releases Design Files
V1.0 nRF52840-MDK V1.0 Pinout Diagram
nRF52840-MDK V1.0 Schematic
nRF52840-MDK V1.0 Board File
nRF52840-MDK V1.0 3D STEP

How to get nRF52840-MDK

nRF52840-MDK is available on the following channels (click to go directly to the product):

makerdiary store

SeeedStudio

Amazon

Tindie

Taobao

Contributing

We would love for you to contribute to this project and help make it even better than it is today! See our Contributing Guidelines for more information.

License

MIT License

Copyright (c) 2019 makerdiary.com

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

nrf52840-mdk's People

Contributors

bjc avatar caizelin avatar dhruvkakadiya avatar kfihihc avatar xiongyihui avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nrf52840-mdk's Issues

using the MDK with embedded board

Hi,

we're trying out the nrf52840-mdk boards for www.iot-lab.info , and we're running into some weird USB issues.
We're trying to connect the mdks to an embedded computer. Our boards are based on a variscite board, kind of like a raspberry pi compute module. It's running a 3.19.0 kernel with a custom linux distro on top, using Yocto. We're getting no usb device visible, and this is spamming in dmesg:

[ 6543.362335] usb 1-1.2: new high-speed USB device number 71 using ehci-omap
[ 6543.505157] usb 1-1.2: device descriptor read/all, error -71

In parallel we have some mdks connected to raspberry pis and they're all working fine, so we suspected there's something wrong in our kernel (the rpis are running kernel 4.4.13). We also have some DAPlink boards (microbit) running fine on these gateways, so we suspect it's something to do with the usb cable, or the usb hub on the mdk board.

Any info from you guys on the kernel versions support for the microchip hub usb, maybe some modules need to be added, or any clue to what we could do to make our board like our mdks ? ;-)

Board and DAPLink does not show up at all on Mac

Using the provided or any USB-C to USB-A cable, the board does not show up at all on the latest Macs.
Tried 2019 16 inch Macbook pro, 2018 15 inch Macbook pro, both on MacOS 10.15.3.

The board does work and show up if we use a USB-C to USB-C cable and connect directly to the Macbook Pro, or if it's connected through a powered USB Hub. Any idea on why it does not work through a standard USB Hub using the C to A cable?

Noobie question: Non-USB power supply

Hi,

I want to connect the nRF52840-mdk to a power suppy other than the usb-c connector.
As I have fried other boards before I want to make sure I understand the documentation correctly.

Here's what I would do:

  • Connect the boards VIN to the something between +3.3V and +5.5V
  • Connect any of the boards GND to the corresponding GND

Is that correct?

Secondary question:
What exactly are the exclamation marks in the pinout diagram indicating?

Thanks for the help

USB port not recognized

Using current windows 10 Pro development platform with zephyr.

Have a nRF52840DK board driving a 10pin SWD debug connector to compile and flash nRF Connect zephyr code. Have compiled and successfully run a number of zephyr apps on the MDK board but am unable to get the MDK usb COM ports to be recognized by Windows 10.

The uart0 console output is transmitted to TXD and RXD to the TTL to USB converter of the LPC11U35 chip. To verify this I compiled your "helloworld app" in a repetitive output loop, then flashed the MDK and let it run. I attach a separate USB to TTL adapter to the TXD and RXD pins and activated a COM port for it. The app was running fine outputting the expected message. I checked that VDD_3V3B required by the LPC11U35 was good. Cycling the USB-C plug goes through the motions but pops up the "USB Device Not Recognized" message.

In the past, this typically means that the VID, PID is not the generic COM port and a driver or adapter needs to be installed. Please advise ASAP.

Unable to use User Button on Mbed

I'm not able to get the User Button working an any Mbed example which makes use of buttons nor in any new program.

Wherever I substitute BUTTONx in examples with p32 or P0_1 I'm not able to read or detect button status.

User Button works seamless on the other examples, such as nrf5-sdk/ble_app_blinky.

Do you have any clue?

Thanks

Compiling external/freertos/portable/ARM/nrf52/port.c

../../../../nrf_sdks/nRF5_SDK_15.2.0_9412b96/external/freertos/portable/ARM/nrf52/port.c:52:7: error: expected '(' before 'void'
__ASM void vPortSVCHandler( void )
^~~~
../../../../nrf_sdks/nRF5_SDK_15.2.0_9412b96/external/freertos/portable/ARM/nrf52/port.c:64:13: error: stray '#' in program
mov r0, #0
^
../../../../nrf_sdks/nRF5_SDK_15.2.0_9412b96/external/freertos/portable/ARM/nrf52/port.c:87:13: error: stray '#' in program
mov r0, #(configMAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS))
^
../../../../nrf_sdks/nRF5_SDK_15.2.0_9412b96/external/freertos/portable/ARM/nrf52/port.c:112:14: error: stray '#' in program
tst r14, #0x10
^
../../../../nrf_sdks/nRF5_SDK_15.2.0_9412b96/external/freertos/portable/ARM/nrf52/port.c:123:13: error: stray '#' in program
mov r0, #(configMAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS))
^

Daplink Version

Hey,

I noticed my board is running daplink v0254.

Would this version be uploaded into the FW folder for others to update if they are running on the older versions.

Thanks.

Syscfg restriction violations

I get these errors when I try to build using nrf52840-mdk

Error: Syscfg restriction violations detected:
Package hw/mcu/nordic/nrf52xxx requires: MCU_NRF52832 ^^ MCU_NRF52840

Setting history (newest -> oldest):
MCU_NRF52832: [@apache-mynewt-core/hw/mcu/nordic/nrf52xxx:0]
MCU_NRF52840: [@apache-mynewt-core/hw/mcu/nordic/nrf52xxx:0]

Build failed

Hi,

When I tried to follow the doc to build nRF5-SDK-for-Mesh app on my mac, it failed as below:

itch_client_nrf52840_xxAA_s140_6.1.0.dir/src/main.c.obj -c ../examples/my_light_switch/client/src/main.c
../examples/my_light_switch/client/src/main.c: In function 'button_event_handler':
../examples/my_light_switch/client/src/main.c:228:18: error: 'BUTTON_GROVE_1' undeclared (first use in this function)
228 | case BUTTON_GROVE_1:
| ^~~~~~~~~~~~~~
../examples/my_light_switch/client/src/main.c:228:18: note: each undeclared identifier is reported only once for each function it appears in
../examples/my_light_switch/client/src/main.c:237:18: error: 'BUTTON_GROVE_2' undeclared (first use in this function)
237 | case BUTTON_GROVE_2:
| ^~~~~~~~~~~~~~
../examples/my_light_switch/client/src/main.c: In function 'buttons_init':
../examples/my_light_switch/client/src/main.c:285:10: error: 'BUTTON_GROVE_1' undeclared (first use in this function)
285 | {BUTTON_GROVE_1, BUTTONS_GROVE_ACTIVE_STATE, BUTTON_GROVE_PULL, button_event_handler},
| ^~~~~~~~~~~~~~
../examples/my_light_switch/client/src/main.c:285:26: error: 'BUTTONS_GROVE_ACTIVE_STATE' undeclared (first use in this function); did you mean 'BUTTONS_ACTIVE_STATE'?
285 | {BUTTON_GROVE_1, BUTTONS_GROVE_ACTIVE_STATE, BUTTON_GROVE_PULL, button_event_handler},
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| BUTTONS_ACTIVE_STATE
../examples/my_light_switch/client/src/main.c:285:54: error: 'BUTTON_GROVE_PULL' undeclared (first use in this function); did you mean 'BUTTON_PULL'?
285 | {BUTTON_GROVE_1, BUTTONS_GROVE_ACTIVE_STATE, BUTTON_GROVE_PULL, button_event_handler},
| ^~~~~~~~~~~~~~~~~
| BUTTON_PULL
../examples/my_light_switch/client/src/main.c:286:10: error: 'BUTTON_GROVE_2' undeclared (first use in this function)
286 | {BUTTON_GROVE_2, BUTTONS_GROVE_ACTIVE_STATE, BUTTON_GROVE_PULL, button_event_handler}
| ^~~~~~~~~~~~~~
[10/132] Building C object external/micro-ecc/CMakeFiles/uECC_nrf52840_xxAA.dir/uECC.c.obj
ninja: build stopped: subcommand failed.

script failed when doing zephyr test

Hi Experts,

When trying to do the test following the guide: https://wiki.makerdiary.com/nrf52840-mdk/zephyr/, I met below issue while doing "pip3 install --user -r scripts/requirements.txt". Anything I do to fix it and move on?

x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -flto -fuse-linker-plugin -ffat-lto-objects -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_SIZEOF_PID_T=4 -DPSUTIL_VERSION=572 -DPSUTIL_LINUX=1 -I/usr/include/python3.6m -c psutil/_psutil_common.c -o build/temp.linux-x86_64-3.6/psutil/_psutil_common.o
psutil/_psutil_common.c:9:10: fatal error: Python.h: 没有那个文件或目录
 #include <Python.h>
          ^~~~~~~~~~
compilation terminated.

BR.
Wang Yanjiong

Error: unable to find CMSIS-DAP device

I was trying to follow the tutorial for the mynewt for the nrf52840mdk
I connect the nrf52840mdk to my pc (ubuntu 18.04) in bootloader mode (red led blinking) and then tried to upload the bootloader using the command
newt load nrf52_boot

However I get the error below. I tried to run the command as root as well but no luck.
I managed to connect to the target with nrfconnect and read the pre-installed firmware so the hardware seems to be fine.

Error: 
Downloading bin/targets/nrf52_boot/app/boot/mynewt/mynewt.elf.bin to 0x0
Open On-Chip Debugger 0.10.0
Licensed under GNU GPL v2
For bug reports, read
	http://openocd.org/doc/doxygen/bugs.html
Info : auto-selecting first available session transport "swd". To override use 'transport select <transport>'.
adapter speed: 10000 kHz
cortex_m reset_config sysresetreq
Error: unable to find CMSIS-DAP device



load - Load application image on to the board for <target-name>

Any help would be appreciated

Debug nrf52840-mdk kit with keil IDE

hy i am trying too test blinky code for this kit with Keil IDE. unable to run code in debug mode. i use nordic nRF5_SDK_17_1_0 sample code pca10056 in ble_peripheral/ble_app_blinky file. when i try to flash the device i got CMSIS-DAP-Cortex-M Erroor "Device could not be powered up"
is there any tutorial showing how to flash the kit with keil IDE?
Capture

arm mbed compile fails for TARGET=NRF52840_MDK

Trying to compile with the arm mbed CLI results in the following error:

argument -m/--mcu: NRF52840_MDK is not a supported MCU. Supported MCUs are:
ARCH_BLE, ARCH_BLE_BOOT,
ARCH_BLE_OTA, ARCH_GPRS,
...

Is the documentation not up-to-date?
I'm using the latest mbed CLI, version 1.10.1

Mesh ninja my_light_switch_client_nrf52840_xxAA_s140_6.1.0 failed

Hi,

When trying to do "ninja my_light_switch_client_nrf52840_xxAA_s140_6.1.0" following the guide, I met below issue:

../examples/my_light_switch/client/src/main.c: In function 'button_event_handler':
../examples/my_light_switch/client/src/main.c:236:18: error: 'BUTTON_2' undeclared (first use in this function); did you mean 'BUTTON_1'?
236 | case BUTTON_2:
| ^~~~~~~~
| BUTTON_1
../examples/my_light_switch/client/src/main.c:236:18: note: each undeclared identifier is reported only once for each function it appears in
../examples/my_light_switch/client/src/main.c: In function 'buttons_init':
../examples/my_light_switch/client/src/main.c:285:10: error: 'BUTTON_2' undeclared (first use in this function); did you mean 'BUTTON_1'?
285 | {BUTTON_2, BUTTONS_ACTIVE_STATE, BUTTON_PULL, button_event_handler}
| ^~~~~~~~
| BUTTON_1

Anything I missed possiblely?

BR.
Wang Yanjiong

bluetooth peripherial_hr sample not compiling

Hello,
I am trying to use nRF52840-MDK as usb dongle and was suggested to use sample bluetooth project in this repo to create hex file and deploy to the board.
I have setup dev environemnt and installed dependencies, yet it is failing with : -- Configuring incomplete, errors occurred!

About the system I am working on:

NAME="LMDE"
ID=linuxmint
ID_LIKE=debian
DEBIAN_CODENAME=bookworm

The tutorial I used for setup is from here
The suggestion about bluetooth was from here

The full log of error is as follows:

Loading Zephyr default modules (Zephyr base (cached)).
-- Application: /home/asch/Projects/nrf52840-mdk/examples/zephyr/bluetooth/peripheral_hr
-- CMake version: 3.25.1
-- Cache files will be written to: /home/asch/.cache/zephyr
-- Zephyr version: 3.5.99 (/home/asch/Projects/zephyr)
-- Found west (found suitable version "1.2.0", minimum required is "0.14.0")
-- Board: nrf52840_mdk
-- Found toolchain: gnuarmemb (/usr/local/bin/gcc-arm-none-eabi-10.3-2021.10/)
-- Found BOARD.dts: /home/asch/Projects/zephyr/boards/arm/nrf52840_mdk/nrf52840_mdk.dts
-- Generated zephyr.dts: /home/asch/Projects/nrf52840-mdk/examples/zephyr/bluetooth/peripheral_hr/build/zephyr/zephyr.dts
-- Generated devicetree_generated.h: /home/asch/Projects/nrf52840-mdk/examples/zephyr/bluetooth/peripheral_hr/build/zephyr/include/generated/devicetree_generated.h
-- Including generated dts.cmake file: /home/asch/Projects/nrf52840-mdk/examples/zephyr/bluetooth/peripheral_hr/build/zephyr/dts.cmake

warning: Deprecated symbol BT_DEBUG_LOG is enabled.


warning: HAS_NORDIC_DRIVERS (defined at modules/hal_nordic/Kconfig:7) has direct dependencies 0 with value n, but is currently being y-selected by the following symbols:
 - SOC_SERIES_NRF52X (defined at soc/arm/nordic_nrf/nrf52/Kconfig.series:6), with value y, direct dependencies <choice> (value: y), and select condition <choice> (value: y)

warning: TINYCRYPT (defined at soc/arm/nxp_kinetis/kwx/Kconfig.defconfig.mkw40z4:21, soc/arm/nxp_kinetis/kwx/Kconfig.defconfig.mkw41z4:30, modules/Kconfig.tinycrypt:9) has direct dependencies (SOC_MKW40Z4 && SOC_SERIES_KINETIS_KWX) || (ENTROPY_GENERATOR && SOC_MKW41Z4 && SOC_SERIES_KINETIS_KWX) || ZEPHYR_TINYCRYPT_MODULE with value n, but is currently being y-selected by the following symbols:
 - BT_RPA (defined at subsys/bluetooth/common/Kconfig:255), with value y, direct dependencies BT_HCI && BT (value: y), and select condition BT_HCI && BT (value: y)
 - BT_GATT_CACHING (defined at subsys/bluetooth/host/Kconfig.gatt:108), with value y, direct dependencies BT_GATT_SERVICE_CHANGED && BT_CONN && BT_HCI_HOST && BT_HCI && BT (value: y), and select condition BT_GATT_SERVICE_CHANGED && BT_CONN && BT_HCI_HOST && BT_HCI && BT (value: y)
 - BT_TINYCRYPT_ECC (defined at subsys/bluetooth/host/Kconfig:938), with value y, direct dependencies BT_ECC && (BT_HCI_RAW || BT_HCI_HOST) && BT_HCI && BT (value: y), and select condition BT_ECC && (BT_HCI_RAW || BT_HCI_HOST) && BT_HCI && BT (value: y)
 - BT_CRYPTO (defined at subsys/bluetooth/crypto/Kconfig:4), with value y, direct dependencies BT_HCI && BT (value: y), and select condition BT_HCI && BT (value: y)

warning: HAS_CMSIS_CORE (defined at modules/cmsis/Kconfig:7) has direct dependencies 0 with value n, but is currently being y-selected by the following symbols:
 - CPU_CORTEX_M (defined at arch/arm/core/Kconfig:6), with value y, direct dependencies ARM (value: y), and select condition ARM (value: y)

warning: HAS_NRFX (defined at modules/hal_nordic/nrfx/Kconfig:4) has direct dependencies 0 with value n, but is currently being y-selected by the following symbols:
 - SOC_SERIES_NRF52X (defined at soc/arm/nordic_nrf/nrf52/Kconfig.series:6), with value y, direct dependencies <choice> (value: y), and select condition <choice> (value: y)

warning: NRFX_CLOCK (defined at modules/hal_nordic/nrfx/Kconfig:16) has direct dependencies HAS_NRFX && 0 with value n, but is currently being y-selected by the following symbols:
 - CLOCK_CONTROL_NRF (defined at drivers/clock_control/Kconfig.nrf:13), with value y, direct dependencies DT_HAS_NORDIC_NRF_CLOCK_ENABLED && CLOCK_CONTROL (value: y), and select condition !CLOCK_CONTROL_NRF_FORCE_ALT && DT_HAS_NORDIC_NRF_CLOCK_ENABLED && CLOCK_CONTROL (value: y)

warning: NRFX_GPIOTE (defined at modules/hal_nordic/nrfx/Kconfig:65) has direct dependencies HAS_NRFX && 0 with value n, but is currently being y-selected by the following symbols:
 - GPIO_NRFX (defined at drivers/gpio/Kconfig.nrfx:4), with value y, direct dependencies DT_HAS_NORDIC_NRF_GPIO_ENABLED && GPIO (value: y), and select condition DT_HAS_NORDIC_NRF_GPIO_ENABLED && GPIO (value: y)

warning: NRFX_CLOCK_LFXO_TWO_STAGE_ENABLED (defined at modules/hal_nordic/nrfx/Kconfig:20) has direct dependencies NRFX_CLOCK && HAS_NRFX && 0 with value n, but is currently being y-selected by the following symbols:
 - CLOCK_CONTROL_NRF_K32SRC_XTAL (defined at drivers/clock_control/Kconfig.nrf:36), with value y, direct dependencies <choice CLOCK_CONTROL_NRF_SOURCE> (value: y), and select condition !SOC_SERIES_BSIM_NRFXX && !CLOCK_CONTROL_NRF_FORCE_ALT && <choice CLOCK_CONTROL_NRF_SOURCE> (value: y)
Parsing /home/asch/Projects/zephyr/Kconfig
Loaded configuration '/home/asch/Projects/zephyr/boards/arm/nrf52840_mdk/nrf52840_mdk_defconfig'
Merged configuration '/home/asch/Projects/nrf52840-mdk/examples/zephyr/bluetooth/peripheral_hr/prj.conf'

error: Aborting due to Kconfig warnings

CMake Error at /home/asch/Projects/zephyr/cmake/modules/kconfig.cmake:355 (message):
  command failed with return code: 1
Call Stack (most recent call first):
  /home/asch/Projects/zephyr/cmake/modules/zephyr_default.cmake:129 (include)
  /home/asch/Projects/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include)
  /home/asch/Projects/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:97 (include_boilerplate)
  /home/asch/Projects/zephyr/cmake/app/boilerplate.cmake:25 (find_package)
  CMakeLists.txt:2 (include)


-- Configuring incomplete, errors occurred!

Add support for latest nRF5_SDK_15.2.0_9412b96

There are experimental_* libraries(e.g. experimental_log, experimental_memobj, experimental_ringbuf etc.) in older SDK which got updated in the latest release so Makefiles are not working with the latest SDK.

The example HEX file is invalid.

I try to flash or mergehex ble_app_blinky_nrf52840_mdk_s140.hex or ble_app_hrs_nrf52840_mdk_s140.hex, it's failed.

mergehex -m s140_nrf52_7.0.1_softdevice.hex ble_app_blinky_nrf52840_mdk_s140.hex -o test.hex Parsing input hex files. ERROR: One of the files to merge is not a valid hex file.

pyocd-flashtool -t nrf52 -se ble_app_blinky_nrf52840_mdk_s140.hex WARNING:pyocd.tools.flash_tool:pyocd-flashtool is deprecated; please use the new combined pyocd tool. WARNING:pyocd.probe.common:STLink and CMSIS-DAPv2 probes are not supported because no libusb library was found. INFO:pyocd.board.board:Target type is nrf52 INFO:pyocd.coresight.dap:DP IDR = 0x2ba01477 (v1 rev2) INFO:pyocd.coresight.ap:AP#0 IDR = 0x24770011 (AHB-AP var1 rev2) INFO:pyocd.coresight.ap:AP#1 IDR = 0x02880000 (proprietary) INFO:pyocd.target.family.target_nRF52:NRF52832 not in secure state INFO:pyocd.coresight.rom_table:AP#0 ROM table #0 @ 0xe00ff000 (designer=244 part=008) INFO:pyocd.coresight.rom_table:[0]<e000e000:SCS-M4 class=14 designer=43b part=00c> INFO:pyocd.coresight.rom_table:[1]<e0001000:DWT class=14 designer=43b part=002> INFO:pyocd.coresight.rom_table:[2]<e0002000:FPB class=14 designer=43b part=003> INFO:pyocd.coresight.rom_table:[3]<e0000000:ITM class=14 designer=43b part=001> INFO:pyocd.coresight.rom_table:[4]<e0040000:TPIU-M4 class=9 designer=43b part=9a1 devtype=11 archid=0000 devid=0:0:ca1> INFO:pyocd.coresight.rom_table:[5]<e0041000:ETM-M4 class=9 designer=43b part=925 devtype=13 archid=0000 devid=0:0:0> INFO:pyocd.coresight.cortex_m:CPU core #0 is Cortex-M4 r0p1 INFO:pyocd.coresight.cortex_m:FPU present: FPv4-SP INFO:pyocd.coresight.dwt:4 hardware watchpoints INFO:pyocd.coresight.fpb:6 hardware breakpoints, 4 literal comparators raise HexRecordError(line=line) intelhex.HexRecordError: Hex file contains invalid record at line 7

But I can flash the s140_nrf52_7.0.1_softdevice.hex in same way.

Bill of Materials

I was wondering if there was a BOM for the hardware for this project in case I wanted to base my hardware project off of this sometime in the future.

mdk board connected to usb port, but can't be found by pyocd-flashtool

Hi Experts,

I wanna to flash my mdk board, but my board can't be found by pyocd-flashtool.

WARNING:pyocd.tools.flash_tool:pyocd-flashtool is deprecated; please use the new combined pyocd tool.
No available debug probes are connected

Maybe the bin is not the original one. Any way I can do to make sure the board could be seen by pyocd-flashtool?

Thanks.

MyNewt issues

I've had a few issues with trying to get the mynewt examples working.

  1. On most of the versions I tested, the BSP fails due to an incorrect version string. See makerdiary/mynewt_nrf52840_mdk#1

  2. The only versions I was able to get a build out of were mynewt 1.4.*. Apparently a bunch of stuff has changed since then, and I'm out of my depth on how to go about updating the BSP.

  3. I cannot actually flash the firmware: .openocd_cmds:5: Error: invalid subcommand "write_image erase bin/targets/nrf52_boot/app/apps/boot/boot.elf.bin 0x0" I assume this is because of an incompatible version of OpenOCD (I'm using 0.10.0).

  4. Attempting to manually flash the bootloader or blinky example from gdb using the load command doesn't appear to work.

how to configure wpantund ?

I am implementing the openthread on makerdiary's nRF52840-MDK using a Linux machine.
It goes fine up to flashing the board. After that, the step where we have to configure wpantund, it constantly shows an error and it remains uninitialized. Help me resolve this issue .

Cant get the 'myNewt blinky' example to work

I've been trying to get the 'myNewt blinky' example to work but cant seem to get the LED to blink. So far, building and loading artefacts works.

Output of Load commands on Windows via MSYS2:
Nil@DESKTOP-M9O6B7J MSYS ~/dev/nrf52840-mdk/examples/mynewt/blinky

  • $ newt load -v nrf52_boot
  • Loading bootloader
  • Load command: C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/repos/mynewt_nrf52840_mdk/hw/bsp/nrf52840_mdk/nrf52840_mdk_download.cmd C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/repos/mynewt_nrf52840_mdk/hw/bsp/nrf52840_mdk bin\targets\nrf52_boot\app\boot\mynewt\mynewt
  • Environment:
    • BOOT_LOADER=1
    • FEATURES=APP_NAME APP_mynewt ARCH_NAME ARCH_cortex_m4 BASELIBC_PRESENT BOOTUTIL_IMAGE_FORMAT_V2 BOOTUTIL_LOG_LEVEL BOOTUTIL_MAX_IMG_SECTORS BOOTUTIL_NO_LOGGING BOOTUTIL_OVERWRITE_ONLY_FAST BOOTUTIL_SIGN_RSA_LEN BOOTUTIL_USE_MBED_TLS BOOT_LOADER BSP_NAME BSP_NRF52840 BSP_nrf52840_mdk CONSOLE_UART_BAUD CONSOLE_UART_DEV CONSOLE_UART_FLOW_CONTROL DEBUG_PANIC_ENABLED DFLT_LOG_LVL FLASH_MAP_MAX_AREAS FLASH_MAP_SYSINIT_STAGE HAL_ENABLE_SOFTWARE_BREAKPOINTS HAL_FLASH_VERIFY_BUF_SZ I2C_0_FREQ_KHZ I2C_1_FREQ_KHZ LOG_CONSOLE LOG_GLOBAL_IDX LOG_LEVEL MBEDTLS_AES_C MBEDTLS_BASE64_C MBEDTLS_ECP_DP_SECP224R1 MBEDTLS_ENTROPY_C MBEDTLS_PKCS1_V15 MBEDTLS_PKCS1_V21 MBEDTLS_SHA256_C MCU_DCDC_ENABLED MCU_FLASH_MIN_WRITE_SIZE MCU_I2C_RECOVERY_DELAY_USEC MCU_LFCLK_SOURCE MCU_TARGET MFG_LOG_LVL MFG_LOG_MODULE MFG_MAX_MMRS MFG_SYSINIT_STAGE MODLOG_CONSOLE_DFLT MODLOG_MAX_MAPPINGS MODLOG_MAX_PRINTF_LEN MODLOG_SYSINIT_STAGE MSYS_1_BLOCK_SIZE MSYS_SANITY_TIMEOUT NEWT_FEATURE_LOGCFG NEWT_FEATURE_SYSDOWN NFC_PINS_AS_GPIO OS_CPUTIME_FREQ OS_CTX_SW_STACK_GUARD OS_IDLE_TICKLESS_MS_MAX OS_IDLE_TICKLESS_MS_MIN OS_MAIN_STACK_SIZE OS_MAIN_TASK_PRIO OS_SYSVIEW_TRACE_CALLOUT OS_SYSVIEW_TRACE_EVENTQ OS_SYSVIEW_TRACE_MUTEX OS_SYSVIEW_TRACE_SEM QSPI_FLASH_PAGE_SIZE QSPI_FLASH_SECTOR_COUNT QSPI_FLASH_SECTOR_SIZE QSPI_PIN_CS QSPI_PIN_DIO0 QSPI_PIN_DIO1 QSPI_PIN_DIO2 QSPI_PIN_DIO3 QSPI_PIN_SCK SANITY_INTERVAL SYSDOWN_CONSTRAIN_DOWN SYSDOWN_TIMEOUT_MS TARGET_NAME TARGET_nrf52_boot TIMER_0 UART_0 UART_0_PIN_CTS UART_0_PIN_RTS UART_0_PIN_RX UART_0_PIN_TX UART_1_PIN_CTS UART_1_PIN_RTS WATCHDOG_INTERVAL
    • FLASH_AREA_SIZE=0x8000
    • FLASH_OFFSET=0x0
  • IMAGE_SLOT=0
    • CORE_PATH=C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/repos/apache-mynewt-core
    • BSP_PATH=C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/repos/mynewt_nrf52840_mdk/hw/bsp/nrf52840_mdk
    • BIN_BASENAME=bin\targets\nrf52_boot\app\boot\mynewt\mynewt
    • BIN_ROOT=C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/bin
      Successfully loaded image.

Nil@DESKTOP-M9O6B7J MSYS ~/dev/nrf52840-mdk/examples/mynewt/blinky

  • $ newt load -v nrf52_blinky
  • Loading app image into slot 1
  • Load command: C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/repos/mynewt_nrf52840_mdk/hw/bsp/nrf52840_mdk/nrf52840_mdk_download.cmd C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/repos/mynewt_nrf52840_mdk/hw/bsp/nrf52840_mdk bin\targets\nrf52_blinky\app\apps\blinky\blinky
  • Environment:
    • FEATURES=APP_NAME APP_blinky ARCH_NAME ARCH_cortex_m4 BASELIBC_PRESENT BSP_NAME BSP_NRF52840 BSP_nrf52840_mdk CONSOLE_UART_BAUD CONSOLE_UART_DEV CONSOLE_UART_FLOW_CONTROL DEBUG_PANIC_ENABLED DFLT_LOG_LVL FLASH_MAP_MAX_AREAS FLASH_MAP_SYSINIT_STAGE HAL_ENABLE_SOFTWARE_BREAKPOINTS HAL_FLASH_VERIFY_BUF_SZ I2C_0_FREQ_KHZ I2C_1_FREQ_KHZ LOG_CONSOLE LOG_GLOBAL_IDX LOG_LEVEL MCU_DCDC_ENABLED MCU_FLASH_MIN_WRITE_SIZE MCU_I2C_RECOVERY_DELAY_USEC MCU_LFCLK_SOURCE MCU_TARGET MFG_LOG_LVL MFG_LOG_MODULE MFG_MAX_MMRS MFG_SYSINIT_STAGE MODLOG_CONSOLE_DFLT MODLOG_MAX_MAPPINGS MODLOG_MAX_PRINTF_LEN MODLOG_SYSINIT_STAGE MSYS_1_BLOCK_COUNT MSYS_1_BLOCK_SIZE MSYS_SANITY_TIMEOUT NEWT_FEATURE_LOGCFG NEWT_FEATURE_SYSDOWN NFC_PINS_AS_GPIO OS_CPUTIME_FREQ OS_CTX_SW_STACK_GUARD OS_IDLE_TICKLESS_MS_MAX OS_IDLE_TICKLESS_MS_MIN OS_MAIN_STACK_SIZE OS_MAIN_TASK_PRIO OS_SCHEDULING OS_SYSVIEW_TRACE_CALLOUT OS_SYSVIEW_TRACE_EVENTQ OS_SYSVIEW_TRACE_MUTEX OS_SYSVIEW_TRACE_SEM QSPI_FLASH_PAGE_SIZE QSPI_FLASH_SECTOR_COUNT QSPI_FLASH_SECTOR_SIZE QSPI_PIN_CS QSPI_PIN_DIO0 QSPI_PIN_DIO1 QSPI_PIN_DIO2 QSPI_PIN_DIO3 QSPI_PIN_SCK SANITY_INTERVAL SYSDOWN_CONSTRAIN_DOWN SYSDOWN_TIMEOUT_MS SYSINIT_CONSTRAIN_INIT TARGET_NAME TARGET_nrf52_blinky TIMER_0 UART_0 UART_0_PIN_CTS UART_0_PIN_RTS UART_0_PIN_RX UART_0_PIN_TX UART_1_PIN_CTS UART_1_PIN_RTS WATCHDOG_INTERVAL
    • FLASH_AREA_SIZE=0x76000
    • FLASH_OFFSET=0xc000
  • IMAGE_SLOT=0
    • CORE_PATH=C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/repos/apache-mynewt-core
    • BSP_PATH=C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/repos/mynewt_nrf52840_mdk/hw/bsp/nrf52840_mdk
    • BIN_BASENAME=bin\targets\nrf52_blinky\app\apps\blinky\blinky
    • BIN_ROOT=C:/msys64/home/Nil/dev/nrf52840-mdk/examples/mynewt/blinky/bin
      Successfully loaded image.

Couple of things I've tried:

  1. Perform an 'openocd mass_erase' and dump flash contents to verify the flash has been completely wiped prior to reloading build artefacts.
  2. Debugging 'blinky.elf' (my setup -VSCode, Cortex-debug extn and pyocd) doesnt yield anything meaningful as I'm guessing somehow program flow ends in a corrupted stack. (See attached image)
  3. The verbose output from 'newt load' commands indicates both loads (app +bootloader) are being loaded into 'Slot 0'. So, double checked by dumping flash contents entirely with 'opencd and hexdump' to verify that this isnt the case and indeed it isnt the case. They are being being loaded into the correct offsets - (0x0 for bootlader and 0xc000 for app).
  4. Also, tested with the nrf5-sdk example and that works - the LEDs blink and change color.

So, cant think of anything else ... to get this working.

debug_nrf52_blinky

after make flash the code is not uploaded on board

on a macos
installed pip and brewer, pyocd and gcc toolkit

after command make flash the code is not uploaded on board
with the blinky led example works, then i try with ble blinky and not works

thanks

MacBook-Pro-di-Stefano:armgcc stefano$ make flash Assembling file: gcc_startup_nrf52840.S Compiling file: nrf_log_backend_rtt.c Compiling file: nrf_log_backend_serial.c Compiling file: nrf_log_backend_uart.c Compiling file: nrf_log_default_backends.c Compiling file: nrf_log_frontend.c Compiling file: nrf_log_str_formatter.c Compiling file: app_button.c Compiling file: app_error.c Compiling file: app_error_handler_gcc.c Compiling file: app_error_weak.c Compiling file: app_scheduler.c Compiling file: app_timer.c Compiling file: app_util_platform.c Compiling file: hardfault_implementation.c Compiling file: nrf_assert.c Compiling file: nrf_atfifo.c Compiling file: nrf_atflags.c Compiling file: nrf_atomic.c Compiling file: nrf_balloc.c Compiling file: nrf_fprintf.c Compiling file: nrf_fprintf_format.c Compiling file: nrf_memobj.c Compiling file: nrf_pwr_mgmt.c Compiling file: nrf_ringbuf.c Compiling file: nrf_section_iter.c Compiling file: nrf_strerror.c Compiling file: system_nrf52840.c Compiling file: boards.c Compiling file: nrf_drv_clock.c Compiling file: nrf_drv_uart.c Compiling file: nrfx_clock.c Compiling file: nrfx_gpiote.c Compiling file: nrfx_power_clock.c Compiling file: nrfx_prs.c Compiling file: nrfx_uart.c Compiling file: nrfx_uarte.c Compiling file: main.c Compiling file: SEGGER_RTT.c Compiling file: SEGGER_RTT_Syscalls_GCC.c Compiling file: SEGGER_RTT_printf.c Compiling file: ble_advdata.c Compiling file: ble_conn_params.c Compiling file: ble_conn_state.c Compiling file: ble_srv_common.c Compiling file: nrf_ble_gatt.c Compiling file: nrf_ble_qwr.c Compiling file: utf.c Compiling file: ble_lbs.c Compiling file: nrf_sdh.c Compiling file: nrf_sdh_ble.c Compiling file: nrf_sdh_soc.c Linking target: _build/nrf52840_xxaa.out text data bss dec hex filename 26992 164 2488 29644 73cc _build/nrf52840_xxaa.out Preparing: _build/nrf52840_xxaa.hex Preparing: _build/nrf52840_xxaa.bin DONE nrf52840_xxaa Flashing: _build/nrf52840_xxaa.hex pyocd-flashtool -t nrf52 -se _build/nrf52840_xxaa.hex WARNING:root:pyocd-flashtool is deprecated; please use the new combined pyocd tool. INFO:board:Target type is nrf52 INFO:root:DP IDR = 0x2ba01477 INFO:root:AP#0 IDR = 0x24770011 INFO:root:AP#1 IDR = 0x02880000 INFO:root:AP#0 ROM table #0 @ 0xe00ff000 (designer=244 part=008) INFO:root:[0]<e000e000:SCS-M4 class=14 designer=43b part=00c> INFO:root:[1]<e0001000:DWT class=14 designer=43b part=002> INFO:root:[2]<e0002000:FPB class=14 designer=43b part=003> INFO:root:[3]<e0000000:ITM class=14 designer=43b part=001> INFO:root:[4]<e0040000:TPIU-M4 class=9 designer=43b part=9a1 devtype=11 archid=0000 devid=0:0:ca1> INFO:root:[5]<e0041000:ETM-M4 class=9 designer=43b part=925 devtype=13 archid=0000 devid=0:0:0> INFO:root:CPU core is Cortex-M4 r0p1 INFO:root:FPU present: FPv4-SP INFO:root:4 hardware watchpoints INFO:root:6 hardware breakpoints, 4 literal comparators [====================] 100% INFO:pyocd.flash.loader:Programmed 27156 bytes (7 pages) at 12.19 kB/s (7 pages unchanged) #pyocd-flashtool -t nrf52 -se _build/nrf52840_xxaa.hex MacBook-Pro-di-Stefano:armgcc stefano$

What version of zephyr does do the examples expect?

Currently most of the zephyr board configuration does not work as the guide says.

For example, the Kconfig.defconfig file does not have typing information required by zephyr and therefore fails to build. Attempting to assign 'y' to ARM_MPU_NRF52X fails in nrf52840_mdk_defconfig because ARM_MPU_NRF52X does not exist. There's also a slew of problems with the .dts file.

Please fix the documentation or config files so they work.

Steps to reproduce:
Attempt to follow the zephyr guide

OpenSK compatibility/porting between nrf52840-mdk-usb-dongle and nrf52840-mdk

Hello. It's more like a question/documentation request than an "issue" per se.

Is this instruction for your usb dongle compatible with nrf52840-mdk? Asking just to be clear.

If yes (which is my assumption since it's nearly the same hardware unless it has even more periphery and pins) then it would be great if you would update the related documentation for nrf52840-mdk ("Software Resource" table) by adding a similar set of pages somewhere here with additional specific instructions for the board itself if any (if I will be having enough of time then I think that I could do at least some part of that work by myself through merge request once nrf52840-mdk will be delivered to me and I will make basic checks related to OpenSK).

If no then it still would be great to mention that by explaining limitations and required work to be done for porting in the related documentation as well.

Thanks in advance.

Tags: wishlist, question, documentation

P.S. Thank you so much for a such operative fastlight porting of OpenSK for your dongle. But could you tell, please - are you going to support your porting code further or was it more like a one-shot proof of concept/demo activity for your product(s)? Are you going to make a merge request into upstream of google/OpenSK with your changes in the nearest future? Do you have any roadmap of OpenSK for your products yourselves? If yes, it would be great if you would prepare and publish some kind of roadmap/claim about that as a part of documentation for future development as well. Thank you.

Unable to use make flash

**Singh:armgcc dhillon$ make flash** DONE nrf52840_xxaa Flashing: _build/nrf52840_xxaa.hex pyocd-flashtool -t nrf52 -se _build/nrf52840_xxaa.hex Traceback (most recent call last): File "/usr/local/bin/pyocd-flashtool", line 6, in <module> from pkg_resources import load_entry_point File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 3095, in <module> @_call_aside File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 3081, in _call_aside f(*args, **kwargs) File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 3108, in _initialize_master_working_set working_set = WorkingSet._build_master() File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 658, in _build_master ws.require(__requires__) File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 959, in require needed = self.resolve(parse_requirements(requirements)) File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/__init__.py", line 846, in resolve raise DistributionNotFound(req, requirers) **pkg_resources.DistributionNotFound: The 'enum34' distribution was not found and is required by pyocd** make: *** [flash] Error 1 Singh:armgcc dhillon$

Documentation no longer accurate now that the nrf528xx have moved to openthread/ot-nrf528xx

I am trying to have a go with Thread for the first time using a nRF52840-MDK and a dongle, but the OpenThread guide is no longer accurate as the path openthread/examples/platforms/nrf52840/platform-config.h is no longer valid. The examples for the nrf528xx platforms have moved to openthread/ot-nrf528xx and have changed structure as well. For example, the platform-config.h file mentioned in the tutorial does not contain the lines for UART anymore.

Basic UART Communication not working on nrf52840-mdk

I cannot interface with the nrf52840-mdk via wpantund or CLI using openthread firmware.

I was following these instructions originally with no luck. I went to the openthread github and asked for help, but still no luck. Please view that incident to see what troubleshoots I've already done.

I am able to open a CLI with the nrf52840-mdk using this firmware. But I can't open a CLI while using firmware I create with the make file. How was the firmware I linked to made? Are there some parameters I should be providing?

Programming

Can I program this board over an interface which is not USB such as SWD?

If so, what would you recommend as a debugger?

build errors

I have tried osx and windows over the past 3 days to build the mynewt blinky app
and I can't get rid of these errors.

This is what i get on a mac (mojave)

  • Warning: Parsing pkg @apache-mynewt-nimble/nimble/transport/ram config: strconv.ParseInt: parsing "MYNEWT_VAL(BLE_TRANS_RAM_SYSINIT_STAGE)": invalid syntax; ignoring package.

and this is what I get on windows

error: missing binary operator before token “(”
#if MYNEWT_VAL(BOOTUTIL_SIGN_EC)

circuitPython doesn't work on this board

i tried to flesh the hex file from adafruit site, and i get noting
also tried to bulid my own and flash and the board still doesn't work
all other example HEX fill works

External U.FL connector selector

Hi there,

I was wondering how to select the external antenna connector on the board. I could not find anything in the documentation regarding this. I presume I need to re-solder a capacitor. If you so kindly could indicate which one I need to move that would be great!

Kind regards,
Seth

View LOG with OpenThread

Hi,

i'm using your boards and find it a little complicated to get to know because in the examples comments or similar a missing to fully understand them.

To my problem: I want to use openThread and need a Log to get to know some information's about the program state.
I tried to use the CLI/USB example to log over the UART but i can see any logs when connecting via minicom to the device.

Is there any way to see logs via UART or something else?

Using UART over usb with nrf5sdk15.2

Hey there,

I'm trying to get the UART example from the nrf5sdk to work on this board and I'm having trouble. While the CDC led does blink red when I press a key in my Putty terminal no data is received by the nrf52 chip. The data that the nrf52 chip sends out also don't seem to reach the terminal, while the debugger does step through all the functions without reporting an error. I already changed the pins in the UART config to match the tx and rx for uart described in the pinout.

For clarity, I'm trying to get the board to communicate through the usb cable that is plugged into the usb-c socket.

Any help would be appreciated.

How to use external antenna?

I want to use the external antenna, is it possible for me just plug an antenna, or I need to remove some components to disable the chip antenna?

How to debug the program on the board?

I am able to flash and run the programs the board but can't find a tutorial or guide of how to debug them? Documentation claims DAPLINK supports / contains Jlink but f.e.x: Segger Embedded Studio can't see it (cannot connect to Jlink). I am able to log stuff but in many cases it is not enough.
Can you help or am I missing something?

No partitions are shown on DAPLink's removable drive

Hi!

Gentoo Linux here! When I plugged my shiny new nrf52840-mdk, both serial and drive shown, but no partition there. I believe I should make one, along with partition table. Can you walk me through the process?

[ 2158.907931] usb 1-3.4: new high-speed USB device number 10 using ehci-pci
[ 2158.998448] usb 1-3.4: New USB device found, idVendor=0424, idProduct=2422, bcdDevice= 0.a0
[ 2158.998450] usb 1-3.4: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 2158.998710] hub 1-3.4:1.0: USB hub found
[ 2158.998815] hub 1-3.4:1.0: 2 ports detected
[ 2160.451918] usb 1-3.4.1: new full-speed USB device number 11 using ehci-pci
[ 2160.548241] usb 1-3.4.1: New USB device found, idVendor=0d28, idProduct=0204, bcdDevice= 1.00
[ 2160.548243] usb 1-3.4.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2160.548244] usb 1-3.4.1: Product: DAPLink CMSIS-DAP
[ 2160.548245] usb 1-3.4.1: Manufacturer: ARM
[ 2160.548246] usb 1-3.4.1: SerialNumber: 1026000003f3816000000000000000000000000097969902
[ 2160.548882] usb-storage 1-3.4.1:1.0: USB Mass Storage device detected
[ 2160.549012] scsi host7: usb-storage 1-3.4.1:1.0
[ 2160.551159] hid-generic 0003:0D28:0204.0008: hiddev98,hidraw7: USB HID v1.00 Device [ARM DAPLink CMSIS-DAP] on usb-0000:00:12.2-3.4.1/input3
[ 2160.552168] cdc_acm 1-3.4.1:1.1: ttyACM0: USB ACM device
[ 2161.567632] scsi 7:0:0:0: Direct-Access     MBED     VFS              0.1  PQ: 0 ANSI: 2
[ 2161.567824] sd 7:0:0:0: Attached scsi generic sg5 type 0
[ 2161.568366] sd 7:0:0:0: [sdf] 131200 512-byte logical blocks: (67.2 MB/64.1 MiB)
[ 2161.568988] sd 7:0:0:0: [sdf] Write Protect is off
[ 2161.568990] sd 7:0:0:0: [sdf] Mode Sense: 03 00 00 00
[ 2161.569614] sd 7:0:0:0: [sdf] No Caching mode page found
[ 2161.569616] sd 7:0:0:0: [sdf] Assuming drive cache: write through
[ 2161.595692] sd 7:0:0:0: [sdf] Attached SCSI removable disk
$  fdisk -l /dev/sdf                                                                                                                                                                                                                                                                    
Disk /dev/sdf: 64.1 MiB, 67174400 bytes, 131200 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

how to import sdk example?

please can you explain how to use the others sdk examples, from Nordic.
like other example about nfc and ble.
in particular the import section and the board specification

thanks

Peculiar i2c issue

I've hit a wall trying to connect my nRF52840-mdk with a specific i2c slave (that sits in a port-expansion board). If you need more context, here's a link to the problem - https://github.com/nihalpasham/testnRFi2c

Although, it does work with other i2c slaves (such as my mpu6050 sensor), I'm guessing this has something to do with the nRF-mdk's internal pull-up resistors. I couldn't find any documentation on the resistor values? Could someone shed some light on this?

DAPLINK programming and board disconnecting issues

I m using Mac OS and pyocd tool to program mdk board. I have following issues since the beginging:

  1. Board keeps disconnecting with message: "Disk Not Ejected Properly Eject DAPLINK before disconnecting or turning off"

  2. Programming board works only for 2 or so times and then keeps failing more and more until I restart Mac for it to work for a while again.

I am using following programming command:
pyocd-flashtool -t nrf52 -ce binay.hex

What I tried (with no success):

  • Upgrading firmware to the most recent version
  • Upgrading pyocd

To be honest I am not sure what is the source of the problem (hardware / software / Mac OS).
I am also not sure if it is the correct place but I couldn't find solution myself nor better place to ask for help.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.