Here you can download some of my utilities. This site replaces the former download page. I will publish any new version or new utility here. It is just easier to maintain. Please check the Freeware Archive for older versions.
ParSer is a utility to construct a non-standard resistance or capacitance value from a set of standard resistors or capacitors. ParSer supports different topologies of up to three individual components. ParSer can also calculate voltage dividers and find a set of suitable resistors. The minimum and maximum shunt current can be specified as well as the nominal load current.
V1.04, Dec 2021: Compiled with Visual Studio 2019, fixed some Code Analysis complaints, no functional changes
Here is the ParSer Online Help.
The name ParSer is misleading. It stands for parallel/serial connection of resistors or capacitors. I’m not very happy myself with this name, but now it’s out and I’m not going to change it.
Bin2C is a utility to convert binary files to C source code. It provides a simple way to include binary files (e.g. images or audio files) in embedded projects, which often do not support any file system.
Here is the Bin2C Online Help.
V2.20, Dec 2021: Compiled with Visual Studio 2019, fixed some Code Analysis complaints, no functional changes
During my recent (mostly Verilog) developments, I felt the need for a simple timing diagram generator with text output. Such a thing is very helpful to document the behavior of modules inside the source code rather than in a separate file. For this purpose I wrote DrawTimingDiagram. Here is the DrawTimingDiagram Online Help.
V1.01, Dec 2021: Initial release
Mostly all modern amateur radio transceivers are software defined radios (SDR). As such, they come with a built-in waterfall diagram display, which in turn invites for stupid and useless experiments. Since retired, I have time for a little fun and I wrote a small program, which converts a PNG graphics file to a wave file. That wave file can be transmitted and it generates a waterfall display, which resembles the PNG input file. This is strictly for fun and shall not be used to annoy anyone, so use it at your own discretion. Here is a sample:
The result is obviously limited by the low frequency- and amplitude-resolution of the waterfall diagram. Anyway, it works.
There is no help file, but the operation should be self-explanatory. Here is the user dialog:
Time per row specifies the transmit duration of one PNG row. The total transmit time is the number of rows multiplied by this value. The ramp specifies the duration for linearly fading in and out a single row. Without such ramps, the signal will become rather distorted due to many harmonics.
Here are the download files:
Note that there are a number of different PNG file formats and not all of them are supported. I did not do extensive testing. If you encounter any problems, please let me know. In such a case, please send me sample file for testing.
All utilities are written for Windows and should run on all current versions. Please let me know if you encounter any problems or if you have any recommendation for improvements. None of the utilities needs to be installed. Just copy the .exe file to your preferred path and remove the file for uninstalling it.
The utilities store some parameters in the registry or in an ini-file. See the respective help file for details. Earlier versions used the key „HKEY_CURRENT_USER\SOFTWARE\Michael Krämer Freeware“ but I recently changed this to „HKEY_CURRENT_USER\SOFTWARE\DK8PP Freeware\“. I’m sorry for any inconvenience.
All files are compressed with 7‑zip, which ensures integrity by a built-in CRC32. If the file is corrupted by the download, 7‑zip should complain during unpacking. For some additional degree of file authenticity, I added the MD5 hash codes for the compressed files. I agree that downloading and running executables from unknown sources is generally not a good idea. I’m also reluctant to do that myself. Let me therefore suggest the following:
- Scan the downloaded executable with a local or online virus scanner.
- Run the executable in a virtual machine.
- Review the provided source code and compile it yourself.
I appreciate if you report any errors that you find and I also value any suggestions to improve my programming style.
By the way, feel free to use and modify the source code as you like. I don’t reserve any copyrights. But if you distribute modified code, say that it is yours, not mine. I simply want to avoid any liability issues. Life is too short to fight with hungry lawyers.
Sometimes I receive more or less mild complaints for programming under Windows rather than Linux. Well, I had some experience with Linux in the late 90es. I then decided to stay with Windows, simply because it works reliably. Again, life is too short to lose time with immature environments. I’m sure that Linux has improved since the old days, but I will not change any more. I don’t use any sophisticated tools, just the Win32 API and plain C, not even C++. Therefore the executables should also run under Wine.