Saturday, January 31, 2015

OpenRadio SDR kit build

Linuxconf this year in Aukland had a radio track where a low cost software defined radio receiver with some limited ability to transmit was launched. My kit arrived last week.

The OpenRadio SDR is based around the recently popular Si5351 oscillator which is controlled by an Arduino Nano. It's rather like the Softrock design but because the Si5351 has extra outputs there is ability to transmit digital signals modulated with shift keying. The software includes a beacon mode that can send a short message in, for example, BPSK31.


The OpenRadio SDR kit is lovingly prepared. As you can see above, the components are clearly marked and the makers have been kind enough to be generous with extra components - in particular I tend to lose surface mount capacitors and resistors from time to time.

The construction guide is first class. While there is some surface mount soldering required - a challenge for me certainly, they've been kind enough to pre-solder two of the most difficult devices.

I didn't rush the build and spent a few hours on Saturday doing a bit and then going for a walk. For me, everything worked first go.



The software in the Arduino is a great start but here's where this is where work can be done. You connect over a virtual serial port and get a simple menu for controlling the board.

0.3 Jan 31 2015 09:37:39
Starting up Si5351... Got Rev ID 1

RX Frequency (Hz): 8986000
TX Frequency (Hz): 26959500
TX/RX Relay State: RX
Transmitter State: OFF
Calibration factor: 1.00000000

RX Frequency (Hz): 8986000
TX Frequency (Hz): 26959500
TX/RX Relay State: RX
Transmitter State: OFF
Calibration factor: 1.00000000

MENU:
1: View current settings.
2: Change RX Frequency.
3: Change TX Frequency.
4: Toggle TX/RX Relay.
5: Toggle TX State.
6: Start BPSK31 Terminal
7: RX VFO Mode
8: Calibration Mode
9: Save Settings
A: Set channel (TX/RX frequency pair)
B: Start Beacon

For tuning around, at the moment you must use RX VFO Mode which gives you keyboard letters for tuning up and down, rather like PowerSDR but you must press enter after each.

RX VFO Mode, press q to exit.

    Up: r   t    y    u    i    o    p
  Down: f   g    h    j    k    l    ;
Amount: 1   10  100   1K   10K 100K  1M

I guess an interesting direction to evolve this would be to implement the protocol used by a popular rig and then SDR software could use Hamlib to control the board - certainly all possible.

My congratulations to everyone involved in this. I think it's a great idea brilliantly executed and I can't wait to see what people build on top of it. The idea of having an Arduino at the core makes it very accessible.

6 comments:

Joel Caulkins said...

Hi Peter, I was amazed when checking your blog to find out you built the OpenRadio kit, because I may be getting one of these myself if all goes right. Meanwhile I tried to load the sketch into my Nano, but couldn't get it to compile using Arduino IDE 1.06. I'll figure it out. I think its a really cool project, and look forward to building it. Thanks for the review. 73

Joel
KB6QVI

Peter Marks said...

Hi Joel,

I also used the IDE 1.06 and it worked fine. What error message did you get?

When I click Verify it says: "Binary sketch size: 22,320 bytes (of a 30,720 byte maximum)"

Peter

Joel Caulkins said...

Peter,

The error code that I got was way to big to list here. Maybe it would be easier to ask, which sketch did you use? I used the "Interactive" sketch from the Interactive folder and it took all the library's with it. I really wasn't sure which sketch to use.

Joel

Peter Marks said...

Yes, I cloned the git repo from here: https://github.com/darksidelemm/open_radio_miniconf_2015 and used the "interactive" sketch.

If you're getting a big error message then maybe the compiler isn't working. Do other sketches build?

Joel Caulkins said...

Yes, I loaded the Blinky sketch on it and it loaded just fine.

Joel

Peter Marks said...

Try it again and send me the error you got.