For me it’s been quite obvious but I am surprised how many iPhone owners I see complaining about EDGE speeds when they’re covering the antenna (that black plastic area on the back of the phone) with their hand.
A very useful tip for those using EDGE: Take your hand off the antenna! Your meaty fingers are absorbing all the Internet packets.
The advantage is especially obvious when you have low signal strength – but even when I have full bars, I see a 50% speed increase when my flesh isn’t absorbing all of those radio waves.
Let’s not forget that the warning manual that comes with the iPhone (you did read it, didn’t you?) says your flesh must remain three-quarter inches away from that antenna otherwise you exceed FCC limits for radio exposure.
Note (9/12): there is an application in the iBrickr PXL repository called ‘Balls’ which links to this page. I have nothing to do with that app; it was created by Grudgnor over at the MacRumors forum.
Those who have followed this blog will know that I like to like to play with unusual input methods (see my earlier posts on , ambient light sensors, and the SmackBook).
As it turns out, the iPhone has a built-in LIS302DL, a tiny 3-axis accelerometer. While some have attempted to use it from within the Safari browser (the Tilt game detects changes to the width of the browser page; it is basically used as a 1-bit input device), its potential is still somewhat untapped.
After a rather lengthy bout of reverse-engineering (I had barely touched ARM assembly before this), I finally figured out how to access the raw data from the accelerometer itself, as can be seen in the video above. Source code will be posted as soon as possibleis posted here. (update: yes, it is possible to access the accelerometer directly through UIKit without this hack — however, you’ll be locked to the default sample rate, which is too slow for some of the fun stuff)
Alright, here’s the skinny on what’s changed in the new iPhone firmware (1.0.2):
– /private/var/db/localtime has been changed from a file to a symlink, looks like a fix related to time zones.
– The kernel caches in /System/Library/Caches/com.apple.kernelcaches/ have been changed. So a few changes in the kernel. The new kernels are actually smaller by about 6 kilobytes.
– The Info.plist for the Multitouch driver in /System/Library/Extensions/AppleMultitouchSPI.kext has been changed. This corresponds with what appears to be reprogrammed multitouch firmware, possibly fixing some multitouch issues for some.
– A few files have been rearranged, for the IOKit, MultitouchSupport, OfficeImport, and System frameworks (/System/Library/Frameworks). Looks like they’ve replaced some static folders with symlinks into the Versions folder of each framework. Possibly a backward compatibility move? I’m just thinking…
Hey everyone – I just released the first version of iBrickr, a Windows app that makes iPhone modding easy. Just download it, run it, and plug in your iPhone and it will guide you through the steps, doing most of the work for you.
iPhones modified this way do not need to be “unjailbroken” to work with iTunes – your iPhone will always appear the same to iTunes as it ever did.
Right now ringtone management is the star feature, with application management via PXL being less useful because PXL packages are at the moment hard to come by.
It has an in-built error reporting architecture (you get to review everything that gets sent my way though), so if something goes wrong I can help you out with it and get back to you via e-mail.
These instructions are deprecated – it’s much easier to download iBrickr and install the dropbear and binkit packages using the Applications interface.
Instructions left for nostalgia sake, though:
These instructions work with the latest 1.0.1 iPhone update.
Right now these instructions work for Windows. A Mac OSX version must be made by someone else, but the translation is fairly easy. The sshify-windows.bat must be replaced with a file that contains equivalent Mac OSX commands.
These instructions MUST be run on a phone that has already had Jailbreak 1.1 run on it. For instructions on that see the custom ringtone tutorial.