Archive

Archive for May, 2008

OpenOffice Calc formula for IP addresses

May 30th, 2008

It’s been a while since I’ve posted. Things are quite busy, with work 4 days a week (9-5) and classes 6-9:30 at night 4 days a week (though classes are Mon-Thurs and work is Tues-Fri).

I’m plodding along on with TuxTruck – we now have a domain name (http://www.tuxtruck.org/) and playlist generation is finished. This weekend should yield playlist parsing. Once MP3 playing is working, I’ll begin the hardcore development – GPS, OBD, and Bluetooth. Also, I’m working on a hardware budget for the prototype, but it’s ending up much higher than originally imagined. If I end up going with the Xenarc MDT-X7000 display (which includes a head unit with DVD playing, amplifier, CD playing, and radio – though those are features I’d rather to in software on the PC, and just use the amplifier) which runs $800 USD, the total is looking more like $2000 than the $1000 I had planned. More to the point, the X7000 currently has poor reviews, and is backordered everywhere pending a firmware revision. I may end up going the route of a separate head unit, or a dedicated amplifier (though volume control is still an issue) and getting a better daylight-readable touchscreen (though I still have a strong preference for a motorized in-dash type, given the theft rate around school).

Another item of news – my mother is considering moving from Verizon FiOS to the Cablevision/Optimum Triple Play – iO digital TV, cable, and voice. Given that jasonantman.com – and all of my other machines – live on shelves in her basement, this will have quite an impact on me. And a good one! Optimum offers Business-grade service at 30 Mbps down/5 Mbps up with 5 static IPs at a rate that I can afford. So, there may be an end to DynDNS, and my sites might finally live on port 80, like they should! On the down side, this would mean (for digital TV) a major coax rewiring of mom’s house – and RG-6/UQ isn’t cheap.

Anyway, the tip of the day – OpenOffice Calc formula to increase the last quad of an IP address by one:

=CONCATENATE(LEFT(A1;SEARCH(".[0-9]+$";A1));VALUE(RIGHT(A1;LEN(A1)-SEARCH(".[0-9]+$";A1)))+1)

I was doing up a little spreadsheet of IPs in the office, and like a good SA (with nothing else to do), came up with a formula to increase the last octet by one. Just enter a dotted-quad IP in A1 (or whatever other cell, correcting the formula), paste this below it, and copy down the page to your heart’s content. (Granted, it only changes the last octet, and expects a properly formatted IP).

Tech HowTos , , ,

Interesting Links for 2008-05-28

May 29th, 2008

Interesting Links and Resources

Interesting Links for 2008-05-27

May 28th, 2008

Interesting Links and Resources

SunSPOT Update

May 15th, 2008

Well, I got the SPOTs working on my system. It was a bit of a pain, but it worked.

  1. Uninstall ALL of java, jdk, netbeans, and remove user’s SunSPOT directory.
  2. Totally remove /usr/java /usr/lib/ /usr/lib/java-1.4.0 /usr/lib/java-1.4.1 /usr/lib/java-1.4.2 /usr/lib/java-1.5.0 /usr/lib/java-ext /usr/lib/jvm /usr/lib/jvm-exports /usr/lib/jvm-private
  3. Totally remove your .netbeans
  4. Install the jdk6
  5. Install netbeans6.1
  6. Login as your normal user, run Netbeans. Install the SunSPOT plugins from Bruno Ghisi’s blog – http://weblogs.java.net/blog/brunogh/archive/2008/04/starting_with_s.html
  7. Install ant
  8. Symlink /usr/local/netbeans to /usr/local/netbeans-6.1
  9. Here, ant -version failed for me. I had to run ant –execdebug many many times and do a *lot* of symlinking.
  10. Install SunSPOT sdk through SPOTManager.
  11. To install demos, under “Preferences” select “Beta Update Center”, change Network Timeout, go back to SDKs and install Purple demos.
  12. cd into ~/SunSPOT/sdk, ln -s ../Demos Demos
  13. Go back to NetBeans (exit SPOTManager) and open the TelemetryDemo-onSpot.
  14. Now it WORKS!

Also, I tried my hand at a first demo – horribly simple, it just reads light, temperature, and accelerometer data from a USB-connected SPOT. The code is in my CVS repository, as a netbeans project (NB 6.1).

Miscellaneous Geek Stuff , ,

Getting SunSPOTs working under OpenSuSE 10.1

May 13th, 2008

So I’ve been playing around with SunSPOTs lately. Or trying to. My only x86 (32-bit) machines are an old desktop running OpenSuSE 10.1 and my eeePC. It looks like I just killed my new install on the 8GB SDHC card, so I gave the desktop a try. I’d already tried once with the install of Orange from the CD that came with them, and had NetBeans 6 installed, so I had to do some recovery. The procedure was as follows:

  1. Install all of the Java6 java-sun packages (specifically the base as devel).
  2. Download the Java 6 JDK from Sun, and install all of the RPMs.
  3. Screw with /usr/lib/jvm and get it sane – specifically, replace all of the symlinks that point to /etc/alternatives with new ones pointing to the Java6 install in /usr/lib/jvm/java-1.6.0-sun-1.6.0
  4. Delete your entire .netbeans directory (I was having serious issues with NetBeans).
  5. Start NetBeans from the command line with an explicitly set jdkhome: “netbeans –jdkhome /usr/lib/jvm/java-1.6.0-sun-1.6.0
  6. Download the SPOT plugin for NetBeans, following the instructions on Bruno Ghisi’s blog.
  7. Once installed, you should have a little SPOT-looking icon on the toolbar below “Navigate”. Click on it, and launch SPOTManager from the link in the right panel (”Sun SPOTs Info”, the link is an icon not text). Go through whatever configuration is needed.
  8. Upgrade local SDK to Purple (Click the SDK tab, select “v3.0 Purple” from the right panel, click the Upgrade button near the bottom).
  9. Upgrade your demos following davidgs’s blog posting.
  10. Upgrade all of the SPOTs to Purple (plug them in one at a time, on the SPOTManager SunSPOTs tab, click “Upgrade”).
  11. I’m still having some minor issues here. I’ll update when I have everything figured out…

Tech HowTos , , , ,

Interesting Links for 2008-05-12

May 13th, 2008

Interesting Links for 2008-05-08

May 9th, 2008

Interesting Links and Resources

Interesting Links for 2008-05-07

May 8th, 2008

SunSPOT; CarPC; MediaWiki Logging

May 7th, 2008

Well, finals season is upon me. That’s probably why I haven’t been posting much lately (I haven’t even been checking Google Reader – I’ll have to delete a few thousand entries when I get back into the swing of things). I’ve been pretty busy, between studying, projects, and work. I’ll be working 4 days a week through June 20th, as well as taking night classes 4 nigths a week (unfortunately not the same 4 days) through July 3, in an effort to graduate Rutgers on time (after transferring in and also switching majors). Work after June 20th is up in the air – who knows how hard the budget cuts will hit.

My internship as the Sun Microsystems Campus Ambassador to Rutgers is over on May 12th. I got a chance to do the Rutgers IT Vendor Fair with Sun, and met a few cool people – especially including Matt McGrath of Continental Resources, a Sun Strategic iForce Partner, who’s doing some wonderful things with the Sun Education Essentials Matching Grant Program, and Skip Paul, a Linux Systems Engineer for Novell’s Open Platform Solutions group. I also finally cracked open my demo set of SunSPOTs. Wonderful little devices, radio, run Java on the bare metal, and have temperature sensors, accelerometers, and liberal I/O. My first development exereice will probably be making a temperature and acceleration data logger for my truck, but there’s surely more to come. They’re great!

My newest project – which I’m hoping to spend nearly the whole summer on – is the TuxTruck. I’ve been frustrated with the lack of “smartness” in my truck (an 06 Ford F-250), not to mention having to remember my MP3 player so I can listen to podcasts on the way to work, and having so many gadgets in my truck. So, the solution is obvious: a Linux-based CarPC. A nice little Mini-ATX box under a seat, with a 7″ pull-out touchscreen in the dash (replacing the factory radio). It’s a big, complicated, and expensive project – but I want one, and I could use some experience with smaller systems.
The major features I have planned:

  1. Realtime GPS navigation
  2. Hands-free bluetooth calls from my cell, with address book, routing to contact address, possibly voice dialing.
  3. Realtime weather
  4. OBD-II interface, for vehicle diagnostics and fuel efficiency/performance profiling
  5. Audio – at a minimum searching and playing MP3s, and automatically downloading podcasts and throwing them in a playlist. Perhaps also an AM/FM tuner

It’s not an easy project. So far, the major challenges seem to be:

  • No full-featured GPS navigation package available. The ones that are available don’t seem to be too easy to integrate into my planned GUI, which will allot them 800×420 pixels (on an 800×480 screen) and requre the bottom toolbar to be always available.
  • How to handle processing of multiple data streams that require near-real-time processing – specifically, GPS with text-to-speech, turn-by-turn directions, plus playing audio, plus responding to an incoming phone call in a timely manner, pausing the audio, and stopping GPS audio but continuing navigation.
  • Whether to install a smaller stereo and use aux input for audio, or totally rip out the stereo, use an amp with the computer as its only input, and then how to control volume?

There will be more to come in the future. For now, check out the wiki, or have a look through CVS. My current leading candidate for the GUI is coded in wxPython (Python and wxWidgets). You can take a peek at the current code (development – may be buggy) through ViewVC or just download a tarball.

Mediawiki Logging – I recently had a situation where I had to confirm how much work someone had done on a MediaWiki-based project. The Recent Changes page only goes back 30 days, and walking through the History of each page is a pain. After looking around in the database a bit, I found a few tables of interest:

  • Table “users” includes fields “user_touched” (last time the user was updated) and “user_editcount” (a really simple count of the users’ number of edits).
  • Table “recentchanges” holds a lot of data… seemingly the entire life of the wiki

Projects , , , , , , , , , , , , ,

Madwifi on the eeePC

May 4th, 2008

So, I’ve started a new OpenSuSE install on my eeePC. The 4GB SDHC card that I originally used was getting a bit cramped – I couldn’t even fit the kernel source! So, I bought a new 8GB SDHC card and started from scratch. I know that OpenSuSE 11 is coming up soon, but I just couldn’t wait, so I just used OpenSuSE 10.3 again.

I followed my previous how-to, and also am updating it with some new information – such as my xorg.conf. Most interestingly, though, I actually got MadWiFi to work with the Atheros AR5BXB63 on the eeePC! I haven’t tested everything yet (specifically WPA/WPA2) but it seems to work fine. I’ve updated my HowTo with the instructions, but mainly it hinges on using madwifi-ng-r2756+ar5007 (gzipped tarball) and compiling from source.

Note: This HowTo is based on the original eeePC 701 4G and OpenSuSE 10.3. It may not be needed for newer versions of OpenSuSE or newer versions of the eeePC.

Tech HowTos , , , ,