May 2008 Entries

The gyro works with the TTL to RS232 adapter.  Like I was thinking, the TTL to USB adapter was sending 3.3v to the gyro and not providing enough juice.  Flipping on the battery then provided too much power, oh the irony.

Now that I have a functional IMU unit, I can finish out this code once I finish up my chapter.

Freaking neat!


Multi-Touch in Windows 7

image I had the honor of being on This Week on Channel 9 talking about my top 5 (I squeezed 7 technically in) of my favorite tools I must have on my computer.  I co-starred with Scott Hanselman (It is fun to annoy him by mispronounce his last name)

These are from my post earlier on tools but here is what I talked about

1. ReSharper
2. Ultramon
3. Firebug
4. Synergy
5. Windows Live Writer

imageI've been working on an application for an upcoming project that uses Twitter.  I've never seen something that everyone loves fail so regularly.  I'm smashing my head since I can't do proper debugging while people are like "Oh twitter, you're down again." and they slap their knee.

I like twitter, the idea is decent despite what some people may say.  It gives me a place to rant that isn't my blog which has a very targeted outline.  I get to make statements like "Why do people think it is OK for google to have applications for 4+ yrs in beta?"

Now if twitter was produced by any other company, we'd all freak out.  When Friendster was having these issues of uptime, people moved to MySpace.  When MySpace was running into the same issue, people moved to Facebook.  I know most will say MySpace's rise and fall was due to the ability to customize it, but I think it was hugely due to their social site being down. 

Flickr would have lost the war I believe if it acted like Twitter.

Twitter needs to be fixed.  Wether that means it gets neutered and people move on to a different micro-blog site OR they fix their issues.

Maybe people view the Twitter service as pointless amusement and doesn't matter if they have like a 50% uptime rating with developers that constantly produce broken builds on what appears to be a SUPER simple application.

image

I also do love that their error pages have formatting errors.  They make me think everything is alright and twitter has robots fixing everything.

image Twitter Vote is pretty much done.  Seeing if I should add in a few features or not.  Time to start typing like I actually know English.

I know the UI could use some TLC but I'm a developer, not a designer.  Yeah, that is my excuse.

image

Now to make the User Experience look less like poo.  Make it pretty then write the chapter.

The one thing I'm disappointed Twitter could do but doesn't implement properly is the Reply system.  If I reply to a tweet that is 3 down, it will actually log it in their system as the most recent.  BOO-ERNS twitter, boo-erns.  Do some javascript magic there.

I'm uber behind on a project but will show off some stuff I love.  I really, really love Regular Expressions too.

New feature in .net 3.5

Poll poll = new Poll {
    PollName = breakdown[1],
    UserId = tweet.User.Id,
    TweetId = tweet.Id,
    UserName = tweet.User.Name};

And processing the votes

public void ProcessParameterList(string parameterList)
{
    PollParameterList = parameterList;
    // currently supported
    // 1-10 \d-\d
    // a,b,c,d comma delimited.

    // check for 10-20
    if(Regex.IsMatch(PollParameterList, "\\d+-\\d+"))
    {
        string[] items = Regex.Split(PollParameterList, "-");
        if( items.Length == 2)
        {
            int endAt = int.Parse(items[1]); // I know due to regex they will be numbers
            int startAt = int.Parse(items[0]);
            if (startAt > endAt)
            {
                int temp = endAt;
                endAt = startAt;
                startAt = temp;
            }

            for (int i = startAt; i <= endAt; i++)
                BalletParameters.Add(i.ToString());
        }
    }
    // check for a,b,c,d
    else if(Regex.IsMatch(PollParameterList, ","))
    {
        string[] items = Regex.Split(PollParameterList, ",");
        foreach (var item in items)
            BalletParameters.Add(item.Trim());
    }
}

Using the TwitterLib with some tweaks from Witty.  Gotta figure out how to contribute it back in.

utility_belt I got my replacement laptop coming in June and my other new laptop.  So in my constant "What I load on my computers" here is the current installment.  Running Vista of course!

I know I missed some, but I try as much as possible to run my computers light and lean for speed.

Something about saw dust that gets me all destructive.  First a server transfer, now this.  I've never been 100% happy with my design here at BetterThanEveryone and my buddy Jeff Couturier over at 10 Volt Media has been kind enough to hook a brotha up with a nice professional UX (user experience) spit shine.  I've know Jeff for a while since he used to be a co-worker and love the stuff he does.  Next time few times I'm in Chicago, I owe him literally a keg of beer.

Here a few quick sketches he did for me.  I adore (yup, I used the term adore) the logo and actually even asked if the wire-frame monkey could be the logo.  A very "under construction" look to it.  Fits the theme of building all the crap inventions I do.

