HOW-TO BlueDV for DVMega on a Raspberry Pi

NOTE: The following is based on a single band RPi shield – it should work with the dual band RPi shield too.  For the Arduino UNO based DVMega, substitute /dev/ttyAMA0 with /dev/ttyACM0.  Also note you should not need to remove getty processes and bootup info from /dev/TTYACM0 as it doesn’t go to them.

FURTHER NOTE: There are slight differences in the processes to remove getty processes between Raspbian Wheezy and Raspbian Jessie – they are annotated along the way.

YET ANOTHER NOTE: You need to disable the built-in bluetooth on a Raspberry Pi 3 to restore UART0/ttyAMA0 over GPIOs 14 & 15 by modifying /boot/config.txt – the process is towards the end just after disabling getty processes on /dev/ttyAMA0.

UPDATE: You can now update the firmware on your DVMega RPi shield directly from the RPi without removing the ATMEGA328 chip or the use of separate cables or Arduinos.  Instructions here.

AND ANOTHER UPDATE: The original BlueSpot app was renamed due to alleged copyright infringments over the name!  It is now called BlueDV.

Install the BlueSpot BlueDV app on your Android device.  (If Google Play Store says your device is incompatible, drop David, PA7LIM a note).

Install ser2net on your RPi …

sudo apt-get update
sudo apt-get install ser2net
sudo bash -c 'echo "2000:raw:600:/dev/ttyAMA0:115200 8DATABITS NONE 1STOPBIT" >> /etc/ser2net.conf'

Remove the getty process from /dev/ttyAMA0 (Caution: the process is different for Raspbian Wheezy and Raspbian Jessie!)

In Raspbian Wheezy…

nano /etc/inittab

Look for the line that spawns a getty on /dev/ttyAMA0 and comment it out (# at the start of the line).

In Raspbian Jessie…

Stop the getty spawning on /dev/ttyAMA0…

sudo systemctl stop serial-getty@ttyAMA0.service

Prevent it from starting on boot…

sudo systemctl disable serial-getty@ttyAMA0.service

On both Wheezy and Jessie …

Remove the bootup info from /dev/ttyAMA0 by editing /boot/cmdline.txt and removing references to /dev/ttyAMA0 or serial0…

nano /boot/cmdline.txt

On the Raspberry Pi 3 ONLY, disable built-in Bluetooth…

sudo bash -c 'echo "dtoverlay=pi3-disable-bt" >> /boot/config.txt'

Reboot the Rpi…

sudo reboot

Start BlueSpot BlueDV on the Android device, tap setup and configure to your personal settings, then tap submit.  You are good to go!

2 thoughts on “HOW-TO BlueDV for DVMega on a Raspberry Pi

  1. Hi,
    Thanks for your tuturial. I have a comment. Every 10 minutes the ser2net connection will be reset when there is no activity on the port. Are your aware of this?
    “2000:raw:600:/dev/ttyAMA0:115200 8DATABITS NONE
    The 600 in the line above is the timeout timer of 600 seconds. If you change this to zero the timeout does not occur anymore
    Kind regards Rob, pa3eke


  2. I wasn’t, but thanks for the feedback. If there’s no activity between the modem and host in 10 minutes, I’d be surprised, but good spot all the same, I just regurgitated the original setup that was provided by David 2 years ago!


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s