Monday, May 30, 2011

iX SHR 1.10 Release

Hey everyone,

I promised a release was coming soon and it's finally here! It has been several months since my last release, but I promise I have been working hard. I hope everyone enjoys this release more than the last. This release supports the iPhone 3G and the IPT1G. However, it is possible to run iX on the iPhone2G. I'll start off by listing the changes in terms of hardware functionality.


1.) CPU
2.) USB
3.) NOR
4.) NAND
5.) LCD
6.) WLAN - Scans properly with interfaces file configured correctly.
7.) Audio - Speakers and headphones.
8.) GPU - Framebuffer only, no acceleration.
9.) Touchscreen
10.) Backlight (Automatic backlight dimming only works on the iPhone3G)


1.) Baseband (Voice) - Work in progress (Texts and Phone calls).
2.) Accelerometer - Works, but requires restarting Xorg. Need to
implement rotation without restarting Xorg.
3.) Bluetooth
4.) Baseband (Data/3G)
5.) PMU - Partially implemented at the kernel level.
6.) Camera
7.) Multi-touch

There were quite a few cosmetic changes in this release. For example, I replaced the illume home screen launcher with a newer module called Elfe. iX also defaults to a lock screen when the backlight dims all the way. I mapped the hardware buttons as follows:

  • Power button: Power options (Shutdown, Restart, etc.)

  • Volume buttons: Turn volume up and down (No visuals, but it does work)

  • Home button: Close applications

Known issues:

  • IPT1G backlight does not dim automatically

  • IPT1G sound does not work without modifications

  • Cosmetic DPI scaling issue. This can be fixed by changing scaling in illume settings under the category "Look".

Overall, I feel this release is much better than my first one. Refer to this video to see it in action:

Release Mirrors:

MD5: bf9098dcc831881575893d2d77263761

Please let me know if any of the mirrors go down. I'll be adding another mirror when the iDroid project admin, nickp666, gets a chance to upload the release to

For support, please visit and post in the support section for iX in the forums. Feel free to contact me on twitter as well. You can also get support on irc on the following server: channel: #iX

Thanks to (in no order of importance): iPhone dev team, planetbeing, nickp666, ricky26, CPICH, Bluerise, Neonkoala, ddominator, alex, kleemajo, Popple3, eggy, rekoil, James, iKex, GNUtoo, ALoGeNo, lilstevie, esto, ParkerR, krzie, biscuit, t1g3r, and anyone else that helped me. Sorry if I missed someone!

Follow the instructions in the read me. I hope everyone enjoys it!



Friday, May 27, 2011

Latest advancements with iX

Hey all,

It's me again. I wanted to detail all the latest advancements I have made in the past few months with iX. I want this to be a very visual post. You'll be seeing lots of screenshots that mostly came from the presentations I gave at my university. For those wondering, I go to Illinois State University. My major is Information Systems and I am in the Information Assurance & Security sequence. The presentations I gave were at the IT Awards Scholarship Ceremony and BIAC (Business Industry Advisory Council). I had to explain everything in layman's terms so they weren't technical presentations. This was definitely a big challenge for me, but all the professors said I did a great job. You can find my presentation here.

Anyway, onto the good stuff! If you looked at my presentation then you're going to see some of the same images again. The biggest advancement with iX has been with the GUI. I'm still using Enlightenment with the infamous mobile friendly theme Illume featured in many OpenMoko distributions. A developer by the name of capitainigloo coded a home screen replacement for illume called elfe. He has several videos demonstrating it on youtube. If you're interested you can find the code here. With that being said, he deserves all the credit. I simply cross compiled it for my phone. He's doing great work and it's definitely a step in the right direction for a more mobile friendly GNU/Linux distribution, especially in terms of cosmetics. You can see pictures of elfe here.

Another advancement is I actually have the backlight working now. After an alloted amount of time, the backlight will turn off and default to a lock screen. Unfortunately, I don't have the resources to record a video right now. Screenshots will have to suffice for now. I'm still working on mapping the power button to the lock screen, but it's only a matter of time. Anyway, here's a screenshot of the lock screen. I apologize for the poor quality image.

I mentioned mapping the power button to the lock screen in the future. Right now the buttons are mapped as follows:

  • Power button: Power options

  • Volume buttons: Turn volume up and down

  • Home button: Close application

It's important to note that changing the volume with buttons is not displayed graphically, but they do work. I need to look into changing that, but there are more pressing issues. As far as hardware functionality goes, I'm almost on par with the iDroid project. All I have left to implement is the baseband. I don't want to embarrass myself so I'm not going to share what I have coded so far. Check my presentation for other screenshots to see the current state iX is in. I hope you all found this informative. Feedback is encouraged as always. Expect another release soon!



The Capabilities of OpeniBoot

Greetings all,

I'd like to start by apologizing for the lack of updates on the blog. I'm going to make a better effort to update the blog on a weekly basis. Procrastination usually gets the best of me even if I am actively working on iX. This post will primarily focus on the capabilities of OpeniBoot as the title suggests. I'm more or less going to show you what capabilities OpeniBoot brings to your device. Mainly focusing on my own device and explaining how I have my iPhone3G setup.

I have been using a development version of OpeniBoot. With this version of OpeniBoot, I can do a dual boot, tri boot, or even a quad boot. The iDroid developers made a grub style menu.lst file which allows you to setup as many boot entries as you want. This menu.lst file must be in /boot/ in iOS. You can find my menu.lst here.

As you can probably tell from reading the file, I'm currently booting the follow operating systems: iOS, Android, Ubuntu, SHR, Mer. That's five different operating systems on a phone! The file systems may be emulated, but the operating systems are running natively. One downside to this OpeniBoot version is the fact that it's text based only at the moment. Eventually there will be support for theming. However, it's currently broken. When I start my phone, I get a text based list that looks like this.