USB Printer not sending Endpoints
The following tests rely on connecting the printer to a Linux machine. Even if it's not Linux you are using on your ARM, this information is useful in identifying the protocol the printer is willing to use.

lsusb -v


should give you a list of all USB-connected devices. However, there is quite a variety of possibilities on how you actually have to drive your printer. Frequently, printers emulate 'old' printer interfaces: Serial port or Parallel port. If that is the case, your best bet is to check

dmesg


and see if the printer is listed in the events, and if it was recognized (and installed) as maybe ttyusbX or usblpX) or so. At this point, there should be information how Linux should be driving the devices (maybe HID or another protocol). If it's HID, then Linux will probably try to install its own driver. Could also be ACM (for serial emulation). 

About the 0 endpoints: those are requisites by the USB norm. All USB peripherals must have an IN and OUT endpoint 0. During the setup, there should also appear at least one configuration (configuration 0). This is called the default configuration.