swan tron dot com

The Bozeman Bear Incident

Sunday morning, I popped around the side of our house and entered a crime scene… bear in garbagebear tracks in bozemanbear paw print …after careful deliberation, I concluded that the garbage perpetrator was a bear. That was sort of a cool story and the end of the road, until the Bozeman Daily Chronicle reported that “hunters [were] cited for killing [a] black bear with bow on South 3rd Avenue” on the same night our trash was raided. They were ‘hunting’ two blocks from our fucking house. Our house is about a five iron away from campus. Fortunately, they caught the ‘hunters,’ and the Chronicle found someone less idiotic to write the follow-up article. At the end of it all, two MSU students stuck four arrows via compound bow into a black bear that most likely weighed less than they do, at a less-than-intimidating 150 lbs. They both pleaded guilty, and were each sentenced to eight days in jail. One was fined $2700, the other $2500…hunting privileges revoked for 5 and 3.5 years respectively. At least the guys didn’t fight the charges. It was a dangerous, asshole maneuver to pull the stunt in the first place, but they pleaded guilty and got it over with. The worst part of the whole thing may have been the bear’s choice of last meal. If he would have gone with our other dumpster, he would have found himself neck-deep in leftover Chinese, Mexican, and spare ribs. Could have gone out with a bang…

IOIO Bootloader Update

Well, I made some progress this weekend with respect to hardware, firmware, and bootloaders. My bluetooth IOIO implementation is still giving Eclipse shit-fits. I am seeing an error with the bluetooth library…it fails on compilation. Unfortunitely, I am running out of weekend, so will cut this one short and make a statement about the backend. In order to replace that pesky USB cord with a sleek virtual cord, aka a bluetooth connection, one must update not only the IOIO application, but also the IOIO bootloader. The application is easy enough to flash, but he bootloader requires a programmer for updating. Luckily, Ytai was kind enough to design a ‘programmer by second board’ option, and incorporate that into the same UI as he utilized for flashing apps to the board. The first step was off to SparkFun for a second IOIO. ioio android bootloader I kept the second bare bones, except for the pins I would need to do the actual programming. soldering stuff The key was to have both boards up to date enough to function as programmer and target, so I first loaded the newest application versions to each board. The rest was a matter of utilizing the IOIO Manager app on the Android, and letting the programmer do its thing. two ioios For reference, the setup was power to power, ground to ground, pins 37|38 to pins 37|38, and pin 36 to mclr…with mclr being on the target board. USB connected to the programmer board…that is that. Unfortunately, my IOIOSeek app ended up stroking out when I attempted to load the bluetooth library. It works fine with the newest general library version, so I know that my bootloader indeed was a success. Back to the Java drawing board before I can demonstrate the new feature.

Montana State Satellite

In 2001, I was part of a team that set out to replicate the space science performed by Explorer-1 in 1958. Explorer-1 was 25 pounds, and our solution was a 2.2 pound, 10cm by 10cm cube called MEROPE. I was on the payroll for a few summers, working on the grounds station design, researching tracking software and antenna theory. Our launch provider was set to launch another twenty some cube sats like ours atop a converted intercontinental ballistic missile payload. After getting pushed out past my graduation date, the launch finally went down from Kahzikstan in July of 2006. Though the Dnepr rockets had a 97% success rate, our satellite ended up in a crater of parts and pollutants during the second minute after liftoff…

msu merope

Rest in peaces. That hydrolic failure was a setback. The good news was the fact that the engineering plans were complete and ground station built…the rest ended up waiting on a *cheap ride to orbit for the next version. The bad news was that the next launch also failed, as the velocity was too low to maintain orbit. 0 for 2. The newest version manifested itself as Explorer-1[prime]:

e1p

E1P launched successfully on October 28th. The HAM radio community has been busy tracking the orbiter along with the team from MSU’s SSEL…as of yesterday afternoon, they had over 1000 packets received. The mission has two main scientific systems in play: a passive dampening system and a Geiger tube to measure the Van Allen radiation belts. It is a proof of concept per se…showing that some solid science can be done on a budget. The cube is in an elliptical polar orbit, and high enough to stay aloft for a decade. As so long as the com board stays functional, this satellite can be monitored via HAM (@ K7MSU…don’t quote me on that) frequencies. MSU has prepared a UI to snag and analyze the packets…I might play around with that down the road. Currently, the satellite is loud. They have it configured to blast huge signals still, as the dampening system is still doing its thing. Once the trajectory smooths, it will be tuned down and should be more predictable. I’ll be watching this one. Good stuff from the alma mater.

MSU Satellite Spoiler

Ten years and a few months ago, I became a licensed HAM operator… HAM Radio License That means, without any doubt, that the satellite that MSU stuck in orbit last week has indeed been a long time coming. I’m running up to campus for the mission statement and a possible down-link tomorrow afternoon…stay tuned for this one. We have entered full-on geek mode.

Virtually Awesome

You may be wondering how I could one-up my work setup. Probably not, but play along. We are too .NET-y for me to nuke Windows, but Oracle-y enough to get carte blanch on a whole bunch of new stuff. Item one: VM Virtual Box Manager virtually awesome I have an Ubuntu box rolling on the far right and an Oracle Linux box dead center. DropBox setup on the base machine and virtuals, for quick file mashing…diffing…command line python…grepping, etc. Good stuff. The only thing that could be more virtually awesome would be a fourth monitor running Arch Linux. Virtually unbeatable.

Repair Center in U.S.A.

We have notebooks all over our house. Not notebooks in the traditional sense, but notebooks in the sense of ’the future of computing’ notebooks. You know, laptop computers. The future is upon us…especially how even notebooks seem too bulky for everyday use. Tablets and Androids man. Tablets and Androids. That was the longest, least-sensical lead into a post ever. Probably. It is like I am trying to avoid writing about a topic like finding a [link removed] around Bozeman. Which I surely am not… I found a good site that I have been using to research service centers… service center The bad thing about sites of this nature is over-saturation. Most locator sites have a gaudy front-end, and zero results. On the other end of the spectrum, service-center-locator.com has focused on the results, which is what I value in a site. Case in point… bozeman ftw I was searching for a repair site for Katie’s Toshiba notebook. Guess what…Toshiba has a certified repair shop in Bozeman. I would not have come to that conclusion without contacting Toshiba directly, or bringing the unit back in for a warranty claim at Office Depot. Unexpectedly cool. So hit that link above to see for yourself. I am a tech guy, so I stuck mostly with computers and phone stuff, but the site will let you track down services as widespread as you can imagine. Take a look…

Leaf Blower POV

Trees and leaves, man. Trees and leaves. black yukon Good thing I picked up a new Hitachi two-stroke leaf blower from Woot. Video one: Droid meets concrete Video two: Leaves meet street I’ll fully admit that video one wins.

Pushing to Master

Just hanging out. Committing a little Java. pushing to master ioio android code Introducing IOIOSeek v2.1. new android ioio app In preparation for my next project, I have beefed up my app to support four simultaneous servos, three real-time analog readings, and two binary digital outputs. I cleaned up the UI, and added some README details. You can snag the app or update on the Android Market (search for IOIO) market android app Pop over to the Android Market and give a review if you have it going v swantron on android market ioio As the commits hint, I have pushed my code out to my GitHub page. Fork that thing. Stay tuned for the next project…I just need to find some time to smash together the hardware and we’ll be good to go.

Android SDK / Eclipse / Ubuntu

I updated to Ubuntu Oneiric Ocelot last week. For some reason, the automatic upgrade process botched pulling over my Android Development Tools (ADT) components. Chalk this one up with the strange camera issue I am seeing, as two votes for bailing on a fixed release cycle. Canonical has pushed out two consecutive iffy builds…but I digress. It had been a while since I had set my Android development environment up. I had to start from scratch, so figured I would spell out the process. Note the lack of “Android *” from the list of installed components: eclipse ubuntu android sdk I’m starting from the point of having Eclipse installed. That part is straight forward…I snagged it off of the Ubuntu Market, but you an do it with Aptitude or however you like. Same goes for the JRE and JDK, the Java Runtime Environment and Java Development Kit. Snag those from the Market, Sun’s site, or apt - get…verify you have the correct version by running “java -version” from the command line. Mine is currently:

swantron@Dell15:$ java -version java version “1.6.0_23” OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23pre10-0ubuntu5) OpenJDK Server VM (build 20.0-b11, mixed mode) The Android SDK is the next component to snag. It has two pieces: Standard SDK (starter package) and SDK components. The later is where you can grab pieces to test Galaxy Tabs…stuff like that. The specifics are located there. You first need to download the starter package from d.android.com/sdk and run the UI. There you can pick and choose the pieces you want to implement, manage emulators, etc. The last piece is the actual Eclipse plug-in. It is simple to implement. Navigate to Help . Install New Software, and feed through the process until you are asked for a site location. Said site is dl-ssl.google.com/android/eclipse A restart should have Eclipse up and running. Give a shout if it doesn’t…after doing this a few times, I am becoming somewhat of an expert.

Upgrade to CyanogenMod

My relationship with Motorola’s firmware has ended. It was a good run…well, no. That is a lie. It was certainly better after rooting my Droid 2 and wiping out Verizon’s boatware, but the Moto* junk had to go too. I finally decided to gut everything and install Cyanogenmod yesterday. It is plus one awesome. Although the process of flashing Cyanogenmod’s firmare involves a little work, it is no more difficult than rooting the phone in the first place. Since I did that a while ago, I really wasn’t concerned with blowing up my warranty…I figured bricking the thing would either result in some sweet haxxing or a new phone. Win / win. I would suggest an upgrade to anyone. My phone finally screams, as it should have from day one. My battery life is better | everything imaginable is configurable | my apps and Google accounts all work | and, wait for it, I don’t have to kill processes all day. In fact, I don’t have a stand-alone task killer going…that is pretty surreal still. Well, as with any exercise of this nature, backing up is imperative. Astro File Manager is great…Titanium Backup is great. The other players are the same too…ClockworkMod Recovery makes snagging the MODs easy. I am actually running a daily build, since there is not an official stable build for the Droid 2 yet. No memory leaks though, and everything so far has been functional. Anyhow, on to the actual firmware stuff. I downloaded the zip file, and booted into recovery mode… cyanogenmod 7.1 install android …during game one of the World Series. Not sure if that is Pujols or Furcal in the reflection. Either way. Great picture, huh? This is the first time I have used my webcam since upgrading to Ubuntu 9.11. Whoops…screwed up the camera, fellas. On the screen is a ClockworkMod selection for Google’s bits. I imagine that this was done for legal reasons. Anyhow, I had to go back and install this from recovery, as I missed it at first. CG7.1 android installation droid 2 Hi Katie. ^ I also managed to get stuck in a boot loop of sorts during my first attempt. It turns out that I cleared the data but not the cache from the recovery menu. No good. A pulled battery and some troubleshooting and we were good to go. cyanogenmod boot loop I spun up the Android market, and did fresh installs of my apps. For the important stuff (the Angry Birds Trilogy, 9 Innings Pro Baseball, et. al.) I pulled the backup data back over top of things. No issues. I had been wanting a landscaped workspace since I got my phone. .. now I know why… landscape mode on cm7 It just makes sense. CM7 allows this to be configured. Like basically everything else. Want your menu on the bottom? Put it there. There are options all over the map…like the camera exposure, for instance. camera function CM7.1 Sweet. It is tough to beat the performance gains in general, but it is wholly possible. Check this out: Cyanogen Warning Dragons Ahead One stop overclocking. Disregard that popup and go nuts. One part of me wishes that mobile carriers would take note of Cyanogenmod’s presence and push Android updates to customers. The other part of me likes to void warranties and do things that the clowns from Verizon frown upon. Either way, my phone is now awesome…that is all that matters.