Category Archives: Network/Hardware
Rogers Enhanced Wi-Fi Modem (Hitron CGN2-ROG) on Bridge mode
A lot of people said that in the Forums that they Rogers does not sell the modem at store, they only rent. I guess that’s not true, I just bought one from official Rogers store today at Eaton Center for $149.99 CAD. I asked the guy not to enter the serial number on my account, since I don’t want to lose the Internet when I got home, so had to call 1-888-ROGERS1 by myself.
Call Customer Service and Tech support
- Tell them your new modem serial number (S/N) and update your account
- Tell them to update to the new profile on the plan (no extra charge). If you had the old modem before, you are probably on the old profile. The new modem has to work with the new one to get the faster speed. For example, old Extreme plan has 95 GB monthly limit with 1 Mbps upload. New Extreme plan has 120 GB monthly limit with 3 Mbps upload. You can easily tell from SpeedCheck.net and login to your Rogers account to check both. After Rogers updated your profile, it takes 10-15 min
- Reboot the modem (must do)
- DHCP release/renew IP on laptop or reboot (must do)
- After that, I had 35 Mbps download and 2.84 upload on my Extreme plan
P2P Download Test - 1.55 GB in 7 min AMAZING Speed!
Since Rogers stopped P2P throttling this year officially, I no longer need binary Usenet! P2P is back to the old days of glory! Look at the uTorrent photo, 1.55 GB was completed in less than 7 min with 3.75 MB/sec = 30 Mbps!! Pushed the speed almost to the max.
Side tips: Always use PeerBlocker or P2P VPN to avoid legal issue. Especially for software download, must use a VM to quarantine possible malware/virus and only run the keygen on your VM, never on your real laptop/desktop!
Installation Notes on Hitron CGN2-ROG for Advanced users + Bridge Mode
- No need to use that stupid USB key comes with the box, just login to the router using 192.168.0.1 (username=cusadmin, password=password)
- Disable Wi-Fi : Wireless > Disable Wi-Fi
- Run the modem as Bridge mode using your own router: Status > Capability > Uncheck “Residential Gateway function” and “UPnP”
- In Status > CM Status, write down “Cable Modem IP”. It is used for accessing the modem later, in my case, it is 7.27.xxx.xxx
- Change the password
- Reboot (After reboot, you will be on Bridge mode)
- DHCP release/renew IP on laptop or connect your own router now
- If you are serious about security, use a good router of your own and run the modem as Bridge mode, do not use the modem build-in NAT/Wireless
How to access the model after switching to Bridge mode
- Normally you don’t need this when your modem is working fine, but you may want to access it one day without doing a hard factory reset since 192.168.0.1 is no longer accessable. From the previous step, you have the the IP 7.27.xxx.xxx
- Connect your laptop directly to the cable modem, change the NIC IP to 7.27.xxx.yyy (yyy = anything from 2 to 254, in my screenshot I used 45)
- On your browser, go to http://7.27.xxx.xxx
- In fact, 7.27.xxx.xxx belongs to public range IP but it is not accessible from outside, it can only be accessed from LAN and you have to be on the same subnet. Perhaps, Rogers technical support may able to access your router remotely on this 7.27.xxx.xxx IP with the admin password. If you look it up on Internet, this IP block actually belongs to “Dod Network Information Center”, United States Department of Defense.
Mystery of Dod IP address
Well, according to DSLReport forum, Quote from sbrook “Because Rogers runs an integrated network across its entire geography, they managed to run out of internal IP address space in the 10.* non-routable IP addresses. So they went to IANA and said “Help” and IANA offered them a series of 7.*.*.* IP addresses that are actually assigned to the US Dept of Defence providing Rogers makes them non-routable at their internet “on-ramp” gateway routers. They can do this in part because US DoD do the same thing … they are not routable outside of the DoD internet on-ramp gateway routers. You’ll never actually see a US DoD system with a 7.*.*.* IP from the public part of the internet.
It’s the same as your having a router with IPs 192.168.0.1 and your neighbours all having routers IP 192.168.0.1 … they don’t see them because those addresses are not passed to the WAN side of the routers and blocked through most cable modems … the result is everybody can use 192.168.*.* without interfering or seeing everybody elses computers etc using that IP address space.” end quote
My new PC under $1000 CAD with Windows 8 and Deb’s Dell Studio SSD Upgrade
Since my last PC was broken, I did not have a computer for almost 6 months and I survived using the tablet and mobile phones. But there are certain things that cannot be done, for example photos editing and games. So I decided to build one from scratch, with a bit of patience (I had 8 rebates forms to fill out), I was able to get a good deal.
Under $1K CAD, I was able to get outstanding 296 fps on CounterStrike and ultra/extreme graphics settings on Starcraft 2 without overclocking. Most amazingly, cold start of Windows 8 took 10 seconds!!! Thanks to Patriot 32GB Ram and Kingston SSD.
Why did I go for i5 instead of i7?
I intentionally did not spend money on the best CPU (Intel i7) because you have to understand where the bottleneck is. Instead, I put the money on 32 GB Ram, SSD and GPU (GTX 660 ti). This makes my system out perform any i7 with limited Ram, 7200 RPM HDD and a crappy video card. Originally I debated if I should get a laptop or not, but for $1K, there is no way you can get this performance.
This is my new PC hardware configuration (total $989.91 CAD)
- CPU: Intel Core i5-3550 Quad-Core Socket 1155, 3.3 Ghz (up to 3.7Ghz Turbo) , 6MB L3 Cache, 22nm (Retail Boxed) Gen3 ($194.99 CAD)
- Motherboard: Asus P8Z77-V LK Socket 1155 Intel Z77 Chipset ($119.99 CAD)
- Ram: Patriot Intel Extreme Masters LE 16GB (2x8GB) DDR3 1600MHz CL9 DIMMs x 2 = totally 32 GB filled up all slots ($54.99 x 2 = $109.98 CAD)
- SSD: Kingston HyperX 3K 120GB 2.5″ SATA 6Gb/s Solid State Drive (SSD), Read: 555Mb/s Write: 510MB/s ($109.99 CAD)
- GPU: MSI Nvidia Geforce GTX 660 ti 2GB ($279.99 CAD)
- Optical: ASUS BW-12B1ST 12x Blu-Ray Writer ($59.99 CAD)
- Case: Antec Three Hundred Cast ATX ($44.99 CAD)
- PSU: Antec HCG-620M 80Plus Modular Power Supply ($69.99 CAD)
- HDD: 7200 RPM Western Digital 700GB HDD from old computer ($0.00 CAD)
Deb’s laptop SSD upgrade
For Deb’s 3.5 years old Dell Studio laptop, a 256 GB ADATA SX900 SSD ($149.99 CAD) made her computer feel like a new born laptop. The reason is that in 2009, the laptop came with 4 GB of RAM with 32-bit Windows Vista where 1 GB of Ram was totally wasted. Now with 64-bit Windows 8, it unleashed the full power. Also, 5400 RPM HDD was so damn slow compare to ADATA SSD. The SSD is feels like 10x faster making the difference as night and day.
Research.. research and research
I built PC in the past, but since I don’t keep track of the hardware changes all the time, I had to do A LOT of reading and research before buying the right combination with the limited budget. I spent combined of totally 8 hours just to read and pick the items that are (1) OnSale AND (2) with Rebates AND (3) Have stock. All items were bought from local computer stores at Canada Computers 90% and NCIX 10%.
Related Posts
Getting JPG from Geovision 8.2 HTTP Server with embedded authentication
Recently I upgraded my home security system Geovision from v6.1 to v8.2 but I found that there is one serious problem. In Geovision v6.1, you can get the JPG from your camera directly using http://serveraName/cam1.jpg. However, this no longer works because they have enforced the authentication. I tried to contact their tech support, they said that the only way to do it is to get the SDK. Okay, WTF… so, I do my own hack.
In fact, if you study v8.2 closely, you notice that you only need to authenticate once and you can access the JPG in the format of http://ServerName/[GUID]/Cam1.jpg. However, the GUID keep changing, such as closing the browser.
Since I am running PHP, I can get around easily. All I have to do is to “POST” the username/password to the Geovision web server and then parse the GUID from the HTML. Then, I can get the image and do my own resizing and whatever I need to do. Here is the source code:
Download the ZIP file for all source files geovision_v8.2_php_scripts.zip
index.php shows all 4 cameras in JPGs
geovision.php the actual JPG image for specific camera. After authentication, you can get the image directly by using geovision.php?id=0&resize=0&guid=xxxxx
config.php configuration file for your server, username and password
geo_guid.php authenticate by logging on to the server and parse the HTML by returning the GUID
File #1: index.php
<html> <body> <? // --------------------------------------------------------------------- // Authenticate Geovision HTTP web server and show the JPGs of cameras // with resizing feature in geovision.php, you can customize it for // showing it on mobile phone // // Written and Copyrighted by: Mythos and Rini // Created on: 2010-09-12 // // Required: Geovision version 8.2 // PHP with CURL and GD library installed // // Notes: Change the Server name, Username, Password in config.php // --------------------------------------------------------------------- include("config.php"); include("geo_guid.php"); ?> Geovision GUID: <? echo $geo_guid; ?> <br/><br/>Cam 1<br/> <img border="0" src="geovision.php?id=0&resize=0&guid=<?=$geo_guid?>&time=<?=time()?>"> <br/><br/>Cam 2<br/><br/> <img border="0" src="geovision.php?id=1&resize=0&guid=<?=$geo_guid?>&time=<?=time()?>"> <br/><br/>Cam 3<br/><br/> <img border="0" src="geovision.php?id=2&resize=0&guid=<?=$geo_guid?>&time=<?=time()?>"> <br/><br/>Cam 4<br/><br/> <img border="0" src="geovision.php?id=3&resize=0&guid=<?=$geo_guid?>&time=<?=time()?>"> </body> </html> |
File #2: config.php
<? // --------------------------------------------------------------------- // Configuration of your Geovision Server/port and Username/Password // // Written and Copyrighted by: Mythos and Rini // Created on: 2010-09-12 // // Required: Geovision version 8.2 // PHP with CURL and GD library installed // // --------------------------------------------------------------------- define("GN_GEOVISION_CAMERA", "ServerName:Port"); define("GN_GEOVISION_USER", "UserName"); define("GN_GEOVISION_PASSWORD", "Password"); ?> |
File #3: geo_guid.php
<? // --------------------------------------------------------------------- // This file uses CURL to logon to Geovision HTTP web server and then // Parse the HTML using the PHP XML parser, return the GUID // // Written and Copyrighted by: Mythos and Rini // Created on: 2010-09-12 // // Required: Geovision version 8.2 // PHP with CURL and GD library installed // // Notes: Change the Server name, Username, Password in config.php // --------------------------------------------------------------------- $url = 'http://' . GN_GEOVISION_CAMERA . '/webcam_login'; $ch = curl_init($url); // // In Geovision HTML form, it takes 2 HTML form elements "id" and "pwd" // Also, ImageType = 2 - JPG // curl_setopt ($ch, CURLOPT_POST, 1); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); // return as string instead of showing to screen curl_setopt ($ch, CURLOPT_POSTFIELDS, "id=" . GN_GEOVISION_USER ."&pwd=" . GN_GEOVISION_PASSWORD."&ImageType=2"); $output = curl_exec($ch); //Create a new DOM document $dom = new DOMDocument; //Parse the HTML. The @ is used to suppress any parsing errors //that will be thrown if the $html string isn't valid XHTML. @$dom->loadHTML($output); //Get all links. You could also use any other tag name here, //like 'img' or 'table', to extract other tags. $nodes = $dom->getElementsByTagName('title'); $nodeListLength = $nodes->length; // this value will also change $node = $nodes->item(0); // Since there should be ONLY one element returns, that's the GUID $geo_guid = $node->nodeValue; // Close handle curl_close($ch); ?> |
File #4: geovision.php
<? // --------------------------------------------------------------------- // This file show individual image from Geovision HTTP web server // // Written and Copyrighted by: Mythos and Rini // Created on: 2010-09-12 // // Required: Geovision version 8.2 // PHP with CURL and GD library installed // // Notes: Change the Server name, Username, Password in config.php // --------------------------------------------------------------------- include("config.php"); $id = $_GET["id"]; $resize = $_GET['resize']; $guid = $_GET['guid']; $my_host = GN_GEOVISION_CAMERA; header("Content-type: image/png"); // Read and send it to the client browser $my_url = "http://" . $my_host . "/". $guid . "/cam" . $id . ".jpg"; if ($resize == 1) { $src_img = @imagecreatefromjpeg($my_url); // get old size of the image $old_w = imagesx($src_img); $old_h = imagesy($src_img); // new size for cell phone // 160 x 120 radio 1.33333 (100x75) $new_w = 160; $new_h = 120; // resize the image $dst_img = imagecreatetruecolor ($new_w,$new_h); imagecopyresampled($dst_img,$src_img,0,0,0,0,$new_w,$new_h,$old_w,$old_h); imagepng($dst_img); imagedestroy($dst_img); } else { $fn=fopen($my_url, "r"); fpassthru($fn); fclose($fn); } ?> |
SanDisk Marketing – Careful not to fall into the trap
I was looking for SDHC memory card for Deb since she is going to HK/Japan with her mom next month, and I ran into another marketing trick that I have to blog about. This is NOT the first time I see SanDisk doing these kind of marketing tricks, I just can’t believe big companies can be so cunning (but it’s totally legal). For you being a customer, you should know about this.

