Data transfer between Arduinos using SoftModem

Hi,

Im trying to achieve a one way communication using two arduinos connected to 1.3gHz audio radio system.

I'm using the softModem library from arms22 with his example code:

Currently the data is being sent without a problem. I can see the bits in the scope and i can hear the modulated sound when i hook up a 3w mini amplifier to the 1.3gHz receiver.

The problem is on the other end the receiving arduino cannot pick up the data when i connect it to the receiver directly.

Thinking it might need an amplification i've used the same 3w amplifier and connect the output to the digital in which resulted in a burnt mega328

Is there any other solution to amplfy the signal without burning the receiving arduino?

Thanks.

Did you build and use the input/output circuits on the relevant arduinos? If you can see the received data on a scope then what voltage level is it as a mega328 pin can only handle positive voltages up to the VCC voltage. Anything above this will probably knacker your MCU as you have found.

Riva:
Did you build and use the input/output circuits on the relevant arduinos? If you can see the received data on a scope then what voltage level is it as a mega328 pin can only handle positive voltages up to the VCC voltage. Anything above this will probably knacker your MCU as you have found.

Yes. I’ve used and check them if they are working as intended. Maybe i should change the baudrate.

Aerovisual:
Yes. I've used and check them if they are working as intended. Maybe i should change the baudrate.

You could try lower baud rates as defined in the SoftModem.h file but before doing that you need to ensure with the scope the voltage levels on the receiver (after the bias circuit) are between 0-5 volts so as not to destroy another MCU.
Are you also using the correct Arduino input pins and have you got the comparator level adjust circuit that seems to be needed on the receiver?

EDIT: Added link

Riva:
have you got the comparator level adjust circuit that seems to be needed on the receiver?

I just saw this schematic which wasn’t in the library page. After finding arm22’s blog and google translating it i found this:

R6 is adjusted to a voltage lowered from VCC / 2 around 250mV

Which got me confused. Isn’t the Vcc 5/3.3 volts? Anyways I guess i’ll just adjust the pot until the voltage drops to 250mV and feed it to the pin 7.

Aerovisual:
I just saw this schematic which wasn't in the library page. After finding arm22's blog and google translating it i found this:

R6 is adjusted to a voltage lowered from VCC / 2 around 250mV

Which got me confused. Isn't the Vcc 5/3.3 volts? Anyways I guess i'll just adjust the pot until the voltage drops to 250mV and feed it to the pin 7.

It would seem the normal peak output level (without amplifier) from the receiver is about 0.5 volts so setting the pot to that value / 2 is about 250mV.
The software is using the pot value as a comparator threshold so a voltage higher than this on pin 6 will trigger an interrupt.

This is a bit weird. I've removed the ground connection from the receiving Arduino (kept the 5V to the bias circuit) and now everything is working as intended.

Could it be a ground loop problem?

Had you attached the ground from the soft modem to the Arduino ground as they should be connected.

Riva:
Had you attached the ground from the soft modem to the Arduino ground as they should be connected.

Hi Riva, sorry about the late reply. Got some other projects came up and had to put this one on hold.

What does "attaching the ground from soft modem to the arduino ground" mean?

The softmodem pins for rx and comparator are connected to the bias circuit as instructed. The 5v pin of the arduino is connected to the Vcc of the bias circuit. I had to leave out the Arduino's GND otherwise it was creating a lot of noise and the receiver wasn't working.

Now it seems everything's fine.