Archive for the ‘Walk Throughs’ Category

Complete Guide to Install Windows 7 on the eee PC 1000 series (Drivers, ACPI and All)

Tuesday, June 16th, 2009

I saw a few incomplete guides out there, including the one that I used to install Windows 7 on my eee PC 1000. I figured this would be a good time to make a guide specifically for you in the same situation as I was. This guide will tell you how to acquire Windows 7, prepare a flash drive to install Windows 7, and to acquire the neccessary drivers after installation is finished.

Step 1. Acquire Windows 7.

Your Free for One Year Windows 7 Key and Release Client DVD-ISO can be downloaded from here:

http://www.microsoft.com/windows/windows-7/download.aspx

The N270 ATOM processor does not support x86_64 (amd64) extensions, so you’re going to want to grab the 32bit version.

Step 2. Prepare your Flash Drive.

I would recommend a 4GB drive, as the Windows DVD ISO is 2.35GB

First we’re going to open up diskpart to prepare the Flash Disk.

  • Open command prompt. (Start > Run > cmd)
  • At command prompt open diskpart (type diskpart then press enter)
  • Next run the “list disk” command to get a view of the available devices connected to the machine.
  • Now run select disk # where # is the number associated with your flash drive.
  • Type “clean” to wipe the partition table
  • Now type “create partition primary”, which will create a new partition
  • Then type “active”, this will mark the partition bootable
  • Next we will format the drive with the command “FORMAT fs=ntfs” you could also use FAT32 but I prefer NTFS. You can also add “quick” after NTFS to perform a quick format.
  • Finally type “assign” to have windows assign the drive a mount point.
  • Type “quit” to leave bootpart.
  • You should now be back at command prompt.
  • We now need to insert or mount the Windows 7 drive. Either burn the image to a disk or use a ISO mounting tool to mount the disk image. Once you have the image loaded in one way or another we’re going to run a file on the disk.
  • Type the drive letter of the drive i.e. “i:” or “d:”
  • Then type “cd boot”
  • Bow run “bootsect /nt60 driveletterhere” wheras driveletterhere is the drive letter of your flash drive.
  • Now your flash drive is prepared for the Windows 7 files. Copy the entire contents of the Windows 7 disk to the flash drive.

Step 3: Install Windows 7

The installation is actually remarkably straight forward. A lot of guides will tell you you have to run compact on the drive. Fortunately, most eee PC users have a 8GB OS drive and another drive for files. The end installation will leave you with around 1GB of free space on the OS SSD. So running compact is not neccesary if you do not want to.

  • Make sure all of your files are backed up
  • Reboot the eee PC
  • Insert the Flash Drive
  • While the POST screen is showing tap the ESC key
  • From the boot menu select your USB Flash Drive
  • Windows 7 installation should now start as normal.
  • You should format the 8GB OS SSD during the installation, this way it does not install Windows 7 and leave your existing files alone. On the eee PCs with hard drives that may be fine but on the standard eee PC that would result in barely any free space.

Step 4: Drivers and Optimisation

Drivers

Windows 7 actually detects more hardware directly after install than Windows XP does. All of the hardware detects normally except the ASUS ACPI driver. It will detect in Device Manager as an “Unknown Device”. The Device ID is ACPI\ASUS010. This device also controls the eee PC specific hotkeys. For example the ability to turn off the Bluetooth and WiFi radios from within windows.

The ACPI Drivers and other Drivers are available on the ASUS Support website. Select your eee PC from the list, then download the ACPI drivers from underneath the “ATK” category.

You’ll get occasional popups saying that certain keys have been disabled from the utility. You can End the Process to end these messages, but you’ll also loose access to some function keys.

I’ve so far been able to get the the ACPI utility to stop complaining about the Intel Utility. I did this by downloading the Windows Vista 32bit Driver from the Intel Website. It’s the Intel 945GM Chipset that the eee PC 1000 uses. You’ll have to use the “Have Disk” method of overriding Windows 7. Since technically the Win7 driver is newer you’ll have to insist on using the older Windows Vista driver. Once the driver installs, for me I got a blank screen and I had to hard reboot. Once the computer rebooted I got one less annoying error from the ACPI utility. I believe you could use a similar process with the other drivers to satify the ASUS utility. I’ll update as I learn more.

Optimisation

I recommend you enable the “Windows Classic” theme, and go through the Windows Services panel to disable whatever Services you may not need.

I also recommend you right click on the Taskbar and use the properties section to shrink the toolbar. Although it might be perfect for a modern Hi-Res screen the New Windows 7 toolbar is a bit big for an eee PC.

Step 5: Update your Firmware on your eee PC 1000 (Optional)

Download the “ASUS Update Utility” under the Utilities Section on the ASUS Website. Extract it and install it. Use the MSI installer instead of the EXE, because the EXE will give you an error message about the version of windows not being correct. Once installed the ASUS Update Utility will download and install the latest Firmware version for your eeePC BIOS.

Reflash your Cisco 7940, 7941, 7960 or 7961 phone to SIP

Tuesday, April 28th, 2009

apps41.8-5-2TH1-9.sbn
cnu41.8-5-2TH1-9.sbn
copstart.py
copstart.sh
cvm41sip.8-5-2TH1-9.sbn
dsp41.8-5-2TH1-9.sbn
jar41sip.8-5-2TH1-9.sbn
load115.txt
load30018.txt
load308.txt
load309.txt
SIP41.8-5-2S.loads
term41.default.loads
term61.default.loads

Cisco 7960

Cisco 7960

We now sell the SmartNET Service Agreements for these phones! (Necessary to get Firmware)

Use our web form to transmit your device information.

