22 Feb 2008
So time for another update, this time accompanied by a mini screencast. Recently I’ve been focussing on the TV functionality part of Gloss as it has been a bit neglected since it was first written. The backend streaming code has received a partial rewrite (Still very much in progress) that aims to lay the code out in a way that more closely resembles the official Myth Frontend. Needless to say I’ve been poring over this code, and when not getting confused, have learned some really interesting things. I’ve also been tuning the transfer parameters a little to try and achieve smoother, more consistent playback.
The ability to change channels is now firmly in place and with it comes a basic on screen display featuring channel names/logos/guide etc.
A couple of people have recently been on the IRC chat too (#gloss on irc.freenode.org) and have provided some really useful feedback. This has lead to a heap of compatibility bugs being corrected, as well as the addition of a –debug mode allowing a different level of verbosity in reporting.
As I said, I’ve done another screencast, but its only a short one showing some of the new features since the last video. Enjoy:

10 Feb 2008
After attending Jon Oxer’s fantastic talk at lca2008, “Joining Second Life to the Real World”, and purchasing one of the Arduino kits he had for sale, I’ve spent a bit of time reading up on both the board itself and stepper motor controllers. So this weekend I finally started putting something together.
For a while dad and I have been ‘dreaming’ of fitting up a throttle-by-wire system to the (as yet not quite finished) race car. This has the advantages of being more flexible than a mechanical system as well as having the capability of multiple (potentially non-linear) throttle maps (ie one for road and one for track).
We looked for a kit that offered such a thing however having found nothing, we put the idea on the “good idea only” pile (We did also investigate pulling one out of a factory TBW car, but all have the controller built into the ECU making it an expensive proposal). The Arduino though is nearly the perfect device to act as the controller!
So anyway, without dragging on too long (I’ve not done much hardware stuff like this so it has been a series of ‘woohoo’ moments over simple things), I’ve so far managed to hook up a unipolar stepper motor (Pilfered from an old HP inkjet), a 1k pot and a darlington array to the Arduino and set the position of the stepper based on the position of the pot. The position is decided by an array lookup so having different maps should be a simple matter of changing arrays. This is, in a very rudimentary way, the same thing that a TBW system does (with the pot being a throttle position sensor and the stepper being hooked up to the carby actuator).



So whilst its still a LONG way from the end goal, its a step in the right direction. I quickly learned that the stepper motor I’m using will need to be replaced as I’ll need one with some form of position reference feedback (eBay seems to have heaps). We’ve also briefly discussed hooking the Arduino up to the pulse counter on the front wheel, adding another pulse counter on a rear wheel and creating a basic traction control system. To do this though I’d need to read up a bit on how the Arduino goes at pulse counting. Interestingly, having accurate pulse counting would also make something like cruise control a reasonably simple addition.
So lots of possibilities and lots of this to play with over the next few months
8 Feb 2008
Well its back to real life now and I can already feel the buzz from linux.conf.au starting to wear thin. Fortunately it has lasted long enough though for me to get a hell of a lot of things done. I met some terrific people at LCA including Rob Bradford from O-Hand in the UK (Thanks for the stickers) as well as catching up with some old conf friends (Hey Nick!).
On the Gloss side, there’s been plenty of updates, the two most visible being the creation of a sliding image previewer and the stripping out of the menu system from the core code. This means that it is no longer mandatory for Gloss to use a standard menu system for its interface. Whilst writing a new interface module isn’t exactly as stragithforward as writing a new transition, it is now a viable option and to prove the point, I wrote a ‘wheel’ system that (kind of) duplicates the system found on the original version of Frontrow, but is much nicer in my opinion. The great thing about this is that the interface is completely transparent to the modules themselves and the option of which interface to use is simply set in the theme like any other option. A new screencast showing off these two things shouldn’t be too far away now.
Also, I received so much schtick from certain people about it during LCA that I have made the TV functionality my next priority, with channel changing being top of the list. This is something I should have got around to doing a LONG time ago, but the eye candy always seemed to keep getting in the way.
I’ve also updated the setup instructions for Gloss so its now (a little) easier for someone to get it up and running. Thanks to ctudball for being the guinea pig.
I’ve also spent the last week or so trying to give something back to Clutter by porting all the tests to python, discovering some niggly little issues along the way. I should finish these off this weekend and I’ll get back into Gloss properly after that.
Anyway, I’m off to Spamalot tonight with Dad, should be an awesome evening