Hello, I have a task to continuously transmit LTC timecode from one transmitter to two receivers. Distance up to 30 meters.
The maximum frame rate is 30, the packet is 80 bits. So I need a speed of at least 2400 bits per second.
Can you please advise me what I should choose for transmission? HC-12 433Mhz modules, or NRF24 or LoRa? Perhaps there are some other solutions?
I moved your topic to an appropriate forum category @jeremyatm.
In the future, please take some time to pick the forum category that best suits the subject of your topic. There is an "About the _____ category" topic at the top of each category that explains its purpose.
Simple is good. So Wi-Fi or BLE. With BLE you can put the data in the advertising packet so a connection isn't needed. An ESP32 will have all this built in so it can be done with a single module.
The Nordic nRF devices can also do this, but I don't know how good the Arduino support is.
I guess Bluetooth would be the most convenient for me, but of the available modules for Arduino, I haven't found a way to have both SLAVE modules connect to MASTER and receive a signal at the same time.
So I'm going to try the 433 and NRF24 modules for a test transmission. LoRa modules are great, but apparently they are not designed for this.
For the 30m distance your unlikley to need the very long distance capability of LoRa modules, however to say they are 'not designed for this' is not accurate.
LoRa modules are designed to provide most all of what modules such as NRF24, HC12 can do in terms of data handling capabilty and speed, but they also have the capabilty to operate over very much greater distances.
you mention a distance of 30 metres - what is the environment? e.g. walls, trees, etc in the way?
consider ESP32 modules which have onboard WiFi, Bluetooth Classic and BLE
given good external antennas WiFi communication over 30mtres would be possible depending on environment
Aa has been mentioned the environement and location makes a very big differrence.
If the 30m is in a building with very thick or metal lines walls you wont get anwhere near as far if the location is outside at a flat field free of trees and vegitation.
For transmitting LTC timecode up to 30 meters at a minimum speed of 2400 bits per second, LoRa modules are a strong choice due to their longer range and low power consumption. HC-12 and NRF24 modules are alternatives but may have limitations in terms of range and interference. However, LoRa modules may be slightly more expensive but offer reliable performance for your specific requirements. Consider factors like frequency, power, and ease of integration before making your final decision.
consider the TTGO LoRa32 SX1276 OLED which has ESP32 (with onboard WiFi, Bluetooth Classic and BLE), a LoRa module and an OLED - gives you a wide range of communication options
I tried the HC-12, data is transferred, but since it works over Serial (RX, TX) these methods are very slow. For example, if I try to send every bit of 80, everything just hangs. If a series of 80 bits (let's say 25 times per second), my oscillator gets slow. Maybe this is because the methods are in ISR interrupt.
At this point I don't know what to do yet, it turns out that if Serial is slow, then WiFi modules on ESP are also out.
Or I will have to send data once a second, and the receiver will calculate everything again by timer, but I would like to receive data immediately.
I've also tried port manipulation
16 pin of Arduino Mega (which is Serial2, TX)
PORTH &= ~_BV(PH1);
PORTH |= _BV(PH1);
But the signal does not go away in this case.
I don't know what RadioHead's maximum speed is, but I have a project here that transmitted data over VirtualWire, Radiohead's predecessor, at 1000 bits/second using a 433MHz module. Haven't used it in years, but it was trouble free. I'm sure that you can get far higher speeds.
I did it through HC-12.
For this purpose I configured AT modules with commands for 115200.
There was a problem with delay due to Serial, interrupt counter did not work. But I found out that Serial is asynchronous if the parcel is less than 64 bits. I reduced the parcel (~53bit), Serial does not affect the work, data is transmitted as needed.
Thank you!