Sunday, December 28, 2014

Amateur Radio information on modern social networking.

I'm slowly starting to get some of the appeal of Reddit.    At first I was drawn there by /r/rtlsdr, as there didn't seem to be much info elsewhere.   There is a bit of a digital divide, for on-line sources many hams go to QRZ.com with it's 1990's design and god awful ads flashing all over the page.  Try as you might, some of the old guys can't remember to try anything but QRZ.com. The other big source of info is Yahoo groups which are starting to show their age, but have been made much less useful due to Yahoo trying to figure out how to get more page views.

So two useful places to get answers to amateur radio related info:
  1. Reddit: /r/amateurradio  [http://www.reddit.com/r/amateurradio/]
  2. StackExchange: ham.stackexchange.com [http://ham.stackexchange.com/]

Wednesday, December 17, 2014

Decoding 433.92 Mhz devices with RTL_433.

I've been doing a bit of playing with merbanan's rtl_433, which uses the rtl_sdr code to decode signals from 433 Mhz ISM devices that mostly use On-Off-Keying.

So far I've been working on decoding
  • Lacrosse TX-7 temperature and humidity sensors, same protocol as TX-3, TX-6.
  • DSC wireless security contacts (door/windows, smoke and carbon monoxide detectors)
There is a lot I've learned from playing with the devices using rtl_433 and digging into the code.  I need to write it up because there are almost no instructions.

I've posted the LaCrosse code to github and submitted a pull request to merbanan/rtl_433.

I'm successfully decoding the DSC contacts using a separate Python script that parses the debug output from rtl_433.  I need to write a new pulse decoder for rtl_433 in order to handle the DSC protocol as it's a little different than other pulse or distance coded signals. It doesn't send anything for a zero (0) bit, so there can be long periods (up to 8 bit slots) of no signal.

For more info, contact me if I haven't posted here or to github.

Update: 2015-01-11, merbanan processed a whole bunch of pull requests, including mine, so the LaCrosse TX-7 support is now in the main merbanan/rtl_433 github repository.

I haven't pushed any code for the DSC sensors yet. I have to decide how I want to do the decoder and call back yet.  Anything I push will probably be only be in rct/rtl_433 for a while as it is likely to be experimental.

Good tutorial on Serial from Saleae (working with microcontrollers)

Here's a good tutorial on serial communications, particularly if you are working with microcontrollers.
  • Learn Asynchronous Serial - http://support.saleae.com/hc/en-us/articles/200284509-Learn-Asynchronous-Serial
I want a Saleae Logic 8 for Christmas.  They look pretty neat.

Saturday, November 22, 2014

Advice for Getting a Ham Radio (aka Amateur Radio Licnese)

[I wrote this somewhat long response to a question on a mailing list.  I'm sharing it here in case it will help anyone else.]


First, don't pick up a radio until you've passed your test.  It will be a distraction that will keep you from studying.  Plus, you are more likely to become frustrated with an un-programmed radio with no idea what frequencies to check for activity.  Amateur radio doesn't really have channels to flip through.

As far as passing the test, two ends of the spectrum have been mentioned so far, memorizing "flash cards" vs. reading the ARRL book cover to cover.
The first and second level exams are 35 question multiple-choice tests covering a bit of rules/regulations, operations practice, and a little bit of theory.  The complete set of questions that your 35 will be drawn from are published.  The question pool changes every four years and is freely available for download.

A fair number of the questions require memorization.  For example there are questions about what frequencies you can operate on. Once the material starts to sink in there will be more stuff that you just know because you understand it and not because you've memorized it, but being able to remember the frequencies remains.

The best way to prepare for your test depends on your goals and how you learn best.  If you like to read and want to learn, then reading the whole ARRL technician license guide (cover to cover) might be best for you.  Ideally, you want the most recent edition from 2014, that includes the new technician question pool that went into effect July 1, 2014.

If you want something a little more condensed and/or free, several people take the question pools and publish study guides with additional info to help you prepare for the test.  KB6NU makes his "No-Nonsense Study Guides" available in PDF here:   (Technician and General are free)

    http://www.kb6nu.com/tech-manual/

There are plenty of other resources including some audio podcasts that review the material for the test.  (There are probably lots of youtube videos as well, I haven't looked.)

The site that was previously mentioned hamexam.org is a great free place to review "flash cards" for the entire pool or take practice tests. It will keep track of what questions you've answered correctly.

    http://hamexam.org/

Go ahead, try some of the questions cold.  If you are a good multiple choice test taker with a bit of a technology background you might get half the questions right without studying.  The tests are not that
hard.  You can get 9 questions wrong and still pass the 35 question test.

There are several places locally where you can take the test.  There is a test session at Columbia University usually on the third Monday of every month.  The next one is December 15th, which gives you plenty of time to study .

    http://www.w2aee.columbia.edu/cuarc-exams.html

Many other test sessions can be found on the ARRL's site.  (Note: there may be exams offered by organizations that aren't affiliated with the ARRL that won't be listed there, like one of the clubs in Brooklyn.)

    http://www.arrl.org/find-an-amateur-radio-license-exam-session

Finally preparing for the test won't give you everything you need to know to be an effective radio operator.  However it's an important hurdle to just get over.   Once it's out of the way, there are plenty
of people who can help with all the practical "Radio 101" to fill in all the gaps.

Hope This Helps,
--Rob

Trying to get active again

Just noticed it's been six months since I've posted anything. 

Let me try to fix that.

Thursday, May 1, 2014

Technology: It's Just a ... (Meaningful one of two sentence summaries)

One of the frustrating experiences in technology is trying to find out what some new thing is really all about and where it fits in. You can read tons of marketing materials and still not got the gist. Then sometime later when you are talking to someone else (with a deep technical background) who is familiar with the new thing, they say "Oh, it's just a foo with bar" or "It's similar to foo but does bar" and that causes a lightbulb to go off and you just grok what the new thing is and where it fits in.

I had one of those moments today, Slightly buried in the FAQ, for Red Hat buying Inktank, there was this two sentence summary that makes the relationship between Gluster and Ceph/Inktank clear:
Inktank has a more mature block interface and OpenStack integration, while Gluster has a more mature file system interface and traditional web storage integration. Therefore, the two complement each other very well and we believe the combination is a very attractive alternative to traditional proprietary storage.
To me, that was the Ah-Ha! description that I needed.   Sometimes I wish there was a place that had these sort of short nutshell summaries that was written by technical people for technical people.




Tuesday, April 29, 2014

Linux Trivia: Grub Legacy 128 byte inode dependency

Documenting something that I tripped over while trying to fix a very old Linux system. 

Grub Legacy (0.97) is dependent on 128 byte inode sizes.  Newer systems use 256 byte inodes to store extended attributes.  This confuses grub causing it not to be able to boot system as well as cause boot loader installation to fail with odd error messages like can find /boot/grub/stage1.

Fortunately googling found that Kristian Reese had documented this in his own "knowledge base", somewhat like I'm doing here in a less organized fashion.

The file /boot/grub/stage1 not read correctly kristianreese.com knowledge base
The solution is to use mke2fs ... -I 128 ...to force a 128 byte inode size when re-making the "legacy" root file system that will be booted by grub "legacy".

Use tune2fs -l /dev/foo to see the current file system parameters.  Tip: Save tune2fs dump info someplace for import (root) file systems someplace off the system.