New CTS Client on Windows

I tried the new CTS client on Windows and is working. Of course it looks horrible and I had to do a bit of adjustments, but the functionality is working! I know Java is multi-platform and so on, but I am still impressed.

One downside beside graphic part is that is not that stable dealing with large transfer at high-speed. Streaming a QVGA full colour frame will not really work @ 921600 bauds. I had to go down to 460800 to get it working. Well, you can’t have everything, right?

cts client macJava based CTS Client on Mac OSX
cts client windows
 Java based CTS Client on Windows 7

4 thoughts on “New CTS Client on Windows

  1. I found out that baud rate is limited by the hardware you use to convert USB to UART:
    -Prolific (P2303) are designed to work pretty well below 128000bps (The most common USB to RS232 cables are based in this version of the chip)
    – Sillicon labs (CP2102) works well at 921600 bauds, i’m currently using this one and receive the image of 320×240 pixels RGB565 (16bits per pixel) over something like a second per frame
    – FTDI seems to work up to 3Mbps !!!! but i don;t have the FTDI chip available to prove this

    • Doubt you will be getting the 3 Mbps to stream it out. You can try… I do have FTDI and I did try to get reliable data out and I could not. Maybe now I may be able to get, but where is he point? I need my boards to be able to talk with any host MCU including Arduino ;-)

      Now if you are doing a simple math: 3 Mbytes is in theory 3,000,000 * 8 * 2 cycles / bit = 48 Mhz (even if using 1 cycle/bit is 24 Mhz). Will you be able to get data, process it and send it out in 2/4 cycles with your MCU? ^_^

      • I have understood you are using LPC ARM im pretty sure it is fast enough at least to handle 921600bauds, Arduino on the other hand is based on ATMEGA which can’t go faster than 20MHz, i doubt it can reach to 128000 without having any problem..
        Of course streaming data will always take valuable time from the MCU, in some cases like (QVGA resolution) even more time that the whole image processing.

      • Actually I can get 921600 bauds stable from ATMEGA328, the one used in Arduino… But of course I am not using the “Arduino”, I used a very simple UART library based on the one in data sheet and a 22.188 Mhz crystal.

        Cortex M3 can handle, no issues, but for the amount of data I’m streaming out even 38400 bauds will do: 14 bytes of data for every blob of data, even if get 8 blobs will be 112+5 bytes/frame or 3.4 Kbytes per second.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s