Многие знают микросхему FT232RL, ее применяют в качестве моста USB-UART. Но у нее имеется младшая сестра FT230X, которая не только дешевле, но и имеет интересную функцию обнаружения USB-зарядного устройства. И один заинтересовавшийся ею товарищ под ником Baoshi провел исследования в этой области, поскольку хотел, чтобы его новое устройство питалось от USB и/или от аккумулятора.

Проектирование устройства с питанием от USB не тривиальная задача, потому что:
1. Если устройство нуждается в более 100 мА тока, оно сможет получить этот ток только после запроса хоста во время инициализации USB. Некоторые USB-хосты в состоянии обеспечить максимум 100 мА. Поэтому устройство должно быть достаточно умно для того, чтобы уметь определять тип хоста.
2. Следует учитывать ограничение тока в спящем режиме.
3. Если хочется, чтобы устройство работало автономно без ПК, то оно должно быть способно получать питание от «тупых» хостов, таких как USB-зарядники.
Положение 3 конфликтует с положениями 1 и 2, потому что USB-зарядник не может быть проинициализирован и не предусматривает спящего режима. Вот почему функция определения USB-ЗУ в микросхеме FT230XS так интересна. Но необходимы испытания…