Jeff has also been nice enough to pull out a "How he did it" that I'll get posted at Coding4Fun from sketch to full CSS / HTML mock up to the hand off to me where I'll implement it into a SubText skin.

monkey-raw[1]

Some more sketches.

monkey-scan[1]

So I have a TTL to USB adapter this time instead of a TTL to Serial, then Serial to USB adapter and it isn't acting as fast as I think it should.  The chip is a FTDI chip and I did see an interesting performance boost messing with an option.

image

This was at 16 by default and it caused everything to run at about 700 milliseconds where before I was at 10 milliseconds per cycle.  By chancing it to 1 millisecond, I'm at about 15'ish ms per cycle, not perfect but not horrible.

I hope that is something I can set programmatically.  Not sure if any of the other options may be directly effecting speed too.

I tweaked how I mounted the IMU along with I lengthened the wires that go from the speed controller to the batteries.  The casing for the IMU, I'll also mount 1 additional electronic board in too.  I love the TTL to USB adapter too.  1 less wire, mounts so nicely.

Pictures?  sure.

Gyro and new TTL to USB adapter mounted

The wire in the hole

Batteries

Batteries

I just got my Canon Powershot SD950IS with a phatty 12.1 megapixel sensor and like the smart person I am, I forgot my 4gig memory card at my apartment.  No biggie since the last 2 cameras I got from Canon also had a memory card in it.  I figured nothing big or fancy but it should give me a few shots before I get to run home like a good little boy and pop in the bigger card.

At 12.1 mp, it looks like each photo will be about 3.5mb.  That is at max, 9 photos.  Wow.  I can get a 4 gig card now for like 20 bucks, how much more would it have cost to put a 128 chip in it or heck, 256.

I do however wonder if this will charge via USB.  It so, best camera ever.

So I'm in the process of switching to a new hosting service and I had a friend hook me up porting my data via an SSIS package to my new server.  Now I'm when most would call a retard when it comes to SQL.  I can design databases but I dread doing SQL.  That is why Joe ruled for doing this for me.

I did a few quick laps around the internet and can up with nothing.  SQL Server's tools are designed to back up the database locally only.  So if you don't have physical access, you're out of luck.

After asking around internally, one of my awesome coworkers pointed out there is a tool to do just this called the Microsoft SQL Server Database Publishing Wizard 1.1.  Another tool looks to be on CodePlex called SQL Host.

image

I had an entire post on this, but after finding out it was a hardware failure, I'm less pissed but still at the same time, very pissed it took 2 days to get me back up and going.

This issue prompted me to get going on my move to Applied Innovations.  I'll be posting videos of my move and how I pulled off things like getting the database off the server when I don't have direct access to that server.

Ordered a new work computer today along with I had my IMU unit from SparkFun sent.  It shall be here on Friday.

I gotta see where the heck my skateboard is.  If everything works out, I could have it working again this weekend!

FT232RL-Breakout-0[1] I just ordered my new IMU unit and after talking with SparkFun, I found out that I didn't need a RS232 shifter if I went with their FT232RL USB To Serial adapter.  One less cord means I'm far more happy.

This time around I did tweak slightly what I ordered and with with the ADXRS300 instead of the 150.  And it looks like I accidentally ordered the Bluetooth version.

SUPRISE!  An OCD programmer.  I have a few massive tech purchases to do and now I'm in full blown research mode.  I thought it was bad when I just had to do one.

After talking with some coworkers, namely Edwin, I think I may get a Canon PowerShot SD950IS.  I was playing with a Nikon CoolPix S600 at Best Buy today and it just felt cheap.  The button to shoot a picture felt as if it would cave into the camera after a month or so of pictures.  I've never gotten that feeling from both Canon's I've owned.

My camcorder I'm going to hold off until Microsoft starts the new fiscal year.  I was chatting with my buddy Rory Blyth and he recommended a Sony HDR-SR7.  It is twice the price of my old camcorder but far more awesome.  After checking amazon, there is a newer version of the SR7, the HDR-SR12.  I was also thinking about getting a Flip camcorder, they are cheap and would be nice to have incase I'm don't want to carry the SR12.

Zune, I won one in Feb so no biggy.

Earbuds, yes, this is a big deal.  I had Shure e3c's but they are now no longer being sold.  Honestly, I thought I lost them once already and literally my thought was "screw the iPod, I want my shure earbuds".  That is how much I loved them.  I can get the Shure SE210's for about $119 on Amazon.  Step down but should be as good.  the SE310's are suppose to have better bas and looks like only cost $200 on Amazon.

