Arduino Pro Mini 3.3v Lora Ra-02 SX1278 able to transmit but not receive?

Hi, I'm kinda new with this Arduino Pro Mini 3.3v and LoRa Ra-02 SX1278. I'm trying to do simple send and receive with this combination. I've been reading some post related to this on the forum, but i'm not sure i encountered a post related the problem i got.

The LoRa Ra-02 SX1278 frequency, I used is 433mhz

The Library i used is created by Sandeep Mistry GitHub - sandeepmistry/arduino-LoRa: An Arduino library for sending and receiving data using LoRa radios. · GitHub

Here's the code i used:

Transmitter

#include <SPI.h>
#include <LoRa.h>


const int csPin = 10;          // LoRa NSS
const int resetPin = 9;        // LoRa RST
const int irqPin = 2;          // LoRa DIO0

int counter = 0;

void setup() {
  Serial.begin(9600);
  while (!Serial);

  Serial.println("LoRa Sender");

  
  LoRa.setPins(csPin, resetPin, irqPin);

  
  if (!LoRa.begin(433E6)) {
    Serial.println("Starting LoRa failed!");
    while (1);
  }

  
  LoRa.setTxPower(20); 
}

void loop() {
  Serial.print("Sending packet: ");
  Serial.println(counter);


  LoRa.beginPacket();
  LoRa.print("hello ");
  LoRa.print(counter);
  LoRa.endPacket();

  counter++;
  delay(5000);
}

Receiver:

#include <SPI.h>
#include <LoRa.h>


const int csPin = 10;          // LoRa NSS
const int resetPin = 9;        // LoRa RST
const int irqPin = 2;          // LoRa DIO0

void setup() {
  Serial.begin(9600);
  while (!Serial);

  Serial.println("LoRa Receiver");

  
  LoRa.setPins(csPin, resetPin, irqPin);

  if (!LoRa.begin(433E6)) {
    Serial.println("Starting LoRa failed!");
    while (1);
  }
}

void loop() {
  int packetSize = LoRa.parsePacket();
  if (packetSize) {
    Serial.print("Received packet '");

    
    while (LoRa.available()) {
      Serial.print((char)LoRa.read());
    }

    
    Serial.print("' with RSSI ");
    Serial.println(LoRa.packetRssi());
  }
}

Here is the Pin i followed for the Transmitter & Receiver :

LoRa Ra-02 Pro Mini 3.3V
VCC VCC / 3.3V
GND GND
SCK D13
MISO D12
MOSI D11
NSS/CS D10
RST D9
DIO0 D2

Here is what it looks like the component, wiring & other stuff :

and here is the result in my serial monitor :

I don't know why the LoRa Ra-02 SX1278 won't act as a receiver. My first thought was that the LoRa act as a Receiver got broke, but when i try uploading the transmitter code it still function to transmit like the pic above, so i guess both of my LoRa didn't broken after all.

Both of my Arduino Pro Mini is 3.3v, so it should be fine to connect to LoRa Ra-02 SX1278.

Both of my LoRa Ra-02 SX1278 is connected with the 433mhz antenna, so it should be safe.

Now i'm confused where the problem is

Is anyone have any experience like this? where did i go wrong about my setup?

Please enlighten me :folded_hands:

Confirm you are in Asia.

Please read the pinned post re 'How to get the most from the forum'. Keep an eye out for posting hand drawn wire diagrams, not photos of screens but screen grabs. CONGRATS you posted the code in code tags correctly and it is even well formatted other than some unneeded vertical white space. Blank lines carry no information.

Put print-statements around "LoRa receiver" to see where it stops working.

Also, read all the FAQs and warnings in the library you linked. Power supply current, voltage, frequency, level converters... Please, do not just write "yep, checked them all." Verify by reading the warnings and writing their values.

Have you some form of receiver that tells you the boards are actually transmitting ?

Fair enough that the software thinks transmission has completed but you need to know if there is actually RF coming out of the antenna.

What happens if you use boards that are only meant for North America instead of Asia?

your GPIO usage and code looks OK
when I tested RFM95 LoRa modules on Pro Minis running similar test code I have the following note

// NOTE: RFM95 requires external 3.3V supply
// Pro Mini 3.3V output insufficient for transmitter OK for receiver

test results

