Archives of 2012

Professional Blogging

No, not here. Instead, use these links for your reading pleasure:

Posted by Matias at 11.05.2012 14.46 (5 years ago) | 3113 comments

Sony Vaio P, Windows 8 Consumer Preview and Mobile Broadband

Update: Added SFEP Driver installation. Works also with Windows 8 Release Preview.

Let's see if this long-awaited post starts a new era in updating this blog, hopefully the era won't be as nerdy as the contents of this post, though.

I have a lovely Sony Vaio P (VGN-P31ZK) ultraportable, which came with Windows 7. Unfortunately the hardware was just too flimsy for that operating system, so I have been using Ubuntu. Windows 8 Consumer Preview works even better than Ubuntu, with the exception of out-of-the-box support for mobile broadband.

After some trial and error I found the way to install the correct set of drivers that enable mobile broadband. These instructions are likely to work in other Vaio models also, at least those sold in Europe, in which the 3G modem / GPS combo device is Option Globetrotter MO40x.

Install Sony Shared Library

Go to Vaio Support and download Sony Shared Library. Extract file and run setup. It should install to Windows 8 normally.

Install Sony Firmware Extension Parser Driver

Download SFEP Driver from Vaio Support. Extract the file. Open Device Manager. You should see an unknown device. Select Update driver... from the context menu of the unknown device and point the installer to the directory where you extracted the zip file.

Install Sony Smart Network

Go to Vaio Support and download Sony Smart Network from Updates. Then use Universal Extractor to extract the actual installation files. Set compatibility for the extracted setup.exe to Windows 7 (right click the file and select Properties).

This needs to be done since if you set up the compatibility of the downloaded file, it extracts the files in a nice and compatible way. But then it launches the extracted setup application and the initial compatibility mode does not reach this far.

Reboot the machine. Device Manager should now see Globetrotter HSUPA Modem under Other devices.

Install Option Globetrotter Drivers

Go to Option driver repository. Download the latest Driver Installer Package. Extract the zip file. Then start Universal Extractor as administrator (control-right-click the file icon and select Run as administrator). Extract the driver installer msi file for your processor type (32- or 64-bit; Vaio P is 32-bit).

Then open Device Manager. Right-click Globetrotter HSUPA Modem and select Update Driver Software. Select "Browse my computer..." and select directory GTHS7 nested deep within the extracted installer.

Device Manager will now install drivers. Globetrotter HSUPA Modem becomes GlobeTrotter MO40x and seven new unknown devices will appear under Other Devices.

For each of these devices, select Update Driver Software and follow the same steps as previously.

Reboot.

You should now be able to use Windows Mobile Broadband (press Windows+I to invoke the settings menu).

Network adapter reset script

For some reason, sometimes connecting to the network fails, but if you reboot the machine (without powering down), the mobile broadband starts working again. Another way is to disable and enable the network adapter from Device Manager. You can also use the following PowerShell script (how to run PowerShell scripts):

$wid=[System.Security.Principal.WindowsIdentity]::GetCurrent()
$wip=New-Object System.Security.Principal.WindowsPrincipal($wid)

if($wip.IsInRole([System.Security.Principal.WindowsBuiltInRole]::Administrator)) {
  Write-Output "Getting WMI object for adapter..."
  $n=Get-WmiObject Win32_NetworkAdapter | where {$_.Name -like "GlobeTrotter*"}
  Write-Output "Disabling..."
  $n.Disable()
  Write-Output "Waiting..."
  Start-Sleep 3
  Write-Output "Enabling..."
  $n.Enable()
} else {
  Write-Output "Launching script in elevated powershell..."
  $p=New-Object Diagnostics.ProcessStartInfo
  $p.FileName="powershell"
  $p.Arguments=(Get-Variable MyInvocation -Scope 0).Value.MyCommand.Path
  $p.Verb="runas"
  $pr=[Diagnostics.Process]::Start($p)
}

The script checks whether it is running in elevated context and if not, launches itself within elevated PowerShell. If the context is elevated, the script gets the management object for adapter, disables it, waits for a few seconds for everything to settle down (don't know if that is necessary) and then enables the adapter. Happy roaming.

Categories: Computers, Gear, Information, Programming
Posted by Matias at 02.06.2012 14.34 (5 years ago) | 3274 comments

content licensed under Creative Commons BY-NC-SA - Valid HTML 5