I use a Raspberry-PI as USB-Host and found that in my setup Midihub chops the 2 data bytes of the MIDI Song Position Pointer and generates 2 messages out of one single incoming message.
Version of Midihub is V 1.11.7. I tested it with the most simple pipe, direct connection of USB A -> USB D, no filters, no other pipes etc. I use amidi to dump the midi bytes to the screen. However midisnoop shows the same result.
When I step through the bars of a song on the sequencer of my Roland FA-08 the input for Midihub shows
F2 50 00
F2 60 00
F2 70 00
F2 00 01
F2 10 01
F2 20 01
F2 30 01
F2 40 01
as expected, but the output of Midihub is
F2 60 00
F2 00 00
F2 70 00
F2 00 00
F2 00 00
F2 01 00
F2 10 00
F2 01 00
which annoys all my gear.
My hypothesis is that in Midihub the 2 data bytes of Song Position Pointer are interpreted as 2 messages with running status and then transfered into 2 song position pointer messages with the wrong data.
Can you confirm my observation? A fix in some future firmware would be nice.