@Morrison Chang. Thank you for your answer which solved my problem.
I read the link you mentioned and I reached the GitHub android-hid-client. It says that Only specific root methods are supposed, because he needed to patch Selinux policy..
So I have to use Magisk to patch boot.img, which make it possible to start USB gadget tool properly.