Should be so simple. What am I missing?

Hello:

I’m recently new to using the ME-9210 module. I’m having difficulty in moving my kernel and rootfs modules from the Eclipse development system to the 9210 development board/module. It seems that this should be simple and straight forward, but I cannot understand what I’m doing wrong.

I’ve gone over the tutorials and examples on the “Welcome” screen. I can successfully build and run “install” from the Project Explorer tab… no errors here. Everything looks fine. The build process places the images properly as follows:

/exports contains: nfsroot-cme9210js 
/tftpboot contains: uImage-cme9210js, u-boot-cme9210js.bin, rootfs-cme9210js.squash, and rootfs-cme9210js-64.jffs2

Next I power up the board, break into the U-Boot monitor, and set all of the environment variables as per the tutorials and examples. The TFTP Directory points to /tftpboot. The NFSROOT configuration (npath) is set at the default of /exports/nfsroot-cme9210js. And finally bootcmd is set to dboot linux tftp. When I reset the board and do not interrupt the boot process I get the following:

U-Boot 1.1.4 (Oct 31 2008 - 13:16:22) DUB-RevE
for Digi Connect ME 9210 on Development Board

DRAM:  8 MB
Flash: 4 MB
CPU:   NS9210 @ 74.95680 MHz, SYS 299.82720 MHz, AHB 74.95680 MHz, Rev 0
Strap: 0x077f
Hit any key to stop autoboot:  0 
TFTP from server 192.168.0.130; our IP address is 192.168.0.180
Filename 'uImage-cme9210js'.
Load address: 0x200000
Loading: T T T T T T T T T T 
Retry count exceeded; starting again
TFTP from server 192.168.0.130; our IP address is 192.168.0.180
Filename 'uImage-cme9210js'.
Load address: 0x200000
Loading: T T T T T T T T T T 

I’ve tried this over-and-over experimenting with various settings, but always the same. What’s happening here?

Thanks for any help on this.
Doug

----- Extra info ----------------

CME9210 # printenv
bootdelay=4
baudrate=38400
silent=no
npath=/exports/nfsroot-cme9210js
bootcmd=dboot linux tftp
ethaddr=00:40:9D:3C:11:B4
wlanaddr=00:04:F3:FF:FF:FB
ipaddr=192.168.0.180
ipaddr_wlan=192.168.0.1
netmask=255.255.255.0
netmask_wlan=255.255.255.0
serverip=192.168.0.130
gatewayip=192.168.0.1
dnsip=0.0.0.0
dnsip2=0.0.0.0
dhcp=off
dhcp_wlan=off
stdin=serial
stdout=serial
stderr=serial

Hello Doug,

as it is so simple, two stupid questions from me:

  • Are you sure that your Linux computer (aka tftp-server) does have the IP address 192.168.0.130?
  • Can you try to ping this address from the U-Boot prompt, please?

Normally, you get there T’s when there’s something wrong in your connection to the tftp-sever.

Kind regards,

Christopher

Hi Christopher:

Thanks for your quick reply and suggestions. I just tried your two suggestions and confirmed that the serverip is 192.168.0.130 and that I can ping the server from the ME9210 (192.168.0.130) correctly. I show the details below.

Do you think something is write protected? What about the RAM load address of 0x200000? Does that seem correct for this module?


doug@dew-kubuntu:~$ ifconfig

eth0 Link encap:Ethernet HWaddr 00:13:20:4F:3E:02
inet addr:192.168.0.130 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::213:20ff:fe4f:3e02/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1471 errors:0 dropped:0 overruns:0 frame:0
TX packets:1085 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1597980 (1.5 MB) TX bytes:140385 (137.0 KB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:66 errors:0 dropped:0 overruns:0 frame:0
TX packets:66 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:5176 (5.0 KB) TX bytes:5176 (5.0 KB)

doug@dew-kubuntu:~$ telnet

telnet> open 192.168.0.180
Trying 192.168.0.180…
Connected to 192.168.0.180.
Escape character is ‘^]’.