This guide applies to the Cisco 7940, 7940G, 7941G, 7960, 7960G and 7961G. These phones are the real work horses of the IP Telephony industry. They’re sturdy, configurable and when used with Call Manager very robust. However you’re not here to learn how to use these phones with CallManager you’re hear to use reflash them to SIP, because you want to use them with Asterisk, PiaF, Trixbox, or any other SIP based PBX. This process is not that difficult but it can be frustrating without the right instructions, which is why I’m here to help.

Firstly, I’m not a big fan of these phones in a SIP atmosphere, I have one on my desk so they’re by no means terrible, but realistically Cisco’s SIP firmwares are much more limited than their SCCP firmwares. If you haven’t yet bought your phone, I’d recommend you buy a phone from Linksys. They’re made of virtually the same parts, except designed for the Small Business and SIP customers.

Let me explain more or less what you are doing, you are taking whatever firmware is on your phone and you will be reflashing it to the latest SIP firmware. Typically these phones come from Cisco with the SCCP, often called “Skinny” protocol. This protocol only works with the proprietary Cisco CallManager platform or with special asterisk modules. Although it is very rare to ‘brick’ these phones, it is possible. It is very important that you are patient with each step as well as careful that all of your connections are solid.

Alright, to reflash this phone you’re going to need:

  1. DHCP Server
  2. TFTP Server
  3. P0S3-07-5-00.zip (For the 7940/7960)
  4. cmterm-7940-7960-8.11.00-sip.cop (7940/7960) or cmterm-7941_7961-sip.8-5-2.cop (7941/7961)
  5. XMLDefault.cnf.xml configured correctly for your firmware. (Right Click Save As, or your browser might try to parse the XML) SERIOUSLY FOLLOW THOSE INSTRUCTIONS, THAT’S THE BIGGEST MISTAKE PEOPLE MAKE, MOST MODERN BROWSERS WILL PARSE XML.

If you have a Cisco Smartnet Contract already you can get the firmwares for the 7940/7960 here and for the 7941 and 7961 here. If you don’t have a Smartnet Contract I recommend you buy one from CDW. You can chance it on the internet trying to find a good Samaritan who has uploaded the firmwares for you but it’s seriously worth the 8$/year to have access to firmware updates.

Now the unusual part about reflashing the 7940 and 7960 generation of  phones is that to get them to the most recent firmware often times they will have to be flashed twice. This is because sometime around the 7.5 firmware Cisco changed what I believe was the phone’s bootloader. For this reason it is necessary to take the phones directly from SCCP to P0S3-07-5-00 then to 8-11. Technically some phones may be able to go directly to the latest version from Cisco, but because it seems like the vast majority of phones with the SCCP firmware on them require this process, I now just assume that it will need to be done to streamline the process.

I’m going to steal a few bits from my Cisco 7970G Guide you can always use whatever TFTP server and DHCP server you like as long as you have the ability to set the DHCP options manually. Here we are going to use tftpd32, it has both a tftp and dhcp server inside.

To start make a folder on the desktop, I named mine CP-7940.

If you have a 7940 or 7960 extract the contents of P0S3-07-5-00.zip and cmterm-7940-7960-8.11.00-sip.cop with 7zip or WinRAR. The 7941 or 7961 will require you to extract the cmterm-7941_7961-sip.8-5-2.cop. If the archiver doesn’t automatically detect it’s extractable when you right click. Add a .gz to the end, it’ll figure it out. Then move the XMLDefault.cnf.xml that you downloaded from me into the same folder.

Now if you’re flashing a 7940 or 7960, you should have this in your directory.

  • cmterm-7940-7960-8.11.00-sip.cop
  • copstart.sh
  • OS79XX.TXT
  • P003-07-5-00.bin
  • P003-07-5-00.sbn
  • P003-08-11-00.bin
  • P003-08-11-00.sbn
  • P0S3-07-5-00.bin
  • P0S3-07-5-00.loads
  • P0S3-07-5-00.sb2
  • P0S3-08-11-00.loads
  • P0S3-08-11-00.sb2
  • sip_load7.txt
  • sip_load8.txt
  • XMLDefault.cnf.xml

The P003-* files are SCCP files, but they are used by the SIP. SIP firmwares are typically labeled P0S3-*. You want to make sure the P0S3*.loads file is referenced in your XMLDefault, but the P003 files still need to be available.

or for the 7941/7961

  • apps41.8-5-2TH1-9.sbn
  • cnu41.8-5-2TH1-9.sbn
  • copstart.py
  • copstart.sh
  • cvm41sip.8-5-2TH1-9.sbn
  • dsp41.8-5-2TH1-9.sbn
  • jar41sip.8-5-2TH1-9.sbn
  • load115.txt
  • load30018.txt
  • load308.txt
  • load309.txt
  • SIP41.8-5-2S.loads
  • term41.default.loads
  • term61.default.loads

Now we have to modify our XMLDefault.cnf.xml file to reflect our intent to reflash the phone. Either download my starter file from above or add these line to your XMLDefault.cnf.xml. Here I’ve included the settings for both the 7940 as well as 7960 generation of phones.

<loadInformation8 model="CP-7940">P003-08-8-00</loadInformation8>

<loadInformation115 model="CP-7941">SIP41.8-5-2S</loadInformation115>

<loadInformation309 model="Cisco 7941G-GE">SIP41.8-5-2S</loadInformation309>

<loadInformation7 model="CP-7960">P003-08-8-00</loadInformation7>

<loadInformation30018 model="CP-7961">SIP41.8-5-2S</loadInformation30018>

<loadInformation308 model="Cisco 7961G-GE">SIP41.8-5-2S</loadInformation308>

If you need any other phones check out my post on XMLDefault.cnf.xml loadInformation tags.

Next let’s configure TFTPd32

