WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Old compac armada M700: setting the network connection ??? I have a problem.  (Read 7372 times)

Offline maro

  • Hero Member
  • *****
  • Posts: 1228
cre84j : I totally agree, installation of the 'firmware.tcz' extension before running sudo ifconfig eth0 up should fix things for you (as it contains the '/usr/local/lib/firmware/e100/d101s_ucode.bin' file).

To install an extension on a system where the NIC is not yet working would require a direct download via another system. As there was a similar problem recently I'd suggest you carefully read the following thread as it should contain the steps you'll might want to use.

As I assume that you'll use your Ubuntu system (instead of a XP one as was done in the other thread) you have the option to extract the one (tiny) file that you need out of the extension instead of having to use the much larger extension. In that case the file could be made persistent by inclusion in the backup, instead of installation of the 'firmware.tcz' extension at boot time.

If you'd like to try it out I'd suggest the following steps (on the Ubuntu system):
Code: [Select]
    wget http://distro.ibiblio.org/pub/linux/distributions/tinycorelinux/3.x/tcz/firmware.tcz
    mkdir tmp_extr
    sudo mount firmware.tcz tmp_extr -o loop
    cp -p tmp_extr/usr/local/lib/firmware/e100/d101s_ucode.bin .
    sudo umount tmp_extr
    rm -r tmp_extr
You would then need to transfer this single file to the target system (e.g. via your USB pendrive). And use
Code: [Select]
    sudo mkdir -p /usr/local/lib/firmware/e100/
    sudo cp -p d101s_ucode.bin /usr/local/lib/firmware/e100
to integrate it (temporarily) in the file system. After that the sudo ifconfig eth0 up should succeed and allow you to use the NIC.

If you want to make the change more permanent by inclusion in the backup you'll need to add it to the "white-list" (e.g. via echo usr/local/lib/firmware/e100/d101s_ucode.bin >> /opt/.filetool.lst). It's probably best to ensure that a successful backup (e.g. via filetool.sh -b) is done afterwards.

Again, all this should be seen as an alternative to the more "standard" way of including the 'firmware.tcz' in your on-boot selection. It's just from my POV a bit of an "imbalance" to require a 2.8 MBytes extension when one just needs a 539 bytes file.

Offline cre84j

  • Newbie
  • *
  • Posts: 12
I have some success
Well most of the way there towards the network link up
I had to cheat it: that is I downloaded the 'firmware.tcz' file from a link on another thread
once i had that i just took my pendrive over to the machine with the file opened it up in an IDE
and saved it just inside the 'tce' directory as 'onboot.lst'. Then took it over to the TC machine
plugged it in and rebooted. Well it took some time to boot and seemed to be hung up so left it be
but facing where i was working on another project and when i looked up a while later there it was
the TC GUI.

this is the result of dmesg
Code: [Select]
tc@box:~$ dmesg | grep -i eth
e100: eth0: e100_probe: addr 0x41280000, irq 11, Mac addr 00:B0:55:14:DD:77
e100: eth0 NIC ink is Up 100 Mbps Full Duplex
tc@box:~$ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1): 56 data bytes
ping: sendto: Network is unreachable
tc@box:~$

the dmesg command showed something pleasing but the ping didn't
so tried a ping from the other end and it came through as below:
Code: [Select]
gregory@gregory-laptop:~$ ping 192.168.1.2
PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.
64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=4.38 ms
64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=0.160 ms
64 bytes from 192.168.1.2: icmp_seq=3 ttl=64 time=1.31 ms
64 bytes from 192.168.1.2: icmp_seq=4 ttl=64 time=0.159 ms
64 bytes from 192.168.1.2: icmp_seq=5 ttl=64 time=1.30 ms
64 bytes from 192.168.1.2: icmp_seq=6 ttl=64 time=0.162 ms
64 bytes from 192.168.1.2: icmp_seq=7 ttl=64 time=0.156 ms
64 bytes from 192.168.1.2: icmp_seq=8 ttl=64 time=1.31 ms
64 bytes from 192.168.1.2: icmp_seq=9 ttl=64 time=0.157 ms
So it seems that all there is to do is to deal with the firewall on the netbook with ubuntu loaded and
then i should have an internet connection.

Offline cre84j

  • Newbie
  • *
  • Posts: 12
maro
I had trouble with the last part of you suggestion
Code: [Select]
sudo mkdir -p /usr/local/lib/firmware/e100/
sudo cp -p d101s_ucode.bin /usr/local/lib/firmware/e100
I copied the file to the mem stick because the first part all went well and got the nice small file
its was as you said. When i got it to the TC machine and put in the above in the terminal I got
and exception. No such file something like that.

I tried making it into the onboot.lst file like i did with the larger one the actual 'firmware.tcz' file
but it didn't work like the the original workaround which does work but takes a long long time to
boot and hangs up on the 'loading extensions part' of the process. It takes 3-7 minutes or so
compared to 10 seconds or less normally.

I need to be able to succeed with your suggestion but using another flash stick and keep the one
that works (thought very slowly) as it is for now.

I had the file
Code: [Select]
d101s_ucode.binoutside of the tce directory was that wrong what did i do wrong?
I need to try it again this is where i got the exception
Code: [Select]
sudo mkdir -p /usr/local/lib/firmware/e100/
sudo cp -p d101s_ucode.bin /usr/local/lib/firmware/e100
After i took the pen drive over to the TC machine
it was saying there was no such file when it was right there on the flash drive next to the tce directory.

Offline tinypoodle

  • Hero Member
  • *****
  • Posts: 3857
