22 Jul 2016, 19:11

Streaming using a Raspberry Pi Camera to Twitch in Full HD while injecting audio from rtl sdr

I have found the right setup to stream in 1080p from a Raspberry Pi using the camera to TwitchTV while injecting audio on the fly!

Create an account on Twitch and grab you stream key in the Dashboard.

This stream.sh script will create a FIFO start rtl_fm at freq 162.550M to listen to Canada weather bulletin (use your local NOAA channel) and inject and encode the audio to the existing h264 stream from the camera then stream it to twitch using rtmp.

#! /bin/bash
STREAM_URL="rtmp://live.justin.tv/app/"
KEY="live_XXXXX_XXXXXXXXXXXXXX" # put your key here

mkfifo /tmp/streamaudio.wav
rtl_fm -f 162.550M -s 22050 -g 30 | sox -r 22050 -t raw -e signed -b 16 -c 1 -V1 - -r 22050 -t wavpcm  -  > /tmp/streamaudio.wav &

/opt/vc/bin/raspivid -n -vf -t 0 -w 1920 -h 1080 -fps 25 -o - | ffmpeg -re -i - -i /tmp/streamaudio.wav -codec copy -strict experimental -acodec libmp3lame -ar 22050 -threads 8 -f flv "$STREAM_URL/$KEY"

You can of course send other audio sources or no audio at all.

This setup is taking around 10% cpu on a Raspberry Pi 2.

If you are lucky enough my channel will be up and running.

What is RTL SDR ?

Using a 20$ USB dongle you have a software radio scranner, capable of listening to radio amateurs, NOAA weather bulletin even satellites.

Note that you can also stream from your laptop using the great and free ObsProject.

Happy streaming.

11 Jan 2016, 09:33

MyAPRS APRS for iPhone

I’m happy to announce a new side project: MyAPRS, a modern iOS APRS application, for radio amateur enthusiasts.

I’ve already mentioned APRS on this blog, it will mainly be useful for radio amateurs but can be interesting to RTL-SDR listeners too.

The application is built around LevelDB and geo hashing as mentioned in this post blog, it’s a lot faster than using SQLite especially on iOS, SatSat is still using the SQLite cities lookup and you can compare it’s terribly slow.
It receives weather data & APRS data from APRS-IS connections, then decodes and stores the packets into LevelDB for indexation.

MyAPRS has some extra features over other applications, like transceiver models detection, so it can highlight all C4FM/Fusion users in your area.
It receives the latest 10mn packets for your area, helped by a small Golang API.

The first release is simple but works very well to discover repeaters and amateurs around you or a region you plan to visit, I’ll add position sharing later: due to the way APRS-IS works it’s the responsability of the developer to provide passwords & check for the amateur license of the users (even if the algorithm is known publicly…).

I plan to make it work with some bluetooth modems starting with the one I’ve worked on to be used completely off the grid, so we can have a cheap and powerful APRS application, with a real keyboard (try to answer a message with a Yaesu…).

I had to put some ads in it, a lot of people have asked for a paid SatSat version to get rid of the ads but that’s the only way I can maintain these apps, so I’m experimenting with ads for now.

It was a fun project to develop for, I hope you will find a use for it.

73 de KK6NXK

MyAPRS

09 Nov 2015, 18:51

Listening to satellites for 30 dollars

I’ve ever dreamed of space & satellites, it turms out you can received pictures from them.
After getting my radio amateur license in the US, I’ve discovered there was some satellites dedicated to radio amateurs but also some weather satellites from the late 90s still working and capable of sending pictures from the space like this one NOOA-15.

SDR

You don’t need expensive hardware anymore thanks to the SDR movement Software defined radio and some great developers, a simple 20$ USB key and some pratices are good enough to make it work.

Software

There is plenty of softwares available but the ones I’m using for OSX or Linux are:

  • GQRX the software receiver
  • Audacity for sounds editing
  • Soundflower (OSX only) to reroute the sound from GQRX to Audacity, but you can do that with pulseaudio on Linux.

They are all free.

Know what, when and where to listen

The most important things to know is what frequency and when to listen to.
For that you need a software for passes prediction, I have developed an app for iOS devices called SatSat, it’s free (with ads), hoping enough people could be interested I’ll invest more into the product.

SatSat

Good satellites candidates for a start, some weather satellites, are:

  • NOAA-15
  • NOAA-18
  • NOAA-19

