Difference between revisions of "CubeCell"

From RevSpace
Jump to navigation Jump to search
(Software)
(Software)
(8 intermediate revisions by the same user not shown)
Line 15: Line 15:
 
What I'd like to investigate:
 
What I'd like to investigate:
 
* Does it have an RTC? YES, it appears so
 
* 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 run the arduino-lmic library on this? NO, probably not in the short term--
* Can we compile the code with platformio? YES
+
* --Can we compile the code with platformio? YES--
 
* Use this board for my [[LoraBatBox]]
 
* Use this board for my [[LoraBatBox]]
 
* [https://www.youtube.com/watch?v=lobNwqHLrag Video review by Andreas Spiess]
 
* [https://www.youtube.com/watch?v=lobNwqHLrag Video review by Andreas Spiess]
Line 22: Line 22:
 
== Hardware ==
 
== Hardware ==
 
Features:
 
Features:
* based on an ASR605x (ARM cortex M0+ core) + SX1262(?) radio chip
+
* based on an ASR605x (ARM cortex M0+ core) + SX1262 radio chip
 
* low power, only microamps sleep current
 
* low power, only microamps sleep current
 
* battery connection
 
* battery connection
Line 29: Line 29:
  
 
== Software ==
 
== Software ==
 +
The CubeCell hardware works with (an export of) the [https://github.com/LacunaSpace/basicmac 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):
 +
<pre>
 +
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,
 +
};
 +
</pre>
 +
 
Example code:
 
Example code:
* [https://github.com/HelTecAutomation/platform-asrmicro650x/blob/develop/examples/LoRa/LoRaWAN/LoRaWAN/src/LoRaWan.ino LoraWan example code]
+
* A basic working LoRaWAN platformio demo project is available at https://github.com/bertrik/cubecelldemo
* A basic 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)
 
 
What I'd like to do for a LoraBatBox:
 
* register with OTAA (and remember the session keys)
 
* wake up when there is movement sensed by the PIR
 
* keep track of times when movement was detected (in wall-clock time)
 
* send activity (say) once per hour to TTN
 

Revision as of 09:37, 25 April 2021

Project CubeCell
Cubecell.png
Low-power LoRaWAN Board
Status In progress
Contact bertrik
Last Update 2021-04-25

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,
};

Example code: