Managing multiple Maven versions

Lately I’ve been using Apache Maven 3.0 snapshots to test build compatibility on ServiceMix, Karaf and some of the other projects I work on.  I’m also using 2.0.9, 2.0.10, and 2.2.1 to replicate customer environments and build servers, so it gets to be a real pain in the ass to change these around all the time.  To make my life easier, this weekend I hacked up a Maven version of the awesome setjdk and defaultjdk commands written by David Blevins for Mac OSX (if you’re on a Mac and not using these scripts, you should be). Read the rest of this entry »

3 Comments

TinyOS 2.1 on Sentilla JCreate motes

tinyosI spent a little time last week getting TinyOS 2.1 apps to run on the cool little Sentilla JCreate motes and after I asked a few questions on the TinyOS mailing list it became apparent that there were others interested in doing the same.  I received quite a few requests via private mail and on the mailing list to post the directions on how I got things working so here you go!!

Read the rest of this entry »

2 Comments

ServiceMix and OSGi Webinars at FUSESource

If you are interested in ServiceMix and/or OSGi, we have some really interesting webinars coming up, brought to you by some of my coworkers at fusesource.com.  Have a look and register for one of the upcoming sessions.  Archived webinars are also available.

Webinar Date Register
Overview of OSGi Enterprise [agenda] April 14th, 1:00 PM GMT Register Now!
Overview of OSGi Enterprise [agenda] April 14th, 1:00 PM EDT Register Now!
Large Scale Deployments & ServiceMix 4 [agenda] April 23 1:00 PM GMT Register Now!
Large Scale Deployments & ServiceMix 4 [agenda] April 23 1:00 PM EDT Register Now!
Introduction and Demo of Distributed OSGi [agenda] April 28 11:00 AM GMT Register Now!
Introduction and Demo of Distributed OSGi [agenda] April 28 1:00 PM EDT Register Now!

No Comments

Gumstix Overo Fire == nerdy gadget lust

I have been waiting a while for Gumstix to release a more powerful Overo board with the OMAP 3530 chip, and it looks like the waiting is over.  There are three new boards, but the one making me all hot and bothered is the Overo Fire.  For those not aware, the OMAP 3530 is a system on chip (SoC)where the CPU, RAM, 3D video and all the other goodies sit on a single chip.  The pics on the main web site above don’t do it justice, so here is a pic of the thing next to a AA battery.

So here is my plan…  I’m going to get Android running on this thing ASAP.  I think most of this work has been done already because the similarly spec’d BeagleBoard already has Android running on it.  I am hopeful that the patches are already documented somewhere but it wouldn’t be the first time I have hacked some Linux kernel and driver code.  The end goal is to have a sort of home hub or all in one remote console device with a touch screen LCD, VOIP speakerphone, all in one IR remote, , etc.  Bonus points if I can get ServiceMix or ActiveMQ involved somewhere along the line.  I think an OSGi API for the IR and home page would be rather sweet as well, don’t you?  I will post more in the next week or two once I get my feet back on the ground.  Too excited to think rationally right now  ;-)

The possibilities are endless, and I promise to open source everything under the Apache Software License where possible.  Should be a fun project, if anyone is interested in helping out let me know.

4 Comments

Apache Directory Studio – Best open source Eclipse RCP app

I just want to say congratulations to the Apache Directory Studio guys on winning the award for Best Open Source RCP Application at EclipseCon this week.  Apache Directory Studio is absolutely the best LDAP GUI editor there is.  So congratulations to Pierre-Arnaud Marcelot and Stefan Seelman.  Nice job guys!

No Comments

G1 and Android Review

I know that the G1 and Android has been covered extensively over the last month since the official release of the G1, but after using mine for a few weeks I wanted to write up some of my thoughts here.

The first thing that comes to mind is that both the hardware and the software far exceeded my expectations.  Now I had never spent much time playing with the SDK or reading blogs before the official release of the G1 but I just didn’t expect anything extraordinary from the 1.0 release of Android and a brand new handset model.  I have used other people’s iPhones for short periods of time so I can honestly say that I was surprised at how good the quality is on the G1 handset and the Android software was fantastic for a 1.0 release.

From the pictures I had seen before I bought my handset, I actually thought the handset looked cheap and dorky.  In reality I was surprised at how solid and nice the thing turned out to be.  I bought the new Bronze color model and it really looks quite nice and has a great feel.  Even the flip up screen that reveals the keyboard has a solid feel to it.  I don’t exactly like the keyboard and the little “chin” at the bottom of the handset, but they hardly bother me now that I have gotten used to them.

I’m really looking forward to improvements and I think that although the current release is pretty solid, the opportunities for interesting new features and improvements has me excited.  I guess I am biased since I am am open source Java developer, but the Android software has a lot of potential when you consider all the people that will be able to find new ways to tweak it.  I think there are plenty of people who will be happier working in their familiar Java language than learning Objective-C.

So if you are reading this and have any doubts about the choice between an iPhone or a G1, I recommend playing wih the G1 and giving it a try.  You just might be surprised like me.

2 Comments

SparkFun Electronics – Surface Mount Soldering Class

SparkFun ElectronicsSparkFun Electronics hosted an SMD soldering class last night at their offices here in Boulder so I thought it would be a great geek out opportunity for myself and my son Billy.  I honestly thought it would be much more difficult than it was, but it certainly did take some practice to develop a usable technique and some Jedi soldering advice from Nate and Matt didn’t hurt either.  Billy is 13 and the benefits of youth came in handy when trying to solder a fine pitch SMD chip.  My eyes are getting worse by the day and I really couldn’t focus enough to see what the hell I was doing on some of the parts, but there is an amazing amount of the technique that was purely by touch.  Use the force Luke!

