It has been some time since we've given an update here. A tremendous number of software improvements are under development. But progress has been slow given everything else that is going on (mostly answering hundreds of emails and forum posts). If you are not already you might consider following the KiwiSDR forum,
Github issues list and
source code commit log. There you will get some idea of the progress being made.
As you've probably noticed a number of new features have been added since our last update:
HF FAX decoder. Developed as a diagnostic tool to help understand issues with missing IQ samples in the audio stream.
Time signal timecode decoder. Supports the new phase modulation mode of WWVB.
User customizations. The necessary support code to allow user customizations (preferences) has been completed. This has not been easy for technical reasons.
Aluminum enclosure. We are working with Seeed to develop a custom enclosure they will sell (see pictures below). A tiny fan inside helps with the 5 watts of Kiwi thermal dissipation. The fan is connected to the power pins of the BeagleBone Green Grove connectors.
There has been progress on the bug/wish list but still much more to do.
The top of this document has many new items:
List of distributors
Collection of product reviews
Links to atricles, projects, YouTube videos and Tweets
A new introduction guide
A KiwiSDR / SDRPlay RSP2 / HackRF comparison chart
A troubleshooting guide
Placement program status
We have a program to send free Kiwis to people in interesting and underrepresented parts of the world if they agree to make them publicly available. Unfortunately the program has not been a complete success. We've had problems with poor receive performance, lost shipments, people receiving Kiwis and never completing the installation and even one individual who put their free Kiwi up for sale! So this has been a bit discouraging.
Big thanks to the Kiwi owners outside the placement program who have gone to the time, trouble and cost of making their SDRs publicly available. Especially these new and/or interesting places: Novosibirsk Russia, Shenzhen China, Japan (3x) and Hawaii (2x). No matter where you are making your Kiwi public is important. As you probably know reception quality of the public Kiwis varies greatly. And there are more and more people listening daily. So we need new SDRs with new connection channels available.
Seeed enclosure prototype. Click images for full size.
Lots and lots going on behind the scenes.
Seeed has boards & kits in stock again and has made a major comittment to manufacturing capacity.
The regional distributors have stock again as well.
We have decided to skip the idea of voting by the Kickstarter "Listener" category backers for a few free-placement Kiwis. Instead, we are committing a significant share of the project profits to funding more than twenty placements. About 15 are in some stage of development: either under discussion, awaiting delivery, awaiting installation or running. Our first two are
Coimbatore, India hosted by Selva and the UR4PWJ club station in Lutsk, Ukraine hosted by Roman. Some of the new locations are really fantastic. Of course all will be listed on sdr.hu
Although we haven't had a chance to try them yet, we've identified new sources of 5V, transformer-based,
linear power supplies (120 and 240 VAC) from AliExpress and Ebay. Thanks to Jesse, BD7LLY, from Seeed for finding these.
WSPR improvements: callsign & grid are links, distance in km, power also in Watts
The 2m RFI problem is still under investigation. A metal enclosure is being prototyped.
Starting with the v1.32 release, on the admin security tab you will find a setting allowing you to disable the password prompt for a subset of the 4 channels (none, 1, 2 or 3) when an overall user password has been set. This allows you to divide the 4 channels into two sets: a publicly-available set requiring no password and a private set requiring a password.
Owners of the more popular Kiwis have long complained that the channels are always full and they, or their friends, can never get in without restarting the server and dumping everyone off. This scheme was fairly easy to implement but obviously not ideal. It is hoped this change may persuade some owners of completely closed Kiwis in desirable locations to make some of their channels public.
We've received a dozen or so proposals from individuals and radio clubs for the exotic-location free placement program. Some of the locations are so interesting that we've immediately shipped hardware to them. We are still in need of more locations in greater Asia.
See below for a description of the placement program.
On the admin page the log tab now shows the Kiwi server log messages that previously could only be viewed by logging into the Beagle and running a command. Currently 256 messages of the log are shown in a scrollable list: the first 128 and then most recent 128 messages.
Seeed is in the middle of building more units. They are currently sold-out on their website and showing backorder until the first week in January. Some of the regional distributors have units.
As mentioned on this
Kickstarter update we are now accepting proposals for free KiwiSDR placement of publicly-accessible KiwiSDRs in unique and useful locations around the world.
As you can see from the
map on sdr.hu we are in need of KiwiSDRs in Asia, the Russian Far East, Siberia, the Middle East, North Africa, Central America, Alaska and the Pacific Islands. Not only for better reception of stations heard locally to those areas but for possible future direction-finding experiments.
Please a short description of your
location, antenna, Internet connectivity and reasons why you should be sponsored. Proposals can be from individuals or groups (radio clubs, etc.)
The final Kickstarter update has been posted and all future updates and information will be found right here.
An S-meter graph extension has been added. On the admin page config tab are settings for S-meter and waterfall/spectrum calibration. These are so you can adjust the accuracy of the S-meter and waterfall to match the specific gain characteristics of your antenna system. The default values have been set by using an accurate signal generator (hp 8657D) as the antenna input source.
The top right of the S-meter now shows a red "OV" indicator when ADC overflow is detected. Tests with the signal generator show the ADC overflows when a single-tone exceeding -15 dBm (almost S9+60) appears on the antenna terminals. Or when real received signals are near, or over, -20 dBm (about S9+53).
The admin page network tab now allows a Beagle static IP address to be set in place of automatic assignment via DHCP.
We know there needs to be a different user interface for mobile devices. But some stopgap improvements for such devices were made. The software detects if your browser is running on iOS / Android and does a few things differently: panels default closed, they don't animate, the iOS audio start button is larger etc. We purchased a cheap, low-performance Android tablet to experiment with. The forum thread detailing this is here.
Our manufacturing partner SeeedStudio is now distributing both the
version of KiwiSDR. This is a very positive development as it frees us to spend the majority of our time improving the product software rather than worrying about manufacturing and shipping issues.
Virtually all of the Kickstarter rewards and pre-orders have been shipped. If you haven't received a tracking link email from us please
and let us know!
We have boards and kits available for general order.
Please for more information.
Seeed has finished production of the Kickstarter reward and pre-order units. Almost 500 boards and kits have been manufactured. We hope to begin shipping very soon.
For information about preparing your setup for the arrival of your Kiwi (e.g. antenna, power supply etc.) please see
here. This page also contains a FAQ and configuration information.
Did you miss the KiwiSDR
? You can now pre-order.
and we will send you instructions for paying with Paypal.
The prices are the same as the Kickstarter: either USD $199 for the board-only reward or $299 for the "kit" reward.
Very pleased to announce our partnership with Valent F(x), makers of the well-known
FPGA development board for the BeagleBone. They have essential manufacturing and Kickstarter experience.
Lots going on. Business, manufacturing and shipping partners have all been engaged.
Ten more prototypes are being fabricated which should be the same final design as the Kickstarter (KS) rewards.
These ten will be distributed as more beta test sites. Hopefully KS backers will get a chance to
try an online KiwiSDR before deciding to back. The KS campaign is almost finished. The KS financial analysis
needed to validate reward prices is done. Now just a lot of pondering before pulling the switch..
Our prototype SDRs are now part of the SDR.hu network
courtesy of Andras Retzler, HA7ILM, developer of the
The latest source code, Verilog and KiCAD PCB files have been updated on
The project name has been changed to "KiwiSDR" in recognition of the time we spend in New Zealand.
There were obvious trademark problems with the previous name (WRX, "web receiver"), although I must say I was the happy owner of
two Subarus during my time living in the snows of Colorado ski country.
The "Kiwi with headphones" logo is courtesy of Hayes Roberts at
bluebison.net. Thanks Hayes!
The performance problems mentioned below have been largely solved. So at this point I don't see any
potential problems that would prevent this project from being manufactured and sold.
Very soon there is going to be a decision point of how to proceed. Kickstart? Self-funded organic growth? Partner with another
Kickstarter is very interesting, not only from a fund raising aspect but because it can provide a good
gauge of the market interest. I really don't know how many people might want to buy this device.
If I self-fund I need to build a reasonable quantity to lower manufacturing costs but then I run the risk of having
unsold items if I miscalculate demand.
In some sense the fun part of this project is over and now the real work begins.
Prototype PCBs Working
The prototype boards seem to work fine. There were a few components installed in the wrong places by the assembly house.
This was partly my fault because of an ambiguous parts placement silkscreen.
After some effort the Verilog worked on the Artix 7 FPGA which
is new on this board compared to the Spartan 6 used on the hand-wired prototype. With this larger FPGA
a full four SDR channels, with independent waterfall DDCs, and 12 GPS receiver channels fit, with a fair
amount of logic and DSP blocks left over. All but a few BRAMs (memory blocks) are used however.
A new scheme for speeding up the waterfall at higher zoom levels has been implemented. It essentially
involves calculating the FFT on overlapping samples when the samples are being generated by the waterfall
DDC at a rate slower than the desired display rate.
The highly-accurate timing from GPS location fixes now compensates the SDR frequency to cancel the temperature drift of the main 66.6 MHz oscillator.
Since the Soft-GPS was going to be on the board anyway it made some sense to use an inexpensive XO (instead of a TCXO) to help keep the BOM cost low
and let the GPS do the calibration and temperature compensation. Although an XO with relatively good phase noise performance had to be chosen to
keep the ADC happy.
The big problem now is getting acceptable performance with all four SDR channels running simultaneously
along with the GPS (since the waterfall DCC is tunable independently from the audio DDC it's really
an 8 channel SDR).
I've made a lot of optimizations but the waterfall update rate is still too slow
when more than two channels are in use.
are plenty of different ways of distributing the tasks, buffering and latency. I'm having fun figuring out how to
measure where the bottlenecks are and designing better solutions.
Click images for full size.
View of entire 0-30 MHz range:
Moderate zoom of medium-wave broadcast band with spectrum display on top enabled:
Over-the-horizon-radar (OTHR) from Cyprus showing short-term ionospheric fluctuations:
VLF/LF reception in New Zealand:
Khabarovsk & Novosibirsk Russia
Korea, per David L Wilson
Many others heard during different times and conditions.
I have received three prototype boards manufactured and assembled by a company I use in Shenzhen. Debugging will
start shortly. Most of your suggestions from the design review made it
into this prototype, although there is already a newer PCB layout with a few changes. Yes, despite what
I thought was clear documentation, the Beagle headers are indeed installed on the wrong side of the board.
There are a couple of ways to get around the problem.
Click image for full size:
Design Review Underway
Many thanks for the feedback and comments I have received. And for the many listeners world-wide that
have tried the SDR. I can see from the logs that not all connection attempts are successful.
Although I have fixed a number of bugs there are still problems with some, possibly older, browsers.
If you've had problems in the past please try connecting again. I have added much debugging code to try
and understand the issues. If possible, try and use the most recent versions of Safari, Firefox, Chrome
or Opera that support HTML5. Thank you.
When it's available, take a listen to the
You'll need a modern browser that supports HTML5.
Now a favor. I really need your help. Before committing the funds to building a prototype I
would really appreciate your comments on the
design review document.
Yes, it's 60 pages. But if you only read one section or paragraph, and send one comment, you will be helping
I need advice about every aspect you can think of. Maybe you're an EMC/EMI expert who
can tell me a better way of keeping digital noise out of the RF front-end. Or why my PCB ground plane
choice won't work. Perhaps you know of a VCXO part that would be a better choice (cheaper, more available).
You may spot a flaw in my implementation of the DDC architecture. Or know a way to improve my
design-for-manufacturing strategy that will reduce production costs.
I don't claim to be an expert at any of this. But you probably are. Sincere thanks in advance.
Full routing of a prototype board has been completed. It is a little longer than a standard Beagle cape
because I wanted to be conservative the first time around and not create a routing nightmare, or a
board that would be difficult to manufacture as a one-off proto. The other advantage is that if this
board turns out to have a good RF noise floor, and a future shrunk board doesn't, at least I know the
design isn't fundamentally flawed. It will also be easier to probe and rework a larger board
(the smallest components used are 0402 and 0.5mm pitch).
It's 6 layers mostly because of the difficulty
in providing all the required power planes to the FPGA BGA in a 4 layer design. Yes, only part of the
cape connectors are used (this is allowed by the Beagle spec). It saves board space and significant cost.
The internal layers, and top and bottom flood ground planes, are not shown in this rendering.
There are some virtual traces too. The thin traces used to connect the edge ground plane stitching
is just to keep KiCAD happy about all those otherwise floating vias. The traces gets absorbed into the flood plane.
Click image for full size:
Work also continues on the design review document. It's up to about 40 pages. I decided to try a
full PCB routing before soliciting your feedback with the design review because the routing process
has uncovered some issues I need advice about.
An update. Work is continuing in all areas: FPGA firmware, user interface and PCB schematic, layout
and bill-of-materials. There have been some big design changes which are detailed below.
I was pleasantly surprised in December to receive an email from Andras Retzler, HA7ILM,
An open-source, multi-user SDR with a web interface.
I have adapted it to work with KiwiSDR. Both audio and the waterfall display are working.
There are still many UI features to add but most are not complicated.
I have replaced the Spartan-6 LX25 FPGA with an Artix-7 A35 after I noticed that the
A35 is the same price as the LX25 but contains 40% more logic blocks, 100% more block RAM and
40% more DSP slices.
This is no doubt a result of the Spartan-6 to Artix-7 process shrink from 45 to 28 nm.
I need all the FPGA resources possible to maximize the number of simultaneous
receiver channels while keeping the project cost low. Being a relatively new part the A35 will be
less available than the LX25 but hopefully this will not be a problem by the time I need to purchase
in quantity for production.
Another issue is that the A35 requires the use of the Xilinx Vivado design
tools (as opposed to ISE for the LX25). So I had to take a few days to install and learn the new
tool-chain. A task always filled with grief. But I wrote it all down and will include
design tool instructions in the project documentation. The Verilog firmware now compiles for both
Vivado and ISE. There had to be some conditional code due to differences in generated IP blocks by
The current plan is to include PCBs for an active antenna and associated power injector as part of
the project. The incremental BOM cost is less than 10% (about the same as the SD-GPS).
The idea is to offer an SDR that is mostly self-contained and easy to setup.
You'd have to supply an enclosure for the antenna PCB, a length of coax and a 12VAC plug-in AC adapter.
The design is based on the
from Roelof Bakker, PA0RDT.
But the board also has pads and traces to support two
Complementary Push-Pull Amplifier designs from Chris Trask, N7ZWY of Sonoran Radio Research.
The second of which offers improved performance by using even-order distortion negative feedback.
You'd just have to buy the SMD parts and solder them on (a few resistors/caps have to be changed/removed from
the Mini-Whip design).
The injector purposely requires 12VAC (not DC) so there is a chance of applying proper
filtering to the input and bridge rectifier diodes. And also to prevent the temptation of you using
one of those extremely noisy DC switching power supplies.
This is all optional of course and you may attach any antenna you wish to the input of the main board.
I'm using KiCAD and full schematic, layout and library files will be made available.
The board is 6 layers because a proper power, ground and signal plane stack-up is essential
to minimizing noise. Very important with a 14-bit ADC and GPS front-end on the board.
All the schematic symbols and part footprints are in the included local library
instead of relying on public library files. This may seem odd
but I wanted to make the eventual distribution self-contained. Also, many of the tiny SMD
footprints weren't available in any of the web libraries that I could find.
Despite what it may look like, I am not an expert in most of these techniques. Particularly not
RF design and certainly not EMC/EMI/noise control & compliance or SMD PCB manufacturing.
I'm familiar with them all, but the design is largely "cookbook" based on open-source/hardware
projects and ideas from the web.
Also I want to write a design paper detailing the the choices I made and my (possibly flawed)
underlying assumptions and then solicit your feedback. This will be done before committing to
full routing of the PCB.