I own an several Elegoo Nanos and a Raspberry Pi. I would like to connect an Elegoo Nano to the Pi and upload nanpy onto the board and control it's GPIO pins.

I have plugged the nano into the Pi and it is not recognised by the pi. I believe it is something to do with the drivers required for the nano to work. I feel this is similar to this post Arduino Nano not visible in Serial Ports (Mac OS) as I have tried and failed at connecting it to my Mac.

Any help at getting the Elegoo Nano read by the Arduino IDE on my Raspberry Pi so I can program onto it would be greatly appreciated.

  • Have you gone through the basic Linux troubleshooting steps?
    – Majenko
    Sep 10, 2018 at 11:06
  • Assuming you are familiar with the Linux OS: Try "lsusb" or "sudo lsusb" before and after you plug in the USB device. Note the difference and the user and manufacture ID values. Google them to see if you have an FTDI chip or something else. Also, see if the OS mounted your USB device in the device directory. Type "ls /dev/" before and after you plug in your USB device. Another thought, check the permissions and group of the new device entry if there is one. It's unlikely the RPi distro of Linux is setup incorrectly, but make sure you have permissions to read/write the device.
    – st2000
    Sep 10, 2018 at 12:23
  • BTW, a modern MAC is also a Unix (like) computer (the Linux OS on a RPi can be though of as a derivative of Unix). You can open a MAC console and type the same commands as you type into the RPi above. However, I'm not sure where the MAC's device directory (the "ls /dev" command above) is.
    – st2000
    Sep 10, 2018 at 12:28
  • I think you need to install the Nano USB driver first. Sep 11, 2018 at 1:51

1 Answer 1


The Elegoo website has a downloads page which contains the drivers.

  1. Using the Raspberry Pi, download the zip file containing the drivers.
  2. Unzip the contents to a location of your choice. (Also see here)
  3. Change to the directory containing the Linux driver source files (ie CH341SER_LINUX).
  4. In the terminal type make. Let it compile the driver.
  5. In the terminal type make load.


  • thanks for that link. I seem to have some problems installing the drivers. With the following stack trace pi@raspberrypi:~/Downloads/Elegoo CH340 Driver 2018.6.19/CH341SER_LINUX $ make make -C /lib/modules/4.14.30-v7+/build M=/home/pi/Downloads/Elegoo CH340 Driver 2018.6.19/CH341SER_LINUX make[1]: *** /lib/modules/4.14.30-v7+/build: No such file or directory. Stop. Makefile:5: recipe for target 'default' failed make: *** [default] Error 2 Sep 10, 2018 at 19:22
  • @apollowebdesigns For that error It can't find the /lib/modules/4.14.30-v7+/build directory specified in the Makefile. You may have to unzip the files to a specific location in your file system and compile them there. I think this is a question best asked on the Raspberry Pi or Unix & Linux sites. If you get an answer, let us know and I'll update the answer.
    – sa_leinad
    Sep 11, 2018 at 5:01
  • Does this help? askubuntu.com/q/554624 although the build name will be different. You will need to type something like sudo apt-get install linux-headers-`uname -r`
    – sa_leinad
    Sep 11, 2018 at 5:28
  • thanks for your help. For raspberry pi, I did a fresh install of the OS and now it can detect it all and for the Mac I used brew. Thanks for your help. I'll give you the point! Sep 13, 2018 at 20:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.