Something is wrong.
I got some time to try elmacro again, but if I use F3 inside a macro, it always shows "last-command-event" variable:
(defun last-macro2 ()
(interactive)
(setq last-command-event 13)
(org-return nil nil 1)
(setq last-command-event 13))