5 Replies Latest reply on Mar 5, 2014 9:57 AM by mon2

    ETA on full-speed UART?




      Have a few robotics projects that I would love to migrate over to the Galileo architecture, however reading through the technical FAQ it seems that the Serial library within the Arduino IDE is limited to 500,000bps max, stating that faster speeds would be available in the future.


      Unfortunately the robotics servos I use require a 1mpbs TTL UART for communication, so without full speed support I am at a stuck point.


      What is the estimated time of arrival for full speed serial support? Is there a workaround for the time being?


      Also, do we have any realistic idea of what Software Serial will be able to support? 38400 baud @ 30hz update rate?

        • 1. Re: ETA on full-speed UART?



          Any ideas? Unfortunately I'm stuck until I can address this.



          • 2. Re: ETA on full-speed UART?

            Hi Tyberius
            Please take a look at this post related to Software Serial: https://communities.intel.com/thread/47898 as you noticed the Software serial is currently not supported, you can check the list of supported libraries in Section 1.3 of the Release Notes document: https://communities.intel.com/docs/DOC-21837. In that post there is also a link to this post: https://communities.intel.com/thread/45267 that’s about I/O Speed.

            • 3. Re: ETA on full-speed UART?

              You only addressed the second question I had posed.


              The first and primary question refers to the hardware UART, which is stated as limited to 500kbps per your Technical FAQ::


              Q: What baud rate does the Intel® Galileo UART support?

              Intel® Galileo supports the following baud rates via Serial.begin(): 50, 75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, and 500000.

              The Intel® Quark SoC X1000 supports a baud rate up to 2764800 but this support is not yet added in the Arduino* IDE.


              So again, I ask what is the ETA on full-speed UART implementation? Is there an alternative to accessing it through system? I'm trying to control Dynamixel Servos which require a 1mpbs baud rate for TTL communication.

              • 4. Re: ETA on full-speed UART?

                Currently there is no ETA for a full speed implementation for the UART. I’ll keep this discussion under monitoring in case there is any update about this.

                • 5. Re: ETA on full-speed UART?

                  Hi Tyberius. Not clear if  the full speed implementation for the UART would help you for your immediate project. The reason being that your target device (according to their datasheets), requires the UART to frame @ 1,000,000 bps (1 Mbps dead on with only a small deviation). The UART onboard the Galileo does not appear to be capable of framing at this communication speed. From a quick search on the net, you may be better off to consider a FTDI based USB UART -> confirm if you are ok with the CMOS interface for your project and source such an adapter for your requirement. It does appear that the FTDI UARTs can frame @ 1,000,000 bps but certainly cross check against their datasheet. Once you have communicated with the target component @ 1,000,000 bps, then you can configure the com speed to be an alternate value that may be ok to work with the Galileo. but again, please check. Hope this helps.






                  lists the FTDI UART and support for your target baud rate of 1,000,000 bps. Openly it is very strange for your product to be using this relatively non-standard baud rate. Most UARTs, like the one on the Galileo will be supporting of typical PC baud rates. One idea would be to develop s/w to bit-bang out the UART emulation using GPIO pins. In theory, this is possible but not a small task if you must read/write to the external devices. It will be much more efficient to implement a low cost external UART.




                  Message was edited by: Sanjiv Bhatia