FIRST robotics competition 2008

Last weekend was the Colorado Regional for the FIRST robotics competition. This year I had volunteered to be Scorekeeper/Field Power Controller. Little did I realize that no one had volunteered to be lead for that job. So guess who gets asked to do the job. I’d never done the job before. That said, the competition went remarkably well. A few ID-ten-T errors on the practice day due to the fact that the length of the match constantly changed to provide extra practice time to the teams. After lunch, we changed to just having a double match with regulation times for each.

The teams had a fairly wide variety of designs in use. The most effective was team winnovation, which was capable of launching a ball all the way across the field. It also had a omni drive setup, which allowed it to go around without ever turning.

Unfortunately, I’m not going to be at the CO regional again. Moving to Maryland this year. Ah well, thus is life.

Far too many wallpaper images

I have accumulated a very large number of wallpaper images. It’s currently hovering around the 2k mark. This poses the small problem of me never seeing them. So, I’m going to create an automated wallpaper changer. But first, I need to organize them into folders based on aspect ratio. This is because I have dual monitors, which aren’t the same aspect ratio. Thus, I wrote a Powershell script that determines the ratio, and then moves the image into the appropriate subfolder.

   1:  #sorts the files inside $loc based on aspect ratio
   2:  $loc = "G:\my pics\wallpaper\"
   3:  
   4:  #set the location, and grab the files inside
   5:  Set-Location $loc
   6:  $folder = (New-Object -com ("Shell.Application")).NameSpace($loc)
   7:  
   8:  Get-ChildItem | foreach {
   9:      $item = $folder.ParseName($_)
  10:      #check that it's an image
  11:      if($item.Type -like "*image")
  12:      {
  13:          # get the width and height
  14:          $dim = $folder.GetDetailsOf($item, 31)
  15:          if($dim -match "(?<width>\d*)\sx\s(?<height>\d*)")
  16:          {
  17:              $aspect = [int]$matches.width / [int]$matches.height
  18:              #move based on aspect ratio bands
  19:              if(($aspect -le 1.4) -and ($aspect -ge 1.2))
  20:              {
  21:                  Move-Item -Path .\$_ -Destination .\Full\
  22:              }
  23:              elseif(($aspect -le 1.8) -and ($aspect -ge 1.5))
  24:              {
  25:                  Move-Item -Path .\$_ -Destination .\Wide\
  26:              }
  27:              else
  28:              {
  29:                  Move-Item -Path .\$_ -Destination .\Other\
  30:              }
  31:          }
  32:      }
  33:  }

It’s pretty simple code. It would be a lot harder to write if I had to write it in C#, however. Fear the power! 😛

Wireless Networking and multiple SSIDs

So I got my WRT54G v3 router back from the friend that I lent it to. J’s been bugging me to get her DS Lite on the Internet, so she can trade Pokemon (*sigh*). Anyway, having done some research prior to this, I had determined that it’s possible to do multiple SSIDs when using a third party firmware called DD-WRT when using at least v24 (which is still in RC status).

First step: install the newest Linksys firmware. Then I install the mini generic DD-WRT firmware. From there, it’s on to the the standard firmware. So, I create a virtual wireless interface, which seems to have done so fine. Then I add the following commands:

startup:

fconfig br0:0 down
brctl addbr br1
ifconfig br1 192.168.21.254 netmask 255.255.255.0 promisc up
brctl delif br0 wl0.1
brctl addif br1 wl0.1
killall dnsmasq
dnsmasq --conf-file=/tmp/dnsmasq.conf

dnsmasq:

interface=br1
dhcp-range=br1,192.168.21.1,192.168.21.149,255.255.255.0,1h
dhcp-authoritative
dhcp-option=br1,3,192.168.21.254

firewall:

iptables -I INPUT 9 -i br1 -m state --state NEW -j logaccept
iptables -I FORWARD -i br1 -o vlan1 -j ACCEPT

And the net effect of all this? Nada. Can’t reach the second SSID. Nothing works. Try the RC7 pre-release. Still fail. Trying to get an answer from the forums, but I this isn’t solved by Saturday, I’m sticking Tomato on the box, and just using two routers to get the DS Lite on.

Laptop HDDs

The other upgrade J’s laptop received was a new 250GB hard drive. So with it, comes an OS reinstall. I’m planning on getting everything she wants installed on there, then imaging the drive so wiping the cruft off won’t be a heartache, but rather just a couple minutes work. With that, I decided to get the SLP 2.0 pieces, and see if I could get that to work.