Work Computer ... Up in the air on this.  After talking with some team members, Gus and Edwin, who utterly love Lenovo, they want the x300 and too would like one.  They have x60s.  That had too small of a keyboard for me but the x300 has what appears to be a full size.  The Dell m1330 and the m1530's looked pretty nice along with going back to my already tried and tested T61p (I had a T60p before).

And then there is always the "who's insurance is paying for the recovery" problem.

group

From left to right

Andy Konkol (LED Sign Photo Booth), Louis Ingenthron (did Unsigned using XNA (think RockBand)), Clint Rutkas(Self-balancing skateboard aka Segway), Rob Douglas (kneeling under me, X-Y Dry erase board), Sam Gazitt (standing by the broken window, a camera blimp), Doug (aka old man bending, talked about photosynth), Cy and Kenny just helped out and were floaters.  We had people helping out too.

And let us not forget the SUV broken window.  It played an awesome part in this year's Maker Faire.

homeserver[1] I'm horrible when it comes to keeping my own projects checked into my SVN server.  It seems to be a twice a month event for me.  So I was freaked out about losing a decent sum of work on my skateboard or on my laptops in general since some d-bag decided to break into my rental car?

Fear Not!  I have a backup on my Windows Home Server and it does daily backups of my computers.  I wish I would have had a backup from 5/1/2008, but I do have a backup from 4/29/2008 of my entire source code.  The gyro code does need to be tweaked again but over all, this works.  I know what I need to do to get it working properly.

I also have a backup of all my presentations and other source code that isn't too old.

While I did lose about 3 hours worth of airplane work (seriously, this is the best type of work since no one can bother you) on a different project, it isn't like I had a total system failure.

Windows Home Server, best 400 dollars I ever spent.

I had the pleasure of attending Maker Faire this year and show off my self-balancing skateboard.  There was fun and some suffering in it.

I had the pleasure of meeting some awesome people at SparkFun, Sun, Evil Mad Scientists, and Pleo.  Also I had my buddy Andy Konkol to attend.  He may be the panda.

panda

And then my smart ass mouth caused this to happen.

DSCN0349

So enough about the interesting folk, let me the story of the skateboard.  SparkFun sent me a replacement and I updated the source code to a working version.  Once the batteries were charged up on Friday, it literally took me 20 minutes to get it working and we even had a chance to ride it.  It wasn't tuned in 100% but it worked.  I am a golden god.

BUT some nice fellow decided my rental car needed a nice make over while we ate dinner Friday night.

brokenWindow

Both my work laptops, camera, camcorder, Zune, Shure earbuds, and my IMU 6DoF from Sparkfun was taken.  While my stuff isn't the big deal, I feel sorry for Louis Ingenthron, maker of Unsigned the XNA game.  His bag was in my car too and he is just a college student.

Time to see what I need to do to get everything back to normal and fix everything with Louis.

Stuff was still demo'ed, Louis got his game working off an old version of his source code.  I still showed off the world's most expensive teeter-totter. 

On the upside, I get to buy a new camera and test out my sanity level by doing all my work via Outlook Web Access.  Also I ran into my brother at O'hare.  My dad actually called me up and joked about how my brother was going to Florida that morning.  I gave him a call and he was only a few gates away.  I look ever so great after sleeping on an airplane for 4 hours and I'm not exactly known as a morning person.

PIC-0010

Buy tickets to Maker Faire.

Now that I have a working gyro, I should be able to pull this off.  I’ll be landing an hour 30 minutes earlier pending a rain delay / president decided to land in St. Louis and screw up my flight schedule delay.

Microsoft, the Coding4Fun Team, and most importantly … Me will be in the main expo area at the San Mateo fairgrounds.  Andy Konkol will be there too!  I haven’t hung out with this bear of a man in almost a year!

If you’re in the area, I suggest checking it out and saying hi.  It will be a total geekfest.

So I got my new IMU 6DoFv2 unit from SparkFun (you guys RULE!) and started hooking it up into my application.  It has a new firmware version so I had to tweak some stuff.

In addition, I actually turned off 4 items from returning.  I figured there was no point in returning all the temp and voltage data.  One will do.  I’m actually seeing faster looping due to this too.

I’ll be on the faire grounds tomorrow I’m going to estimate at 2:45pm PST and will be rocking out attempting to get my skateboard working all night long.  Wow, that sounds … hehe.

I’m so utterly happy right now I’ve even posted a video of my diagnostic application in action.  It isn’t exactly exciting but I have a FUNCTIONAL gyro!!!  Oh, this PID system will soon be my bitch.  I almost want to get to the airport right now and get over there so I can’t work all day tomorrow.