<p>There are a bunch of problems which need to be overcome when using the RPi GPIO serial port.</p>

<ol>
<li>The RPi normally runs a login process on the serial port, this will need to be disabled.</li>
</ol>

<pre><code>sudo systemctl stop serial-getty@ttyS0.service
sudo systemctl disable serial-getty@ttyS0.service
</code></pre>

<p>you will also need to edit <code>/boot/cmdline.txt</code> and remove this part: <code>console=serial0,115200</code></p>

<ol start="2">
<li><p>On a RPi 3/4 the port name in linux if different to the port name used on older RPi's.</p></li>
<li><p>If using a recent image, the serial port is disabled in the config.txt by default. To fix this you need to edit <code>/boot/config.txt</code> and add the following line.</p></li>
</ol>

<pre><code>enable_uart=1
</code></pre>

<p>This page <a href="https://spellfoundry.com/2016/05/29/configuring-gpio-serial-port-raspbian-jessie-including-pi-3-4/" rel="nofollow noreferrer">Configuring The GPIO Serial Port On Raspbian Jessie and Stretch Including Pi 3 and 4</a> has a very good writeup on how to get it all working.</p>

<p>Also make sure that you are connecting RX on the RPi to TX on the APM and vice-versa.</p>

CC BY-SA 4.0
2020-05-28T22:15:30.390Z
On recent images, there is the potentially easier option to use ```sudo raspo-config``` -> ```5 Interfacing Options``` -> ```P6 Serial``` -> "Would you like a login shell to be accessible over serial?" ```No``` then exit and reboot.
Kralc
CC BY-SA 4.0
2020-05-28T21:59:17.033Z
2020-05-28T21:59:17.033Z
Paul Kendall
<p>I have being trying to establish <em>Serial Communication</em> connection between <strong>APM 2.8</strong> and <strong>Raspberry Pi</strong> Board. But the connection is not being recognized in the Raspberry Terminal Console. 
<a href="https://i.sstatic.net/qASgb.jpg" rel="nofollow noreferrer"><img src="https://i.sstatic.net/qASgb.jpg" alt="enter image description here"></a>
<strong>Configuration Setup</strong>:</p>

<p><em>Model</em>: Quad-copter</p>

<p><em>Type</em>: X</p>

<p><em>Flight Controller</em>: APM 2.8 FC</p>

<p><em>Companion Computer</em>: Raspberry Pi 3 Model B+</p>

<p>I have being digging through <a href="https://web.archive.org/web/20150310022621/http://dev.ardupilot.com/wiki/companion-computers/raspberry-pi-via-mavlink/" rel="nofollow noreferrer">web archives</a> and found only MAVProxy Connection with Pixhawk &amp; Raspi. Any help, advice, or guidance would be helpful.  </p>

<p>Current Refereed:<a href="https://www.ryugakujapan.com/blog/quadcopter-up-and-flying" rel="nofollow noreferrer">Here</a> </p>

<quadcopters><flight-controller><electronics><ardupilot>
Serial Communication Not working in APM 2.8
hitesh_a_h
# Serial Communication Not working in APM 2.8

(Asked by: username_0 on 2020-05-28)

I have being trying to establish *Serial Communication* connection between **APM 2.8** and **Raspberry Pi** Board. But the connection is not being recognized in the Raspberry Terminal Console.
[![enter image description here](https://i.sstatic.net/qASgb.jpg)](https://i.sstatic.net/qASgb.jpg)
**Configuration Setup**:

*Model*: Quad-copter

*Type*: X

*Flight Controller*: APM 2.8 FC

*Companion Computer*: Raspberry Pi 3 Model B+

I have being digging through [web archives](https://web.archive.org/web/20150310022621/http://dev.ardupilot.com/wiki/companion-computers/raspberry-pi-via-mavlink/) and found only MAVProxy Connection with Pixhawk & Raspi. Any help, advice, or guidance would be helpful.

Current Refereed:[Here](https://www.ryugakujapan.com/blog/quadcopter-up-and-flying)

**Tags:** quadcopters, flight-controller, electronics, ardupilot


---

## 1 answers

### Answer by username_1 on 2020-05-28. Score: 2

There are a bunch of problems which need to be overcome when using the RPi GPIO serial port.

1. The RPi normally runs a login process on the serial port, this will need to be disabled.

```
sudo systemctl stop serial-getty@ttyS0.service
sudo systemctl disable serial-getty@ttyS0.service

```

you will also need to edit `/boot/cmdline.txt` and remove this part: `console=serial0,115200`

2. On a RPi 3/4 the port name in linux if different to the port name used on older RPi's.
3. If using a recent image, the serial port is disabled in the config.txt by default. To fix this you need to edit `/boot/config.txt` and add the following line.

```
enable_uart=1

```

This page [Configuring The GPIO Serial Port On Raspbian Jessie and Stretch Including Pi 3 and 4](https://spellfoundry.com/2016/05/29/configuring-gpio-serial-port-raspbian-jessie-including-pi-3-4/) has a very good writeup on how to get it all working.

Also make sure that you are connecting RX on the RPi to TX on the APM and vice-versa.

> **Comments:**
> **username_2**: On recent images, there is the potentially easier option to use ```sudo raspo-config``` -> ```5 Interfacing Options``` -> ```P6 Serial``` -> "Would you like a login shell to be accessible over serial?" ```No``` then exit and reboot.  

---

