Skip to content

Kurgan-/ftm-400d

 
 

Repository files navigation

FTM-400D Memory Reader/Programmer

Original version by Kurt Zeilenga, KZ7ZZZ
Patches and improvements by Fabio Muzzi, IZ4UFQ

This program reads binary data from the memory backup generated by the Yaesu FTM-400D and generates an XML file. 
It is also able to read the XML file back and generate the binary data needed by the FTM-400. 
Then you can read the new binary data file on the SD on the radio to load the new memories to the radio.

It has been tested on a FTM-440D European version with firmware 1.8. 
It should work also on U.S. version, and also on every other localized version.


Prerequisites:

C++ compiler (e.g., clang++ or g++)
GNU Make
libxml2 (http://www.xmlsoft.org/)

On Ubuntu Linux (also Debian and Mint) you need to install these packages:

  g++ 
  libxml2-dev


Building:

Run 'make'.



Usage:

Copy MEMFTM400D.dat from SD Card to local working directory,
eventually rename local copy to old.dat.

Generate channels xml file with this command:

% ./ftm-export old.dat > channels.xml

Then edit channels.xml file using a text editor or an XML editor if you like.
Check the example files and the channels.xsd file to learn about the syntax and available options.
I suggest using xmlcopyeditor, which is packaged for Debian/Ubuntu/Mint.

Finally, generate a new binary memory file. Please note that you NEED to have the 
original file from the radio to start from, because the program cannot generate a full
memory file from scratch.

% ./ftm-import channels.xml old.dat new.dat > logfile.txt

logfile.txt is a log file that you can check to see if there are errors in the import operation. 

Copy new.dat as MEMFTM400D.dat on SD Card, exactly where it was before and with the same name, because 
the radio cannot read any other file in any other place with any other name.

Finally, read memory data from SD on the radio.




Known issues:

The format of the exported binary file is not exactly the same as the original one, but it works. 



Improvements needed:

- the ability to import/export to a CSV file instead of an XML file
- the ability to automatically set memories for both sections (upper and lower bank, named as bank 1 and 2 in the xml file)
  at the same time, so that you need not to duplicate every memory for bank 1 and bank 2.



About

Memory Manager for Yaesu FTM-400D

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 90.9%
  • C++ 6.6%
  • Makefile 2.5%