From Waveshare Wiki
Revision as of 15:15, 31 August 2023 by Waveshare-admin (talk | contribs) (Text replacement - "https://www.waveshare.com/w/upload/" to "https://files.waveshare.com/upload/")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

2-Channel RS485 Module for Raspberry Pi Pico, SP3485 Transceiver, UART To RS485





This is a 2-Channel RS485 module for Raspberry Pi Pico, SP3485 transceiver, UART To RS485.


  • Standard Raspberry Pi Pico header supports Raspberry Pi Pico series.
  • Dual-channel design, each channel leads to two interfaces, which is convenient for users to choose from.
  • On-board TVS (transient voltage suppression tube), RS485 communication can effectively suppress the surge voltage and transient peak voltage in the circuit, lightning protection, and anti-static.
  • Provide online resources and manuals (example demos such as Raspberry Pi Pico C/C++ and MicroPython).


  • Operating voltage: 3.3V
  • Communication bus: UART
  • RS485 transceiver: SP3485
  • Baudrate: 300~500000bps
  • Dimension: 52.5mm × 21mm



Hardware connection

When connecting PICO, please pay attention not to connect in the opposite direction. The direction can be judged by observing the USB screen printing end of the module and the USB interface of the Pico (also can be judged by the pin label of the platoon master on the module and the pin label of the Pico).
You can also wire it according to the table below:

RS485 Pico Description
VCC VSYS Power input
GND GND Ground
TX_CH0 GP0 UART transmit pin
RX_CH0 GP1 UART receive pin
TX_CH1 GP4 UART transmit pin
RX_CH1 GP5 UART receive pin


The connection of the RS485 board is same as the Pico-2CH-RS232.

Setup environment

To setup the Pico for working, please refer to the official guide: https://www.raspberrypi.org/documentation/pico/getting-started/

Download example

Open a terminal and run the following command:

sudo apt-get install p7zip-full
cd ~
sudo wget  https://files.waveshare.com/upload/9/94/Pico_2CH_RS485.7z
7z x Pico_2CH_RS485.7z -o./Pico_2CH_RS485
cd ~/Pico_2CH_RS485
cd c/build/

Run the examples

C codes

  • Go to the example directory and build it.
cd ~/Pico_2CH_RS485/c/

Create the build folder and add the SDK path to it:
By default, the ../../pico-sdk is the path of SDK.
We have created the build folder in examples, you can just enter it.
Note: If the actual path of your Pi is different, you need to write the correct path.

cd build
export PICO_SDK_PATH=../../pico-sdk

Run the cmake to generate the Makefile file:

cmake ..

Run the make command to build the codes and generate an executable file.

make -j9

After building, an uf2 file is generated. Press and hold the key on the Pico board to connect the Pico to the Raspberry Pi's USB port via the Micro USB cable, then release the key. Once connected, Raspberry will automatically recognize a removable disk (RPI-RP2). Copy the file main.uf2 in the corresponding folder to the recognized removable disk (RPI-RP2).

cp main.uf2 /media/pi/RPI-RP2/

Python codes

Use in Windows

  • 1. Press and hold the BOOTSET button on the Pico board, connect the pico to the USB port of the computer through the Micro USB cable, and release the button after the computer recognizes a removable hard disk (RPI-RP2).
  • 2. Copy the rp2-pico-20210418-v1.15.uf2 file in the python directory to the recognized removable disk (RPI-RP2).
  • 3. Open Thonny IDE (Note: Use the latest version of Thonny, otherwise there is no Pico support package, the latest version under Windows is v3.3.3).
  • 4. Click Tools->Settings->Interpreter, select Pico and the corresponding port as shown in the figure.


  • 5. File -> Open -> the corresponding .py file, click to run, as shown in the following figure:

This demo provides a simple program...

Run in Raspberry Pi

  • Hold the BOOTSET key of the Pico board, then connect the Pico to Raspberry Pi by USB cable, then release the key.
  • Once the removable disk (RPI-RPI2) is recognized, copy the rp2-pico-20210418-v1.15.uf2 file to pico.
  • Open the Thonny IDE in Raspberry Pi, and update it if it doesn't support Pico.
  • Configure the port by choosing MicroPython (Raspberry Pi and ttyACM0 port) in Tools -> Options... -> Interpreter.

If your Thonny doesn't support Pico, you can update it with the following command:

sudo apt upgrade thonny
  • Choose File -> Open... -> python/ and select the corresponding .py file to run the codes.

Test Demo Function

It can achieve self-receiving and sending functions.



Demo Codes

Development Software

Pico Quick Start

Download Firmware

  • MicroPython Firmware Download

MicroPython Firmware Download.gif

  • C_Blink Firmware Download

C Blink Download.gif

Video Tutorial

  • Pico Tutorial I - Basic Introduction

  • Pico Tutorial II - GPIO

  • Pico Tutorial III - PWM

  • Pico Tutorial IV - ADC

  • Pico Tutorial V - UART

  • Pico Tutorial VI - To be continued...

MicroPython Series

C/C++ Series

Arduino IDE Series

Install Arduino IDE

  1. Download the Arduino IDE installation package from Arduino website.
    RoArm-M1 Tutorial II01.jpg
  2. Just click on "JUST DOWNLOAD".
    Arduino IDE Pico.png
  3. Click to install after downloading.
    RoArm-M1 Tutorial II02.gif
  4. Note: You will be prompted to install the driver during the installation process, we can click Install.

Install Arduino-Pico Core on Arduino IDE

  1. Open Arduino IDE, click the File on the left corner and choose "Preferences".
    RoArm-M1 Tutorial04.jpg
  2. Add the following link in the additional development board manager URL, then click OK.

    RoArm-M1 Tutorial II05.jpg
    Note: If you already have the ESP8266 board URL, you can separate the URLs with commas like this:

  3. Click on Tools -> Dev Board -> Dev Board Manager -> Search for pico, it shows installed since my computer has already installed it.
    Pico Get Start 05.png
    Pico Get Start 06.png

Upload Demo At the First Time

  1. Press and hold the BOOTSET button on the Pico board, connect the Pico to the USB port of the computer via the Micro USB cable, and release the button when the computer recognizes a removable hard drive (RPI-RP2).
    Pico Get Start.gif
  2. Download the demo, open arduino\PWM\D1-LED path under the D1-LED.ino.
  3. Click Tools -> Port, remember the existing COM, do not need to click this COM (different computers show different COM, remember the existing COM on your computer).
    UGV1 doenload02EN.png
  4. Connect the driver board to the computer with a USB cable, then click Tools -> Ports, select uf2 Board for the first connection, and after the upload is complete, connecting again will result in an additional COM port.
    UGV1 doenload03EN.png
  5. Click Tool -> Dev Board -> Raspberry Pi Pico/RP2040 -> Raspberry Pi Pico.
    Pico Get Start02.png
  6. After setting, click the right arrow to upload.
    Pico Get Start03.png
    • If you encounter problems during the period, you need to reinstall or replace the Arduino IDE version, uninstall the Arduino IDE needs to be uninstalled cleanly, after uninstalling the software you need to manually delete all the contents of the folder C:\Users\[name]\AppData\Local\Arduino15 (you need to show the hidden files in order to see it) and then reinstall.

Open Source Demo


Technical Support

If you need technical support or have any feedback/review, please click the Submit Now button to submit a ticket, Our support team will check and reply to you within 1 to 2 working days. Please be patient as we make every effort to help you to resolve the issue.
Working Time: 9 AM - 6 AM GMT+8 (Monday to Friday)