-1

I need to be able to record all print requests to a printer physically connected via USB to a PoS like system. There is no need for me to manipulate the print job, I just need a "copy" of the print request and will send it to a remote machine in regular intervals in small batches. It is essential, that the printer is always available - independent of the network status. I have spied the BeagleBoard Black, as it seems to be able to run USB both in Host and Device mode at the same time. It seems to be me, that it should be possible to plug the beagle between both devices and get some software stack to

  • forward between host and device sides
  • create a copy of the data received

Is there any readily available solution for this? What would the "building" blocks be to make this happen?

Stefan
  • 117
  • 1
  • 1
    found this here: github.com/AristoChen/usb-proxy seems to be a good starting point. But it lacks any „serial dump“ – Stefan Jul 19 '23 at 20:16

2 Answers2

3

Is there any readily available solution for this?

I understand your use case that you like to do USB Protocol Analyzing, specifically "Sniffing". So, yes.

What would the "building" blocks be to make this happen?

There are many possibilities and depending on what kind of systems the print jobs become generated, the environment, your budget, what you try to achieve finally, etc.. Unfortunately your description as it currently is lacks a lot of details.

  • Under Linux usbmon
  • Under Windows wireshark and USBPcap, see also USB capture setup
  • FreeUSBAnalyzer, USBTrace, USB Data Monitor, USB Port Sniffer or others for Windows
  • Hardware USB Capture Card's or USB TAP
  • DIY Hardware like cheap USB sniffer
  • and more ...

Similar Q&A

U880D
  • 1,017
  • 2
  • 12
  • 18
  • 2
    Thanks a lot for your time and explanation. Sniffing always implies something temporary and passive to ne - so I did not consider the analyser / sniffer tools. USBMon only works on the host, and the PoS System is expecting a printer devices. so I I need something else. But the solution has been found! thanks again! – Stefan Jul 20 '23 at 14:10
1

https://github.com/nesto-software/USBProxy is the solution that I will be using. It pipes out the serial communication via ZeroMQ and I can write a simple client to consume the data. I found them last looking at all of the forks from the usb proxy mentioned in the comment to my question!

Stefan
  • 117
  • 1