Mqtt issues, how to delay item update?

Hi, how to implement some kind of “interupt” for several items update? I am reading serial data from the device and publishing all results to relevand mqtt topics ~ every 8 seconds. Also I have a subcribed topics on ESP8266 when message arrives it needs to send serial command to device, but device itself is a little bit slow and it takes ~ 2 seconds to be apllied and during this time I will get old values and my Item will go back to original state - so it will publish mqtt message with old value which I dont want to do.

Here how looks in sitemap one of the items:

Switch item=panasonic_heat_pump_Mode label="Heat Pump Mode" mappings=[33="Tank Only", 18="Heat Only", 24="Auto Only", 19="Cool Only"]

Here is Items:

   String  panasonic_heat_pump_Mode                   "Mode"		<settings> (HeatPump)   {mqtt=">[broker:panasonic_heat_pump/SetMode:command:*:${command}],<[broker:panasonic_heat_pump/sdc/mode_state:state:default]"}

For that kind of delay, I would uncouple the ins-and-outs and use two items
Master Item to use on UI
Slave Item with bindings
Rule to forward all commands to Master to Slave (and eventually device)
Rule to forward all changes of Slave state to Master by update
Accept that if something goes wrong with the command and device fails to eventually update, the Master will not reflect that.

You mean to use some kind of “dummy” switch in sitemap ? And write smart rules to master it ?
Or maybe to change code on the ESP8266 then ? hmm… Because I want to avoid any additional rules.

It’s always best to solve problems like this at the source so if you can fix it at the ESP that would be best. If not, you will have to write rules. But honestly, avoiding Rules would be like wanting to have a car but just use it to listen to the radio and never driving it.