Fixes bad usage of single backticks in lieu of double backticks for rendering inline literals, or simple '*' for italics. When appropriate, a better construct than double backticks has been selected (ex. :file:, :kconfig:option:, :c:func:, ...), or proper :ref: have been used if the original intention was to have a link. Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
153 lines
4.1 KiB
ReStructuredText
153 lines
4.1 KiB
ReStructuredText
.. _sparkfun_thing_plus_nrf9160:
|
|
|
|
nRF9160 Thing Plus
|
|
##################
|
|
|
|
.. figure:: img/sparkfun_thing_plus_nrf9160.jpg
|
|
:align: center
|
|
:alt: Sparkfun nRF9160 Thing Plus
|
|
|
|
nRF9160 Thing Plus (Credit: Sparkfun)
|
|
|
|
Overview
|
|
********
|
|
|
|
The nRF9160 Thing Plus designed by Circuit Dojo is a single-board development
|
|
for bringing your LTE-M and NB-IoT applications to life. The sparkfun_thing_plus_nrf9160
|
|
board configuration leverages the pre-existing support for the Nordic Semiconductor
|
|
nRF9160. Supported nRF9160 peripherals include:
|
|
|
|
* :abbr:`ADC (Analog to Digital Converter)`
|
|
* CLOCK
|
|
* FLASH
|
|
* :abbr:`GPIO (General Purpose Input Output)`
|
|
* :abbr:`I2C (Inter-Integrated Circuit)`
|
|
* :abbr:`MPU (Memory Protection Unit)`
|
|
* :abbr:`NVIC (Nested Vectored Interrupt Controller)`
|
|
* :abbr:`PWM (Pulse Width Modulation)`
|
|
* :abbr:`RTC (nRF RTC System Clock)`
|
|
* Segger RTT (RTT Console)
|
|
* :abbr:`SPI (Serial Peripheral Interface)`
|
|
* :abbr:`UARTE (Universal asynchronous receiver-transmitter with EasyDMA)`
|
|
* :abbr:`WDT (Watchdog Timer)`
|
|
* :abbr:`IDAU (Implementation Defined Attribution Unit)`
|
|
|
|
More information about the board can be found at the
|
|
`nRF9160 Thing Plus Documentation`_.
|
|
|
|
|
|
Hardware
|
|
********
|
|
|
|
Connections and IOs
|
|
===================
|
|
|
|
The nRF9160 Thing Plus has everything you know and love about
|
|
the Feather platform. Here are some of the highlights:
|
|
|
|
LED
|
|
---
|
|
|
|
* D7 (blue) = P0.03
|
|
|
|
Push buttons and Switches
|
|
-------------------------
|
|
|
|
* MODE = P0.12
|
|
* RESET
|
|
|
|
USB
|
|
---
|
|
|
|
Contains a USB/UART connection for both debugging and loading new
|
|
code using a UART Enabled MCUBoot.
|
|
|
|
Standard Battery Connection
|
|
----------------------------
|
|
|
|
The nRF9160 Thing Plus has a 2 pin battery connector on board. Lithium Polymer batteries >
|
|
300mA required.
|
|
|
|
Nano SIM Holder
|
|
---------------
|
|
|
|
The nRF9160 Thing Plus has a built-in nano SIM (4FF) holder located
|
|
on the bottom side.
|
|
|
|
|
|
Programming and Debugging
|
|
*************************
|
|
|
|
sparkfun_thing_plus_nrf9160 can be used with most programmers like:
|
|
|
|
* J-Link (the nRF53-DK is recommended)
|
|
* CMSIS-DAP based programmers
|
|
|
|
Check out `Getting Started`_ for more info.
|
|
|
|
Building an application
|
|
=======================
|
|
|
|
In most cases you'll want to use the ``ns`` target with any of the Zephyr
|
|
or Nordic based examples.
|
|
|
|
Some of the examples do not use secure mode, so they do not required the ``ns`` suffix.
|
|
A great example of this is the :ref:`hello_world` below.
|
|
|
|
Flashing
|
|
========
|
|
|
|
Follow the instructions in the :ref:`nordic_segger` page to install
|
|
and configure all the necessary software. Further information can be
|
|
found in :ref:`nordic_segger_flashing`. Then build and flash
|
|
applications as usual (see :ref:`build_an_application` and
|
|
:ref:`application_run` for more details).
|
|
|
|
Here is an example for the :ref:`hello_world` application.
|
|
|
|
First, run your favorite terminal program to listen for output.
|
|
|
|
.. code-block:: console
|
|
|
|
$ screen /dev/<tty_device> 115200
|
|
|
|
Replace :code:`<tty_device>` with the port where the nRF9160 Thing Plus
|
|
can be found. In most cases (On Linux/Mac) it will be: :code:`/dev/tty.SLAB_USBtoUART`.
|
|
|
|
Then build and flash the application in the usual way.
|
|
|
|
.. zephyr-app-commands::
|
|
:zephyr-app: samples/hello_world
|
|
:board: sparkfun_thing_plus_nrf9160
|
|
:goals: build flash
|
|
|
|
Debugging
|
|
=========
|
|
|
|
Refer to the :ref:`nordic_segger` page to learn about debugging Nordic boards with a
|
|
Segger IC.
|
|
|
|
|
|
Testing the LEDs and buttons on the nRF9160 Thing Plus
|
|
******************************************************
|
|
|
|
There are 2 samples that allow you to test that the buttons (switches) and LEDs on
|
|
the board are working properly with Zephyr:
|
|
|
|
* :zephyr:code-sample:`blinky`
|
|
* :zephyr:code-sample:`button`
|
|
|
|
You can build and flash the examples to make sure Zephyr is running correctly on
|
|
your board. The button and LED definitions can be found in
|
|
:zephyr_file:`boards/sparkfun/thing_plus/sparkfun_thing_plus_nrf9160_common.dtsi`.
|
|
|
|
References
|
|
**********
|
|
|
|
.. target-notes::
|
|
|
|
**Side note** This page was based on the documentation for the nRF9160 DK. Thanks to Nordic for
|
|
developing a great platform!
|
|
|
|
.. _nRF9160 Thing Plus Documentation: https://docs.jaredwolff.com/nrf9160-introduction.html
|
|
.. _Getting Started: https://docs.jaredwolff.com/nrf9160-getting-started.html
|