Ham DSP tutorial
Last modified: March 18th, 2012In these tutorials I will try to advance from a simple Hello world app to decoding/encoding various digital formats used in amateur radio (like RTTY, PSK, SSTV etc.). I do this in a practical manner, by showing you the Java source code for each application.
01. Hello World application in Java
02. Simple audio recording to a .wav file
03. Buffered audio recording to a .wav file
04. Generating a sine wave and saving to a .wav file
05. Calculating FFT of a sine wave
06. Calculating FFT of a live source
07. Lowpass filtering using FFT
08. SSB modulation using FFT
09. SSB modulation using the Hartley method
10. Lowpass filtering using an IIR filter
11. SSB modulation using the Weaver method
12. FSK encoder
13. FSK decoder
14. RTTY encoder
15. RTTY decoder using FFT
16. RTTY decoder using FFT & DPLL
17. RTTY decoder using FFT filtering
18. RTTY decoder using IIR filters
19. Lowpass filtering using FFT convolution
20. Image loading
21. SSTV encoder
22. SSTV decoder
23. SSTV decoding with slant correction
24. PSK, Hellschreiber, DSSTV maybe? :)
Trackback URL
5 Comments »
Trackback responses to this post
About me
I'm Nonoo. This is my blog about music, sounds, filmmaking, amateur radio, computers, programming, electronics and other things I'm obsessed with.
... »
hi, i read with great interest your java tutorials but sadly they were beyond my comprehension! it is many years since i programmed and i dont think i will ever understand the modern structure. my main reason for coming here was that i have been looking for any kind of sstv software i can run on windows mobile. i have the java runtime environment installed and i wonder if you have any files for this compiled that i can simply run? there have been a few people asking the same online, so far the best software for radio is pocketdigi but it lacks sstv and feldhell.there are lots of users of this platform and i might be worth your time releasing a software title to do this. i really like hell and the ipaq could key the transmitter via rts line of the serial port or have bluetooth options. all my desktop/laptops are on linux but my ipaq or phone are always in my pocket ready to use with the ft817 when i am out walking the niva with my goats. its great not having to bring a laptop to do digital modes and better that the phone or ipaq have battery life for hours and hours. if you can compile something for winmo 5 or 6 that codes and decodes sstv or feldhell i would happily buy it! please email me if you have luck for me.
Hello, I’m planning writing an SSTV software in the near future, but only for Android phones…
i will look forward to it, i dont have any android devices at the moment but i may have to in future, the 2 android epads i had were very slow and are now broken, (one i threw to the floor in anger) they also had an old android system that would not run the apps i really wanted, pskmail.
i read that android apps are all pretty much java running on a cut down linux, if so, how hard is it to port android apps to a windows mobile device with a java engine installed, or in fact any mobile phone that supports java games? it seems every device claims to support java but in reality its not that simple. and apps for one device may not run on another.
i dont quite understand it. another thing i dont get is why anyone would want to change linux into android when linux was already stable and functional, was it just a marketing ploy to help sell apps? my ideal mobile device will be the nokia n9 with meamo (i believe can run any linux apps) but this is outside my budget now and i have to make do with my first generation samsung omnia and ipaq. iphone can eat my shorts, i dont like that company. also do you know if java apps can run on top of android?
ps. when do you usually get on the hf bands? it would be most interesting to talk with you.
I am new in DSP. What must I do then your example should be run in a DSP like cirrus CS47000-Series? Cirrus does not not have a Java-runtime. Or other manufacturer like Analog Devices. They have only C++ or grafic develop software (SigmaStudio). I have no imagin how Java can make a binary file.
Your example will help to understand dsp-programming.
vy 73
Henry