Firstly, determine how you are going to connect your 7940/60 to your DHCP/TFTP server. You’re going to need to make sure that there is no other routers on the network that could send competing DHCP broadcasts. I recommend one of two scenarios.

  • Connecting the Phone and Computer directly with a Crossover cable.
  • Connecting the Phone and Computer together on a network switch with no other devices. Notice I say SWITCH not a ROUTER. You could use a router if you configured it properly, but that’s another story.

The switch option works better because it prevents the computer’s LAN interface from going up and down depending on if the phone is plugged in or not.

Next you are going to need to get a copy of tftpd32:

Now that you have tftpd32 open and running, we need to configure it:

Open up the settings box

Enable DHCP Server, TFTP Server, and Log Viewer, all others can be unchecked.

Make sure that you have set the directory into the same directory as your Cisco Firmware Files.

Make sure you have the correct configuration files in the directory including a XMLDefault.cnf.xml that at least partially resembles this one: (right click save as)

Set TFTP Security to STANDARD, in the image it says None. It should not be set to none it should be set to STANDARD.

Make certain that the bind address is set to the correct interface.

TFTPD32 Configuration

TFTPD32 Configuration

When done go to the DHCP tab

Make sure a DHCP and DNS server are set. Under additional options set “69″ and make the IP the same as your TFTP server. Do not use these IP settings, they just server as a rough guide. The IP Pool starting address being out of the subnet is not intentional. Also under additional options the 19 was cut off by the size of the box. If you have problems with option 150, try option 66.

TFTPD32 DHCP Settings for Cisco 7970G

TFTPD32 DHCP Settings for Cisco 7960 7940

Check for any settings that I may have missed and double check that everything is correct.

Now it’s time to boot up the phone. If the phone is already on, a quick way to reboot it is by holding down the * key, the six key, and the settings key simultaneously. As the phone boots up watch the logs. With any luck it should boot up, and try to pull the SEPMAC.cnf then give up and move on to XMLDefault.cnf.xml. When it sees that file it should start downloading the firmware files and reboot. If after rebooting you see the phone look for a SIPMAC.cnf file then SIPDefault.cnf, your phone is successfully reflashed.

The 7941/7961 seems to reboot twice grabbing different files each time.

If the phone isn’t reflashing, double check your TFTP settings and make sure the phone is detecting your TFTP server. You may have to go into Network Settings and enable alternate TFTP server. Typically you can do this by moving to the option then pressing **# **to unlock it or going to setting then option 9. The default password is “cisco”. Then go to Network Configuration (Option 3) Then enable “Alternate TFTP Server” (Option 32) then type in the TFTP server address. The most common problem though is an error in the XMLDefault.cnf.xml file. I find myself having to do this very often on many networks.

Once you see the Sip logo in the upper right corner you are now safely flashed to 7.5. You’ll need to perform this process one more time to bring the phone up to the latest firmware. At the time of this writing that was 8.11. Open up your XMLDefault.cnf.xml file and replace the previous lines with

<loadInformation8 model=”IP Phone 7940″>P0S3-08-11-00</loadInformation8>

<loadInformation7 model=”IP Phone 7960″> P0S3-08-11-00</loadInformation7>

Reboot the phone again and it should update to the latest firmware.

This will get the phone reflashed, from here on you’ll need a configuration file to register the phone to a PBX. We have one already made for the Cisco 7941  / 7961 over here.

Script to automatically turn your CentOS 5.2 installation into a Router with Squid Caching

Monday, March 2nd, 2009

I’ve put a lot of time into this guy! And I’m proud to share it with you. This script and configuration files, when configured correctly for your network will turn your CentOS 5.2 installation into a network router with dhcp, dns, squid, samba, iptables and webmin. I’ve also provided all of these files tarballed together so that you can just untar them and use my configuration. Make sure you change the admin password in the first section of install.sh

NOTE: This script is missing one function. You must change net.ipv4.ip_forward = 0 to 1 inside of/etc/sysctl.conf 

To run my script automatically just login as root and run the following commands:
wget http://www.greenwireit.com/blog/wp-content/uploads/2009/03/install.tar
tar xf install.tar
./install.sh

Notes: For this configuration eth0 is your WAN interface and eth1 is LAN. I actually have no method of testing this configuration because I had to sanitise it to get rid of my own network variables. If you have any problems PLEASE post them in the comments and I will adjust them.

install.sh
echo Setting Root Password
echo yourpasswordhere &gt; /tmp/tmppass
passwd --stdin root &lt; /tmp/tmppass
rm /tmp/tmppass
echo Password Changed
#
echo Setting up Repositories
rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
echo Installing Dependencies
yum -y install perl-Net-SSLeay
echo Installing Webmin
rpm -Uhv http://internap.dl.sourceforge.net/sourceforge/webadmin/webmin-1.450-1.noarch.rpm
echo Installing Squid
yum -y install squid
echo Installing Samba
yum -y install samba
echo Installing dhcpd
yum -y install dhcp
echo Installing named
yum -y install bind
#
echo Copying Config Files
cp named.conf /var/named/chroot/etc/named.conf
cp dhcpd.conf /etc/dhcpd.conf
cp smb.conf /etc/samba/smb.conf
cp squid.conf /etc/squid/squid.conf
cp iptables /etc/sysconfig/iptables
echo Config Files Copied
#
echo Finishing Up
echo Starting Services
/etc/init.d/webmin start
/etc/init.d/squid start
/etc/init.d/smb start
/etc/init.d/dhcpd start
/etc/init.d/named start
/etc/init.d/iptables restart

iptables
*mangle
:P REROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:P OSTROUTING ACCEPT [0:0]
COMMIT
*nat
:P REROUTING ACCEPT [0:0]
:P OSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 111 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 135:139 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 445 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 9022 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 4445 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 1720 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 5038 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 3306 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 21 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 23 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 25 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 79 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 110 -j REJECT --reject-with tcp-reset
-A INPUT -i eth0 -p tcp -m tcp --dport 143 -j REJECT --reject-with tcp-reset
-A OUTPUT -o lo -j ACCEPT
COMMIT