BusyBox v1.11.3 (2008-10-06 12:01:16 CEST) built-in shell (ash)
Enter ‘help’ for a list of built-in commands.

/ # ping 192.168.0.130
PING 192.168.0.130 (192.168.0.130): 56 data bytes
64 bytes from 192.168.0.130: seq=0 ttl=64 time=1.365 ms
64 bytes from 192.168.0.130: seq=1 ttl=64 time=0.975 ms
64 bytes from 192.168.0.130: seq=2 ttl=64 time=0.972 ms
64 bytes from 192.168.0.130: seq=3 ttl=64 time=0.975 ms
64 bytes from 192.168.0.130: seq=4 ttl=64 time=0.979 ms
— 192.168.0.130 ping statistics —
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 0.972/1.053/1.365 ms
/ #

More information…

As an experiment I just tried the U-Boot “bootp” command. It failed, but gave some useful new information. Even though I have DHCP turned off, it appears that DHCP is somehow still assigning 192.168.0.5 as the target address here even though variable is set to “ipaddr=192.168.0.180”. Either that or “bootp” is looking in the wrong place (maybe it always looks at the DHCP address ignoring the fact that DHCP is disabled.) I think that is the problem. The TFTP server is trying to send data to 192.168.0.5 instead of the “ipaddr” of 192.168.0.180. Now I need to find a work-around. Any suggestions?


CME9210 # bootp
BOOTP broadcast 1
DHCP client bound to address 192.168.0.5
*** Warning: no boot file name; using ‘C0A80005.img’
TFTP from server 192.168.0.130; our IP address is 192.168.0.5
Filename ‘C0A80005.img’.
Load address: 0x200000
Loading: T T T

I think that Christopher was asking you to ping your host computer from U-Boot (not from linux).

Anyway, by doing that you have verified that you have ethernet connection between both machines.

To be sure that you have good ethernet connection in U-Boot, please ping from u-boot your host machine.

Your network settings seem to be correct.
If you succeed pinging the host from U-Boot, then I would say that its a tftp-server problem.

Do you have that server running on your computer?
Can you verify that its working from other machine?


Pedro.

Hi Pedro:

I guess I’ve posted too much information. Too confusing for everyone to wade through it all.

I actually did ping the Kubuntu host from the target and it was successful. I show this in my 10:02AM July 30th reply. I used telnet on my Kububtu machine to access the target, and then pinged back from the target to Kubuntu through the target’s BusyBox.

I’ve obviously screwed up something big time that we cannot see. Since I have not started development yet, I think I will do a complete re-install of everything from the Digi DVD.

Thanks Pedro and Christopher for you input and comments. If the fresh re-install works I will post those results.

Doug

SUCCESS!

The problem I was having was evidently with the cable setup of my system. Evidently the LinkSysWiFi box I was using somehow interfered with tftp. Because the LinkSysWiFibox was close by, I ran my host box through the LinkSysWiFi. Months ago I had configured this WiFi to act only as a switch by disabling the router in it…or so I thought! Even though I could ping both ways with this setup, something else was not happy. When I re cabled the setup to all go through the LinkSys8PortSwitch it worked like a charm. See diagrams below)

Cable setup which did not work:

DSL–>DSLModem–>LinkSys8PortSwitch
±<-------------------------------+
±–>ME9210
±–>LinkSysWiFi*–>KubuntuHost

*router disabled. Thought it was acting as a switch only.

This cable setup works!:

DSL–>DSLModem–>LinkSys8PortSwitch
±<-------------------------------+
±—>ME9210
±—>KubuntuHost
±---->LinkSysWiFi

Case Closed. Thanks Again for all who provided input.

BTW: I also installed the new Digi Linux v5 today. Super improvements over v4.2! Will enjoy working with this upgrade. Good work Digi people!

Hint: Do not accept the upgrade to Kubuntu v9.04. For me it really messed up all of the KDE desktop settings. Stay with Kubuntu v8 unless your good at KDE (I’m not I guess).