Thank you guys. I appreciate your help.
I understand I cannot handle USB ports by myself, I need to use an external library like libusb or Synaser right?
I wish you all a nice day.
Synaser is specific to serial ports, serial.pp is a low-level alternative.
If you're talking to something USB-connected that looks like a disc, network device or serial port then assume the OS will present it via the standard APIs. If you're looking at an HID then either use somebody's pre-existing high-level (-ish) library or a kernel API: I've got into deep water in the past trying to get low-level Linux HID access because there were kernel-level libraries which appeared to assume that they were compiled using the same toolset... alignment/padding nasties.
If you're talking to an arbitrary device then libusb is pretty much unavoidable, although be warned that in some cases you might need privileged access so that you can say to the kernel "let me handle this one".
If you really do want to start tinkering at a low level, and I'd stress that there's nothing wrong with that if you've got /lots/ of time and like hardware reference manuals, then get in touch with the Ultibo developers and see where they're at and whether they can use help. Otherwise ReactOS (on a PC) or something like
https://github.com/salvois/kernel which has an attractive architecture and would no doubt benefit from enthusiastic assistance.
Finally, I'd stress that I'm not trying to be negative but one has to put some sort of limit on what's doable.
MarkMLl