MAV> link 1 down

Hi, i’ve been trying to connect a pixhawk cube black to a RPI4B . i did all the steps on mavling documentation already 3 times as i am really fresh on raspberry .
changed the serial port as said, added the line droverlay=disable-bt on boot config. after the MAV> link 1 down i can switch flighht modes but have no return. rebuilt the cable 2 times already…
Any sollutions?

trac@raspberrypi:~ $ mavproxy.py --master=/dev/ttyAMA0
WARNING: You should uninstall ModemManager as it conflicts with APM and Pixhawk
Connect /dev/ttyAMA0 source_system=255
Log Directory:
Telemetry log: mav.tlog
Waiting for heartbeat from /dev/ttyAMA0
MAV> link 1 down
MANUAL

Cheers

EDIT
i “purged” modemmanager as shown on the message above. now;
Connect /dev/serial0 source_system=255
Log Directory:
Telemetry log: mav.tlog
Waiting for heartbeat from /dev/serial0
MAV> link 1 down

Hi there, have you been able to solve the problem? Because I am having the same problem.

hi there. yes, i think i damaged the uart port on the raspberry pi so i changed the connection to usb.
simply connect the 2 usbs’s ans switch the ttyAMA0 to ttyUSB0( i am not sure of this port, but you can get the list of tty’s forget about the tty(nr) and try the ones that are not numbers… if i have time tomorrow i will connect the system to my pc again and sort it out.

Hi Gang, Im new here.

After days of pulling my remaining hair out, I was able to solve this issue for me.

Steps to resolve (in my case)

  • Edit file (sudo nano) “/boot/config.txt”. Here my entries.

  • enable_uart=1 → Enable the UART port

  • init_uart_baud=115200 → This is the baud rate I use (I use same Baudrate on Reiceiver, RPi4 and Pixhawk6c)

  • dtoverlay=disable-bt → disable Bluetooth

  • dtoverlay=gpio-shutdown → Config for “pi-connect” hat (ignore)

  • dtoverlay=gpio-poweroff → Config for “pi-connect” hat (ignore)

  • **dtoverlay=pi3-miniuart-bt → IMPORTANT: The dtoverlay=pi3-miniuart-bt ** line configures the serial port to use serial0 .

Testing
Now I call “sudo python3 mavproxy.py --master=/dev/serial0 --baudrate=115200” and am getting the heartbeat and the connection is established.

Root cause
Not sure what caused it. I did notice that “dmesg | grep serial” showed me that there is some kind of issue with the serial port configuration:

[ 1.539560] uart-pl011 fe201000.serial: there is not valid maps for state default
[ 1.540262] uart-pl011 fe201000.serial: cts_event_workaround enabled
[ 1.540416] fe201000.serial: ttyAMA0 at MMIO 0xfe201000 (irq = 36, base_baud = 0) is a PL011 rev2
[ 742.759363] uart-pl011 fe201000.serial: no DMA platform data

Therefore I decided to force feed the serial communication by adding the dtoverly miniuart config into the boot config file.

Error message was

  • Connect /dev/serial1 source_system=255
    Log Directory:
    Telemetry log: mav.tlog
    Waiting for heartbeat from /dev/serial0
    MAV> link 1 down
1 Like