Wednesday, June 4, 2014

Open Source to the Rescue!

As many of you should know by now, I am an Amateur Radio operator. In addition to computers, open source software, and photography, I dabble with ham radio from time to time. My wife and I have been members of one of our local Amateur Radio clubs for many years now, and regularly attend meetings and other functions of the club. One thing I did for the club was to develop my own cheap & dirty photo gallery application using PHP. It wasn't intended to be a "forever" kind of thing, it was only supposed to be a stop-gap strategy until I could find just the right photo gallery package. We all know what happens when you have a stop-gap strategy :D Needless to say, this photo gallery program has been in use now since August of 2007.

While I wrote the software and managed the photo galleries, general website design and maintenance was taken care of by another of our members, one that has a bit more of an eye for design than I do. This generally worked pretty well, until he took a job in another city, a couple of years ago, and moved away. All of a sudden the website got dumped on me to maintain. While I've done web development in the past, it was mostly CGI, done back in 1998 through the early 2000's. I had never really worked much with CSS and modern JavaScript. Needless to say, I was somewhat overwhelmed by all of this. I could keep up the maintenance of the site, but adding new features was a royal pain.

After the May 2014 club meeting had ended last Wednesday, the club president approached me about our website. We've both talked about replacing it, many times before, but I just hadn't managed to get around to it.

Well, when we got home after the meeting, the first thing I did was set up a facebook page for our radio club. My fist step in modernizing our approach to advertising and recruiting. Two days later, on Friday, I was talking with my good friend Robert. Robert builds websites for a living, and does a damn good job of it too. His main tool is WordPress, which I had always dismissed as plain old blogging software. After seeing some of the sites he has built with it, over the past couple of years, I started having second thoughts. I installed WordPress on our club's site, in another directory, and went to work on it Saturday morning. By late Sunday afternoon, the new site was complete, and I sent out an email to our club's Yahoo group, announcing the new site's availability. My friend Robert played no small part in this, his knowledge and insight helped me get the site built and ready in such short notice, and I thank him for that.

I never cease to be amazed at the progress of open source software! By using WordPress, which is most certainly open source, I was able to completely rebuild our club's website, in one weekend, and give it a fresh new look as well. Oh, that photo gallery software I wrote in PHP those many years ago? It has *finally* been replaced on this new site, with the WordPress Photo Album Plus plugin. What a fantastic piece of software, and fairly easy to use as well.

Thursday, May 1, 2014

Back to the Future...

This entry is very special for me. Today marks the 50th anniversary of the BASIC language, developed at Dartmouth College. This is special to me, because the very first program I ever created was in BASIC, back in 1982, on a DEC PDP-11/780 system, while in the Navy. BASIC went on to play a leading role in my first few years of micro-computing as well. From my very first computer, a Commodore VIC-20, through the end of my "8-bit" years (mid-1985, when I got my first IBM PC-clone), I programmed exclusively in BASIC. With the advent of my first IBM PC-clone, I switched to 8086 assembly language, but that's a story for another time.

I also worked in Visual Basic (3, 4, 5, and 6) both privately, and for pay, during the mid-1990's through the early 2000's. My last purely BASIC job was a contract job in QBASIC, back in October/November 2000. As you can tell, BASIC has been a big part of my professional computing life, and I owe a lot to those gentlemen in Dartmouth College, who took that big step on May 1st, 1964.

In keeping with the theme of this blog entry, I also wanted to report that the OpenBSD 5.5 release notice came in this morning. I had already received the CD set that I pre-ordered, and now just need to move the other computer over here and do the install. It will be nice having an OpenBSD computer up and running again. Btw, in case you're wondering how this ties in with the blog post, the theme for the 5.5 release is "Back to the Future". See the "What's New" section for details.

A note not in keeping with this blog post theme: Ubuntu 14.04 LTS was released on April 24th. I waited a few days, then upgraded Xubuntu on my notebook to 14.04 LTS, from Xubuntu 13.10. The upgrade went smoothly. I plan on backing up my wife's Xubuntu 12.04 LTS desktop in the next few days, and running the upgrade on it as well. I'm hoping for a smooth upgrade.

Thursday, April 17, 2014

April showers bring... New Releases!!!

Ah, spring. The season of renewal. The cold and snows of winter retreat, and the warmer days and growing grass and flowers return. Spring is also a time for distro releases. Today marks the release of Ubuntu 14.04 LTS. The Internet is practically dragging to a stand still from all of the Ubuntu users, eagerly downloading ISO images, or performing live updates. I plan on waiting a week or so, then looking into updating my wife's computer from Xubuntu 12.04 LTS, to Xubuntu 14.04 LTS.

A quick check of DistroWatch shows no less than seven distribution releases, and another two development releases this week, with more to come in the near future, no doubt. Amble on over to DistroWatch and check out what's new and hot!

OpenBSD, another of my favorite operating systems will be pushing out a new release soon (historically around the first of May). I'm really looking forward to this release, as I will finally have the hardware to run it again. I've been without an OpenBSD system for almost a year now, and have really missed it. The list of changes and improvements is somewhat staggering, which really makes me want to get it back up and running on actual hardware.

Anyway, that's all I've got for this entry. I'll leave you with this picture of a cute squirrel walking along my back fence, that I took today. Another sure sign of spring:

Monday, March 3, 2014

It's March already???

Oops! I guess I kind of skipped completely over February. To be honest, I was sick for most of February, and when I wasn't sick, I was enjoying my photography hobby. When I got back into photography last May, I used just three software tools: ImageMagick on the CLI, mostly for resizing my pictures, Geeqie, for viewing my pictures, and The Gimp, for cropping and rotating my pictures. That's all the post processing I currently do, as I'm striving to "get it right" in the camera. That works some times, other times not so much :D

Like most digital photographers, I will eventually start using more post processing methods on my pictures. To that end, I've been scouring the Internet for good open source photography programs. The Gimp will be my first go-to program, but there are so many other things out there. If I ever start shooting using RAW mode on my camera, I will need a program for post processing (adjust light levels, brightness, contrast, colors, etc...) and to convert it to JPEG format, for posting on the Internet. I've found two so far (and there are probably loads more): RawTherapee and darktable. Both of these are very good, and I'm sure they compliment each other. Since these are open source programs, I can install them both and play around with them. Another area I'm interested in is High Dynamic Range (HDR) photography, and I've already found an open source program to experiment with, when I get to that point: Luminance HDR. is an excellent source for open source photography software listing and reviews, if you are a photographer, and use open source software, I highly suggest you bookmark this link.

I have found that, in any particular market segment, you can find good to outstanding open source alternatives to commercial software products. My wife and I are, for the most part, Linux-only, and we do not use Wine in order to run Windows programs. We do keep one Windows computer (Windows XP Professional, right now, but I will be upgrading it to Windows 7 Professional soon), for our Amateur Radio station, because we use the same software other hams in our area use. The rest of our desktops and notebook computers run some flavor of Linux, with only open source software on them.

We are approaching distro release season, and I would suggest you check frequently, to see what is coming out next. As this blog entry is mainly about open source photography software, I will leave you with this picture I took yesterday, of a scenic little canal in my town. Again, the only post processing done to it has been resizing (smaller) using ImageMagick:

Monday, January 20, 2014

Broadband-Hamnet: A broadband mesh network for Amateur Radio

Last year I hinted at something I had been playing around with: Broadband-Hamnet, previously called HSMM-MESH. Broadband-Hamnet is an open source project, build around OpenWrt, that allows Amateur Radio operators to set up arbitrarily large networks on the fly. Broadband-Hamnet mesh nodes are self discovering, self configuring, self advertising and fault tolerant. This means that to create a BBHN mesh network, all you need to do is bring two mesh nodes within a distance close enough for them to detect each other. To extend that network, just add more mesh nodes. BBHN mesh nodes work in ad-hoc mode, and use channel 1 to link to each other.

One of the beauties of the Broadband-Hamnet software is that it runs on relatively inexpensive, easily available hardware: The Linksys WRT54G family of consumer grade WiFi routers. Work is underway to port the BBHN firmware to the Ubiquiti family of WiFi routers. To get the BBHN firmware on a router, you simply follow the directions to "flash" it with the new firmware. After the initial reboot, you go in and configure the node. The only caveats to this are, for a BBHN mesh node, the SSID must be "BroadbandHamnet-v1", to match all of the other mesh nodes, and the node must remain on channel 1.

Since the mesh nodes use the WiFi radio to establish the network, in order to attach computers, IP video cameras, or other equipment to the mesh network, you will need to plug them in to the router using one of the four available Ethernet ports. If you wish to connect multiple users at the same time, you can flash another router and turn it into a Mesh Access Point. This access point will then connect to one of the mesh nodes via their Ethernet ports, and any suitable WiFi wireless device (laptop computer, tablet, smart phone, etc...) can then connect to the mesh network using WiFi.

So, what does all of this mean to me, and what can I use it for? It means that you (as an Amateur Radio operator) can create a network where one did not exist before, or you can extend an existing network. Be advised, BBHN networks are for Amateur Radio use only, and can not be used to replace your home network, to communicate over the Internet. This doesn't mean that you *can't* communicate over the Internet, it just means you have to restrict your communications over the Internet to Amateur Radio related tasks. There are tons of uses for a BBHN mesh network. They can be used at special events to provide video (using IP video cameras), voice (using VOIP), or text (using IRC) communications. Since they are ad-hoc, and self-discovering, all you need to do is get enough mesh nodes in place to cover a fairly large area. Any service that is currently on the mesh network, can easily be made available to all nodes and users on that mesh network.

