Project Documentation
For the project documentation please see http://www.g3ukb.co.uk.
Releases
Version 0.7
This is probably the first usable release. The main additions are the graphic displays. Quite a lot of fixing has also gone on, particularly in the area of sub-receivers which was pretty broken. The next release should bring acorn up to 'basic' feature complete as the TX paths will be added. There is a lot of fleshing out to do after that but it should be usable on-air with HPSDR within the next release or two. I have still not upgraded to the latest HPSDR firmware but that will come into the 0.8 release. There are still some instability issues with Ozy output where sometime output just stops although input continues. Again 0.8 will concentrate on putting these issues right if they still exist after the firmware upgrade.
Version 0.6
This is really a bit of an interim release to draw a line under where its at so I can start again when time permits on the remaining features. The remaining features to implement are listed at the bottom of this page (in no particular order).
Note: I have not updated to the latest HPSDR firmware yet as there are some outstanding issues and I did not want to break my system while writing code. I therefore do not know if it works with the latest firmware.
- The dsp core of dttsp has been built into a python extension. This is only the dsp functions, no ring buffers, audio chain etc. There are two profiles set up, one for Ozy and one for Softrock 6.2 Rx. The integration is not complete but is working at 48KHz. None of the many parameters for dttsp are available in the options as yet, thus defaults apply.
- A lot of work has gone into the behavior of the VFO's and sub-receivers. There is a quick write up on the web site.
- Profiles and capabilities have been extended and the radio should work with SDR1000, HPSDR and Softrock 6.2.
- Many, many changes and enhancements have been done.
Version 0.5
There are a number of improvements and changes in 0.5. These primarily focus around options and profiles. Note, there is a change to the paths in .bashrc, see the Wiki installation page. Note also that there is just one startup script now.
- The GUI has been enhanced with a tabbed panel. This carries the control, displays (to be done) and options, which itself is a tabbed panel.
- The persistence service supports profiles which are essentially sets of options for specific configurations. These are presented in a profile selector when the system is started so many different configuration can be run without having different shell scripts for each. All the shell scripts are removed and there is just one to start this bootstrap process.
- Everything for a system is now started via the profile including Jack if required.
- Options are coded in red if they are immediate or not if they require a restart.
- Buffers and sample rates can be changed on-the-fly.
- There is a gain control on the main panel now.
- A number of bugs have been fixed and things generally cleaned up a bit.
Version 0.4
- The Ozy driver has some issues fixed that were causing instability at higher rates and also now runs a read thread. These fixes allow operation at 96KHz and 192KHz.
- Whilst trying to get stability at the higher rates I built another service that combines the Ozy interface and the DSP. The thinking was that the double network trip was adding too much latency. This is available in the hpsdr_dsp directory and run by 'run_acorn_hpsdr_dsp.sh'. In the event this was unnecessary as the higher rates run fine now over the network to a separate DSP process.
- Cleaned up the console messages so only starting/stopping and errors are output.
- The next release will concentrate on the GUI as the infrastructure seems to be working pretty well.
Version 0.3
- The Ozy driver has been refactored with buffers, memory leaks gone and it takes its buffer size from the config in persist.py. See the wiki for details.
- Remote Ozy now works. See the Wiki for how to configure.
- Multiple GUI support. See the Wiki for what this does.
- Interfaces cleaned up a little. There is now a life cycle interface that everyone implements. This makes startup and shutdown much cleaner.
- The persist process is slightly easier to use, again see Wiki.
Version 0.2
Includes a 'very' primitive Ozy driver written as a Python Extension. See the Wiki page HPSDR for more details. This little radio now supports SDR1000 and HPSDR in receive mode. It does this, not through any decisions in the code but by instantiating different components and connecting them up differently. The Ice middleware permits this approach. Many things are fixed in this implementation, but it's enough to get a good feel for the potential.
Version 0.1
Baseline version with SDR1000 support.