squid.conf, configured for transparent NAT. Which means as long as iptables is pointed to it, it will automatically cache and accelerate your internet connection.
acl all src 0.0.0.0/0.0.0.0
acl lan src 192.168.1.0/24
acl localhost src 127.0.0.1/255.255.255.255
http_access allow localhost
http_access allow lan
cache_mem 64 MB
cache_store_log none
http_access allow lan
http_access deny all
icp_access allow all
miss_access allow all
cache_mgr youremail@yourserver.com
http_port 3128 transparent

dhcpd.conf
ddns-update-style interim;
ignore client-updates;

DHCPARGS=eth1;
subnet 192.168.1.0 netmask 255.255.255.0
{
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.1.1, 4.2.2.1;
range 192.168.1.10 192.168.1.150;
}

smb.conf

[global]
workgroup = workgroup
server string = Router
local master = no
domain master = no
preferred master = no
password server = None
guest ok = yes
guest account = root
security = SHARE
dns proxy = no
bind interfaces only = true
interfaces = eth1 192.168.1.1

[share]
path = /share
guest ok = yes
writeable = yes
create mask = 0777

[backup]
path = /backup
guest ok = yes
writeable = yes
create mask = 0777

named.conf
options {
forwarders {4.2.2.1; 4.2.2.2;};
forward only;
listen-on {192.168.1.1;};
};

How to Install Windows XP on a Dell Vostro 220 or Vostro 1520, the Crashless way!

Thursday, February 12th, 2009

Steps that you must perform before Windows XP will Install: Below is a narration.

Switch Hard Drive Controller from AHCI to ATA:

  1. F2 at BIOS Screen
  2. Standard CMOS Features
  3. SATA Mode: Change from AHCI to ATA

Make sure your Windows XP CD is Slipstreamed to SP2 or 3

  1. Download nLite from here
  2. Download Service Pack 3 here
  3. Use nLite to Copy files from XP CD, Slipstream and make ISO with the new disk image.

I customer brought in a machine I had ordered for them needing Windows XP. I had ordered it with Vista and assured her that everything would be okay. Well, unfortunately the hospital she works for will not support Vista. So with my foot in my mouth I put in my trusty Windows XP Home CD for customers. The machine loads up the first part of Windows Setup then crashes with a BSOD (Blue Screen of Death). Saying that I need to run chkdsk /f , along with some other information that I didn’t read. Well first thing this makes me think is SATA Controller? That’s exactly what it was.  Windows XP apparently doesn’t work well with AHCI (out of the box), so you’ll have to use the above steps to switch the machine to ATA mode in the BIOS. After that I got almost to the same place then I got a pci.sys error. Which is apparently caused by another piece of hardware not supported by Windows XP until Service Pack 2. My Slipstreamed SP3 disk is was having CD-KEY issues with the Pre SP3 OEM key so I had to slipstream a new one using nLite. Once I had those two things out of the way Windows XP SP3 installed swimmingly

Watch out on the License Keys, you may have to use SP2.

Update 28 Mar 09:

Eric reports that if you install the chipset drivers before installing the other drivers you can end up experiencing a variety of strange issues. Eric reports that you can solve the problem by installing “Desktop System Software (DSS)” which is found in the System Utilities section [under Vostro 220 on the Dell Support site]. When checking the offerings I noted that one download was recently updated and marked “Urgent”.

If you found this article helpful, please link to it from your blog, or vote it on one of the Share and Enjoy links below. Google determines quality based on your link-support!

Removing Antivirus 2009 with a Hijacked Browser, and Blocked Applications

Tuesday, February 10th, 2009

As a foreword, this guide is intended for Technicians, End-Users will find some of the terminology difficult to understand. I recommend that people who do not feel comfortable making system wide changes should consult a certified technician.

I had the great privilege the other day of removing one of the worst AV2009 (Antivirus 2009) infections I have ever seen. This Trojan is frighteningly hard to get rid of. What probably makes it most dangerous is not the actually annoying AV2009 popups but the other infections that AV2009 downloads onto the system.

Here are some symptoms I’ve seen caused by AV2009:

  • Hijacking of TCP/IP Stack. Websites would be redirected affiliate pages.
  • A wide number of secondary infections downloaded.
  • Execution prevention of HijackThis, Spybot, SUPERantispyware. Malwarebytes Anti-malware, Killbox.
  • Fake reboot screen and BSOD which makes the user think that purchasing is necessary to continue.

The most frustrating part of this entire endeavour is that most of the tools that the average technician is used to have been blocked by the trojan and its minions. Not to mention the enduser typically can’t download a remote control tool from a Technician’s portal. Here is what I had to do to remove the infection it was a slow process but it worked.

At nearly every step of the process it is necessary to rename the .exes of installers and executables. I recommend that before you get started you download the following apps from an uninfected computer to a flash drive.

Rename each of them from their original filenames to something that will allow you to recognise them but remove important identifiers. An example would be SSD.exe instead of spybotinstall.exe. Copy them all to a flash drive so that you can avoid the frustration of dealing with a hijacked browser.

The trick to removing this infection is throwing everything at it. You’ll need to chisel away at the number of infections by using everyone of these tools to go at it from a different angle. The best way to deal with the hijacked connection is by setting up a proxy server on another machine on the network and using it as the internet connection.

I will provide you with the order I typically use, although you can can follow whichever you prefer.

1. I recommend the first thing you do is to install Spybot’s Teatimer. This will allow you to control infections that may try to rewrite Registry values once you’ve deleted them. Often times the update server will be rerouted to localhost 127.0.0.1. If this happens, elect to not install updates immediately in the installer, you can specify a proxy later.

