Hello, i think i chose right section and place to say about it. So I've made some programs that allows you to use Mikrotik routers with beeper as synthesizers. As you know you can make "audio" scripts by typing frequencies and delays manually, but i think that was ugly. However I am didn't find any solutions to automate that things. So i've made two programs:
1. Midi to MIkrotik converter. https://github.com/altucor/midi_to_mikrotik_converter
Allows you to convert midi files in to Mikrotik script files with all delays and frequencies. But on each router you can get only one beeper, and we can't play two notes at the same time, so we have some restrictions. If you are using midi files with crossing notes, and want to get clean sound output, you need first of all prepare midi file with some midi editor(I've used FL Studio). In case when you pass that not ideal file to the program, you can get on output script with "cutting" notes. I mean the second note starts playing before previous finish playing.
Also you can go to the bin/Debug/midi_files folder in repo and try some ready to use scripts with suffix *.txt, also you can compare it with original *.mid files.
Another restriction: Some midi files can contains multiple tracks for example drums, piano, synth, etc. And we still have only one beeper for each router. So my program can gets on input one midi file and extract from it all tracks to text files with counter on end of the filename. Example: starwars_1.txt, starwars_2.txt. If you have telecommunication rack with more than one router, you can try play each track of midi file on each router, like in "floppy music videos" and make video of this .
Frequency limitations: Mikrotik beeper can play frequencies between around 20Hz - 4000Hz. So you can use octave or note shifter arguments(described on github page).
2. Mikrotik SSH Piano (only for Windows x32) https://github.com/altucor/MikrotikSSHPiano
So that program allows you to play on Mikrotik as on piano or one voice synth in real time. Limitations the same as for previous program. Nothing hard to use it, just run exe with arguments *username* *ip* *port*, and later enter the password. I am used in this project libssh for windows, and downloaded compiled dll's. If you dont trust to this libraries in my repository you can download it manually https://www.libssh.org/get-it/ or compile it from sources.
Why only for Windows? Because I think its easy to implement something the same to my program on Linux, using Python or Bash scripts. Also on Linux you can get very easy access to SSH via terminal and scripts. x32 because libraries i've used compiled for x32 systems.
I would be glad if my programs can be useful for you.
P.S. Sorry for my English.