Using DC-WME-Y402-C as a replacement for DC-WME-01T-S

I am trying to do something which should be simple but is just leaving me frustrated. We use a DC-WME-01T-S as a transparent wi-fi to serial converter. Unfortunately the device is no longer available so I figured that the newer equivalent model DC-WME-Y413-S mentioned in the datasheets would probably work but it turns out that this model does not exist. The next simple solution was to buy the Wi-ME 9210 development kit for NET+OS 7.5, especially as several of the sample projects looked like they would do what I want anyway. Sadly everything has come unstuck at that point.

The first problem was that the CD was unreadable and although I eventually found a PC that would read it what it loaded would not compile without errors. Digi sent me the image which loaded and did all of its updates, I opened the C++ sample program which compiled and ran but never connected to the network although I’m not sure if the “During symbol reading, location expression too complex“ message appearing in the Console window helped with that.

I have now tried several of the sample programs including checking or modifying the items mentioned in the readme files, they all compile and run and the I can spot the module on the network but that seems to be the end of the functionality. I cannot find the module with Finder and I do not seem to be able to get it to do anything via the serial port or the Wi-Fi.

While I carry on banging my head on the wall please does anyone have:
A program which will do what I need, i.e. a transparent serial to Wi-Fi link?
One of the serial-type communications examples checked, tested and with a walkthrough of exactly what to connect to what and what I should expect where that I could follow?
A compatible replacement for the DC-WME-01T-S?
Any idea what I am doing wrong?

Thanks

Ed

We did a proof of concept using socat with a Wi-ME 9210 8/16MB Linux module.
Download rootfs and kernel images from here: https://digi.box.com/s/shycisds72724ienjrdrtc2e9hkevz1p

Boot the module into Uboot. You need a serial terminal connected to the module. We recommend to use Tera Term as terminal application so you can upload the firmware images easily using the serial port.
• Enter these commands (it will ask you to change baudrate in tera term which you should do)
o setenv dhcp_wlan yes
o setenv baudrate 115200
o saveenv
o loady
• In the tera term menu, select File -> Ymodem -> Send and select the kernel image file (uImage). Wait until the transfer is complete
o update linux ram ${loadaddr} ${filesize}
o loady
• Now select File -> Ymodem -> Send and select the rootfs image file. Wait until the transfer is complete
o update rootfs ram ${loadaddr} ${filesize}
Module is prepared. Boot the module into Linux.
o vi /etc/wpa_supplicant.conf
• Enter WiFi network parameters and save the file. It should look like this (assuming WPA or WPA2 is used):

network={
scan_ssid=1
ssid=“MY_SSID”
key_mgmt=WPA-PSK
psk=“MY_WIFI_password”
}
• Reboot the module. Check with wpa_cli status and ifconfig if the module is connected (note the IP address)

• Now the module is connected to the WiFi network. Next step is to use socat.

We have two options to go on:

  1.   The Wi-ME module acts as TCP server. An application (on a PC) connects to the server using a TCP port. The application (on the PC) acts as the client. Data is bridged between the TCP connection and the serial port of the WI-ME. Socat command line:
    

socat tcp-l:54321,reuseaddr,fork file:/dev/ttyS0,nonblock,waitlock=/var/run/ttyS0.lock

How to test this: On the remote PC start telnet to port 54321 with the IP address of the module. Now you can enter something on telnet
and will see it on the serial port of the Connect Wi-ME 9210, you also can enter something on the serial port and will see it on telnet.

  1.   The Wi-ME module acts as TCP client. A TCP server application (on a PC) waits for incoming data on a TCP port. Data is bridged between the TCP connection and the serial port of the WI-ME. Socat command line:
    

socat /dev/ttyS0,b115200,raw,echo=0 TCP:yourpc.ip:port

Before you enter this, make sure that there is a TCP server application running and listening (on a PC). I tested with TCPclientServer, which can be downloaded from here: http://www.softpedia.com/get/Network-Tools/Network-Testing/TCP-Client-Server.shtml
When this is started, just select the WiFi network interface, enter a Port number and click Listen.

Instead of your.ip:port you would change it to something like 192.168.2.42:48569 depending on your network settings.

Thanks User143

As I said, I have a NET+OS version so I will order a Linux one to give it a try.