2. Nextly I usually run HijackThis and remove all the alien entries. Most of the harder infections will resist this because they use WinLogon and DLL hooks. But the simpler infections will not come back on next reboot.

3. Reboot the machine. This should let your HijackThis changes set in.

4. Run ATFCleaner. This will delete your Temporary Internet Files and System Temp files. This means that your scans will move a lot faster. Sometimes up to an hour faster.

5. I recommend that you now install Avira Anti-vir and have the real-time virus protection run. This means that while the other scans are running it will also double check the files. It means the scan will go much slower, but you won’t have to run a full scan later with Avira.

6. I now recommend that you run, Spybot, MBAM, SUPERAntiSpyware, PCTools Spyware Doctor. Reboot between each of these, if the application requests to run on reboot. Run it. This is going to take a while so let the applications run whenever they ask to. When the scans starts to come up clean, you can skip to the final step.

7. Use Unlocker/Killbox to remove any particularly stubborn files thatkeep coming up in the scans. Use safemode with command prompt to increase the likelihood that you’ll be able to delete the file. The Spyboot File Shredder is also a very useful way to destroy a stubborn file. Process Explorer is a useful way to see if a stubborn dll file is still loaded.

8. Finally check HijackThis one last time to verify that it comes up clean. From command prompt run “sfc /scannow”. This will check your windows installation for corrupt files. It should make sure that any files corrupted by the infections will be repaired.

Voilà. If this doesn’t work, you’re going to have to get creative. Or better yet, reformat. This infection is a real pain and you can’t win every battle.

Hard Refresh a Page in Firefox on a Mac (Ctrl+F5)

Tuesday, January 27th, 2009

If you’re reading this chances are you’ve probably already learned that Ctrl + F5 in Firefox  on Mac OSX opens the screen reader. Typically in most browsers Firefox, Chrome, Internet Explorer etcetera, Ctrl + F5 hard refreshes the page. Meaning that the browser does not read any of the information on the page from cache, instead it downloads everything fresh. The correct command to do a hard refresh in Firefox on a page (force the page to reload all data) is “Cmd (Apple) + Shift + R”. This only works on Firefox, not in Safari.

If you need to disable the screen reader press Ctrl + F5 again and it should turn off.

How to remap a Short Circuited Key

Saturday, January 17th, 2009

Did you spill some water / coffee / soda / beer / vodka on your keyboard? Well chances are one or more of the keys are acting strangely. If  it’s an important key like a vowel letter, I think you may have no choice other than to get a new keyboard. Fortunately they’re not too expensive and not hard to replace…even for a laptop! (ebay) But what if it’s a not so often used key? Maybe it makes more sense to disable or reassign the damaged key rather than getting a new keyboard. A good buddy of mine Peter Althaus has this exact problem. His shorted key in question was the German Special Letter ß. Whenever he typed the Letter T, both T and ß would show up.

[5:47:13 PM] koolkarma says: now tßhe damn ß is ßtyping ißtself witßhoußt me pushing anytßhing.

The solution? Remap the key! We can remap the ß key to all zeros and disable the key in windows. There are a few ways of doing this. The cleanest way is using regedit, but it requires us to have the binary values for the keys we want to remap, unfortunately that’s not nearly as easy as using this clever app: SharpKeys

Make sure you have the Windows .NET 2.0 Framework Installed!

Once you do it’s a pretty quick process to disable or remap the key and fix your problem! Install .NET 2.0 and SharpKeys and open it up. This is what the first page looks like.

SharpKeys at Startup

SharpKeys at Startup

Go ahead and click add, here we can remap our keys around the way we want them.

Capturing a Key with SharpKeys

Capturing a Key with SharpKeys

If you click the “Type Key” button you can skip ahead of trying to find the key in the list. Sometimes the key may be too broken to be tapped, but if it isn’t, I definitely recommend this route.

When you’re all done press Okay, then press Write to Registry and reboot. I definitely recommend you both disable the bad key and assign it a replacement key at the same time. For example if your Right Shift Key is broken, disable it and reassign it to the Left Windows key all in one go. This way you can use the “Type Key” feature on both sides. Chances are between the Caps Lock, Left and Right Windows Key and other not so often used keys on the keyboard you’ll be able to find a new home for your damaged key.

How to Tether an eee PC to an iPhone

Saturday, January 17th, 2009

Before I begin let me give you a disclaimer:

TETHERING YOUR IPHONE TO A COMPUTER IS AGAINST THE ATT TERMS OF SERVICE

DO NOT DO IT

JAILBREAKING YOUR IPHONE WILL END YOUR IPHONE’S WARRANTY

DO NOT DO IT

Before we get started let me explain some of the risks. Jail-breaking your iPhone can be dangerous, and it voids your warranty. Although I have never personally seen anyone ever brick their phone during Jail-breaking, it has happened. Balance the positives and negatives. Furthermore, using your iPhone as a modem is against your terms of service. In the past ATT has contacted users who have been discovered to have used their iPhone as a modem. Be careful. The “unlimited data plan”, in actually has a 5GB/month limit before ATT will call you to “reassess your needs”. If you do tether your iPhone to your eee PC or other laptop. Be prudent about usage, don’t abuse it, and if you do need a full time mobile modem, tethering is not a replacement, get an AirCard from ATT or Verizon.

With that said. Let’s get to the guide. The process is really quite easy.It essentially involves two steps, 1. Jail-breaking the iPhone and 2. installing the correct software. With that said, let’s get to step one.

Jail-breaking the iPhone:

There are already way too many much better guides on jail-breaking the iPhone out there. So I’m going to be quick and just provide you with the resources you need. You are going to need two things, QuickPwn and a copy of a clean iPhone firmware.

