Anyone tried Laird RM1XX modules?

Hi…as per my knowledge the RM186 can collect data from external sources by interfacing directly with a sensor over a UART, SPI or, I2C serial communication channel or over a wireless BLE connection if a sensor is physically connected to a BLE peripheral device.Data can also be gathered internally using the analog or digital IO pins.

How can I communicate from my PC/Laptop (win10) with an RM186 via BLE ?

-what software/hardware do I need ?
-is it possible to ‘upload’ smartbasic programs this way ?
-what is a ‘laird supplied’ adapter ? is that diffent then ‘normal’ BT adapters ?

this is from the ‘smartBASIC Extensions v1.0 - RM1xx’ documentation :

  • update

UwTerminalX v1.06 for Windows, Linux and Mac

News from Laird support regarding the virtual serial port:

I’m pretty sure this means smartBASIC uploads over bluetooth are not possible, however I’m following up with support to make sure.

3 Likes

deepsleep power consumption RM 186

uartclose()
rc = LORAMACSleepMode()
rc = SystemStateSet(0)

1 Like

Hello,

i have got a RM186 DevKit too. After sometime i found a way to send data to my raspberry pi single channel gateway with rfm95. I used the cmd.loramac.rm1xx.sb exmaple and apb. I can also see the incoming packets. But i don’t get any data from ttn. Does someone have an idea?

Jurkov

Hi Jurkov did you find the answer ?

Yes, it’s a bit strange. To send to a raspberry pi single channel gateway use channel 1 without ack (lora send Hello 1 0). I needed to switch the two keys for ABP on RM186 to get it working. Could there be a bug @BWhitten?

1 Like
1 Like

I received a RM186 dev kit and i have been playing around with it for a couple of days now.

I wrote a simple BLE scanner + Lora program myself and tried it on the board, it seemed to run pretty well.
But once i tried to run the code in “autorun” mode, it seems to do not more than 1 or 2 Lora calls, and it goes quiet.

Here is version of jmarcelino program : http://pastebin.com/NGuCUi1v (just simplified HndlrAdvRpt)
I tried with this, same result.

If you can, can you let me know if you see the same result? on “Autorun” mode?

Hi @shagan,

That happens - as best I can understand - because the print statements open the UART and expect a connection (indicated by RTS/CTS flow control?) to something that can accept what your are print-ing

Once you unplug the board from the computer and set it to autorun the UART connection doesn’t exist, so the print statements start filling the small internal serial buffer up. When full everything stops until a UART is connected.

For autorun deployments I simply comment out the print statements. That works well for me with thousands of transmissions using that script you based yours on.

I think there is also a way to set print to go somewhere else other than UART (something like NULL work work great) but I’m not sure how.

Hope that helps.

I remove J5 (RTS->CTS) in “Autorun” mode to disable flow control.

1 Like

Good point.

Another solution is to disable flow control in smartBASIC by adding:

UartClose()
result = UartOpen(115200,0,0,“CN81N”)

to your startup code. That will keep it ticking nicely.

Thanks a ton guys! it worked!!!

All i need now is to glow a few 12V bulbs (R, G, B) based on Lora response.
I was thinking of using Arduino shield pins, but not sure about pin mappings.
Any examples are welcome!

regards
Shankar

I am unaware of a bug with personalisation keys…
Could you give some more detail about your setup, unfortunately I don’t have that gateway config to try it out.

Did someone maybe made a NOTEPAD ++ language file for LAIRD smartBasic, which includes the LoRa commands for the RM186 and would like to share this ?
I am struggling to get it right. :sunglasses:

Hi,
You temporarily get them from https://www.dropbox.com/s/30bf5c40qizi5a7/RM1xx_Notepad%2B%2B.zip?dl=0

tnx, but that’s not complete with LORA commands , its the one from the LAIRD site.
But I fixed it today myself
:innocent:

What functions are missing?

LORAMACSleepMode
LORAMACReset
LORAMACJoin
LORAMACLinkCheck
LORAMACTxData
LORAMACRxData
LORAMACGetOption
LORAMACSetOption

but I have it working now, only some fine tuning :wink: