Additional UART not working

Discussion in 'General Discussion' started by maara, Dec 29, 2013.

  1. maara

    maara Member

    Joined:
    Jun 11, 2013
    Messages:
    44
    Likes Received:
    4
    Hi,

    I have enabled the uart3 by commenting out EIM_D25 and EIM_D24 gpio functionality and uncommenting their UART function in board-mx6qd_seco__UDOO.h and also added the necessary line to arch/arm/mach-mx6/board-mx6_seco_UDOO.c
    After that I have recompiled the kernel....
    When I look into dmesg I see 4 serial ports:
    Code:
    [    1.574322] imx-uart.0: ttymxc0 at MMIO 0x2020000 (irq = 58) is a IMX
    [    1.581209] imx-uart.1: ttymxc1 at MMIO 0x21e8000 (irq = 59) is a IMX
    [    1.587705] console [ttymxc1] enabled, bootconsole disabled
    [    1.599253] imx-uart.3: ttymxc3 at MMIO 0x21f0000 (irq = 61) is a IMX
    [    1.606087] imx-uart.2: ttymxc2 at MMIO 0x21ec000 (irq = 60) is a IMX
    I am expecting the new serial to be on physical pins 53 and 47 but even I tried all /dev/ttymxc devices using the minicom, I can't get connected to the device attached to the mentioned ports (the device does have opened serial port and is working with other serial devices like bus pirate or a ftdi usb...)

    Could anyone please help me to find out what is wrong? Did I missed something?

    Thanks!
     
  2. maara

    maara Member

    Joined:
    Jun 11, 2013
    Messages:
    44
    Likes Received:
    4
    anyone please? :(
     
  3. 2020lexx

    2020lexx New Member

    Joined:
    Nov 30, 2013
    Messages:
    1
    Likes Received:
    0
    hei maara.. any news about this? same issue 4 me :-( ... still trying..
     
  4. gionji

    gionji Member

    Joined:
    Jun 28, 2013
    Messages:
    38
    Likes Received:
    0
    HI guys,

    we tried now to connect a UDOO quad running Ubuntu 12.04 to test extra uart ports. These are the steps that we followed:

    1. In board-mx6qd_seco_UDOO.h we commented GPIO declaration and uncommented the UARTs TX and RX funtions.
    So external pins:
    D53 --> UART3 TX
    D47 --> UART3 RX

    2 In board-mx6_seco_UDOO.c be sure that:
    imx6q_add_imx_uart(2, NULL); is declared.

    Then recompile kernel.

    3.Upload a sketch on SAM3X wherethe pins are in input mode to be sure to avoid level conflicts.
    pinMode(47, INPUT);
    pinMode(53, INPUT);

    4. We used and Arduino Due like an external device with this sketch:

    Code:
    void setup() {
      Serial.begin(9600);
      Serial1.begin(9600);
    }
    
    void loop() {
      Serial1.println("ping");
      int msg = Serial1.read();
      Serial.println(msg);
      delay(200);
    }
    
    So you have to connect:

    UDOO D47 --> Arduino Due TX1
    UDOO D53 --> Arduino Due RX1
    UDOO GND --> Arduino Due GND

    (Remember the ground connections)

    4. In a terminal (for the moment you need to be super user or change the device permission) you can read and write on ttymxc2

    Code:
    sudo su
    cat /dev/ttymxc2
    echo 1 > /dev/ttymxc2
    You can check monitoring defaut serial port on arduino.

    Let us know if it works :)

    Sorry for the delay! :))
     
  5. maara

    maara Member

    Joined:
    Jun 11, 2013
    Messages:
    44
    Likes Received:
    4
    Thanks!

    I even didn't had to recompile the kernel as I obviously have done this correctly when I was trying to get it working for the first time :)
    What is the only concern I have is:
    /dev/ttymxc2 is the UART3 which I can use from linux to communicate with other devices right?
    /dev/ttymxc3 is the internal port for the inter-processor communication so lets forget this one...
    and /dev/ttymxc0 and /dev/ttymxc1 are on what pins? - these are on RX and TX arduino pins?

    Thanks!
     

Share This Page