Between the two of these it will allow you to Jailbreak your iPhone in place without losing your settings, and will give you access to Installer.app and Cydia

Installing PdaNET:

Once you have Cydia on your iPhone springboard, use it to install PdaNET on your iPhone, and the PdaNET Desktop on your laptop. Furthermore, make sure you have iTunes installed on your eee PC.

Once you have both installed go ahead and restart the iPhone by holding down the power button and sliding it off. This can help with some issues.

Now go ahead and plug the iPhone USB cable into the phone and the laptop, open PdaNET on the iPhone and set it to USB Mode. On the Desktop, right click on the tray icon and click connect. Voilà, PdaNET will establish a PPP connection to the iPhone and you’re browsing the 3G network! You can also use WiFi using PdaNET, but I’ve found tethering to be much more reliable, and much easier on both eee PC and iPhone batteries.

I’ve found an interesting way to save on bandwidth and help with speed is to set my Firefox User Agent String to mimic an iPhone. The user agent is how websites know what kind of browser you are using. If you set Firefox to pretend to be an iPhone you will receive web-pages in the iPhone format. Very useful when trying to mitigate bandwidth usage. Here is a guide on how to do it.

Also I recommend that you find WAP versions of your favourite sites. These are websites that have specially formatted mobile versions. Although the 3G connection is plenty fast for most browsing I like to veer on the safe side.

Best of luck!

How to Wipe a Hard Drive before Donation. Zerowrite, Low-Level Format.

Sunday, December 28th, 2008

The Charity Mission Create asked me to create for them a disk that would allow them to protect the information stored on computers that were donated to them. I’m sure this is a common problem as people want to be certain that when they donate a computer, their personal information will be protected. For that reason I am making this guide to show you how to perform a Zerowrite, to completely and permanently remove all data from a machine. This is much more thorough than a Reformat, which only marks the drive as Empty, rather than physically resetting every bit on information the drive.

Most people probably remember “Low-Level Formatting”. A concept that for years was the maximum security you could use to protect the data left stored on your hard-drive. Low-Level Formatting used to require special software from the manufacturer of your hard drive and has since become less common. Now a days the best way to completely wipe a drive is to do a “Zerowrite” or write Zeros in every spot on the drive, effectively removing all of the data. This is done according to the Department of the Defense’s standard. We are going to be using a commonly available tool called the Ultimate Boot CD (UBCD) to facilitate the Zerowriting of a drive.

Firstly, Download and Burn the UBCD from here. If you need a programme to burn ISOs. I recommend CDBurnerXP or ImgBurn.

FOLLOWING THIS GUIDE WILL RENDER ALL DATA ON THE DRIVE UNRECOVERABLE.

Once you have those installed you’re ready to Boot from the UBCD. To do this, put the CD in your drive and Restart the Computer. You should see this pop up on the screen. If this does not pop up, you may need to Reconfigure your Boot Device Priority. Often times when starting up the Computer you may see a message that says “To Boot from Another Device Press Fx” now. Whereas Fx is a F Key on your keyboard. Use that feature to select the appropriate Optical Drive.

Once you’re at this point, Press Enter to Continue.

Booting from UBCD

Booting from UBCD

Next you should see this Menu, using the Up and Down arrows, navigate to “Hard Disk Tools” and Press Enter

Step 2: Hard Disk Tools

Step 2: Hard Disk Tools

 Next, Using the Up and Down arrows again go to “Wiping Tools” and Press Enter

Step 3: Wiping Tools

Step 3: Wiping Tools

Next using the same process, go to “Darik’s Boot and Nuke V1.0.7″ and Press Enter

Step 4: "Darik's Boot and Nuke V1.0.7"

Step 4: "Darik's Boot and Nuke V1.0.7"

If you see this screen, everything should be going as planned. It should take up to 60 seconds. 

Step 5: Wait a While

Step 5: Wait a While

Once you see this Menu you will now have to select which drive you would like to Wipe. Using the J and K keys to navigate up and down, mark the drives you want to Wipe using the Space-Bar.

Step 6: Select your Drives

Step 6: Select your Drives

Once they are selected the [            ] Brackets should now say “wipe”. When You’re Ready, Press F10 to Start 

Step 7: Ready to Wipe, Press F10

Step 7: Ready to Wipe, Press F10

Now you’re Wiping. Just let the process Finish then Restart. The drive should be entirely empty. Go ahead and reformat and repartition the drive to reinstall your operating system. 

Step 8: Bye Bye Bits!

Step 8: Bye Bye Bits!

A Guide, FAQ, and how to unbrick or reflash the Cisco 7970G

Tuesday, December 9th, 2008
Cisco CP-7970G IP Telephone

Cisco CP-7970G IP Telephone

We now sell the SmartNET Service Agreements for these phones! (Necessary to get Firmware)

Send an e-mail to smartnet AT greenwireit.com with your Model, Serial Number, Name, Address and Cisco username.

I see a lot of people coming here and thinking this is just a guide to Reflash/unbrick your phone, there is a complete FAQ here. Ctrl+F what you’re looking for!

(I noticed a high bounce-rate for keywords that don’t show up until further down, hence this message)


The following information is provided with no warranty what-so-ever. Flash your phone at your own risk!

You can also use this guide to reflash your phone from SCCP to SIP.

This phone is a dream when it’s working and a nightmare when it isn’t. I’ve spent a lot of time solving a whole number of different problems related to these phones. The information on a lot of forums out there is fragmented, and sometimes incorrect. Here I’m going to try and make an authoritative guide that works. Mainly because I wish I had one. If you think your phone is bricked, jump to the end of this guide.

Question: What’s wrong, I keep changing the config file but nothing happens?

Answer: Press Settings > 6 > 1 That will give you the Status Messages, it will tell you if your Config is invalid.

