My recently aquired (used) asus eee pc 701 came with XP installed and no support CD/DVD. I wanted to get rid of XP and have a play with the stock linux O/S instead: I expected this to be an easy gimmie, but it was not, and ate up an evenings worth of my time googling around for solutions so I’m going to lay out the shortcuts here to hopefully save someone else the pain.
As mentioned, the eeepc I acquired had XP installed (nlited) and no recovery DVD, so no option of using the built in rescue partition to restore the EEEPC back to the factory state. (Apparently you can hit F9 normally and it takes to to a ‘restore me from hidden partiton’ type GRUB menu). I figured this wouldn’t be a problem, I’d just go to the Asus support site and grab the image. Its linux, right, should be able to get the firmware images easily from the manufacturer, right?
Wrong.
I ransacked the official eeepc.asus.com support site looking for what I needed: at the other end of the search I can honestly say I found zero useful material or info there. (Dont even bother visiting it, you’re better off going straight to google for this). The support/download section had BIOS updates and the like, but nothing to help with a reinstall. Even searching the forums for what I imagined to be blatantly obvious issues (eg: where do I download the restore cd?) came up with bupkis.
I concluded, to my chagrin, Asus has decided to withhold the support software (a linux distro?) for whatever reason, and the forums were evidently being policed according to this policy, removing any useful information pertaining to it. I expected to find at least a link to an outside site, as google was telling me about various helpful torrents: not finiding even a whisper of this on the official support forums smells like seafood.
After a bit of googling and torrent searching I found a few ISO images which purported to be eeepc 701 flavored including a copy of Ubuntu, but I couldn’t get them to run from USB key: syslinux made the drive bootable but either the kernel options were wrong and linux would not boot, or I could get it to boot by plugging in manual options (specifying location of initrd etc) but only made it partway into a boot before falling over and restarting. (I didn’t bother noting or chasing down those errors as I didn’t particularly fancy my mission this evening to be going down the road of fixing boot issues in roll-your-own livecds booting from USB sticks). I realise I’ll probably have to suss this out properly for installing Ubuntu and other flavors down the road, but for now I just wanted the stock Xandros system restore.
I eventually found some downloads which solved the problem.
Heres the process in WinXP:
- The first thing you need is the EeePC 901 ASUS Linux USB Flash Utility available from eeefiles.com. I guess this is the version which comes on the support DVD, but I don’t have that and it wasnt available from the official site, so… (By the way, thanks a lot Asus, making me resort to downloading from a third party site instead of a trusted source).
- The next file you’ll need is the Xandros Eee Pc 701 Edition ISO. Get it from the eeepc 701 community project on sourceforge.
- Once you’ve downloaded both of the above its all pretty much downhill!
- Now either burn the ISO to a physical disk, or mount the image using a program like daemontools.
- Plug in your 2GB+ USB stick
- Run the USB Flash utility, select the detected USB drive,wait for it to format. If prompted, remove and re-insert the stick after the format. It will ask for the linux disk (either insert the physical copy you burned or mount the ISO into a drive).
- Linux will copy (it takes a few minutes) and at the end you should have a bootable restore on the USB drive.
- Power on the eeepc, hit F2 for BIOS options, go to “Advanced” and set the “OS Installation” to “Start”. F10 to Save and exit.
- Put the USB drive in your eeepc, reboot, hit escape on POST to get to the boot menu, and you’re off.
- Xandros will install (took about ten minutes on mine). Remember to go back into the BIOS and set “OS Installation” to “Finished” once its finished.
That really shouldn’t have taken me a whole evening of googling to get done =\
Traveled down south on the weekend to see a live demonstration of High Voltage Tesla Coils in action: a 2 hour drive but well worth it. It was a small invite only group at the Tesla guy Peters house, where it was being filmed for a show on the Dutch TV network “Veronica TV”. (Previously it has been filmed for Discovery Channel, and apparently there are more film crews on the way).
There were a couple of very interesting aspects of the demonstrations, firstly the high power electric arcs being generated, and secondly the safe handling of said arcs by Peter the Tesla guy and the TV show presenter - they had these huge arcs from the coils terminating on steel rods being held, as well as on a metal cage with a person inside, on a steel glove, and even a tinfoil hat worn on the person whilst immersed in the family pool. This was made safe by making sure the circuit was constantly grounded through nice fat copper cables and/or the water of the pool - so while it looked like the arcs were millimeters from frying the humans involved, the current was actually happier to literally follow the path of least resistance (the copper, instead of the human).
Pretty amazing stuff to watch, I’m really glad I went. You can see photos and videos of this and more of the projects Peter has done on his website: www.tesladownunder.com - well worth a look.
After the last rant on Windows Mobile networking, I’ll go over a few actual solutions to the issues I encountered: hopefully a few people may find this more helpful.
Note that the following explanations, definitions of features and so on are the product of my own observation and experimentation with various WM5 and WM6 mobile devices. I have found some documentation on their functions but the majority of information I have discovered through trial and error. If there is some official documentation somewhere which contradicts what I say here (and I wouldn’t be at all suprised) then so be it: what I can say for sure is mine works.
That said, Windows Mobile networking is in my experience notoriously flaky and even though the stuff here works for my device, your milage may vary considerably.
Ok, lets get into it.
Golden rule: Anytime you change anything at all in the networking profiles, after you have saved the changes, disable and re-enable the wireless network/adapter. I have a control utility for this on my device - (HTC Hermes) - but this will vary between devices. Following this step every time I change anything has reduced my frustrations considerably - not doing this means settings often just don’t take effect, and after doing this sometimes things just start working.
A quick explanation of terms I’ve used:
- “Config Profiles” refer to the named settings you can create and assign to different networks in “Network Management” (Start -> Settings -> Connections -> Connections -> Advanced -> Select Networks) - Some of the existing config profiles are ‘My ISP” and “My Workplace” (and you will have others automatically created for your ISP if you have mobile internet access on your SIM card via a 3G or GPRS network).
Explanation of how WM decides which network to use (And hence which attached config profile is used to decide how to connect)
Windows mobile networking is whack (but you knew that already, right?). Here’s how it breaks down: It decides how to handle a http network request based on whether there are any decimals in the dns name.
By its logic, anything with a decimal is ‘internet’ and anything without a decimal is ‘work’.
So:
- “http://bogus.internal” is handled with the config profile attached to the“Internet” network
- “http://bogus” is handled with the config profile attached to the“Private Network” network
You can create multiple different named config profiles and assign any of them to either “Internet” or “Private Network”.
An important thing to note is, a config cannot have a VPN server added to it (or use an already setup VPN) when applied to the ‘Internet’ network. If you want to use a VPN you’ll have to do it through the ‘Work’ network (see exceptions hint below).
Explanation of the ‘Exceptions’ settings.
Now - anything in the ‘Exceptions’ list goes through the “My Work” profile regardless of whether the dns name has decimals in it to not. The good news is you can use wildcards here to force a wide range of sites through the ‘My Work’ profile if you want - hint: http:/*.* and https://*.* . I didn’t end up using this for my solution, but you might find it useful.
I’m sure this flavor of networking makes sense to some software engineer in Microsoft land, but to me it just spells confusion. Once I worked out what was actually going on, I figured out some shortcuts/config hacks which can be used to railroad the networking into doing more or less what you tell it to.
So here’s what I’ve done to make mine work:
First, I access everything using its FQDN - no dotless machinename shortcuts. This makes sure everything is using the profile assigned to “Internet” (regardless of whether I’m on a work network or not).
Make sure the ‘Exceptions’ section has no entries.
Next, tell windows mobile that every wireless network you connect to is “The Internet”. Forget about the “Work” option . As far as my usage goes, that option is useless. All the wireless networks I connect to are set to “Internet”. If you have already added a wireless network and don’t know if its tagged to “Work” or “Internet, you can go into settings -> wireless networks, find existing networks, and change which network it connects to.
Next, create a couple of new custom network configs, as follows:
- ‘Direct Connection’ - this does as it says, and contains no settings for proxy or vpn.
- ‘Proxy Connection’ - this has my work proxy server entered
You do this via Settings –> connections (tab) –> connections (icon) –> Advanced (tab), Select Networks (button). Here you can edit existing or create new config profiles.
Incidentally, my workplace uses VPNs to grant authenticated access to the wireless network - so not allowing a VPN connection to a host on a “private network” just breaks everything.
Once you’ve done that and entered your proxy authentication credentials in the appropriate places, you’re ready to go. Whenever you want to change how you’re connecting to the net go to network settings, and change “internet” to one of your created profiles. Remember to start/stop the wireless to force the change, and your next network access should be using either direct, proxy, (or VPN - see below), whichever you’ve chosen.
By doing this you lose any pretense of windows Mobile networking transparently working from whichever location / network you are connected to, but it never worked properly for me anyway, and at least this way you have some control back.
Connecting to a VPN
The above covered getting web access only, either direct or via a proxy. To get a VPN connection active (eg for skype and the like) heres what you have to do instead:
- Assign a config profile to the ‘work’ network
- Add a VPN connection to the config profile you used. You can add VPN connections to a config profile by assigning it to to the “Internet” connection, hitting OK, going back to the ‘Tasks’ tab and clicking the ‘Add a new VPN server connection’.
- Add the appropriate wildcard exceptions (to the ‘exceptions’ section) to trigger the VPN connection for every hostname.
Once I get a VPN up at my work from inside the wireless I can make direct connections to outside hosts, for example using PocketPutty. Be warned though that even if it does connect, Windows Mobile likes to shut down the VPN connection once it decides it is no longer in use, eg after you haven’t looked at web pages for a while, regardless of whatever else you are doing on the network, (say in a live SSH session). Parking pocket IE on a web page with an auto-refresh might possibly fool it into keeping the VPN alive, but I haven’t experimented with that yet.
Hopefully there is some useful info in here and it eases the pain of getting your mobile device networking in a saner fashion.
This is a fairly quick covering of networking with WM5/6 and its highly likely there are holes, inaccuracies and/or bits left out: If anyone has queries, corrections or extra to add, go ahead and comment or hit up the contact form for direct email.