Results of the RaspberryPi Hack

90 views
Skip to first unread message

Oskar Weigl

unread,
Dec 8, 2012, 9:35:37 PM12/8/12
to icrob...@googlegroups.com
Hey, for everyone that missed the raspberry pi hack, we made a powerful FM transmitter with the Raspberry Pi that does not require any additional hardware. If you have a Raspberry Pi you should check it out, its quite impressive: http://www.icrobotics.co.uk/wiki/index.php/Turning_the_Raspberry_Pi_Into_an_FM_Transmitter.

George Hafiz

unread,
Aug 18, 2013, 6:53:15 PM8/18/13
to icrob...@googlegroups.com
Hi, I've just spent the day hacking together some Python to enable playback of my Google Music content.

I'm wondering if what are the limits we can push the Pi to in terms of audio quality? Is there room to increase the bit depth and sample rate?

Oliver Mattos

unread,
Aug 20, 2013, 4:29:02 PM8/20/13
to icrobotics
For sample rate, you have pretty much already got to the ceiling of FM quality.

If you could be bothered to make an FIR low pass filter to avoid putting all the power into the highest frequencies, you could increase the sample rate by ~30%.   I basically chose the highest standard sample rate such that I didn't need to make such a filter.

Currently the audio is "played" by outputting square pulses for each sample.  Sync interpolation would be better, but probably not much better. (you would get slightly more energy into the audible band, and more importantly you wouldn't be putting power into the stereo band adding noise to your signal.)


For bit depth, you currently have ~12 bit audio, which could be increased by changing some clock frequencies.   With the current implementation, bit depth is reduced slightly as sample rate is increased.   You would however be running the PWM module and clock modules even further out of their design specification, which might cause them to overheat or otherwise malfunction.   Do some calculations, but I suspect the quantization noise on 12 bit audio is probably fairly small in comparison by real atmospheric noise on the signal with raspberry pi transmission levels....








--
You received this message because you are subscribed to the Google Groups "ICRobotics" group.
To unsubscribe from this group and stop receiving emails from it, send an email to icrobotics+...@googlegroups.com.

To post to this group, send email to icrob...@googlegroups.com.
Visit this group at http://groups.google.com/group/icrobotics.
For more options, visit https://groups.google.com/groups/opt_out.

Josip Bagarić

unread,
Apr 26, 2015, 8:29:29 PM4/26/15
to icrob...@googlegroups.com
Hi Oliver,

I am using your code for a project that manages a couple of these FM transmitters, and it's working great! Thanks a lot for your hard work.

I have one question though. After quitting the 'pifm' program, the Pi is still 'transmitting' silence, and a reboot if required in order for the Pi to stop transmitting the silence.
If I wanted to make the Pi stop transmitting this silence after the program was finished (without rebooting the Pi), any idea how would I go about it? I want to stop the silence from interfering with other signals. 

Reading through the code, I couldn't make much sense of it. Stopping the "playWav" function would just stop playing the wav file, but would continue transmitting the silence. 

Any help in this matter is welcome!

Best regards,
Josip

Oliver Mattos

unread,
Apr 30, 2015, 5:16:23 PM4/30/15
to icrobotics, bagar...@gmail.com
I think you can play an empty file with a frequency of zero to stop transmitting the carrier.


The request to leave the carrier on was from folks who want to play a series of audio files in a row without clicks and gaps between them.

For more options, visit https://groups.google.com/d/optout.

Josip Bagarić

unread,
Apr 30, 2015, 8:52:55 PM4/30/15
to Oliver Mattos, icrobotics
Thanks Oliver, I used that method already but was looking for a more elegant solution. But it will work for now, thanks!
Reply all
Reply to author
Forward
0 new messages