RadioHead-1.122.1 and Arduino Nano33 BLE

Hello.
I have got this compile error message while try to run example from RadioHead-1.122.1/examples/ask/ask_receiver.pde for Arduino Nano33 BLE.

C:\Users\user\Documents\Arduino\libraries\RadioHead\RHHardwareSPI.cpp: In member function 'virtual void RHHardwareSPI::begin()':
C:\Users\user\Documents\Arduino\libraries\RadioHead\RHHardwareSPI.cpp:137:57: error: invalid conversion from 'uint8_t {aka unsigned char}' to 'BitOrder' [-fpermissive]
_settings = SPISettings(frequency, bitOrder, dataMode);
^
In file included from C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\mbed_nano\4.1.1\libraries\SPI/SPI.h:22:0,
from C:\Users\user\Documents\Arduino\libraries\RadioHead/RadioHead.h:1517,
from C:\Users\user\Documents\Arduino\libraries\RadioHead/RHGenericSPI.h:10,
from C:\Users\user\Documents\Arduino\libraries\RadioHead/RHHardwareSPI.h:10,
from C:\Users\user\Documents\Arduino\libraries\RadioHead\RHHardwareSPI.cpp:7:
C:\Users\user\AppData\Local\Arduino15\packages\arduino\hardware\mbed_nano\4.1.1\cores\arduino/api/HardwareSPI.h:47:3: note: initializing argument 2 of 'arduino::SPISettings::SPISettings(uint32_t, BitOrder, int)'
SPISettings(uint32_t clock, BitOrder bitOrder, int dataMode) {
^~~~~~~~~~~

exit status 1

Compilation error: exit status 1

How to solve the problem?

Since that library is over 5 years old, it predates the Nano33 BLE so I doubt the authors support that board.

Is it even possible for a BLE radio to use ASK transmission?

If you explain what you actually want to do, forum members can make suggestions.

Hello. Thank you for reply. I need to send 4byte messages from Arduino Uno with transmitter STX882 to Arduino Nano33BLE with receiver SRX882.
All examples for this transmitter/receiver are with Arduino Uno or Nano with RCSwitch or Radiohead libraries but they are not suitable for Arduino Nano33 BLE (with Mbed OS). Do you know any solution?

I need to send 4byte messages from Arduino Uno with transmitter STX882

That is not possible. BLE and ASK (STX882) are totally different protocols, and the STX882 uses the wrong frequency band.

Use the BLE library for the Nano33 BLE to send messages. Start by studying the built in examples in the Arduino IDE, and/or tutorials you find on line.

You might find this discussion useful: Communication between TWO Arduino nano 33 ble sense

Thank you for your reply. The goal is Make the Radio Connection On 433MHz between Arduino Uno with RC transmitter and Arduino Nano33BLE with RC receiver.
image

You are not going to get the Radio Head or Virtual Wire ASK libraries to work with the Nano 33 BLE.

You might be better off to use HC12 modules which have a very simple serial protocol.

Alternatively, you can get a BLE module for the Uno, and communicate with BLE protocols between the Uno module and the Nano 33.

Hello. Thank you for reply.
What are the problems with STX882 and SRX882? As I see in Internet they work properly with Arduino Uno.
Do you work with HC12 and Arduino Nano33 (or any other Arduino board with Mbed OS)?

To use these devices without significant low level coding, most people use a library like Radio Head, Virtual Wire, or RC Switch. These libraries use a hardware timer to generate and decode rf data streams. None of the libraries are configured to used the hardware timers of the Nano33BLE.

Do you work with HC12 and Arduino Nano33 (or any other Arduino board with Mbed OS)?

The HC12 has a serial interface with the Arduino. The Nano33BLE has additional hardware serial ports as well as the usb port. Serial1 is independent from usb, and is on pins 0 and 1. It should work fine for communication with and HC12.

In relation to BLE, that is explained in post #5.

Thank you.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.