The outcome of the class was a Simon game with four colored LED push pads.  The microcontroller at the center of the device is the ATmega168 which is commonly found on the Arduino boards these days.  The software for the game is available from the Sparkfun web site and was programmed onto the chip through the Arduino IDE.  I think Billy and I are going to hack around with the Arduino IDE and write up some new programs on our Simon games just for shits and grins.  We put in a special request for an Arduino/Processing class so that would be a blast if they decide to put one together.

This picture shows just how small these solder joints are.  The trained eye will laugh at my solder work (its quite bad when you look through a magnifying glass), but the damn thing works like a champ…  or it did until it sat in my car for an hour at 15deg F on the way home and something shrunk up from the cold.  But hey, if you hold it just right and give it some love, it works just fine.  I guess I need to buy Billy and I a soldering iron for some touch up work  ;-)   By the way, we hand soldered *everything* onto this board, including the AT168 and all of those little tiny resistors and caps.  Some of those who had soldering experience finished in about 1.5-2 hours while those of us with nada took up the full 3 hours and then some extra for troubleshooting bad joints, etc.

Matt and Nate did a great job with the class and were extremely helpful to us beginners, even staying an extra hour to help Billy and I troubleshoot a problem with one of our boards and send us home with some swag.  They tell me that they are going to try to do a new class every month or so, so if you live in the Boulder area or you just want an excuse to come put in some slope time in Colorado, keep an eye on their front page for more classes. 

More pictures of the class here on my Flickr.

Thanks to Nate, Matt and the SparkFun folks for a really great time. 

1 Comment

Battery power for Cradlepoint CTR-500

A while back I wrote about my handy little Cradlepoint CTR-500 mobile router and promised to follow up with my battery power solution.  I have had 6 people poke me over the last month for more information on the battery setup (that is 5 more people than I thought would ever read this blog), so here you go.

I ended up going through a couple of different battery solutions before finding one that had enough current to properly boot the device AND had good battery life at the same time.  In the end I went with the Tekkeon MP3450 and I have been extremely pleased with it.  This battery is really much larger than I really needed for the CTR-500 but it has the added benefit of being able to power almost any device I use remotely except for my MacBook Pro.  I bought mine from eCost.com for a ridiculously low price of around $80 but normally they go for over $100. 

I have powered the CTR-500 for over 16 hours of average usage and used the battery for charging my phone and iPod several times over and still had at least one light on the battery meter so I guess I have never really gone far enough to find out its limits.  This battery also has a USB port for charging/powering any USB or min-USB device and comes with a handy little retractable USB cord.  They also supply a bag full of little adapters for almost all common DC connectors (I couldn’t find any devices that didn’t have a matching adapter, other than proprietary phone connectors).

One issue I have is that I can’t power on the router with the Sierra 597E Express Card already inserted.  The router seems to cycle repeatedly in a loop which I think is because it can’t get enough surge current to power up the router AND the card.  I haven’t tried any other cards, but I assume this will be true for others.  Either way, it isn’t a big deal to insert the card after the router starts to boot (I barely give it 2 seconds before I pop it in and things work great after that). 

One word of caution, the MP3450 has adjustable voltage from 5v to 19v and it is easy to #@ck up and fry your nice little router.  I know, because I did it….. once.  The top of the unit has a row of lights that serve several purposes.  Normally it displays the currently selected voltage, which for the CTR-500 is the first, and default setting of 5v.  On the side of the battery there is a switch that locks the voltage and when you press the button on top, you see battery level indicated by the number of lights.  If you unlock this switch, a press of the button changes the voltage.  So the moral of the story is, don’t ever leave the damn thing unlocked and throw it into your backpack where something can accidentally press the button several times as you walk down the street until the voltage goes up to where it pops, emits a faint little bit if smoke, and renders your $160 router completely useless.  ;-)

So now that I have that off my chest, I really love the totally mobile setup and as you can see from the pictures the battery is about the same overall form factor as the router and the express card.  I usually have them all set up just like the picture and I wrap an elastic/velcro strap around them all to make a nice little package to throw in my backpack.  What I would really like is to find a removable hard drive case with a little reinforcement so that I can fit it all in there perfectly and use small external antennas, but that is getting a bit overkill.  Then again…

2 Comments

Intro to OSGi – Denver Java User Group

It was a great pleasure to speak for the first time at the Denver Java User Group this week.  I *started* a nice little talk on the basics of OSGi and thought it was starting out pretty well.  Unfortunately about 20 minutes into the presentation the fire alarms went off in the venue where the meetings are held so we had to bail early.  I think things reconvened in a nearby Old Chicago’s pub but I had to head home for the night so I missed out on all the fun.

I promised the attendees that I would post the slides so in case any of you read my blog, here you go.

1 Comment

OSGi talk at Denver JUG November 12

In addition to ApacheCon this week, I am going to be giving a talk on OSGi at the Denver JUG right after I get back from New Orleans.  This should be a fun talk because I absolutely love talking to people informally about OSGi, and this will be the first time I have gotten to officially talk about it to a group.  Matthew McCullough is going to be there as well, giving a talk about marrying iPhone apps with Java Web Services so there should be some really interesting information.  If you are in the Denver/Boulder area come join us Wednesday November 12.

,

No Comments