First, I made sure she had the most recent BIOS from Dell installed. Without it, it almost certainly wouldn’t work, thus negating the entire SLP exercise. That done, I just installed it from the DVD (any Retail/OEM DVD works for installing any version). From there, I opened up an elevated command prompt (important that it’s elevated), then ran two commands:

slmgr.vbs -ipk ProductKeyHere

slmgr.vbs -ilc E:OEM.xrm-ms

Obviously, neither of those commands will work as is. After that, the system was activated. So I installed SP1, and just need to have J finish setting up her laptop. Which will likely be a couple weeks from now. Until then, she’ll keep on using her old HDD.

Bluetooth, laptops, and cellphones

So, J wanted a new cellphone. Ended up getting a Nokia 6126. Amongst other features, it was free. Big selling point. It also has Bluetooth and some media capability. She wanted to have a custom ringtone (Mario Bros). I didn’t really feel like paying for a ringtone (rip-offs, all of them). So my solution was to just transfer a MP3 on from her computer. Problem is, the only ways to connect are with a USB cable (which I also didn’t want to pay for), or Bluetooth (which she doesn’t have on her computer).

Off to EBay. Found a Dell 360 module, which was listed as compatible with the e1705 laptop she has. Couple days later, it arrives. Unscrew a cover, plug it in, and we’re in business. Well, except for the fact that I needed to download the drivers, and the Nokia software.

Long story short, she has her Mario Bros Ring tone.

Recommended Unusual Software

Essentially, this is software you didn’t know you needed. Everyone knows you need Firefox, and an IM program, and a word processor, but there’s stuff out there that’s really useful, but relatively unknown. Also, everything in this list is free. Sometimes free as in beer, and sometimes free as in speech. Also, this is Windows centric. I respect the fact that other OSes exist, but I like my Windows.

Paint.NET is the top of the list. People who know they need high powered graphics programs get Photoshop. However, not everyone can afford Photoshop, or needs the power it provides. Paint.NET is a better featured paint program that MS Paint. Plus, it has plug-in features, allowing third parties to add even more functionality

Switcher is like Expose, but for Windows Vista. It’s extremely useful when you’re a heavy multitasker.

WikidPad is handy whenever you’re thinking about something, and want to write it down, but what you’re expressing is non-linear. It’s a wiki in a can.

PasswordSafe is to store all your passwords. Everyone eventually ends up with 5 billion accounts on different sites, and because you can never remember all the passwords, you end up using the same password everywhere. A better idea is this program. You remember a master password, and after that, the program remembers all your other passwords. Thus, you can have different passwords for each site. You can set it up so it knows which website is associated with an account. It can also automatically type in your username and password, thus making it a simple matter of a couple of key presses to log in to any website you need to.

uTorrent – You pirate stuff. Everyone does. Or maybe you don’t, but in a number of cases, bittorrent is the fastest way to download a file. So, you need a client. uTorrent is that client. It’s well featured, but not bloated, like a number of other clients, such as Azerus.

Combined Community Codec Pack (CCCP) – So you’ve… acquired video files, but you can’t play them, because you don’t have the codec required. This is the solution.

Media Player Classic – admittedly, this hasn’t been updated in sometime. On the other hand, it’s much better than all version of WMP from 7-10, in my opinion. Additionally, it’s bundled in with CCCP, so if you get that, you also get this. Pretty much the only reason why I don’t use it very often anymore is because I like the glassy eye candy that is WMP11 on Vista.

My computer

I’ve done a bit of upgrading of my computer in the past couple weeks. Added more RAM (at 4GB now), installed Vista Home Premium x64 (to fully take advantage of the 4GB of RAM, amongst other things). I bought a 24in widescreen monitor from Dell. It’s quite sweet, BTW. I’ve also snagged a copy of Office 2k7 Enterprise (one of the perks of working where I do).

One of the cool things that Word 2k7 added was the ability to write and post blog entries directly, no copy and pasting necessary. So, unlike my first two posts, this one is written in Word.

One of the annoying things about the Vista upgrade is that drivers aren’t very stable, or for that matter, existent. My original webcam doesn’t work, because Creative hasn’t released 64-bit drivers yet, and aren’t currently planning on doing so either. Games are generally a bit slower, but not so much that I can tell. The exception to this is Guild Wars, which runs excruciatingly slowly when I have certain options turned on. In comparison, in XP, those same options allowed 80+ FPS framerates. I hope Arenanet gets around to updating to full Vista compatibility soon. For comparison, it’s about 80fps with those options turned on in XP, versus about 20 in Vista.