I also have the same issue with a MacBook Pro 15-inch 2016. My keyboard that is routed through a couple of USB hubs (one in a LG monitor and a second USB 3.0 4-port Hub with power. About 50% of the time after sleep the keyboard doesn't work. I have to pull the LG USB3 monitor link and reinsert to revive the keyboard, sometimes this takes a few attempts.
I was only focused on the keyboard but also found that my USB attached Bose sound system connect to that USB hub also was not working on wakeup. Again when I disconnect the LG monitor to which the Hub is attached for the keyboard and Bose and reconnect things work again.
Now just today, I have Thunderbolt attached Drobo through a USB3 to Thunderbolt adapter. If the MacBook sleeps the Drobo does as well but the Drobo doesn't wake up when the MacBook does and remains in sleep mode.
Now here comes my hardware background. On the PCI bus (where the USB Controller would be attached) as per the specification a reset signal should be asserted (I believe for 100 ms minimum) on wakeup or reboot. In hardware designs using system on modules in the past we had problems where firmware and os drivers were not asserting that signal long enough causing a very similar problem. Now I am not sure if the USB within the MacBook may not be started properly until it gets the insertion interrupt or if the USB downstream is messed up. But this would be the first place I look (Apple).
Here is the hardware capture of my USB: -- Hope it helps
USB 3.0 Bus:
Host Controller Driver: AppleUSBXHCISPT
PCI Device ID: 0xa12f
PCI Revision ID: 0x0031
PCI Vendor ID: 0x8086
Hub:
Product ID: 0x8142
Vendor ID: 0x0451 (Texas Instruments)
Version: 1.00
Serial Number: 1C041851AB7E
Speed: Up to 480 Mb/s
Location ID: 0x14600000 / 48
Current Available (mA): 500
Current Required (mA): 0
Extra Operating Current (mA): 0
USB3.0 Hub:
Product ID: 0x5401
Vendor ID: 0x0bda (Realtek Semiconductor Corp.)
Version: 1.26
Speed: Up to 480 Mb/s
Manufacturer: Realtek
Location ID: 0x14620000 / 51
Current Available (mA): 500
Current Required (mA): 0
Extra Operating Current (mA): 0
Keyboard Hub:
Product ID: 0x1006
Vendor ID: 0x05ac (Apple Inc.)
Version: 96.15
Serial Number: 000000000000
Speed: Up to 480 Mb/s
Manufacturer: Apple, Inc.
Location ID: 0x14622000 / 53
Current Available (mA): 500
Current Required (mA): 300
Extra Operating Current (mA): 0
Apple Keyboard:
Product ID: 0x0220
Vendor ID: 0x05ac (Apple Inc.)
Version: 0.69
Speed: Up to 1.5 Mb/s
Manufacturer: Apple, Inc
Location ID: 0x14622200 / 54
Current Available (mA): 500
Current Required (mA): 20
Extra Operating Current (mA): 0
Bose USB Audio:
Product ID: 0x1020
Vendor ID: 0x05a7 (Bose Corporation)
Version: 1.00
Speed: Up to 12 Mb/s
Manufacturer: Bose Corporation
Location ID: 0x14621000 / 52
Current Available (mA): 500
Current Required (mA): 0
Extra Operating Current (mA): 0
TUSB3410 EECode Ser :
Product ID: 0x3410
Vendor ID: 0x0451 (Texas Instruments)
Version: 1.01
Serial Number: 00153063
Speed: Up to 12 Mb/s
Manufacturer: Texas Instruments
Location ID: 0x14640000 / 50
Current Available (mA): 500
Extra Operating Current (mA): 0
Texas Instruments USB Billboard Device:
Product ID: 0x3421
Vendor ID: 0x0451 (Texas Instruments)
Version: 1.00
Serial Number: 85FF5CBBF7D42539
Speed: Up to 12 Mb/s
Manufacturer: Texas Instruments Inc.
Location ID: 0x14610000 / 49
Current Available (mA): 500
Current Required (mA): 100
Extra Operating Current (mA): 0
Apple T1 Controller:
Product ID: 0x8600
Vendor ID: 0x05ac (Apple Inc.)
Version: 1.01
Manufacturer: Apple Inc.
Location ID: 0x14200000