I'm currently running a small BBHN mesh network at my house, for experimental purposes. My BBHN network is comprised of two nodes, AC4FS-1 and AC4FS-2. Both of these nodes use the Linksys WRT54GL routers. I have a Raspberry Pi single board computer, running an IRC server, connected to AC4FS-1. AC4FS-1 is in the ham shack, on the south side of the house. The other mesh node, AC4FS-2, is on the extreme north side of the house, in the office. I have a Linux desktop computer connected to this mesh node. I also have another WRT54GL router, configured as a mesh access point, connected to AC4FS-1. This allows me to access the mesh network using my tablet or smart phone, from anywhere in the house. Here's a network diagram of my BBHN mesh network:

I first heard of the Broadband-Hamnet project from an article in the October 2013 CQ Amateur Radio magazine, written by J. Gordon Beattie, Jr., W2TTT. If you can get your hands on a copy, it makes for a really good read, and is what inspired me to try creating my own BBHN mesh network. In the near future, I plan on creating two portable BBHN mesh nodes, and one portable mesh access point, to test during special events (parades, fireworks displays, races, etc...). At the same time I was building out my mesh network, I found out that the Flagler County ARES group was also experimenting with Broadband-Hamnet, for use in connecting the local hospital to the County Emergency Operations Center (EOC). What a worthy project for BBHN!

Friday, December 20, 2013

It's the holiday season once again

It never ceases to amaze me how fast the years are going by. It seems like just yesterday I was writing my Happy Holidays post for 2012, and here we are, less than a week away from Christmas Day, and only 12 days away from the start of 2014.

2013 has been a tumultuous year for me, with lots of changes going on at work, and in my open source world as well. It has seen me *finally* rebuild my home file server, and to push myself to learn how to create a RAID1 array on it. It has seen the replacement of two of our home computers, and I had a bit of a learning curve dealing with UEFI Secure Boot. And finally, it has seen me begin to dabble in Broadband-Hamnet Mesh Networking. Something I will blog about in January.

2013 has also seen the upgraded release of several major open source operating systems, and countless minor, but still important, ones as well. With each new release of the Linux kernel, it becomes more capable and powerful. New features are added that push the boundaries of what Linux is capable of, and countless bugs are found and fixed.

As we head into 2014, Linux and open source software is finding its way into more and more places, becoming more main-stream, and being accepted in governments and enterprise around the world. I wonder what Andy Tanenbaum would have to say about that?

As we all celebrate our respective holidays, and 2013 draws to an end, let's remember to toss in a thanks to open source hardware and software, and to the folks who contribute so much of their time and effort into the creation, maintenance, packaging, and documentation of them. I'm sure computing would go on without open source, it just wouldn't be nearly as fun ;)

Thursday, December 5, 2013

Dell Inspiron 15 Notebook vs. UEFI Secure Boot

I'm writing this blog post on my new Dell Inspiron 15 (3521) notebook, which is now running Xubuntu 13.10 x86-64. I ordered this, along with my wife's Inspiron 660s desktop from Dell this past Black Friday. Both came with Windows 8 installed (yes, at the crazy Black Friday prices, it was cheaper to buy them with Windows 8 pre-loaded). In my last blog post, I talked about the trials and tribulations of replacing Windows 8 with Xubuntu on Secure Boot enabled computers. I (erroneously) assumed that my experience with the Inspiron 660s would enable me to easily tackle the Inspiron 15. With the Inspiron 660s desktop, I was able to just turn off Secure Boot, then disable UEFI, and that was the end of it. Not so much with the Inspiron 15 notebook.

For some reason, notebooks are different than desktops... at least as far as UEFI and Secure Boot are concerned. When I tried to disable Secure Boot, then turn off UEFI, I quickly found that the BIOS presented no bootable devices at all. I went round and round with this, to no avail. Finally (remember, I am a man, it is generally thought to be a violation of "The Man Code" ™ to ask for directions), I did some judicious googling and came up with the answer. First, I needed to disable Secure Boot. No biggie, that's easy. Then I needed to tell UEFI to load the legacy OBIOS. Ahh, that was the missing part of the equation! Once that was done, and the notebook rebooted, I was able to see the network boot, hard drive boot and DVD-ROM boot options. A quick trip to the "Boot Options" section allowed me to change the boot options so that the DVD-ROM came first, followed by the hard drive.

Now the fun began! I really wanted to install Crunchbang Linux on this notebook, and I did. But I quickly found out that the kernel version shipping with Crunchbang Waldorf did not recognize the built-in Dell WiFi/Bluetooth card. Bummer. After more googling, I found out that only by updating the kernel version to 3.10.x or greater, would I be able to use the built-in WiFi. Nuts! No biggie, I had already downloaded the Xubuntu 13.10 x86-64 DVD image, so I installed that. On first boot, the 3.11.x kernel detected the built-in WiFi/Bluetooth card and loaded the appropriate module. Yay!!! Another quick trip to Google search gave me a work-around to the sound bug in Xubuntu 13.10, that works with this laptop, so that, in a nutshell, is how I came to be running Xubuntu 13.10 on this notebook.

As an upshot to all of this, I now have access to my old desktop again, and plan on installing OpenBSD 5.4 on it in the near future.