Portenta H7 - Vision Shield - LoRa - point-to-point communication


I'm doing my own project a LoRa off-grid mesh communication with the Portenta Vision shield.

I want to carry out a proof of concept that consists of communicating two vision shields via LoRa directly, that is, without connect to a LoRa network like in the program example "LoRaReceiver" and "LoRaSender" found in the Arduino LoRa library.

These examples use the LoRa and SPI library to communicate with the radio chip, but unfortunately in the Portenta Vision Shield there is no access to the SPI pins on the Murata module.

Instead it connects directly through the serial port #3, using AT commands.

After doing some research, I discovered that the only library that supports the on-board Murata module is the MKRWAN library.

I have done tests with the "LoraSendAndReceive" example that comes with the library and I think it needs the module to be connected to a LoRa network to work, and it does not help me to directly connect two Portenta Vision Shields between them through LoRa.

Run a small test program by adapting the "LoRaSender" and "LoRaReceiver" examples using the MKRWAN's APIs and as far as I have been able to test the module gives an error of not accessing to the network, preventing me from sending any data packets.

There are basic functions inside the MKRWAN.h file that I don't know if it will help me to access the module directly, or if on the contrary it should use the AT commands of the Murata module firmware and create your own library.

I would like to know if anyone knows anything about this topic that they have used the communication part with LoRa of the vision shield and the MKRWAN library.

I would appreciate any indication or comment on this topic.


@Danny0xFF I put that exact request into the MKRWAN library a few days ago. Feature Request: Allow the MKRWAN library to send and receive very simple LoRa peer-to-peer commands · Issue #107 · arduino-libraries/MKRWAN · GitHub

What you want, can be done but it is very confusing and needs a linux computer you install a different board and directly manipulate the murata module using a github called grumpOldPizza. Hard to setup but once working is kind of fun. I agree that it would be best if the MKRWAN library could send LoRa.