CubeCell: Difference between revisions

From RevSpace
Jump to navigation Jump to search
Line 43: Line 43:
</pre>
</pre>


Example code:
=== Troubleshooting ===
==== Failure to initialize hardware ====
The SPI clock in the basic mac stack is configured by default to 10 MHz.
Reducing this to 1 MHz makes it start much more reliably.
This can be configured in hal.cpp , change:
  static const SPISettings settings(10E6, MSBFIRST, SPI_MODE0);
into
  static const SPISettings settings(1E6, MSBFIRST, SPI_MODE0);
 
==== Timing issues ====
The stack complains about event being out of order.
These can be 'fixed' by configuring DCFG_rxrampup to some high number, e.g. 10000
 
=== Example code ===
* A basic working LoRaWAN platformio demo project is available at https://github.com/bertrik/cubecelldemo
* A basic working LoRaWAN platformio demo project is available at https://github.com/bertrik/cubecelldemo
* [https://github.com/HelTecAutomation/platform-asrmicro650x/blob/develop/examples/LoRa/LoRaWAN/LoRaWAN/src/LoRaWan.ino LoraWan example code] from Heltec (not recommended)
* [https://github.com/HelTecAutomation/platform-asrmicro650x/blob/develop/examples/LoRa/LoRaWAN/LoRaWAN/src/LoRaWan.ino LoraWan example code] from Heltec (not recommended)

Revision as of 00:03, 27 March 2022

Project CubeCell
Cubecell.png
Low-power LoRaWAN Board
Status In progress
Contact bertrik
Last Update 2022-03-27

Intro

This page is about the CubeCell board from heltec.org, aka HTCC-AB01

the github page for the Arduino code

What I'd like to investigate:

  • Does it have an RTC? YES, it appears so
  • --Can we run the arduino-lmic library on this? NO, probably not in the short term--
  • --Can we compile the code with platformio? YES--
  • Use this board for my LoraBatBox
  • Video review by Andreas Spiess

Hardware

Features:

  • based on an ASR605x (ARM cortex M0+ core) + SX1262 radio chip
  • low power, only microamps sleep current
  • battery connection
  • solar cell connection
  • pinout

Software

The CubeCell hardware works with (an export of) the basicmac device stack from Lacuna Space, just needs a pinmap definition, (see also https://www.thethingsnetwork.org/forum/t/heltec-cubecell-part-2/37225/72):

const lmic_pinmap lmic_pins = {
    .nss = RADIO_NSS,
    .tx = LMIC_CONTROLLED_BY_DIO2,
    .rx = LMIC_UNUSED_PIN,
    .rst = RADIO_RESET,
    .dio = {LMIC_UNUSED_PIN, RADIO_DIO_1, LMIC_UNUSED_PIN},
    .busy = RADIO_BUSY,
    .tcxo = LMIC_CONTROLLED_BY_DIO3,
};

Troubleshooting

Failure to initialize hardware

The SPI clock in the basic mac stack is configured by default to 10 MHz. Reducing this to 1 MHz makes it start much more reliably. This can be configured in hal.cpp , change:

 static const SPISettings settings(10E6, MSBFIRST, SPI_MODE0);

into

 static const SPISettings settings(1E6, MSBFIRST, SPI_MODE0);

Timing issues

The stack complains about event being out of order. These can be 'fixed' by configuring DCFG_rxrampup to some high number, e.g. 10000

Example code