Question: Where do I get firmware for a 7970? It seems like I can’t find them anywhere.

Answer: Cisco keeps the firmwares for this phone under lock and key. You have to buy a SmartNET contract in order to get access to them. I know what you’re thinking, you’re not paying for firmware, you’ll look around for a public FTP server. I’ve done this, it works, but for seven dollars a year get one from CDW. It pays itself off especially since the SIP firmware is buggy, the updates help a lot. I have another post here which helps with the buying process at CDW, read it, and save yourself a few hours on the phone.

Question: Why can’t I save the configuration on my 7970? Everytime I reset it seems to forget everything.

Answer: The only way to permanently save a wide number of features on the 7970 is by using a configuration file, these phones are not really intended to be used on their own they are supposed to be used in conjunction with a TFTP server or CallManager.

Question: What is SCCP? Why won’t it work with Trixbox / Freepbx / Whatever?

Answer: SCCP is the Cisco CallManager protocol. It’s very popular in a lot of corporate environments and very powerful. However to the average Asterisk user installing SCCP modules can be difficult and flaky. Your phone will most likely come flashed with the SCCP firmware and chances are if you’re using asterisk you are going to want to reflash your phone into the SIP firmware.

Question: Okay, now I know what SCCP is. How do I reflash my 7970 from SCCP to SIP?

Answer: It’s mostly the same process as “unbricking” the phone, since most “bricked” 7970s are just need need of a new firmware.

To reflash the phone you’ll need:

  1. A working 7970G with a stable power source.
  2. Updated, working firmware from Cisco. Here is an article on how to get SmartNET Contract from CDW.
  3. DHCP Server and TFTP Server configured as described at end of this article
  4. Properly Configured XMLDefault.cnf.xml or SEP<mac>.cnf
  5. Lots of time and snacks.

The phones when they first boot up look for their SEP<mac>.cnf file first. If they cannot find that file, THEN they look for the XMLDefault.cnf.xml. This means that if you have firmware version stipulated in your SEP<mac>.cnf file, and another in your XMLDefault.cnf.xml file you phone will jump between firmwares based on which configuration file it has loaded. I recommend for a brand new phone you put NO phone specific configuration, and just use the XMLDefault.cnf.xml. Once it’s correctly flashed to the latest SIP firmware, then you can start going through the arduous process of getting the phone to accept your config file.

Question: What the hell is a .cop file? And what do I do with it?

Answer: It’s compressed, right click on it with WinRAR or 7zip and extract it. You’ll find a bunch of goodies inside. The version of the firmware and the version you will be entering into the XMLDefault.cnf.xml file will be the .loads file. For example here it is: SIP70.8-4-2S.loads

apps70.8-4-1-23.sbn
cnu70.8-4-1-23.sbn
copstart.py
copstart.sh
cvm70sip.8-4-1-23.sbn
dsp70.8-4-1-23.sbn
jar70sip.8-4-1-23.sbn
load119.txt
load30006.txt
SIP70.8-4-2S.loads
term70.default.loads
term71.default.loads

Question: My phone keeps saying “Error Verifying Config Info”

Answer: . These phones are so specific, the configurations are case sensitive and the syntax strange. On top of that what works in one version of the firmware won’t work in the next, Cisco keeps changing thigns. I recommend finding a config that detects without any errors and modify it till it works. A single letter can cause the phone to not provision or accept your config. Also make sure the DNS and Gateway are set. The phones can get upset if they are not. Check the next question for a copy of my SEP<mac>.cnf.xml file.  Check voip-info, that page is a mess but it has A LOT of info.

Good Advice: Add things one at a time, work your way up. It takes FOREVER, but I’ve literally had times where I’ve copied and pasted a few lines of code, and the config stopped working. Then I manually added each line one at a time and it worked. Made Zero sense but there was a problem somewhere that the phone didn’t like.

Question: My phone keeps saying “No CTL Installed”,  or .tlv not found?

Answer: The 7970 does not actually need this file but it looks for it anyway. A lot of people think that the reason why their phones are not provisioning/loading is because of this file. It’s actually a symptom rather than the cause. When the phone has an invalid firmware it will keep checking for a good one. Everytime the phone checks for a firmware it checks for the CTL .TLV file. This means that your Status messages on the phone and TFTP log will be filled with requests/errors for this file. Don’t worry, you don’t need it. It’s just annoying.

Question: DNS Unknown Host

Answer: This is frustrating as hell, from what I understand it’s caused by the <callManagerGroup> setting. Unfortunately, because we’re not actually using CallManager here, I cannot find a valid way to stop it. Maybe if you set a valid DNS name for your PBX and then set <processNodeName> to match it will stop. I’ve never got it to go away. It’s fortunately not a big problem.

Question: My phone is provisioned and ready to go but I can’t make calls?

Answer: Whole bunch of potential problems, first thing I would try is make sure whether the NAT settings are correct on the phone and the pbx. NAT should be off when configured locally and ON when going through a router.  Other than that comb through your configuration file, and your PBX. Chances are it’s a connectivity issue. Also make sure that a line is defined in the first slot on the phone. The Trixbox forumand the Voipuser Forum has loads of advice and lots of genuinely helpful people.

Here is my config, you’ll need to remove/change some stuff, but it contains a lot of helpful things you may need. I can confirm that this config works with SIP70.8-4-2S , and is based off of the Trixbox template with some modifications as the default did not work for my phone.

Cisco 7970G SIP Configuration with Speed Dial and XML menus.

Excuse the SEO friendly name. I also have a post here with some other help on speed dials.

Question: My phone is stuck at the “Upgrading” Screen , is it bricked? How do I debrick it?