Experiment with GQRX options:
Receiver options -> Mode Narrow FM -> Mode options -> Max Dev APT 17k -> Tau OFF.
Record in mono inside Audacity at 11025Hz.

With the sound you just recorded, open it inside WXtoImg.

Cities are really noisy, expect best results outdoor, sometimes a simple wire antenna is enough for great results.

Here is an example of a weather satellite:
Sat view

And this is the “sound” of a satellite:

13 Dec 2014, 07:55

Airspy on Linux

Airspy is an SDR with amazing specs, but drivers are slowly coming to your prefered os.

This apply to Arch but should apply to any recent Linux.

I’ve first compiled libairspy but always had the error AIRSPY_ERROR_NOT_FOUND and "usbfs: interface 0 claimed by airspy while 'airspy_info' sets config #1"

Since Linux 3.17 comes with an airspy v4l autoloaded driver making impossible to use it with libusb: no airspy_info and no gqrx.

Simply get rid of it with a modprobe config like /etc/modprobe.d/airspy.conf

blacklist airspy

You need some deps: the airspy lib, gnuradio-osmosdr (gr-osmosdr) and a recent gqrx

Here are my Arch AUR pkg that will build airspy-git, gr-osmosdr-git and gqrx-git (note that you need to uninstall the packages from community to avoid conflict).

Have fun

28 Jul 2014, 17:36

Simple APRS KK6NXK

APRS is a tactical digital communications system used between amateurs radio, to exchange positions & messages, here I blog my experience decoding/encoding APRS with a small Arduino as it may help some of you too.

Some transceivers are incorporating this functionalities but most of them don’t, a lot of new technicians start with cheap Baofeng radios (30$) which don’t provide advanced functionnalities but here is a way to solve that.

I’ve first looked at Bertos project, a realtime os for micro controllers as Atmel 328p (Arduinos), you can see my 1st attempt there:

This was the receiver only, a simple divider, the “hard” part was to understand the Baofeng/Kenwood mic jacks.

It takes me a long time to figure out that the Baofeng was too slow to trigger the squelch, so the Arduino missed the beginning of the message, hopefully I have a Kenwood too …

So for a Baofeng using this kind of APRS decoder, you have to disable the squelsh completly, and set the volume very high it has to reach a proper signal on the arduino around -3v/+3v.

For the AFSK modulation, the Bertos project use a DAC made with 4 resistors.

Later, I’ve discovered the wonderful work of Mark Qvist MicroAPRS, mostly the same circuit as the Bertos project but with an awesome documentation of the code, it’s a pleasure to read & learn.

So I’ve started to work on a circuit using a Bluno Nano an Arduino Nano with Bluetooth Low Energy, as an iPhone developer, this piece of electronics is just incredible and gives me the capabilites to connect my circuits to iphone Apps.

It’s working but hardly a mobile solution :)

Later I’ve designed a PCB for it you can find the full Gerber files in my Github.

I’m using Frizting to design and then export to OSHPark for the PCB manufacturing, it’s far from perfect but I will improve the circuit and publish it soon !

This plus an iPhone app and you’ll rock APRS !

73 de KK6NXK

08 Jul 2014, 01:22

Got my amateur radio license KK6NXK

When I was a young child, I remember listening to an old radio receiver with my grandfather, looking for morse transmission.

30 years later, I take the opportunity to get my radio amateur license in the US, it was not difficult (Technicial license is easy), especially cause US radio amateurs are using the metric system (almost all the time …), the only difficulties were to learn some terms and simple formulas from french to english and to know some parts of regulation by heart (I have never been able to learn by heart).

A lot of people keep asking me why are you doing this? Do you want to speak to a microphone to a stranger?

First why not, it’s not the craziest thing I’ve ever done :)

Then they probably have forgotten that every single piece of technology today are using radio waves, from your 4G phone to wifi to Bluetooth, learning and understanding that is really useful.

For example Radio amateur bands overlap some of the “civil” bands, it gives some extended privileges to a radio amateur to experiment with long distance wifi transmissions.

So it’s not just about voice but data too.

Another aspect is electronic, a lot of radio amateur are sharing hardware and electronic circuits to build your own receiver/transceiver, before it was cool on the Internet.

Learning electronic to build something real is a lot more rewarding than it was at school…

Even without a license this is a brand new world to explore, receiving satellite images of the Earth is one of the many possibilities you can get entering radio world.

This is the beginning of a new knowledge branch to conquer !

See my work on an APRS bluetooth Modem

73 de KK6NXK

By the way in french it’s radio amateur and not amateur radio :)