Friday, February 10, 2012

Wiznet Configuration Update

(Updated 6/10/12: see below)

While updating the MaxSonar driver in XTension to support connections to TCP/Serial adaptors I discovered an important error in the last version of the Wiznet Configurator for Macintosh. The documentation available on the web of the protocol for talking to these devices is actually incorrect in the settings for the client/mixed/server mode byte. If you’re thinking of working on one of these yourself you’ll want to know that the proper values are 0=client, 1=mixed and 2=server. The documentation shows server and mixed swapped which causes all the reconnection problems that some people have mentioned.

The download links to the updated versions are below.

Wiznet makes an excellent ethernet to serial board that is inexpensive and is fully supported by XTension unfortunately they never had a Mac version of their configuration utility that lets you give it an address and setup the serial port.

I noticed yesterday that they had published the specs for talking to the boards making it possible for me to throw a configuration utility for the Mac together. I could theoretically compile it for Linux and Windows too if anybody is interested let me know, I just dont have a machine handy for testing those targets so I haven't done so yet.

The program seems to work and implements all of the available fields though some of them appear to be different in the version of the firmware that I've got than what is documented. Indeed in the documentation even the length of the data packets is wrong so i'm not sure the things i haven't tested actually work.

To use it plugin a 5v power supply and ethernet to your wiznet board. It will assign itself an address or take one from your DHCP server depending on. To find it run the software and all wiznet boards found will be displayed. Double click one in the list to edit it.


To use one with XTension it needs a static IP address and be in Server mode. Then setup the serial port for whatever settings are needed for the particular device. This should work with CM11's and W800's and Weeder chains and just about every other device in XTension that supports a remote TCP connection instead of a local serial port.


I was unable to make the direct connection to the device work, so the configuration is returned via a UDP broadcast. What this will mean for having multiple devices on your local network I dont know yet, I only have the one but i've just ordered some more, and some with multiple ports to experiment with further.


This is released as freeware and AS IS. Let me know if it gives you any trouble and please feel free to make a small donation via paypal to james@sentman.com if it turns out to be useful to you.


(update: 2/8/11 added the linux compile. I haven't even tried to run it but it might help someone out, please let me know if anybody finds it useful)

(update: 2/10/12 now at version 1 because of fixes to server/client/mixed setting and the proper setting of the serial debug mode flag which is 1 for off and 0 for on, go figure)

(update: 6/10/12 new version fixes UDP/TCP setting bug please visit: here for new version)


wiznet devices can be purchased from Sparkfun as well as Saelig Electronics

2 comments:

  1. Hi James -

    Just wanted to say a big thank you for the Wiznet Configurator. It worked perfectly in helping me get access to a Brultech GEM, without having to resort to running Brultech's EtherX under a windoze/Fusion workaround. I'm not currently looking to do home automation, but if/when I do XTension will be top of my list.

    Thanks!

    N.

    ReplyDelete
  2. Thank you for this wonderful post I appreciate it.
    Do you know how we can fix dead 18650 lithium battery cells?

    ReplyDelete

.code { background:#f5f8fa; background-repeat:no-repeat; border: solid #5C7B90; border-width: 1px 1px 1px 20px; color: #000000; font: 13px 'Courier New', Courier, monospace; line-height: 16px; margin: 10px 0 10px 10px; max-height: 200px; min-height: 16px; overflow: auto; padding: 28px 10px 10px; width: 90%; } .code:hover { background-repeat:no-repeat; }