BoSL Board nano

From BoSL Wiki
Jump to navigation Jump to search

The BoSL nano will be a more feature enabled version of the BoSL micro while still retaining the small form factor.

Key changes from the BoSL:

  • Upgrade SIM7000 to smaller nRF9160
  • Remove much of the connectivity to achieve smaller profile
  • Add NFC
  • Make board much smaller. No more than 15 mm in width.
  • Removed MS5803

A number of new components will be used in this design.

The MCU will be the SAMD21G18. The modem used will be the nRF9160. It will also incorporate NFC. The connectivity will expose 7 analog pins and 10 digital pins as well as several power pins and an I2C interface. A diode O-ring similar to that on the microBoSL utilizing the MAX40203ANS will be incorperated so that the device may be powered either via USB or battery supply.

20 May 2021

We have made a mistake in the manufacturing the switch SW1 has 4 terminals and our footprint shorts it out.

12 July 2021

The boot-loader was able to be uploaded to the SAMD and after this programs could be uploaded via the arduino IDE and USB. The following steps were used to compile and upload the bootloader. The process was mostly straightforward however various packages and tools were needed to be installed to compile the bootloader.

Simple functions were then verified like RTC and analog reading. These were all working normally.

Some work was done to fixed up the boot loader and board definitions to match the circuit of the BoSL nano. These new definitions will be made available to download at a future time.

13 July 2021

These board definitions were finished and packaged up as a board in the arduino IDE board manager. Some of the custom pin functions were given specific names under the board. This includes, VNFC, for the nfc voltage. A full list will be documented soon. The used bootloader is also included in this package.

The current consumption was measured on a blank script. This was measured at 65 mA. Which is quite high, however the nRF9160 has not been flashed with any firmware yet so it is likely to be in some idle state. Placing the SAMD21 in sleep mode reduces the current consumption to 35 mA.

15 July 2021

It was found pull-up resistors were needed to be added to get the I2C bus to function. These should be included in the next revision.

16 July 2021

The process to get the nRF9160 to work has been a bit more complicated than desired. The Nordic SDK was needed to be installed. From this example applications could be built from the command line and then flashed with the J-link and Nordic flash utility. The SDK requires each a definition of the configuration of each board. I have copied the board definition for the nRF9160 development kit, and relabeled it for the BoSL nano. This definition can be used ot define where the USART interface goes and all that. I am still learning how these definitions work. So far I have been able to build the zephyr/blinky example to get the onboard LEDs to blink. Most of this learning has been following the nordic SDK documentation.

I was then able to get USART to work via editing the usart device definitions in the zephyr board configutation. After this the serial LTE modem firmware was attempted to be run. This once built on the non-secure built option. And with build configuration of uart2 (which had the correct pin-out and with hardware flow control disabled via commenting out in the bosl_nanons.overlay file in the source directory) it was able to be used with a serial pass through application developed on the SAMD. The module was now responding to AT commands. Following the AT command manual the GPS was tested and found to be working. The performance was quite good with a time for first fix (TFF) of 131s while indoors. The current BoSL board cannot get a gnss fix while indoors most of the time and often has a TFF of several minutes. The bosl nano has passed this large milestone, and looks to be largely functional. Will be on finialising a version of the AT client with extra features such as LED debug.

19 July 2021

A detailed description of how to setup an environment to build the nRF9160 firmware is described BoSL nano - Setting up nRF9160 firmware