Looking at the flyers above, that price seems very attractive for 15MB/s, right? Wait… see the * besides it? what does it mean? Let’s understand the speed of memory card.
For Compact Flash, depends on the brand they will usually specific read/write speed:
- 10X = 12 Mbps (1.5 MB/sec)
- 50X = 60 Mbps (7.5 MB/sec)
- 100X = 120 Mbps (15 MB/sec)
- 150X = 180 Mbps (22.5 MB/sec)
- 300X = 360 Mbps (45 MB/sec)
For SDHC, industry standard are being identified using “speed class rating” specifies a MINIMUM sustained write speed:
- Class 2 = 15 Mbps (2 MB/sec)
- Class 4 = 32 Mbps (4 MB/sec)
- Class 6 = 48 Mbps (6 MB/sec)
- Class 10 = 80 Mbps (10 MB/sec)
Now go to SanDisk official SDHC site, see the small print at the bottom. Quote ” * 15MB/sec read speed. write speed lower. Based on SanDisk internal testing “
Do you see the problem?
Why the hell do you need 15MB/sec Reading? This is tricky advertising to attract customers. Ask yourself, if you need to capture HD video, you need fast Writing speed (for recording), not Reading (for playback)! The photo I took above, it has a “C” with “4″, that means “Class-4″ which has only 4 MB/sec minimum WRITING speed. Tips: Always look for “Class” for SDHC cards because it is the industry standard.
For example, if your camera has minimal requirement of using Class-6 (6 MB/sec) and you can easily fall into this trap by just comparing with the speed 15 MB/sec vs 6 MB/sec, and you think you got a good deal – sorry, you are another victim of SanDisk. Well, the possible consequence is that you will end up having some choppy videos in HD. Can you imagine you only find that out when you try to play it on your HDTV or computer after coming back from vacation? Please, shop smarter for your SDHC and educate your friends about it.
Related Topics I wrote in the past
Have fun..
Proof of Concept – Controlling Garage Door Opener remotely using mobile phone
About 2 Years ago, a huge snow storm made Deb’s car got stuck on our street, and it was very messy. Because Deb was in a rush, by the time she got to the highway she called me at work saying “I was in a rush and I forgot to close the garage door.” This was the project I had in my mind back then. Finally I have some time during Christmas holiday, I can try out this proof of concept.
First I bought a universal Skylink remote control from Home Depot (around $20, it works for most brands), because I didn’t want to ruin the original remote control comes with the opener. By opening the skylink keychain remote control, I could easily locate the switch. Just soldered the 2 wires and connected to the X10 Universal Module! It’s so simple, anyone can do it.
Low Tech X10 does the job
X10 technology is so old, I was the first generation user about 15 years ago. Since it is still working okay, I can still using. But if you don’t have it, don’t buy X10. Consider other products like Insteon, Zigbee and Z-Wave. If you have been using X10, you know it is NOT that stable and it can turn on by itself all of a sudden. Although it is very rare, it does happen. To make it safer, I added an Appliance Module on top of the Universal Module (see in 2nd last picture). In my PHP script, I do the following:
1. Turn On Applianace Module, Sleep for 3 secs
2. Turn On Universial Module, Skylink button is connected, Sleep for 6 secs
3. Turn Off Applianace Module
Note 1: The application shown in the picture is NOT a native compiled iPhone App. it is just a simple PHP script running on web server.
Note 2: This is a proof of concept and for demostration only, Firecracker and X10 combination is not secure.
Related Home Automation / Security Projects
A while ago, I wrote a web service so that I can read my basement (server room) temperature on my mobile phone, check it out if you are interested:
- Remote Temperature/Humidity reading on Mobile Phone Project
Configurations:
- Skylink Keychain remote control
- X10 firecracker (Serial to USB needed)
- X10 Universal Module (UM506)
- X10 Appliance Module (AM466)
- mscm17a.exe (download from Internet, free)
(All project photos were taken using point and shoot camera)
My first iPhone App – HelloWorld (Xcode on Windows Vista)
I love my iPhone 3GS. As an IT person, I am so curious on how to develop iPhone apps. Here is my first iPhone App:
Challenge 1: Need a Mac? or Run OS X 10.6 on Vmware
In order to develop iPhone app., you basically need a Mac., but I refused to buy one. Well, you can download the pre-loaded VM image from the usual place, or you can follow the link below to do a fresh install (it is legal, you buy a licensed upgrade DVD from Apple for $29.99) . For me, my friend Ed. is nice enough to give me a hand on this, that saves me a lot of time (Thanks Ed.)
- Snow Leopard boot-132 for VMware
- OSX 86 Project – Tips and Tricks
The only requirement is that, you need a machine that supports hardware virtualization (Intel VT) with 32bit XP or Vista as host OS. Bingo, I am running OS X on my HP laptop!
Challenge 2: Developer License for $99
Without the developer license, you can only test your app. on the iPhone simulator. Since I am testing my Hello World App. why would I pay $99 to Apple? There is a lot of articles out there teach you how to bypass code signature but many of them are for older version SDKs, they don’t work for 3.1.4 SDK. After trying out different methods from so many articles (took me 2 days), I finally found one in the forum. Basically you need to modify SDKSettings.plist (Info.plist doesn’t work for 3.1.4 SDK) and from the script, you can tell it is using codesign to sign the app. under the default name “iPhone developer” with the self-signed certificate. See screenshots!
- Bypass Code Signature (Does NOT work for 3.1.4 SDK)
- SDK 3.0 / Xcode 3.1.3 Build and Go (WORKS for 3.1.4 SDK)
- Creating a self-signed certificate (Apple official guide)
Challenge 3: Package it as IPA file and deploy to my iPhone
Finally, I need to package the app. as IPA file for my phone, please read the following link. In my screenshot, you can see I have 2 custom scripts under “Targets > IPA”. One is for signing the app. (runs the .py script), the other one for creating the IPA file.
- How to automatically build an IPA file from XCode
You do need a jail broken phone to install IPA file, please read my 2 other related articles for more information.
- iPhone 3GS tethering and jailbreak 3.1.2
- What’s next after jailbreaking my iPhone 3.1.2?
How do I like OS X Snow Leopard?
I was the FIRST generation of Apple user, even before Mac was born. I had Apple II+ and Apple IIe about 20 years ago and I wrote assembly language on them. However, After using OS X for 2 weeks, I still don’t like it that much (it is very personal and subjective). The ONLY part I like about OS X is Linux based, I can use Terminal so freely and write shell or python scripts. Overall, I still like Windows better and I am glad that I didn’t spend money on buying a real Mac.
Objective C – Return on Investment or waste of time?
Some friends of mine are using C++ for their daily job, it is absolutely not hard to write iPhone App. using Objective C. For Java and C# people like me, there is a learning curve. Is it worthy? What is the return on investment? There is an article talking a guy who worked for Sun Microsystem, he was a Java programmer and he spent his spare time to write a game and he earned about $600K in a month (more than HALF a million), of course he quited his job!
- iShoot Developer makes $600,000 in one month
VmWare Notes:
1. Install VMware Tools, you can enjoy full screen and way better graphic and mouse support
2. If you lose the the mouse or it hangs in OSX, click “CTRL-ALT” back to the system. Go to “VM” > “POWER OFF” and then start the OS again. DO NOT use “Reset”, otherwise you will see the Apple Logo on grey screen forever and it never boots successfully.
3. Always make backup from time to time of all your Vmware files, around 15GB if you are using VmPlayer like me.
Disclaimer: The article is for education purpose only, use at your own risk. The configuration that I am using:
- HP EliteBook 6930p with Windows Vista SP1
- Vmware Player 3.0 build 203739
- OS X Snow Leopard v10.6
- Xcode 3.1.4 with iPhone SDK 3.1.2
What’s next after jailbreaking my iPhone 3.1.2?
A lot of iphone 3GS newbie (just like me) successfully “jailbreak” their iPhones, but have no idea what to do next. This is my experience that I want to share with everyone. Okay, usually jailbreak programs would install some icons such as “Cydia” or “Rock” on your iphone. These are the keywords that you need to know:
- Cydia (Similar to Apple AppStore but it is for jailbroken phones, wiki)
- Rock Your Phone (Similar to Cydia but offers backup/restore, website)
In Cydia and RockYourPhone, you can find a lot of open source utils such as OpenSSL, OpenSSH, MxTube, etc. These are apps that cannot be found in Apple AppStore even if you want to pay (stupid eh?) Many apps on Cydia/Rock are apps rejected by Apple, yet some of them are not free, such as “MyWi” and “My3G” these are very good apps and I did pay for them through “RockYourPhone” as an appreciation to the developers. However, you CANNOT find any pirated or cracked Apps from these repositories (repo).
(1) IPA files – Drag and Sync
If you come across many iphone Apps from the usual places (Bit Torrent or Usenet, etc..) you will see they comes with *.IPA extension. By default, a jailbroken phone cannot install these apps, so the next thing is to modify your iphone using a famous app called “AppSync” (alternatively, you can use “Installd”) so that you can install *.ipa files. This is a very good guide:
- AppSync for iPhone 3.1.2 Jailbreak Firmware
Now, you can download your favorite Games, Apps, etc. All you do is to DRAG the *.ipa files to your iTune (Applications), and then Sync it with your iphone, that is so easy!
Ipa format is no mystery, it is stupid Apple tries to make it cool. Indeed, they are “ZIP” files, damn it. Just rename the extension unzip them and you will see the “PayLoad” folder and then, there is the “.app” folder containing the real apps. If you are interested in finding out more, you can use SFTP (see end of the article) to explore your own iphone, look under /Applications/ folder.
(2) Alternative way – Install0us
Install an app called “Install0us” on your iphone, that you can search/install apps directly from your iphone. Remember to get the correct version, for 3GS 3.1.2, you need AppSync para v1.0 for 3.1.2 AND you need Install0us v2.5.1 (v2.5 will not work for 3.1.2). There is a lot of good articles out there:
- install0us 2.5 for iPhone 3.1.2 Jailbreak Firmware
After starting “Install0us” successfully, set the home page to: http://appulo.us/appdb (They will ask you a stupid question, Google it for the answer). If you find appulos.us is too slow, try other alternatives:
Which way is better?
Personally I like the first method of downloading the *.ipa files and drag it to iTune and Sync it. There is a very good Russian site, many of those RapidShare or even Bit Torrent files were originated from this site:
- IGUI.ru
How do they do it? and why iPhone Apps are so easy to crack?
iPhone Apps are easy to hack because of Apple’s “AppStore”, this provides ONE single point of entry of weakness. In desktop world, each vendor has their own ways to validate their software license keys. However, AppStore concept makes it as ONE. The hacking community is so smart that they come up with a software called “Crackulous“ which can rip any PAID AppStore apps and make it free to share it with the community.
- iPhone app developers robbed: Crackulous released
Advanced Reference (SFTP + SSH)
To transfer files manually from/to iPhone, install OpenSSH from Cydia/Rock. Then use WinScp, thro WiFi/Tether from Windows and you can SFTP all you want. Default username/password is root/alpine, also there is another account: mobile/alpine . Indeed, this was the traditional way of jailbreak & unlock my wife’s old 2G phone years ago.
Remember to use Putty and SSH to your iphone and use the “passwd” command to change both “root” and “mobile” password, otherwise virus/trojan horse can take advantage of the default SSH password and potentially steal your information.
iPhone 3GS – “To enable tethering on this account contact ….”
I have been using my HTC TyTnII (Kaiser) with Windows Mobile 6.1 (Hyperdragon rom) for almost 2 years, and I finally couldn’t stand it and decided to upgrade to an iPhone 3GS. Although I have never had an iPhone before, but I did help my wife to unlock and jailbreak 2G iphone 2 years ago.
I was pretty happy with the iphone 3GS on the first day, but after I found that I couldn’t tether – I was PISSED. It said “To enable tethering on this account contact [Provider Name]“, that is bullshit since I have a 6GB data plan and it does not allow me to tether!! I called customer support and the idiot said that because I was on a “Blackberry 6GB plan” which doesn’t work for iPhone on tethering and they needed to do some investigation. After 5 days, still no tethering. But for the same account, same data plan, I could do it with Windows Mobile, what is the problem with these people? After reading some articles, I understand why – the reason is that Apple works so closely with these phone companies, they intentionally disabled tethering in iPhone version 3.1.x, so that they can charge their customers on tethering in the future (not now, since my provider actually allows me to tether without additional fee).
If you are using version 3.0.x, click here (very simple XML to modify your config profile) and it will enable tethering. Look into the XML file, there is key called “type-mask”, when it sets to -4 or -2, it will enable tethering. Also, read the “Apple Enterprise Deployment Guide” to get more information on this XML. But this doesn’t work for v.3.1.x.
Jailbreak 3.1.2
Originally, I didn’t want to jailbreak my phone but this “tethering” issue bugs me so much. My iphone 3GS comes with version 3.1 and I upgraded to latest 3.1.2 (baseband 05.11.07) when I ran iTune 9.0.2 on my computer. With the help of this article, I successfully jailbroke the 3GS in less than 5 min.
- Jailbreak iPhone 3.1.2 Firmware with blackra1n RC3
- After several reboot, you will see “blackra1n” on your phone.
- Click on it and install “Cydia” (App Installer for developers, you will need it later)
Tethering with CommCenter.path (At your own risk)
There is a CommCenter.patch that can do fix tethering issue, however a lot of people saying they got into endless loop of rebooting after applying the patch. I don’t want that.
- Enable Tethering using CommCenter.patch by Dev-Team (FYI)
Tethering with MyWi (Pay $10)
The alternative way is to pay $10 for “MyWi”. Search for “MyWi” on Cydia (it will also install “OpenSSL”, “Rock Extensions” and “RockApp”). Read this article:
- Enable Tethering on 3.1.2 using MyWi
This product is amazing, it enables Tethering, no more annoying message “To enable tethering on this account contact …” after connected to the laptop. Furthermore, it makes your iphone become a wireless access point (Adhoc) so that you can tether with WiFi, this is especially good if you don’t want a cable or you don’t want to install iTune (“Apple Ethernet” needed) on your computer.
Enable Tethering without paying
MyWi is a very good product, I am thinking of paying $10 indeed as an appreciation to developer (since I am a developer myself). However, there is still a way to get around this without paying – this will enable tethering, but you will lose the WiFi access point feature. (Read the comments on last link above, quote from “YourRegrets” and “prolifix”)
- Use Terminal on iphone
> cd /private/var/stash/Applications
> rm -rf Rock.app
> rm -rf MyWi.app
- Do a hard reset and you will have Internet Tethering enabled without paying.
Something You Have to Know – Why in Recovery mode after reset?
This Jailbreak is not perfect – If you run out of battery or do a soft reset of your phone, you will end up in “Recovery Mode” and you can’t use your phone, period. Originally I thought I screwed up the process and I did a factory restore for several times. But after reading some forums (see link below), I have a better understanding what happen – all you have to do is to connect your iphone to your computer and run the jailbreak program again, no data or app loss at all.
DIY Server Rack using 2×4
I have been hosting servers in basement for my side businesses for more than 12 years, and recently I decided to build a server rack with wheels because it’s easier to access from the back for maintenance. It was pretty easy, anyone can do it with no challenge at all. All materials can be found at Home Depot.
Here is what I have: (not all are shown in photos)
- 1 x 4U Antec Take 4 server cases, damn expensive case with Core 2 Quad
- 1x 4U Antec rackmount case with P4 old cpu
- 1 x 2U Visionman P4 server
- 2 x rackmount UPS (totally 12 batteries) can last for 3.5 hours
- 2 modems – one for Cable, one for DSL (one for download, one for hosting)
- 2 x Dlink Routers
- 1 x VPN Router
- 1 x Linksys NAS200 (Both CPU and NIC are slow, absolutely garbage)
- 1 x Cisco Gigabit switch
Indeed, building one rack should be enough to hold all of the above, why built two? Because I predict I may need more servers in the future despite I am running these servers with virtualization already. Also, it’s easier to build two rack at the same time.
Cloud computing and web services are supposedly the future, but I still don’t trust those big companies – after one incident that Google Gmail deleted my wife’s inbox for no reason, the plane e-ticket was gone just 2 days before the depature. Nice eh? That’s another reason I run my own servers.
































































