The ZebraQLn220 has many settings that can be programmatically updated via commands sent it, such as:
! U1 setvar "media.sense_mode" "bar"
However, sometimes it takes several attempts before that change is "seen"/accepted/applied by the printer. For instance, I have sent the
! U1 setvar "power.dtr_power_off" "on"
command several times before this one:
! U1 getvar "power.dtr_power_off"
...will finally respond back with "on" (giving me "off" instead the first several times).
So: Is there a command that can be sent to the QLn220 that tells it to "flush" or "write all changes" or "save changes" or "I really mean it this time" or some such?
I don't know what firmware is new enough, but this is what the printer tells me about itself as far as "appl" settings go:
appl.date : 2/19/2014
appl.name : V68.19.7Z
appl.version : 6819
appl.bootblock : 2.5.9
appl.link_os_version : 2.0
If you are using later firmware you can use JSON to format the commands. In this method the commands will respond immediately with the configured values.
{}{"media.sense_mode":"bar"}
would respond with:
{"media.sense_mode":"bar"}
You can also put multiple requests in one:
{}{"media.sense_mode":"bar",
"power.dtr_power_off":"on"
}
The following knowlege base article has more info - https://km.zebra.com/kb/index?page=content&id=SO8638&actp=RSS