SatXmlEditor program for editing the xml file
Update 11/12/2023 to version 2.3.5
- Added translation into Serbian.
As a fan of satellite reception, I occasionally need to edit the Satellites.xml file. This file contains the parameters of all satellites and their transponders, which are to be automatically tuned by the receiver. Maybe it's a bit old-fashioned in this day and age of BlindScan. But even so, it is sometimes advantageous to explain to the stupid machine what and how to do it.
First I asked other enthusiasts in the industry how they edit this file. And in most cases I got the answer that manually in a text editor. That seems too laborious and risky to me. After all, this file has its rules given by the xml format, which can be easily violated if you are a little careless. I wanted to use a program that would monitor the correct integrity of the file for me. And to my surprise, I didn't find any effective tool on the net. So I decided to try to write such a program. And SatXmlEditor was born.
Fig. 1 - Appearance of the program after launch
After some time, the user "doron" asked me in a comment on the English version of this article that the program could also edit cable broadcasts. Since I only use satellite, I didn't know anything about cable. I started asking around and found that I also have atsc.xml, cables.xml and terrestrial.xml files in my satellite receiver. Although I don't use them, they were populated with some sample data. So I thought that I would try to expand my program to include their editing. And it succeeded. I believe that a greater number of people will be able to use my program.
Fig. 2a - Main page for atsc broadcast type
After starting the program, we can immediately start writing data to the internal database. It has completely separate tables for all four types of broadcasting. This means that we can work with all four file types at the same time. We select the broadcast type on the left in the program menu. Information about text encoding can be seen on the bottom line of the program. If we want to start working in a different encoding, we modify the corresponding value in the SatXmlEditor.ini file before starting the program. Transponder items cannot be acquired until at least one item is acquired in the main broadcast type window.
Fig. 2b - Main page for cables broadcast type
Another option is to open an existing file from your computer's disk, or download it directly from the Enigma receiver. In both cases, the program copies the data to its database and does not continue to work with the source file. When opening a file from disk, there is no need to distinguish what type of broadcast it is. The program automatically recognizes the content of the file, uploads the data and switches to the main page of the detected broadcast type. In net discussions, I found that a lot of people are using xml file generated from different websites. For example http://satellites-xml.org . The downloaded xml file from this site is compressed in a zip archive. The SatXmlEditor program can handle it, so there is no need to unpack the xml somewhere first.
The program is equipped with a Drag and Drop function. This means that the xml or zip file can be opened as follows. Grab the data file icon with the mouse, drag it over the program icon and release. The second option is to RIGHT-click on the xml or zip file icon and select Open in program from the menu. At the first attempt, the SatXmlEditor program probably won't be in the list yet, because Windows doesn't know about it. We have to search for it through the Choose another application menu.
Fig. 2c - Main page for satellites broadcast type
The option to download a file from the receiver is in the "Data - Receiver" menu in the left menu of the program. This page appears automatically after starting the program. In this case, we already have to select the type of file we want to download from the receiver. After downloading, the program will also automatically switch to the main page of the selected broadcast type.
Fig. 2d - Main page for terrestrial broadcast type
After opening or uploading a file, the program finds out how the text is encoded (UTF-8, iso-8859-1, ...) and writes this information on the bottom line of the program. At the same time, it saves it in the SatXmlEditor.ini file and uses it the next time the program is started. On the main page, the data of the main nodes of the xml files is edited. Any comments can be entered in the "Comment" column. These comments are always saved in the xml file as a comment at the end of the line after the main node.
We select any item in the table window and then work with it using the menu on the bottom bar. By selecting F5 or F9, a window opens where the necessary changes can be made. Until we close the window by selecting F2 or Esc, other functions of the program are blocked. This is a security protection so that it is necessary to always transparently complete the editing in progress. Multiselect is not allowed in main tables. This means that you can only work with one item at a time.
Fig. 4a - Transponder page for atsc broadcast type
You can switch between individual broadcast types using the main menu on the left side of the program or using the tabs on the top of the main window. After selecting the main window, the background program automatically switches to the relevant transponder table.
Fig. 4b - Transponder page for cables broadcast type
After selecting an item in the main window, we switch to the transponders window by double-clicking on the current item, using the right arrow key, clicking on the status line of the window in the place marked Transponders, or using the Transponders menu in the menu on the left side of the program.
Fig. 4c - Transponder page for satellites broadcast type
The table shows all transponders belonging to the selected item from the main window. Their editing is possible using the menu on the bottom bar of the window. Multiselect is enabled for transponders. This means that several items can be selected at the same time in the usual way in windows. Use is intended for deleting or copying items. For now, editing must be done one sentence at a time.
Fig. 4d - Transponder page for terrestrial broadcast type
The SatXmlEditor program is capable of one non-standard function. Individual transponders can be switched on and off. This is the data in the first column of the table. A tick means that the transponder is active and is stored in the xml file in the normal way. If the item is not checked, the entire transponder will be saved in the xml file in the form of a comment. This means that the receiver ignores it, but the data is still stored in the file. And by simply checking this box, the transponder can be activated again. It is also possible to save a separate comment for each transponder. The text of the comment is written in the last column of the transponder table.
You can use the windows clipboard when editing transponders. We can copy the selected items to the clipboard and then insert them from the clipboard between any other transponders. Copying and pasting transponders can create duplicates that the program does not solve. Everything is left to the discretion of the user. The data in the clipboard is in text format. It is therefore possible to copy transponders from other files opened in a regular text editor via the clipboard and thus create your own compilations from multiple sources.
Fig. 6 – An introductory comment page
It is possible to write a separate introductory comment at the beginning of all xml files. The "Data – Introductory Comment" menu is intended for its editing in the program. The comment can be of any length and content. As with transponders, each broadcast type has its own opening comment window. Using the tabs at the top of the window, you can easily switch between the opening comments of all types of broadcasts.
Fig. 7 – A page listing the settings
The settings file contains data on the settings of the receiver's input tuners. In the case of satellite broadcasting, there is the value of the satellite position, which must correspond to the position in the satellites.xml file. That's why I added the option to view its contents. For now, this is just for informational purposes. This file cannot be edited or saved. However, the text in the window can be copied and further processed in any text editor. For easier orientation, the lines related to the input tuner settings are colored blue.
The modified data can be saved to a file on the computer disk at any time or uploaded directly to the receiver. In the second case, the receiver automatically restarts after recording (init 6). The need to permanently save changes is indicated by the red color of the text on the bottom line of the main windows of individual broadcast types.
Saving changes checks the program before opening a new file, before downloading a file from the receiver, or before shutting down the program. In these cases, you will be asked if you want to save the current changed data to a file on the computer's disk. Data cannot be sent to the receiver at this time. If we do not save or upload the changes made to the receiver, they will be irretrievably lost.
The program is translated into four languages - English, Czech, German and Russian. Information about the current language is stored in the SatXmlEditor.ini file. After starting the program, the last used language is automatically selected.
The program also includes manuals in the respective languages in pdf files. You can find them in the Doc subdirectory. Of course, they can be viewed with any program designed for pdf files. However, the menu "Info - documentation" is also available in the program menu, which displays the relevant file without the need for an external browser. The manual contains a slightly more detailed description of the program than the content of this website.
In the window "About the program" you will find the contact email address and the addresses of these websites. What you won't find here are account numbers for financial support or links to sponsors or advertising. I offer this program completely free of charge.
If you use the program, like it and would still like to support it in some way, send me feedback by email
They wish you a pleasant use of the program. Hope it makes your job easier.
Notice:
When saving to a file or when sending to the receiver, the program sorts the order of items for atsc, cables and terrestrial according to the alphabet. The satellites file will be sorted by the "Position" value. The order of the transponders will be sorted by the "Frequency" value. Any other sorting in the xml files will not be preserved.
Program Limitations:
- Only one comment can be placed after the <atsc > <cable > <sat > or <terrestrial > node entries. Others will be lost.
- Only one comment can be placed after the <transponder> entry. Others will be lost.
- Comments between the end of the </atsc> </cable> </sat> or </terrestrial> nodes and the start of the next node are not loaded and will be lost. This means that xml files cannot be split using comments into separate sections.
You can download the entire program in the section Files for download. If you have any additional suggestions for the program or if you report errors in the program, I will try to release the next version according to my abilities and possibilities.
Known bugs that will be fixed in the new version:
- Request to add editing of the plp_id parameter for terrestrial Transponders.
Change log:
Version 2.3.5
- Added translation into Serbian.
Version 2.3.4
- Bug fix for Delete and Insert keys, they can now be used as F8 and F9.
- Loading *.zip file. If the xml file is compressed in a zip archive, the program will handle it.
- Drag and Drop function, i.e. opening a file by dragging its icon over the program icon. You can also use the windows function: Open in program -> SatXmlEditor.
- Added translations of new phrases.
Version 2.3.1
- Added editing of atsc.xml, cables.xml and terrestrial.xml files.
- Fixed incorrect loading with certain combination of data, comments and transponders turned off.
- Fixing other minor bugs.
Version 1.1.8
- Added use of windows clipboard, only for transponders.
- Added multiselect option, only for transponders.
- Added option to display documentation from the program menu.
- Fixed detection of disabled transponder. The word "transponder" can already be used in the comment.
- Fix other minor bugs.
Version 1.0.7
- Detection of text encoding in the loaded Satellites.xml file (UTF-8, iso-8859-1, ...). The detected coding is written on the bottom line of the program. Saving in the same text encoding.
- Added Comment item to the Satellites table.
- When loading the xml, the current satellite is displayed on the bottom line. So when there is an error loading the xml, you can see for which satellite the error occurred.
- Added translations of new texts to the Languages.xml file.
Version 1.0.0
First published version.