Problem with uart while reading data from external hardware device


We are using colibri vf61 with iris board. With the reference of Uart demo application in vcsharp we are getting problem to read complete data that we send from the external hardware. The external hardware that we are using is fully tested regarding data sending . for example , hardware send 1000 bytes of data but on uart we receive only 10 bytes. Also Baud rate is set according to the hardware.

kindly suggest us how can we solve this and what other factors (apart from baud rate) can be responsible for this issue.

Thanks in advance !


In the registry under HKLM\Drivers\BuiltIn\UARTA ( Or UARTB,UARTC…, depending on what you use ) change key UsingISR to 1 and please test again.

Hi luka,

As per your instruction I set the key UsingISR to 1 , but the problem still there .
kindly suggest another option to resolve this ?

Did you save registry and restart the device?

Can you try with this application → and get back to me

The above application run successfully and number of bytes are same that send and receive.
but the values of data that transmit is change while reading. for instance , when I send 3bytes data (0,1,2) while receiving it becomes (48,49,50). how we receive same data that we send??

Can you please write here how do you send data? From PC? Can you share the application you use for testing.

Thanks for your help. Actually 48 is ASCII value of 0 that I read in uart. Now i have convert ASCII value in Decimal format.

Thanks for your support.

Hi luka,

As discussed above, data read successfully with application (Link : ) as per suggestion .

But , when I send data using my model application , not more than 25 bytes data received. for instance , i send 100bytes data , only 25 bytes are received other are lost .

could you please suggest me , how can I read complete data .

Can you share the code you use?

To read the data I am using " vcsharp_uart_demo " (url : ) ,

Also let me know , which code you want to share ?

code that send data ?

Below Description about our hardware.

We are trying to read data using Uart-B (Pin#31 Rx and Pin#21 ground)
from external hardware device.

Device send data 900 bytes in 250 milliseconds but only 25 bytes are


We have kept the receive buffer size to 900 bytes.

Kindly help us that why complete data is not received.

we have successfully check our device that it sends 900 bytes at baud

rate 57600.

Also tell us that is it possible to read data at such speed using vf61.

This application uses different way to read data from serial port. I recommend that you use event and than read function. if you do not know how to do this, I can provide you the code for application I gave you


we are using event method . all the issues have been solved except one.
all the numbers successfully read but not 26 decimal.
" when it read 26 decimal value , system becomes hanged "

The symbol of decimal 26 number is " SUB " (substitute).
can you please tell us that is it possible to read decimal 26 number ?

Are you sure you are sending this? I do not see why it would not receive this number. Is there anything special about this?