Nice review of Gpredict

I stumbled upon this nice review of Gpredict Jack Wallen at : Track satellites with Gpredict.

It’s always good to hear what other people think about it and I was particularly happy to read that Gpredict is an incredibly simple to use tool that will allow anyone to track multiple satellites quickly and easily. This was indeed one of the primary objectives when designing the concept 🙂

In case you haven’t already seen them, check out some screenshots of the next version (1.2) to be released soon.

Satellite Tooltips

Satllite tooltip in GpredictYou may have already seen tooltips in the Gpredict user interface. I have made extensive use of them for providing short description of the functionality of the GUI controls all over the application. Lately, I have felt a desire to extend the usage of tooltips to also include graphical objects like satellites shown on the map or the passes shown in the “Sky at a glance” module.

Gpredict uses GooCanvas for graphics, which adds a the “missing” 2D canvas library to Gtk+. Since version 0.15 GooCanvas includes support for Gtk+-like tooltips for any objects on the canvas. This is really great since it simplifies the effort from messing with own popup windows to using single line API calls.

Continue reading “Satellite Tooltips”

Gpredict on the Eee PC 701

Now that I have Ubuntu 9.04 runnign on my Asus Eee PC 701 it was very easy to get Gpredict up and running. After a few configuration tweaks related to the views it runs and looks very well even on this small 800×480 pixel display!

Watch in high resolution.

Thus, I have now following hamradio applications running on the Eee PC:

Gpredict in the Linux Journal


I noticed today January 2010 issue of Linux Journal has amateur radio as it’s main topic. In fact, the whole front page is a big Amateur Radio and Linux headline.

There are three articles about amateur and several great ham radio apps for Linux are described in these articles: Fldigi, Xlog, Xastir, Gpredict and GNU Radio. Needless to say, I was very happy to see Gpredict listed there. I have attached an incomplete cut from the magazine, but you will have to get your own copy to read the whole article.

You can get a PDF copy for $5.99 at Enjoy!

Coming up in Gpredict 1.2

After fixing several major and minor bugs in Gpredict 1.1 it was time to look at what new cool features version 1.2 should include. Fortunately, there is a nice list of feature requests from users that have been accumulated over time so all I had to do was to pick one and start working on it. This time I picked improvement of the layout engine.

New Layout Engine

I think we can agree that Gpredict is already one of the most flexible satellite tracking application applications when it comes to customising how the tracking data is presented to the user. In version 1.1 the user can chose between four different visualisation modules that can be arranged in many different layouts. Despite this flexibility, the available options are still limited to a fixed number of possibilities that is more or less hard coded into the software. I wanted to change this into something more generic that does not put any hard limits on what is possible.

I decided that the best and easiest way to accomplish this – also considering the limitations of the underlying Gtk+ toolkit – was to allow the user to place any number of views in a virtual grid. This means that when the user selects a given view to include in the module he/she has to specify the grid-coordinates for the module. The size of the grid will then be automatically determined according to the specified coordinates for all modules.

As of writing, the only way to create these fancy layouts is to specify it manually using an array of integers. The array has 5 numbers for each view:

  1. The first number is the view type
    • 0: List view (table)
    • 1: Map view
    • 2: Polar view
    • 3: Single satellite view
    • 4: Event list view (to be implemented)
  2. The second number is the left-attach coordinate of the view starting from 0
  3. The third number is the right-attach coordinate of the view
  4. The fourth number is the top-attach coordinate of the view starting from 0
  5. The third number is the bottom-attach coordinate of the view

The coordinate system of the grid has origin (0,0) in the top left corner. So, the layout code for the module shown above is:


Creating layouts this way is really fun for me, though I fear it would scare the hell out of regular users — in particular those who are just trying Ubuntu Linux for the first time. Obviously, a better configurator GUI is needed. To begin with, Gpredict 1.2 will include a set of pre-configured layouts and still allow to enter the layout code manually for custom configurations. The user manual will describe the layout configuration in detail. I hope then that somebody will create a fancy drag-and-drop layout configurator for a later release.

If you know me you have by now figured out that the primary reason for this new feature was my desire to be able to make cool video recordings of satellite passes such as this one (yes, that’s Gpredict 1.2 in action).

Event List View

Now that Gpredict allows creating complex layouts, the next problem is the lack of views. Currently, there are only four different kind of view (shown on the screnshot above) and few more would be really nice to have. Ideas that have been tossed around over the years include:

  • Sky view – showing a photographic view of the sky
  • Space view – a camera following (or attached to) the satellite showing the Earth from space
  • Event list view – showing a list of upcoming events and counting down to the event.

For version 1.2, I expect to implement the last one – Event list view – simply because it is relatively easy. It will show the satellites tracked in the module with a count down clock to their next AOS (or LOS if they are within range). Alternatively, the user will be able to select showing the time of AOS/LOS instead of the count down. The list will be sortable according to either satellite name or time.

I hope you are as excited about the next release as I am. Feel free to leave any thoughts or comments you might have!

Gpredict 1.0 beta 5 released

Ten days after the release of Gpredict 1.0 beta 4 we are now ready with a new release that fixes some minor bugs in the radio controller.

The significant changes in this release:

  • Fixed some bugs that caused the Doppler shift to be calculated incorrectly in some cases.
  • Fixed a bug that could cause the transponder frequency to “drift” away from the set frequencies.
  • Added new transponder files received from David VK5DG.
  • Minor enhancements in the user manual.

You can download the source code from the project page on SourceForge. Try it, test it, discuss it, and report the bugs you encounter!


Gpredict 1.0 beta 2 released

Finally, the Gpredict 1.0 beta 2 release has come together, featuring a completely rewritten radio controller / Doppler tuning algorithm. It became a bit more complicated than I originally anticipated, because the incoming requests for improvement of the original controller did not limit themselves to controlling the downlink and the uplink, but also called for using two different radios.

Given that there are very few full-duplex radios out there designed for satellite communications and that they are very expensive, I found this request to be very reasonable and decided to implement it. The resulting controller should be able to work using receivers, transmitters, half-duplex transceivers, and combination of those. Full-duplex has not been implemented, because I am not sure whether hamlib is able to do that properly. That will be implemented in one of the upcoming betas.

The new radio controller
The new radio control UI. See more screenshots.

Continue reading “Gpredict 1.0 beta 2 released”

Gpredict Updates

I just realized that the last time I have blogged about my pet project, Gpredict, was back in February 2007. Back then, the big news was the Sky at a Glance function and there has in fact been a lot of evolution since then despite the big silence in the Gpredict Developer Blog. Let me try to sum up the progress from last two years as well as what you can expect to happen in the weeks to come.

Continue reading “Gpredict Updates”