PicoScope 2206A: Serial decoding fails over 38400 Baud

Post any questions you may have about our current range of oscilloscopes
Post Reply
siepmann
Newbie
Posts: 0
Joined: Wed Dec 09, 2015 5:59 pm

PicoScope 2206A: Serial decoding fails over 38400 Baud

Post by siepmann »

Hello !

I got my 2206A just today and connected it to an Arduino.
I sent "Hello world!" to the console at different baud rates
and monitored the TX pin of the Arduino with the PicoScope.
Everthing was fine from 9600 to 38400 baud. With higher
baud rates it doesn't work.

Does anyone have an idea what's going wrong?

Thanks! Jürgen

siepmann
Newbie
Posts: 0
Joined: Wed Dec 09, 2015 5:59 pm

Re: PicoScope 2206A: Serial decoding fails over 38400 Baud

Post by siepmann »

I tried the same with a 7 € chinese logic analyzer and everything works
with 115200 baud. No problems ! The LA decodes "hello world!".

Is there anyone of the support team who can help me?
Otherwise I have to bring the PicoScope back to the dealer.

Thanks ! Jürgen

Bilal
Active User
Active User
Posts: 27
Joined: Mon Oct 05, 2015 12:19 pm

Re: PicoScope 2206A: Serial decoding fails over 38400 Baud

Post by Bilal »

Hello Jurgen,

Sorry to hear you are experiencing problems using the serial decoder. I have tested the serial decoder previously with 256 KBaud and a 2204A device; it is definitely capable of decoding such rates without any errors.

Can you send me a screen shot of your settings and then use the single shot trigger to capture one data frame (one character) for me. I will take a look at what may be causing the problem.
Bilal Patel
Technical Support Engineer
Pico Technology

siepmann
Newbie
Posts: 0
Joined: Wed Dec 09, 2015 5:59 pm

Re: PicoScope 2206A: Serial decoding fails over 38400 Baud

Post by siepmann »

Attached please find two screenshots.

If you need more informations please tell me.

Jürgen
Attachments
Serial Decoding at 57600 baud
Serial Decoding at 57600 baud
Serial Decoding at 38400 baud
Serial Decoding at 38400 baud

siepmann
Newbie
Posts: 0
Joined: Wed Dec 09, 2015 5:59 pm

Re: PicoScope 2206A: Serial decoding fails over 38400 Baud

Post by siepmann »

And here are two characters. The first "H" is correct.
Attachments
SerialDecoding57600-2.png

siepmann
Newbie
Posts: 0
Joined: Wed Dec 09, 2015 5:59 pm

Re: PicoScope 2206A: Serial decoding fails over 38400 Baud

Post by siepmann »

It seems to be a software problem. The signal of the second character "e"
is ok. The gap beetween the two characters seems to be faulty.
Last edited by siepmann on Thu Dec 10, 2015 10:01 pm, edited 1 time in total.

siepmann
Newbie
Posts: 0
Joined: Wed Dec 09, 2015 5:59 pm

Re: PicoScope 2206A: Serial decoding fails over 38400 Baud

Post by siepmann »

Problem solved: The real baudrate of the Arduino is 58.824,
2,1% higher than 57.600. This is within the specifications.
And the PicoScope Software ist not very fault-tolerant.

In cases like this it would be a solution to increase the fault
tolerance or to open a dialog with the question:
"Real baudrate may be 58.824, shall I change the baudrate?"

As user I expect a higher fault tolerance at standard baud rates
and a smaller fault tolerance at custom baud rates. And/or
perhaps the option to choose a custom fault tolerance.

Bilal
Active User
Active User
Posts: 27
Joined: Mon Oct 05, 2015 12:19 pm

Re: PicoScope 2206A: Serial decoding fails over 38400 Baud

Post by Bilal »

Hello Jurgen,

Good to know you found the issue. Depending on the system, even slight mismatches in the baud rate can cause issues. For example, when I design a UART receiver using the bit-bang method, I would design it such that it would read exactly at the middle of each bit so any minor fluctuations would not matter so long as it is within the bit rate. However if the receiver was designed to read towards the end of the bit, a slight mismatch in timing will create an error. Since there is no governing standard for UART, it isn't safe to be left to assumption.

You will experience issues if the wrong 'Collection Time' is set. The decoder requires sufficient data to be collected for it to display the correct result. e.g.

9600 baud = 104 us/bit
(start bit + 8 data bits): 104us x 9 = 936 us (0.936 ms)
Therefore a collection time near 1ms/div should be used.

I noticed your voltage threshold and hysteresis may have been set incorrectly. For a 5V signal I would suggest using a threshold of 3.7 V and a hysteresis of approximately 0.5 V. the software

Hope this information helps, if you experience any further problems, please feel free to let us know.
Bilal Patel
Technical Support Engineer
Pico Technology

siepmann
Newbie
Posts: 0
Joined: Wed Dec 09, 2015 5:59 pm

Re: PicoScope 2206A: Serial decoding fails over 38400 Baud

Post by siepmann »

Hello Bilal,

I think you should make the software more comfortabel.

Perhaps you can add an auto-adjust function for serial decoding
which is enabled by default and can be disabled.

Jürgen

Post Reply