I tried with regular keyboards as well, all showing the same behavior. Investigated further and I see that one event is sent on key press, and second on key release.
A more specific events like arrow keys, screen_audio_mixer etc. - works as expected when assigned to any key.
For example UP key:
Sep 15 11:25:39 zynthian startx[1426]: DEBUG:zynthian_gui_keybinding.get_key_action: Get keybinding function name for keycode: 111, modifier: 0
Sep 15 11:25:39 zynthian startx[1426]: DEBUG:zynthian_gui.callable_ui_action: CUIA 'arrow_up' => None
Sep 15 11:25:43 zynthian startx[1426]: DEBUG:zynthian_gui_keybinding.get_key_action: Get keybinding function name for keycode: 111, modifier: 0
CUIA 'arrow_up' => None
is fired on key press and nothing is called on key release which is correct behavior. But zynswitches either not calling anything (P,R) or calling same event both on press and release (S).