Not sure how an exception could be related to these simple tasks...
Of course for that cp command it is implied you have cd'ed to the dir where the source file is located, otherwise you have to state the source file path.
To find your file:
Code: [Select]
sudo find / -name d101s_ucode.bin
onboot.lst can only be used for squash file systems, e.g. .tcz extensions.
"Software gets slower faster than hardware gets faster." Niklaus Wirth - A Plea for Lean Software (1995)

Offline cre84j

  • Newbie
  • *
  • Posts: 12
I have a network connection between the TC machine and the Ubuntu machine that is
connected to the internet. There is a successful ping between both. I set Appbrowser
to work and it showed signs of it connecting to the repository at Tinycore. Then i got the
error message saying "Connection error, check network or mirror".

I am thinking that it is to do with the returning packets not being routed back to the TC
machine and must have got as far as the Ubuntu machine. So next step is to make sure
that the packets are routed back to the TC machine. Well this is one thing i want to get
right and set up properly with no quick fix workaround because I think it is best to set
up secure connections and with a decent firewall. So am aiming to work on that next.

At the same time though i need to keep working on setting up the connection properly
well it is a workaround but at the same time it seems to be the best option using a small
file and speeding up the process at boot time. Thanks to 'tinypoodle' and 'maro' for your input
and sticking with it. I am making good progress because of it and also hope this will help others
if they need to do the same sort of thing as I am doing.

My main objective is to see what i can get out of tinycore/microcore on a very minimal system
speed is  a priority so hence the handicaps it's a 700Mhz processor (I'll try microcore later)
1. 192Mb of ram
2. no hard drive
3. 1Gig flash memory
4. to have it set up going out to the internet through a routed network connection
    with a good secure setup and maybe even a proxy server (I need and want to learn this stuff)

so far so good but the internet connection is not happening properly
the error message said
'Connection error, check network or mirrorr'
I am  assuming it is the latter and maybe the routing on return to the network here
on my end. I don't know how to check the mirror which i  assume is not the routing
here at my end. I anyone knows about that please tell!!

Offline gerald_clark

  • TinyCore Moderator
  • Hero Member
  • *****
  • Posts: 4254
Configuring Ubuntu to act as a router is beyond the scope of this forum.
I would suggest that you use a standard DSL/Cable modem/router to share your
internet connection within your home.

Offline maro

  • Hero Member
  • *****
  • Posts: 1228
Hmm, I can see now that my description was maybe a bit too terse insofar that I did not mention all the steps to get the file with the help of a USB pendrive from the Ubuntu system to the TC system.

So for future reference here is what one would have to do:
  • (1) Copy 'd101s_ucode.bin' onto a USB pendrive which is mounted on the Ubuntu system.
  • (2) Unmount the USB pendrive from the Ubuntu system (either via a suitable 'umount ...' command or some GUI action) and remove the pendrive from the Ubuntu system.
  • (3) Insert the USB pendrive on the running TC system and give it enough time to be recognised (or insert it pre-boot).
  • (4) Mount the USB pendrive on the TC system. If one does not know the device name there are a couple of ways to figure it out (e.g. by taking a look into '/etc/fstab'). Please note: A USB pendrive will allmost certainly show up as '/dev/sdXY' with 'X' a letter (e.g. 'a', 'b', 'c', ...) and 'Y' an interger as an identifier for the partition. It it most likely that the USB pendrive has only a single file system, hence it's most likely that 'Y = 1'. If the USB pendrive has been identified as for example '/dev/sda1' the mount command would obviously be mount /dev/sda1 A GUI alternative to issuing that command exists via 'mnttool' (or 'Control Panel' -> 'Mount Tool') If multiple such file systems are available the whole thing might become more of a "guessing game", in this case using blkid /dev/[hs]d* might be a good idea as it shows the file system type, a label and / or a UUID of all IDE and SATA (incl. USB) storage devices.
  • (5) Find the 'd101s_ucode.bin' file on the USB pendrive. I'd suggest a variation of an earlier suggestion as this cuts down on the "noise" (from the '/proc' and '/sys' filesystems) and limits the "search area": find /mnt -name 'd101s_ucode.bin' 2> /dev/null
  • (6) Now create the needed directory (e.g. sudo mkdir -p /usr/local/lib/firmware/e100) and copy the file using the command from the previous step:
        sudo cp -p $( find /mnt -name 'd101s_ucode.bin' 2> /dev/null | head -1 ) /usr/local/lib/firmware/e100
I hope this is now clear enough to not cause again any confusion.

On a different note: Using Ubuntu to share an internet connection is clearly an Ubuntu issue. This page here might be starting point.

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 11049
On the TC side, for more verbose network checking, you can do things like

nslookup google.com
ping google.com
wget http://google.com
The only barriers that can stop you are the ones you create yourself.

Offline cre84j

  • Newbie
  • *
  • Posts: 12
Well thanks for that: maro

I did exactly as you said and now I have a permanent solution the firmware is loaded and the boot time increase if any is not noticeable.  This is what the dmesg command returns after boot up.
Code: [Select]
tc@box:~$ dmesg | grep -i eth
e100: eth0: e100_probe: addr 0x41280000, irq 11, Mac addr 00:B0:55:14:DD:77
e100: eth0 NIC ink is Up 100 Mbps Full Duplex
tc@box:~$
So this one is solved.

thanks again for your help and input and just to say that I am confident the problems can be solved here and that tinycore works.

I need to be able to clone load a setup through a peer to peer connection so need to persist with this peer to peer connection even if I cannot connect to the internet through another box. So am going to persist and see what can be done through a private network and got lots to learn on that as well as tinycore itself but this has been a great start and have learned a lot thanks to all those who have put in all those hours on this very very nice OS it's a thing of beauty.