Answer: There are a number of reasons why your phone might be doing this, if you are at the upgrading screen though, it means that you’re phone is NOT bricked. Merely, lost and confused. Don’t believe what people say, it’s not bricked.

Every time a phone has done this to me I have used the same process to fix it. I am going to provide two ways to do this, one for people with windows and a normal home network. And one for those who already have Cisco 7960, 7940 or other IP phones on their network. If that’s you skip ahead, you know how to configure tftp already.

Method 1: TFTPD32 in Windows

Chances are if you phone is stuck at the Upgrading screen it’s just lost and needs a firmware. We’re going to use a number of tools to make an error-proof environment that’ll coax your phone into getting a good firmware from us.

Firstly, determine how you are going to connect your 7970G to your DHCP/TFTP server. You’re going to need to make sure that there is no other routers on the network that could send competing DHCP broadcasts. I recommend one of two scenarios.

1.Connecting the Phone and Computer directly with a Crossover cable.

2.Connecting the Phone and Computer together on a network switch with no other devices. Notice I say SWITCH not ROUTER. You could use a router if you configured it properly, but that’s another story.

The switch option works a bit better because it prevents the computer’s LAN interface from going up and down depending on if the phone is plugged in or not.

Next you are going to need to get a copy of tftpd32:

Personally, I like to get the zip file, and extract it into a folder along with the firmwares from Cisco.

Now that you have tftpd32 open and running, we need to configure it:

  • Open up the settings box
  • Enable DHCP Server, TFTP Server, and Log Viewer, all others can be unchecked.
  • Make sure that you have set the directory into the same directory as your Cisco Firmware Files.
  • Make sure you have the correct configuration files in the directory including a XMLDefault.cnf.xml that at least partially resembles this one: (right click save as)
  • You may have to disable “Ping First” on some phones, they try to get more than one IP.
  • Set TFTP Security to STANDARD, in the image it says None, you will get an error.
  • Make certain that the bind address is set to the correct interface.
TFTPD32 Configuration

TFTPD32 Configuration

  • When done go to the DHCP tab
  • Make sure a DHCP and DNS server are set. Under additional option set “150″ and make the IP the same as your TFTP server.
TFTPD32 DHCP Settings for Cisco 7970G

TFTPD32 DHCP Settings for Cisco 7970G

  • Check for any settings that I may have missed and double check that everything is correct.

Here is the magic part.

  • Unplug the phone.
  • When the speaker light comes on hold down the # key.
  • When you see line lights begin to cycle, let go of the # key.
  • Once the cycle has completed once.
  • Type in: 3491672850*#
  • Make sure you type it right, if you mistype a single number, the phone will restart without eating the firmware.
  • The phone will turn off, and the first line light will turn red.
  • DO NOT UNPLUG YOUR PHONE NOW YOU WILL BRICK IT FOR REAL.
  • The screen will go black and the phone will seem like it’s off for around five minutes.
  • You should see the phone pull files from the TFTP server, the phone will first look for it’s SEP<mac>.cnf.xml file, and if it doesn’t find it, it will look for XMLDefault.cnf.xml
  • If the files are correct the phone should boot up correctly flashed.

If you can’t make a call immediately or the phone says “Unprovisioned”, that’s okay. You are out of the woods for now, all you have to do is find the annoying little error in your config file.

Here is a Youtube Video of the resetting process. This is for a typically hard reset which means it will only be the same up to the point where you put in the numbers. THE NUMBERS AND AFTERWARD ARE DIFFERENT.

Method 2: You already have a network with Cisco 7960s or 7940s or other IP Phones.

If you have a CallManager server, try hooking it up directly to that, this is the best way to get the 7970G back in action. Once you have the SCCP firmware on you can try flashing to SIP again.

I’m going to assume since you are reading this you don’t need any instructions about how to do this:

  1. DHCP Option 150 , no Option 66 won’t suffice, these phones are picky.
  2. Gateway and DNS must be set
  3. TFTP Server must have all the correct files and XMLDefault.cnf.xml in the root directory.
  4. Follow the instructions above under “magic part”.

Voilà !

You’re phone should be up and ready to go. Well at least until you break it again. If you have trouble with the phone not taking a new configuration file at boot, post your config file and I’ll try to help you with it.

Oh no! My phone screen is black, nothing is working, I’m freaking out!

A few folks wrote in because their phones seemed more bricked than usual. One of these users who found a solution to his problem was kind enough to write up a little description of the issue and the solution. Here writes Scott from U of Toronto:

You've got it.  Here's the deal:

This situation can occur if the factory reset process is interrupted.  If the tftp server isn't up & running, if the power is cut, etc.

The reason why you can't put it back into factory reset mode seems to be because it's still in the process of the factory reset -- it's just been interrupted.  Other than the speaker light coming on the phone appears dead for all intents and purposes.  The screen won't come on or anything.

So what you do is you plug it in and leave it to find the firmware on tftpd32... eventually it resumes the reset process and pulls down the firmware from there.  If things aren't set up right on the server, the phone will never do it.

You can unplug the phone multiple times and it'll still continue this process... it's incredibly resilient in that way.

The only way to see that the phone isn't smoked is to watch the log viewer of the tftp server... it'll show the phone trying to get an IP.  This can take 5 mins or more.

So basically, you can interrupt the factory reset and pick it up again as long as all your ducks are in a row.

Hope this helps!

Scott

A lot of people I’ve spoken too have said two interesting things about this situation as well. The screen although apparently black, is still on. Read this post over at the trixbox forums. “SteveW” writes that if you use a high powered torch you can actually see motion on the screen. (Light torch, no flame please). I’ve heard on several occasionals but cannot confirm that CallManager can get the phones working almost instantly. I’d love to hear more info on this because it may be possible to learn what CM can tell the phones that would bring them right out of Recovery. It’d be interesting to see if we could mimmick that with standard tools.