Wixel Configuration Utility Commands

HI,

I have my Wixels running the Wireless Serial App and I’m testing my C# program that supports two serial ports. I’m able to communicate to two wixels connected to USB ports on my computer. It is capable of sending and receiving text, ASCII and HEX values. The HEX values can range from 0x00 to 0xFF. Is there any values that I should avoid sending to the Wixel? I assume that the Wixel Configuration Utility sends some commands that are interpreted byt the wixel to send it into bootloader etc.

I ask because the wixels lock up occasionally when sending random HEX values.

Charlie

Hello.

You can send any sequence of bytes you would like to the Wixels. Just avoid setting the baud rate to 333; that’s how the Wixel Configuration Utility gets the Wixel in to bootloader mode.

Would you like help debugging the problem you are having? Without knowing much about what you are doing, I think that you might be filling up the Wireless Serial app’s buffers by not reading from the Wixels at the right times. Normally it is not a problem if the buffers fill up, but if you call a blocking function to send data to a Wixel’s virtual COM port and its USB RX and Radio TX buffers fill up, the function could take forever to complete and it might seem like the Wixel has “locked up”.

–David

Thanks David,

Just a follow up… I was indeed trying to send too much data at one time. Would you be interested in taking a look at my Dual Terminal program? I used it to talk to 2 wixels connected to my computer. I would value any input to improve the program.

Charlie Dixon

Hello, streichre.

I am interested in seeing your program, along with an explanation of what it is supposed to do and the motivation for making it. However I can’t promise that I will examine the whole thing or that I will have anything useful to say about it.

The main issue to be aware of is just that read or write operations to a virtual COM port can take a widely varying amount of time (from milliseconds to minutes) depending on what’s happening on the device. You will need to use threads, timeouts, and/or non-blocking functions to prevent your program from locking up.

–David