-
Notifications
You must be signed in to change notification settings - Fork 87
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Zelin Cai <[email protected]>
- Loading branch information
Showing
1 changed file
with
69 additions
and
84 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,115 +1,100 @@ | ||
# nRF52840 MDK USB Dongle | ||
# nRF52840 MDK USB Dongle | ||
[![Current Version](https://img.shields.io/github/tag/makerdiary/nrf52840-mdk-usb-dongle.svg)](https://github.com/makerdiary/nrf52840-mdk-usb-dongle/tags) | ||
[![Documentation](https://github.com/makerdiary/nrf52840-mdk-usb-dongle/actions/workflows/documentation.yml/badge.svg?branch=main)](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle) | ||
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?color=informational)](/.github/CONTRIBUTING.md) | ||
|
||
> A small and low-cost nRF52840 Micro Development Kit in USB Dongle Form Factor | ||
> A small, low-cost USB Dongle designed with nRF52840 | ||
## Description | ||
|
||
The nRF52840 MDK USB Dongle is a small and low-cost development platform enabled by the nRF52840 multiprotocol SoC in a convenient USB dongle form factor. | ||
nRF52840 MDK USB Dongle is a small and low-cost development platform enabled by the nRF52840 multiprotocol SoC in a convenient USB Dongle form factor. | ||
|
||
The design features a programmable user button, RGB LED, up to 12 GPIOs and 2.4G Chip antenna on board. It can be used as a low-cost Bluetooth5/Tread/802.15.4/ANT/2.4GHz multiprotocol node or development board. Alternatively the USB Dongle can be used as a Network Co-Processor(NCP) with a simple connection to a PC or other USB enabled device. | ||
The design features a programmable user button, RGB LED, up to 12 GPIOs and 2.4G Chip antenna on board. It can be used as a low-cost Bluetooth5/Thread/802.15.4/ANT/2.4GHz multiprotocol node or development board. Alternatively the USB Dongle can be used as a Network Co-Processor(NCP) with a simple connection to a PC or other USB enabled device. | ||
|
||
[![](docs/assets/images/dongle_pcba_case.jpg)](https://store.makerdiary.com/search?q=nrf52840+dongle) | ||
It's shipped with the UF2 Bootloader, supports [nRF Connect SDK][ncs-guide], which integrates the Zephyr RTOS, protocol stacks, samples, hardware drivers and much more. The dongle can work as a [Bluetooth Low Energy][ble-sniffer] and [IEEE 802.15.4][nrf802154-sniffer] packet sniffer with Wireshark, and has PCBA and w/Case options to meet various scenarios. | ||
|
||
![product hero](./docs/assets/images/nrf52840dongle-hero.png) | ||
|
||
## Hardware Features | ||
## Key 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 | ||
* Up to 12 GPIOs available via headers | ||
* Nordic Semiconductor nRF52840 SoC | ||
|
||
- 64 MHz Arm® Cortex-M4 with FPU | ||
- 1 MB Flash + 256 KB RAM | ||
- Bluetooth LE, Bluetooth mesh, Thread, Zigbee, 802.15.4, ANT and 2.4 GHz proprietary | ||
- Arm TrustZone® Cryptocell 310 Security Subsystem | ||
- 2.4 GHz Transceiver with +8 dBm TX Power | ||
- GPIO, UART, SPI, TWI(I2C), PDM, I2S, QSPI, PWM, QDEC, 12-bit ADC support | ||
- Integrated USB 2.0 Full-speed Controller | ||
- Integrated NFC-A Tag | ||
|
||
* Arm Serial Wire Debug (SWD) port via edge pins | ||
* Up to 12 GPIOs available via edge pins | ||
* User programmable Button and RGB LED | ||
* On-board 2.4G chip antenna | ||
* On-board 2.4G chip antenna | ||
* 3.3V regulator with 1A peak current output | ||
* VBUS & VIN Power-Path Management | ||
* Convenient USB dongle form factor | ||
* Breadboard-friendly with dual 10-Pin headers | ||
* Measures 1.65" x 0.7" x 0.16" (42mm x 18mm x 4mm) without headers soldered in | ||
|
||
## Pinout Diagram | ||
|
||
[![](docs/assets/images/nrf52840-mdk-usb-dongle-pinout.png)](docs/assets/images/nrf52840-mdk-usb-dongle-pinout.png) | ||
|
||
## Documentation | ||
|
||
We have provided develeopment docs to make it a pleasure to work with the Dongle hardware. | ||
Get what you need here or visit [https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle). | ||
* Measures 1.65" x 0.7" x 0.15" (42mm x 17.78mm x 3.75mm) without headers soldered in | ||
* w/Case option available to provide protection and ease of use | ||
* Shipped with UF2 Bootloader supporting Drag-and-drop programming over USB drive | ||
* Built on open source, supporting nRF Connect SDK, Zephyr RTOS, Google's OpenSK, etc. | ||
|
||
* [Getting Started](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/getting-started) | ||
* [How to program the Dongle](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/programming) | ||
* [Getting Started with nRF5 SDK](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/getting-started) | ||
* [How to Build an OpenThread Border Router with Raspberry Pi 3B](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/OTBR) | ||
* [How to Build a Thread Network Sniffer with Wireshark](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/thread-sniffer) | ||
* [How to Make a FIDO2 Security Key with Google OpenSK](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/opensk) | ||
## Hardware diagram | ||
|
||
## Software Resource | ||
The following figure illustrates the nRF52840 MDK USB Dongle hardware diagram. | ||
|
||
The nRF52840 MDK USB Dongle can be used to play with : *nRF5 SDK*, *OpenThread*, *Web Bluetooth*, *iBeacon*, *Eddystone*, and more. | ||
[![](./docs/assets/images/nrf52840-mdk-usb-dongle-pinout.png)][pinout-diagram] | ||
|
||
| Software | Brief Description | | ||
| ---------- | ----- | | ||
| [nRF5 SDK](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/nrf5-sdk) | Offical Software Development Kit for nRF51 and nRF52 Series | | ||
| [OpenThread Border Router](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/OTBR) | An open source border router, designed to work with OpenThread | | ||
| [Thread Network Sniffer](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/thread-sniffer) | Help you to efficiently analyze Thread network traffic| | ||
| [Web Bluetooth](https://webbluetoothcg.github.io/web-bluetooth/) | Bluetooth support for the Web | | ||
| [iBeacon](https://developer.apple.com/ibeacon/) | A Bluetooth low energy advertising message format designed by Apple | | ||
| [Eddystone](https://github.com/google/eddystone) | A protocol specification that defines a Bluetooth low energy message format for proximity beacon messages | | ||
| [CircuitPython](https://circuitpython.org/board/makerdiary_nrf52840_mdk_usb_dongle/) | A programming language designed to simplify experimenting and learning to code on low-cost microcontroller boards | | ||
| [TinyGo](https://tinygo.org/microcontrollers/nrf52840-mdk-usb-dongle) | Go compiler for small devices, based on LLVM | | ||
| [Rust for nrf52840-mdk](https://github.com/nrf-rs/nrf52840-mdk-rs) | Rust support for the nrf52840-mdk development board | | ||
| [Web Device CLI](https://github.com/makerdiary/web-device-cli) | A Web Command Line Interface via NUS (Nordic UART Service) using Web Bluetooth API | | ||
| [nRF52 FIDO U2F Security Key](https://github.com/makerdiary/nrf52-u2f) | An Open-Source FIDO U2F implementation on nRF52 SoC | | ||
| [OpenSK](https://github.com/makerdiary/OpenSK) | An open-source implementation for security keys written in Rust that supports both FIDO U2F and FIDO2 standards released by [Google](https://github.com/google/OpenSK) | | ||
## Mechanical dimensions | ||
|
||
nRF52840 MDK USB Dongle PCBA is a single sided 42mm x 17.78mm (1.65" x 0.7") 2.0mm thick PCB with a USB-A port and dual castellated/through-hole pins. nRF52840 MDK USB Dongle w/Case includes a high-quality plastic case in 50.8mm x 21.1mm (2.0" x 0.83") 7.6mm thick. | ||
|
||
## Hardware Resource | ||
![](./docs/assets/images/mechanical_specs.png) | ||
|
||
| Releases | Design Files | | ||
| -------- | ------------------------------ | | ||
| V1.0 | [nRF52840 MDK USB Dongle V1.0 Pinout Diagram](docs/hardware/nrf52840-mdk-usb-dongle-pinout_v1_0.pdf)<br/>[nRF52840 MDK USB Dongle V1.0 Schematic](docs/hardware/nrf52840-mdk-usb-dongle-sch_v1_0.pdf)<br/>[nRF52840 MDK USB Dongle V1.0 Board File](docs/hardware/nrf52840-mdk-usb-dongle-board_v1_0.pdf)<br/>[nRF52840 MDK USB Dongle V1.0 3D STEP](docs/hardware/nrf52840-mdk-usb-dongle-3d_v1_0.step)| | ||
## Documentation | ||
|
||
We offer an extensive set of documentation such as getting started guides and developer guides, which can help you save big by reducing development effort. | ||
|
||
## How to Get nRF52840 MDK USB Dongle? | ||
* [nRF52840 MDK USB Dongle Wiki][wiki] | ||
* [nRF52840 MDK USB Dongle Product Brief][product-brief] | ||
* [nRF52840 MDK USB Dongle Quick Start Guide][quickstart] | ||
* [How to program the nRF52840 MDK USB Dongle][programming] | ||
* [Develop with nRF Connect SDK & Zephyr RTOS][ncs-guide] | ||
* [nRF Sniffer for Bluetooth LE][ble-sniffer] | ||
* [nRF Sniffer for 802.15.4][nrf802154-sniffer] | ||
* [OpenSK FIDO2 Authenticator Guide][opensk] | ||
|
||
nRF52840 MDK USB Dongle is available on the following channels (click to go directly to the product): | ||
## Where to buy | ||
|
||
| Online Store | nRF52840 MDK USB Dongle(PCBA) | nRF52840 MDK USB Dongle w/ Case | | ||
| ------------ | ------------ | --------------- | | ||
| [![makerdiary store](docs/assets/images/makerdiary-store-logo.png)](https://store.makerdiary.com) | [Order Now](https://store.makerdiary.com/products/nrf52840-mdk-usb-dongle) | [Order Now](https://store.makerdiary.com/products/nrf52840-mdk-usb-dongle-w-case) | | ||
| [![SeeedStudio](docs/assets/images/seeed_logo_2018_horizontal.png)](https://www.seeedstudio.com/nRF52840-MDK-USB-Dongle-p-3184.html) | [Order Now](https://www.seeedstudio.com/nRF52840-MDK-USB-Dongle-p-3184.html) | [Order Now](https://www.seeedstudio.com/nRF52840-MDK-USB-Dongle-w-Case-p-4094.html) | | ||
| [![Amazon](docs/assets/images/amazon_logo.png)](https://www.amazon.com/gp/product/B07MJ12XLG) | [Order Now](https://www.amazon.com/gp/product/B07MJ12XLG) | [Order Now](https://www.amazon.com/GeeekPi-nRF52840-MDK-Dongle-Case/dp/B07TSJHTSY) | | ||
| [![Tindie](docs/assets/images/tindie-logo.png)](https://www.tindie.com/stores/Zelin/) | [Order Now](https://www.tindie.com/products/14856/) | [Order Now](https://www.tindie.com/products/17394/) | | ||
| [![Taobao](docs/assets/images/taobao-logo.png)](https://zaowubang.taobao.com) | [Order Now](https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-18605444714.2.40a7796cfSeI5n&id=578378054977) | [Order Now](https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-18605444714.4.40a7796cfSeI5n&id=597968842403) | | ||
| Official Store | Buy Now | | ||
|:--------------:|:-------:| | ||
| <a href="https://makerdiary.com"><img alt="makerdiary store" display="inline" src="./docs/assets/images/makerdiary-store.png" width="160"></a> | [![PCBA](https://img.shields.io/badge/PCBA-AC2E45)](https://makerdiary.com/products/nrf52840-mdk-usb-dongle) [![w/Case](https://img.shields.io/badge/w%2FCase-AC452E)](https://makerdiary.com/products/nrf52840-mdk-usb-dongle-w-case) | | ||
| <a href="https://www.tindie.com/stores/makerdiary/"><img alt="Tindie" display="inline" src="./docs/assets/images/tindie-store.png" width="80"></a> | [![PCBA](https://img.shields.io/badge/PCBA-AC2E45)](https://www.tindie.com/products/makerdiary/nrf52840-micro-dev-kit-usb-dongle) [![w/Case](https://img.shields.io/badge/w%2FCase-AC452E)](https://www.tindie.com/products/makerdiary/nrf52840-mdk-usb-dongle-w-case/) | | ||
| <a href="https://zaowubang.taobao.com"><img alt="Taobao" display="inline" src="./docs/assets/images/taobao-store.png" width="80"></a> | [![PCBA](https://img.shields.io/badge/PCBA-AC2E45)](https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-2992523845.4.7e39796cobENAV&id=578378054977) [![w/Case](https://img.shields.io/badge/w%2FCase-AC452E)](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-2992521588.13.629e3f9aZAbOdL&id=597968842403) | | ||
|
||
| Approved Distributor | Buy Now | | ||
|:--------------:|:-------:| | ||
| <img alt="seeedstudio" display="inline" src="./docs/assets/images/amazon_logo.png" width="120"> | [![PCBA](https://img.shields.io/badge/PCBA-AC2E45)](https://www.amazon.com/gp/product/B07MJ12XLG) [![w/Case](https://img.shields.io/badge/w/Case-AC452E)](https://www.amazon.com/GeeekPi-nRF52840-MDK-Dongle-Case/dp/B07TSJHTSY) | | ||
| <img alt="seeedstudio" display="inline" src="./docs/assets/images/seeedstudio.png" width="160"> | [![PCBA](https://img.shields.io/badge/PCBA-AC2E45)](https://www.seeedstudio.com/nRF52840-MDK-USB-Dongle-p-3184.html) [![w/Case](https://img.shields.io/badge/w/Case-AC452E)](https://www.seeedstudio.com/nRF52840-MDK-USB-Dongle-w-Case-p-4094.html) | | ||
|
||
## Contributing | ||
## Community Support | ||
|
||
We would love for you to contribute to this project and help make it even better than it is today! See our [Contributing Guidelines](https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/CONTRIBUTING) for more information. | ||
Community support is provided via [GitHub Discussions][discussions]. We would love to have more developers contribute to this project! If you're passionate about making this project better, see our [Contributing Guidelines][contributing] for more information. | ||
|
||
## License | ||
|
||
**MIT License** | ||
|
||
Copyright (c) 2020 [makerdiary](https://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. | ||
|
||
Copyright (c) 2016-2023 Makerdiary. See [LICENSE](./LICENSE) for further details. | ||
|
||
[ncs-guide]: https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/guides/ncs | ||
[ble-sniffer]: https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/guides/ble-sniffer | ||
[nrf802154-sniffer]: https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/guides/nrf802154-sniffer | ||
[pinout-diagram]: https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/assets/attachments/nrf52840-mdk-usb-dongle-pinout_v1_1.pdf | ||
[wiki]: https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle | ||
[product-brief]: https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/introduction | ||
[quickstart]: http://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/getting-started | ||
[programming]: http://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/programming | ||
[opensk]: http://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/guides/opensk | ||
[discussions]: https://github.com/makerdiary/nrf52840-mdk-usb-dongle/discussions | ||
[contributing]: https://wiki.makerdiary.com/nrf52840-mdk-usb-dongle/CONTRIBUTING |