-figure out all magic commands -make complete gui -cabinet models -tone library -effects library -effects level -handling presets (loading, saving, exporting to xml patches) -buildsystem -start gui with proper values To do so we need to figure out reply formatting of command querying preset. amidi --port=hw:1,0,0 --send-hex F0 00 00 10 00 5E 02 2a 00 04 00 62 F7 --receive=preset will create file named preset (give a while for it, and then hit ctrl+c) this file should have around 440 bytes (depends on actual preset) 0x21 byte holds amount of options from 0x22 byte starts effects configuration which is: -2 bytes for ID -1 byte for position -1 to 3 bytes for value Each 8th byte (beginning from 0x27) seems to be status byte which describes whether or not we shall add 0x80 to ID or value and whether or not value will be multibyte. So far I couldn't figure the exact meaning of those bytes. To check you can download some patch from DigiTech Sound Community, apply it to your device, and then do this amidi command. Open resulting file in hex editor, and open patch file in text editor. Every ID, position and value found in patch will appear in the binary file. -fix expression pedal settings (possible types depend on active effects)