The Saga of a CyanogenMod Exynos4 device maintainer - The Beginning

Disclaimer:  This series of posts contains the personal opinion/perspective of just one member of the team.  It is not, in any way, an official statement from the project.

Obviously, nearly anyone following me is aware of the recent social media storm resulting from the frustration the third-party Android firmware community (especially CyanogenMod users and developers) has been experiencing with Samsung.  The "Superbrick" fiasco, the lack of documentation of Samsung's Exynos4 SoC compared to Qualcomm and TI's SoCs, and a laundry list of other issues - it has all recently come to a head with the decision of all currently active Exynos4 device maintainers to not take on any new devices, and in the case of +Daniel Hillenbrand , begin selling off the devices they are currently maintaining in order to purchase devices from other manufacturers.

To understand better where we are, it is best to understand how we got here.  In order to do so, I'm going to chronicle my personal history of dealing with Samsung devices, leading to why the Note 10.1 is going to be my last Samsung device unless major changes are seen from Samsung.

The Beginning
Many people wonder how I got started with Android platform development, how I learned what I know, etc.  So in this post I'm primarily going to focus on my first experiences with Android in late 2010 and throughout most of 2011 in this post.  My next post will cover the timeframe from the SGH-I777 launch until around when I became involved directly with Cyanogenmod, and then 2-3 more posts covering the rest of 2012 including the "Superbrick" fiasco.

As to my background - I've always been more of a hardware guy than a software guy historically.  My educational background is an M.S. in Electrical Engineering, and my focus for many years was on RF and communications.  One of my main hobbies prior to Android was microcontrollers - especially AVRs.  It's amazing what an 8-bit machine can do!

My first Android device was a Huawei S7.  I won't say too much other than - it was an awful device.  It shipped with Eclair, and the radio firmware was horribly broken and would completely crash when connected to any tower outside of my own area code.  Huawei took months to release kernel source code, and the accelerometer axes were all wrong.  When Froyo was finally released in Malaysia (only to users who took their device into a service center!), Huawei's answer for Best Buy USA customers was, "Want Froyo?  Buy the new S7 Slim!".  Needless to say, I will never be purchasing another Huawei device ever again.

My next Android experience was actually an existing device - I installed xdandroid on my HTC Tilt 2, which normally runs Windows Mobile 6.x.  It was a great first step into Android, and the Rhodium development community was excellent.  I dug into the GPS HAL and fixed a few annoying bugs, but at that point wasn't familiar enough with the Android platform source to make real progress.

Eventually, in the summer, I was eligible for an AT&T device upgrade, and the Samsung Infuse was the first pure-touchscreen device with a keyboard I could tolerate.  In addition, I had seen the news about Samsung donating Galaxy SII devices to the Cyanogenmod team, which was very attractive to me after seeing how poorly HTC and Motorola had been treating the development community.  I bought it, and I think I lasted about 2 hours on the stock firmware before installing something custom from XDA.  The Infuse community back then was excellent - There were a large number of high-caliber developers like gtg465x, LinuxBozo, h8rift, and others.  The best thing was that while there were lots of skilled developers, they weren't cargo-cult-inspiring prima donnas like some in the I9100 community are.  We were working with an oddball device and we had a common enemy (AT&T) - life was good.  The activity on IRC the day the Infuse launched in Canada with Gingerbread was exhilarating.  That's when I started really learning about Android internals, and maybe 2 months later is when I felt comfortable releasing my first kernel on XDA.

That said, due to being an oddball redheaded stepchild, the Infuse was frustrating.  The Rogers release was half-baked, and numerous oddities prevented a good Cyanogenmod 7 bringup on that device.  (It took nearly a year to finally figure out Bluetooth on it...) - So I purchased a Galaxy S II from AT&T on launch day, which was my first experience in working with +Atin M and +Daniel Hillenbrand  as we tried to get good clean firmware dumps in order to generate return-to-stock packages for the device.  (We didn't want a mess like the Epic 4G Touch where people were flashing custom kernels for two weeks without any way to return back to the original one.)

So with that, I'm going to end this post, and start the next one in a day or two.  I will add a link to that post from this one when the time comes.

Reading continues at https://plus.google.com/u/0/101093310520661581786/posts/ZgBQuZNzMZL
Shared publiclyView activity