Friday, January 22, 2016

Talking on the nets.

While I heed the advice of experienced hams and listen most of the time while I am on the radio, I have been enjoying participating in the local nets on VHF. One of the local clubs, Amateur Radio Caravan Club (http://caravanradio.org/) operates a repeater, W5CSY (145.33 MHz), and has a daily net (SCAT net) at 0700 MST that I have been enjoying. They are some seasoned operators, which is nice, and they are really patient with my lack of experience.

I received a fun toy in the post today...a 3.5" LCD touch screen for my Raspberry Pi radio project. More to come on that as it comes together.

Thursday, January 21, 2016

New license and call sign!


I was just checking the FCC ULS site, after waiting for scheduled maintenance. I passed my general license exam on January 13, 2016. Additionally, I requested a new vanity call sign, and was awarded it! KG5KXO is now K9CAB. My amateur radio experience has been terrific thus far, and I have started making contacts on the VHF nets, which is fun. I will be changing the name of this blog to reflect the new call sign. 

Wednesday, January 13, 2016

General License Achieved!

I attempted and passed my general class license this evening. Now I am 2/3 of the way through the hierarchy of amateur radio accreditation. I attempted and did not pass my extra class exam with 27/50 correct. I know now what I need to learn to pass my extra class exam. HF rig and HF band working coming soon!

Saturday, January 9, 2016

Programming the Leixen VV-898 FM Transceiver


Having recently earned my ticket, I am still investigating (read: listening to a lot of podcasts and reading a lot of blogs) the various options for single-band, multi-band, DX, repeater access, and digital modes, such as packet, PSK31, D-STAR from Icom, System Fusion from Yaesu, NEXEDGE from Kenwood, and on and on. With so many options for capabilities and features on radios, and so little knowledge about which ones I want and need, I decided that an appropriate entry point was a real mobile transceiver for VHF/UHF communication on the trail, which is why I got my license to begin with.

I do not intend to encourage or participate in a religious argument about Chinese versus Japanese radios, or brand fanboi arguments. I bucked the trend of purchasing the cheapest $30 Baofeng HT, even though there are good reasons for owning one, and I will have one with spare batteries in the back of the truck at some point. I picked up a Leixen VV-898 (www.leixen.com) which comes in a tiny form factor at 120mm × 90mm × 40mm, and has a number of useful features, but is still a basic dual-band transceiver. This unit, like most Chinese radios, is sold as a number of makes and models. Specifically, it is a dual-band 2m and 70cm transceiver that has 4w/10w selectable power, an internal speaker, a microphone installed keypad, macro functions, 199 programmable channels, will tune commercial FM (RX only), has an emergency auto-transmit mode, comes with a USB programming cable, and is supported in CHIRP (chirp.danplanet.com/projects/chirp/wiki/Home). All for well under $100. Bam.

This post is more about programming the unit, than a hardware review, which I am not really skilled at anyway. This unit comes with the programming cable, which is a must since the controls are less than user friendly, and it does not have a large VXO knob. I am on the fence a little about this, as I like the control offered by the VXO, but that is probably not that easy to use while bumping down the trail. I like the idea of having the most used channels available by voice command or keypad access. This is actually important in the context of programming. Due to the form factor of this unit, programming from the front panel or keypad, while possible, is not really practical. Therefore, programming via PC or smart phone, and then uploading to a transceiver via cable or bluetooth, is the ideal programming model, in my opinion. This unit offers programming via cable, using software available on Windows, Mac, or Linux platforms. My ham radio computer is an Ubuntu 14.04.3 laptop, dedicated to amateur radio applications. I will discuss programming using Chirp on Linux.

Programming the VV-898 occurs in four steps: downloading the image from the radio into Chirp, setting up the program for channel presets and radio behavior, saving the image to disk (optional, but convenient for iterative programming), and finally uploading the image to the radio. The manual for this radio, incidentally, is in fine Chinglish. Politically correct or not, that is a fact, and makes the manual entertaining, if not entirely useful.

To install Chirp, it is important to understand if your radio is supported or not, and under which version. Most of the popular vendors, such as Kenwood, Icom, and Yaesu, have comprehensive and long-term support in the main branch of the application, but some of the more obscure, and particularly some of the Chinese vendors, have more sparse support. The Leixen VV-898, I learned through googling the universe, is supported in the daily build branch of the CHIRP software. To install the application from the daily build branch, I had to uninstall the version from the Ubuntu Apt repository, set up the new repository, and install the daily build version:

root@ham-ubuntu:~# aptitude remove -y chirp
root@ham-ubuntu:~# sudo apt-add-repository ppa:dansmith/chirp-snapshots
root@ham-ubuntu:~# sudo aptitude install -y chirp-daily
To program the unit, I connect the radio to my Audiotek 5A regulated AC-DC power supply (amazon.com/Audiotek-Output-Mobile-Supply-AT-PS5/dp/B00DERJLBK), which is a must if you have a mobile unit - don't try to do this in your car in the dark in the cold in the winter - unless you like that sort of thing. Besides that, if you have a power supply, and a dipole antenna, then you can set up a home base station with the same radio, which is pretty nifty. To continue, I then connect the programming cable from a USB port on the laptop to the microphone jack on the radio.

To enable writing to the USB device (/dev/ttyUSB0, owner root:dialout, permissions 0660), you must add read/write access to the USB device to your user, so either (a) run chirp as root using sudo, or (b) add your user to the dialout group, or (c) chmod 0666 /dev/ttyUSB0 to add world read/write access to the USB port. If you are the only user of the system, as I am, it frankly does not matter which method you use. If it is a multi-user system, then you may want to use (a) or (b).

I power on the power supply and the radio, and then launch chirp (sudo /usr/bin/chirpw), which is highly anti-climatic with a blank screen. Pull down the Radio -> Download From Radio menu option and you will be prompted for the port (/dev/ttyUSB0), vendor (Leixen), and model (VV-898).



Provided you have all the stars lined up, the radio will chirp at you with the power on tone sequence, and the image will be downloaded into the application memory of chirp and displayed in the editor.



Bully! Now you have control over radio and control panel behavior, all the channel memory presets, and options for those channel presets: Location, Frequency, Name, Tone Mode, Tone, ToneSql, DTCS Code, DTCS Rx Code, DTCS Pol, Cross Mode, Duplex, Offset, Mode, and Power.






There are two main categories of programming displayed as tabs on the left side of the screen: Memories and Settings. Memories are for channel presets, and settings are for general radio and control panel behavior.

To provide an example of adding a new channel preset, I am going to use the local NOAA weather channel, WXJ-34, 162.400 MHz. I am going to set the Location (3), Frequency (162.400), Name (WXJ-34 (NOAA)), Mode (FM), and Power (Low) fields.


To change settings, I choose the settings tab on the left side, and modify settings and function buttons P1, P2, and P3 for short and long button presses, so the radio does what I want. Obvious things to consider changing are the timeouts for various things like button presses, as well as the startup messages to display your call sign, or the time, and setting the P1, P2, and P3 buttons to scan programmed channels, to perform the emergency mode send, and 
change the transmission power.





To upload to the radio, I am going to save the current image first, so I can modify and upload it repeatedly. Go to File -> Save as and choose a useful file name and location. Then go to Radio -> Upload to Radio and the image will be uploaded to the radio and the power on chirp sequence will be heard if successful. I then close chirp, disconnect the programming cable and reconnect the microphone cable to control the radio.

I will post again and discuss more detail about operation of the radio.

Cheers!
KG5KXO

Friday, January 8, 2016

RTL/SDR Radio project 

 

This is my first blog post about amateur radio. I received my FCC technician license only a couple of weeks ago. I know, I am turning 50 this year...where have I been? There is so much to write about. There is so much more going on in this field than I ever thought. The application of maker activities and the convergence of computer automation, digital signal processing, digital transmission and receive modes, and analog radio technologies is mind boggling.

For an engineer with a science background, it is very encouraging to realize this is all going on in an era when young people are gifted with so many conveniences, and so little motivation to invent or creatively think about anything. When I was first exposed to the IT field, in the late 1970's, there was so much to do, and the possibilities for application to science, engineering, and everyday life were seemingly endless. Given the current proliferation of wireless devices, and the advancing of IoT (Internet of Things) applications, amateur radio has possibilities beyond point-to-point phone comms, contesting, nets, and digital modes and CW keying. There is nothing wrong with any of those things, for the record.

Enough philosophical drivel. As part of my ongoing efforts to both learn about amateur radio, and combine that with my knowledge and experience with Linux and computing technologies, I am putting together a digital radio project that makes use of open source amateur radio projects, software-defined radio, and the Raspberry Pi. The RPi DSP and TX projects are forthcoming in later posts.

As a first step, I am learning about the spectrum, modes, and general parameter twiddling, using a 24MHz - 1.7GHz USB 2.0 RTL-SDR radio receiver (www.nooelec.com/store/sdr/sdr-receivers/nesdr-mini-rtl2832-r820t.html). This is a very cool device, when combined with the wealth of software available from the open source amateur radio community. Using Ubuntu linux (www.ubuntu.com), gnuradio (gnuradio.org/redmine/projects/gnuradio/wiki), libusb (libusb.org), and gqrx (gqrx.dk), I am able to program the dongle, scan frequency bands, pick up HF (down to 12m), commercial FM, VHF, and UHF stations. It only took a few minutes to install and configure the software.

Here are the gory details:

Install Ubuntu (or the Linux distro you love and understand)
I installed all the ham and amateur radio specific packages
 sudo apt-get install -y `sudo apt-cache search 'amateur|ham' \

| grep radio |awk '{printf $1" "}'`
 
 For just the RTL-SDR portion, install the rtl_sdr package, libusb, libusb-dev, gnuradio, and gqrx. You will need to unload and black list the rtl28xx kernel module since it does not play well with the SDR executables:

 rmmod dvb_usb_rtl28xxu && echo blacklist dvb_usb_rtl28xxu > /etc/modprobe.d/rtlsdr.conf

Additionally, the rtl_sdr package will require libusb-dev for the version you have installed, for instance:

root@ham-ubuntu:~# dpkg -l |grep libusb
...
ii  libusb-1.0-0:amd64                                    2:1.0.17-1ubuntu2                                   amd64        userspace USB programming library
...
so...
aptitude install -y libusb-1.0-0-dev

...makes rtl_sdr happy.

There are other UI packages as well, and you can do this all via command line, if desired. I personally like the ability to see the frequency counter, the spectrum analyzer, and the parameters on one screen. It is so 1980's.

The sampling and digital signal processing functions are pretty resource intensive, so an old dusty single-core laptop with 2GB of memory (which is what I am using), is probably a little on the low side of requirements.

This is a great entry into amateur radio, however, and with a bit of heavy lifting in Linux, you can get on the air listening to AM, FM, and SSB phone pretty quickly.

Cheers!
KG5KXO