UART ttyMFD1 serial port on Intel Edison

On the Intel Edison Arduino board, the J18 Arduino connector block TX/RX pins have the UART connected to /dev/ttyMFD1 in the default Yocto install.

Edison adapter boardGPIO voltage
Arduino5 V
Mini-Breakout1.8 V

The Mini-Breakout board Intel Edison has 1.8 V GPIO and can be damaged from connecting directly to 3.3 V or 5 V TTL logic. You need a level shifter board to do the interface to non-1.8V logic from the Mini-Breakout board.

RX stream from Intel Edison UART

This is intended for a serial device that constantly streams output like a GPS NMEA stream. If your device is interactive, skip to the next section.

  1. At the Edison shell prompt:

     stty -F /dev/ttyMFD1 9600
     cat /dev/ttyMFD1

    where 9600 is serial port device baudrate 2. text streams to console from UART serial device on Edison.

    TX/RX from Intel Edison UART

    1. install
    opkg install screen
  2. connect interactively to UART device from the Edison shell

    screen /dev/ttyMFD1 9600

    where 9600 is serial port device baudrate

    Python use of Intel Edison UART

    MRAA + PySerial make using the Intel Edison serial port easy from Python.

    1. install MRAA on the Edison
    2. install Pyserial
    python -m pip install pyserial
  3. verify serial port operation with:

    import serial
    import mraa
    
    uart = mraa.Uart(0)
    
    ser = serial.Serial(uart.getDevicePath(), 9600)
    
    ser.write("TEST")
    print ser.read(4)

    Notes

    References:

    Intel Edison GPIO: Getting Started Guide