Advice for a beginner on BSP v RUI3 v API-V2

Hi all,

I’ve done a small amount of C programming years ago, and keen to get back into it with RAK as my choice of hardware.

There seem to be a few options for programming RAK, and I’d like to get some advice on what is the simplest way to get started and re-learn C with RAK.
E.g these are some of the options I have seen:

  • Use standard Arduino IDE BSP and C examples
  • Use RAK RUI3
  • Use WisBlock-API-V2
  • Some combination of the above?

I’d like to focus on one option and not waste time looking/wondering if there are better ways.

What advice can you give me?


1 Like

Hi @sossie07 ,

What module are you using?

If RAK4631, as you start, I will probably suggest Arduino BSP instead of RUI3 since it has lots of compatibility with the Arduino ecosystem. The only disadvantage is that you cannot use RUI3 APIs, WisToolBox, etc. But for re-learning C, that should be enough.

If RAK3172, then RUI3 is your only option.

thanks Carl, I’m using RAK4631.
and WisBlock-API-V2 does not simplify things at all?

WisBlock API V2 is an attempt to give a “framework” to Arduino that already includes LoRa/LoRaWAN communication and BLE communication. In addition it adds an AT command interface that is (mostly) RUI3 compatible.

The WisBlock API V2 is an approach to create low-power applications by making the application event driven rather than running endless in the loop and waiting for events and wasting battery capacity.
It depends on timer and external interrupt events instead.

But it is a little bit more complicated to use, as it does not give you access to the usual setup() and loop() functions. Instead it does the initialization of the communication and gives you new functions to do application specific setups and handlers for different events.

AND it is not an official RAKwireless provided library. It is something I wrote in my free time for my own tests and applications I am writing for WisBlock