Pro Mini RFM95 LoRa Sender
Sending packet: 0
Sending packet: 1
Sending packet: 2
Sending packet: 3
Sending packet: 4
Sending packet: 5


Pro Mini LoRa Receiver
Received packet 'hello 0' with RSSI -50
Received packet 'hello 1' with RSSI -50
Received packet 'hello 2' with RSSI -53
Received packet 'hello 3' with RSSI -53
Received packet 'hello 4' with RSSI -53
Received packet 'hello 5' with RSSI -53
Received packet 'hello 6' with RSSI -53
Received packet 'hello 7' with RSSI -53
Received packet 'hello 8' with RSSI -50

Try ;

LoRa.setTxPower(2);

I have seen circumstances where if you set for maximum TX power the LoRa device can fail to transmit properly if the power supply is not able to supply the high current needed for a full 20dBm transmit.

May i perhaps see your code, to test if it will result the same as yours?

Did you try;

LoRa.setTxPower(2);

The library examples LoRaSender and LoRaReceiver are known to be good working examples.

Here is the result with

Lora.setTxPower(2); 

i also use the library examples LoRaSender & LoRaReceiver

So does that mean, the VCC in my Pro Mini 3.3V is just enough to power digital input from Pro Mini to LoRa Ra-02 SX1278. But not enough to really transmit through the antenna?

Is that why, my Serial Monitor in Arduino IDE LoRaTransmitter could print the Sending packet, but in reality there wasn't enough power to transmit to antenna and thats why the LoRaReceiver didn't receive anything?

I have a pair of LORA radios working just fine. I suspect your issue is more likely the antenna design not the power. Did they come with antennas, or did you make them?

Its not quite true.

Its possible the Pro Mini 3.3V regulator will have trouble providing the current for a full power 20dBm transmit, but 10dBm and lower does not appear to be a problem.

A good point, would be nice to see a good close up picture of both of the antennas.

Upload an in focus picture of this portion of your circuitry, please.

Your receiver looks like it is rebooting, by the repeated LoRa Receiver (from setup()) output of the receiver sketch.

I agree with @srnet and @sonofcy about the antenna
you have a problem with power and also with the power source. This should help:
There are Power Stability Issues with RF24 Radio Modules

As described in the RF24 Common Issues Guide, radio modules, especially the PA+LNA versions, are highly dependent on a stable power source. The 3.3V output from an Arduino is often not stable enough for these modules in many applications. While they may appear to work with an inadequate power supply, you may experience lost packets or reduced reception compared to modules powered from a more stable source. The Nano/UNO 5V rail can also be a problem, as it may not supply enough current during transmit.

Symptoms of Power Issues:

Radio module performance may improve when touched, indicating power stability problems.

These issues are often caused by the absence of a local capacitor, a common cost-saving omission by some manufacturers.

Temporary Patch:

Add capacitors close to the VCC and GND pins of the radio module. A 10 uF capacitor is usually sufficient, but the exact value can depend on your circuit layout.

Use low ESR capacitors. Capacitors with low Equivalent Series Resistance (ESR) provide better power stability and improved performance.

Be sure the transmitter and receiver are at least one meter apart. More distance is better during testing.

Reference:

During TX (3.3V supply), worst case current depends on which module you have:

  1. Plain nRF24L01+ module (no PA/LNA, small PCB antenna)

TX current at 0 dBm (max power): typically about 11 to 12 mA.
Lower power levels are less, roughly 7 to 9 mA depending on setting.

Rule of thumb: budget at least 15 mA for the radio itself.

  1. nRF24L01+ PA+LNA long-range module (with external power amplifier, often SMA antenna)

TX current at max PA level: typically about 115 to 130 mA.
Current peaks can be higher. A safe design budget is 150 to 200 mA available at 3.3V.

Power notes:

Place local decoupling capacitors at the module: 0.1 uF ceramic plus 10 to 47 uF electrolytic or tantalum directly at VCC and GND.

For PA+LNA modules, do not rely on a weak 3.3V pin. Use a proper 3.3V regulator with adequate current capacity.

Using appropriate capacitors can greatly improve the reliability of your RF24 module by ensuring a stable power supply, minimizing packet loss, and improving overall performance. A separate regulated power supply for the radios is often the best long-term solution.

No, i bought the antenna separately, they didn't come with the antenna.

its much like this one :

This antenna?

Is this good enough for you to see?