Clone wiki

scytalec / Home


  • Changed the default map provider from Open Street to Google Map to overcome the latest HTTP 403 status code indicating that access to the Open Street map URL is forbidden.
  • Thank you Lorenzo I0KIB for reporting the issue.


  • Thanks Richard for reporting some coordinates that cannot be parsed. Added the reported format to the parser.
  • Added a feature to display coordinates without connecting lines, useful for displaying un-ordered positions (e.g., buoys).



  • Enabled an extra map: Bing Hybrid Map. To choose, right-click on the map area and select from the drop-down menu.
  • Decreased the minimum zoom level with one zoom unit to accommodate the new chart.



  • Fixed "Scytale-C influences web-browser" issue.
  • Implemented a first iteration of charting of message embedded geographical areas. In the message box area, first select the area of interest using the mouse, then right-click and choose the desired option from the contextual menu. If the area is valid and the parser manages to interpret it, a new polygon will be displayed on the chart. The order of interpretation is from left to right, high to low.



Changes to Navareas by Richard:

  • Couple of corrections to Navarea VII - S. Africa and a revised NAVAREA.XML file.
  • Added Navarea XIX - Norway
  • Modified Navarea I - U.K., eliminated overlaps with two other Navareas -- XIX (Norway), and XX (Russian Federation). In appearance it is close to the "official" Navarea map, and does include the Baltic Sea sub-area.

Added logging for messages as suggested by John and Mille:


The decoded logging looks like this:


And the raw:


The priority gets logged in the file name.

The Services, Navarea and location do not get logged in this release:



Added the logging of received frames as literal hex:


These logs can be played back as an aid in debugging frame by frame and packet by packet with the Literal Hex Feed application:


The Send Next button reads from file and sends over UDP to the Quick UI the next frame.

The checkbox every N ms allows for the automatic sent of frames.

The Restart button restart reading the log with the first frame.

Fixed several issues: #18, #28, #30, #32




  • Decoder hot fix for issue #19. While hunting downwards for a frequency lock, if the demodulator reaches the low frequency setting, it will automatically jump to the hi frequency setting.


  • "Auto Scroll" and "Auto Last Select" for EGCs and Message data. If both checked, the last message will always be displayed. If "Auto Last Select" unchecked, the grid will scroll down but the selected line won't change. Useful as a visual clue regarding the amount of messages received within a given time interval.
  • Changed the order of stream lanes for better space utilization.
  • Added better exception handling on date-time operations.
  • Added database purge functionality, currently non-functional as issue #18 needs be fixed for the purging to work.


  • Unifies EGCs and Messages under the same tab: "Unis".
  • Brings 10 lanes of displayed streaming input. The input remains unlimited otherwise.
  • Removed debug tabs and filtering buttons.


  • fixed issue #12 (communication issue over UDP).



  • fixed Issue #11 (crash report).
  • fixed the frame counter and stats on decoder.
  • fixed Station LesId detector.


  • True multi-stream support, new message tab and in memory db.


  • Added general messages support in their own tab. This is now a true multi-stream support UI. Although the tracking of received frames will only track five streams, the actual processing will consider any streams.
  • Adapted Holger's Ita2 decoder to decode general messages.
  • Fixed BD/B1 and BD/B2 decoding.
  • Added multi-EGC stream support.
  • Reverted to using in memory db.
  • Added coordinates for a few more NavAreas.

New known issues:

  • Received reports of communication failure between decoder and UI.
  • There is no purging yet and the database will continue to grow. At some point the user will have to delete the database otherwise the UI will use too much memory for no real benefit.


  • Fix for incorrect loading of the map and EGC data already processed.
  • Fix for NavArea loading when the xml file is incorrect or missing. Added all default 21 areas, only 2 areas filled with valid data. Left the rest to the community.


  • Quick UI has reached already beyond its intended path. It was not designed to offer the features it already does.


  • Fixed Quick UI extreme sluggishness when left running for multiple days.
  • Added xml based configurable NavArea support. See Wiki as well.
  • Changed priority color codes.


  • Beta release (this is more like an alpha as I have discovered a major flaw a few hours before the planned release and I implemented a work around. If anyone interested to find out what the problem is, I will be more than happy to discuss about it. Will remedy it in the future.


  • There are database structure changes. Installing everything in a new folder will keep things functional.
  • New ITA2 message decoder by holger1965.
  • Added a grid view for EGC display.
  • Added a map for EGC area display. The NavAreas and MetAreas will be implemented in the future as a configuration file such then non-programmer could fill in the gaps as well and update them for the community.


Beta release.


  • New packet decoders: A3, A8 by holger1965!
  • Added NoSQL embedded database support to ease correlation and decoding.
  • Replaced the packet-based disclaimer with an application-based disclaimer.


Second beta release.


  • New packet decoders: 08, 27, 2A, 81 and 83 by holger1965!
  • Fixed bug related to incorrectly handling the StreamQueue that sometimes required a manual restart of the decoder after switching sources.
  • Added multistream support (up to 5 streams). One can run any number of decoders and the Quick UI will display all the streams received. The decoders can use the same UDP port. If different UDP ports, configure the UI for multiple ports, comma separated.
  • Added NLog logging capabilities for end-user debug purposes. The logging can be disabled or enabled based on one's needs. By default it is enabled. Check NLog.config file.
  • Added a new repository for the MATLAB code for the BPSK demodulator used by Scytale-C (open source code and Wiki),,
  • Fixed bug while calculating the uplink and downlink frequencies
  • Added a configurable limit to the number of lines displayed in the demodulator window. Less lines to display, more CPU goes to the actual demodulation. This is a cheap way to save CPU that will be dealt with in future releases.

New known issues:

  • The current PacketDetector keeps track of the previously decoded packet and this works in most of the cases, however it should keep track of the previously decoded logical channel number. This is because the previously decoded packet may not necessarily contain a payload related to the currently decoded logical channel number.


First beta release.

Known issues:

  • The demodulator spits out hard bits. As will move to true I/Q input, this will change.
  • The FFT's shape is incorrect and the display is very slow. The bandwidth can be further reduced.
  • The FIR's are very-very slow and because of this the demodulator does not do close to as well as it can.
  • The Gardner has at least one implementation bug when resampling.
  • The CMA locks from time to time. Try with or without.
  • The AGC works sometimes, and it does not work other times. Try with or without.
  • The UW finder part that deals with stream inversions due to missed bits should be improved. It will matter less and less as the demodulation will be improved.
  • I did not calculate the SNR yet. Will do in the future as the performance improvement is next to solidifying the code.
  • There is really no good reason why the decoding of a packet read from a file takes more then 3 seconds. It should take at most about a third of one.
  • The UDP looses just too many packets. Will replace with something else.
  • The UI only displays text messages. Some are incorrectly displayed.
  • The display colors get messed up easily.