Jump to content

Accessing OpenScope UART from Linux

Recommended Posts

Hi all

Just to share my experience...

If you try to access the OpenScope serial terminal (without the digilent-agent) from Linux, there is a little caveat:

Baudrate 1250000 is not a standard value available to the usual serial console programs.
b1152000 is the closest available baudrate and, if Linux manages to decode the bytes sent by the OpenScope, the inverse is not true and the OpenScope doesn't understand our commands.
From https://stackoverflow.com/questions/4968529/how-to-set-baud-rate-to-307200-on-linux/7152671 there is a little example how to hack the serial configuration and achieve almost arbitrary baudrates, so one can do (using e.g. picocom):

  wget http://jim.sh/ftx/files/linux-custom-baudrate.c
  gcc -xc -I . -o set-serial <(cat linux-custom-baudrate.c; echo 'int main() { serial_open("/dev/ttyUSB0", 1250000); }')
  picocom --noinit --echo --noreset --omap crcrlf /dev/ttyUSB0
  # ctrl-a + ctrl-q to quit

Now the OpenScope receives properly our commands!

I'll leave as exercise to the reader how to make it less quick & dirty ;)

If someone is aware of a linux serial terminal program that supports immediately custom baudrates, I'm interested to hear!

Link to comment
Share on other sites

Hey doegox,

Thanks for sharing this.  We're planning on adding 'auto-negotiation' to make things like this easier and so we can jack the baud rate up even higher on devices that will support it.  That being said this won't be in shipping firmware for a while so I'm sure users will find this work around useful until then.

As another data point we use both Teraterm and PuTTY on Windows for development at the 1.25 MBaud rate and both work well.


Link to comment
Share on other sites


This topic is now archived and is closed to further replies.

  • Create New...