For the VID I was thinking saving those $5000 per year and using one from those open-source like
https://pid.codes/(the product is commercial but will be open-source and open-hardware).
worst case the USB IF will sue you for trademark infringement if you claim your device is a USB device (I'm not sure how common this is....).
That sounds scary - but aren't there like a million devices out there that use USB (without the logo) without being 100% certified? At least it's the feedback I got when I decided to use a USB plug for power instead of a power barrel plug.
I thought the limit was 100mA before negotiation (instead of 200mA), but either way my device draws about 80mA anyways (that's the max average, there are very short peaks above 100mA once in a while).
EDIT2: The other issue is that there are many "chargers" that leave D+ and D- floating. A USB compliant device would see that D+ and D- are floating, and know that it isn't supposed to draw much current. One reason is to reduce arcing of the contacts in the connector. The USB connector first connects GND/VBUS, and then connects D+/D-. The compliant solution only starts to draw significant once D+/D- are connected since that implies that VBUS and GND already have a good connection. The arcing would happen if current was flowing as VBUS/GND were connected.
Reading both your answers I'm still confused on what a compliant device should do when connected to a dumb USB phone charger, say one that leave DP/DM floating.
First would that not be an issue? Having a completely floating DM pin that will maybe oscillate and create strange behavior on the USB IC/MCU (as normally you would have a 15k pull-down). Should a device add a very high pull-down to avoid this, say 1M ohm?
Then that would still read as D+ high and D- low, and no negotiation is going to happen (since there is not USB host), which means that after 45 min the USB device should stop drawing any power?
I guess the problem comes from that these "dumb USB phone chargers" are actually not USB compliant, but I know for a fact that most (if not all) USB compliant devices I own work perfectly fine with these, so surely they must detect that there is no host and simply draw whatever power they need?