Možnosti zvýšení proudových limitů USB pro účinnější nabíjení přenosných zařízení
Univerzální sériová sběrnice (USB) je dnes nejpoužívanějším rozhraním ve světě počítačů. Vše přitom začalo jako další z mnoha rozšiřujících rozhraní pro osobní počítače, ale díky své flexibilitě, výkonu a především podpoře plug-and-play se rychle rozšířilo. Dnes již naprostá většina přenosných elektronických zařízení, která vyžadují spojení s PC například pro přenos souborů, obsahuje právě USB. Mezi nejpoužívanější přitom patří MP3 přehrávače, digitální fotoaparáty, mobilní telefony a tablety.
Vzhledem k tomu, že standardní USB Host port dokáže zároveň poskytnout proud až 500 mA (USB 2.0) nebo až 900 mA (USB 3.0), přímo se tím nabízí možnost použít jej také pro nabíjení těchto zařízení. Pokud však proudový limit ještě zvýšíme, lze zajistit účinnější a rychlejší nabíjení. Jednou z možností, jak toho docílit, je použití USB HUB obvodu USB2534 s funkcí Rapid- Charge.
Pokud požadavek na proud překročí základní limity, musí spolu nabíjené zařízení a napájecí port komunikovat a domluvit si proud pro nabíjení baterií. Daný port je následně zodpovědný za poskytnutí správného potvrzení do nabíjeného zařízení, čímž se zařízení dozví, že je připojené k nabíjecímu portu a může čerpat proud i nad standardní limity USB. Vhodný typ signalizace se liší v závislosti na připojeném zařízení. Některá z nich podporují protokoly USB-IF BC1.2, ale také existuje řada zařízení, která používají proprietární protokol signalizace, také známý jako starší režim pro nabíjecí obvody.
Starší typy zařízení podporují některou z forem detekce nabíjení baterií určené pro použití s vyhrazenou nabíječkou. Jedná se především o zkratované datové piny D+ a D-, a to buď přímo, nebo přes sériový odpor. V takovém zařízení probíhá rozpoznání připojené nabíječky tak, že přes pull-up rezistor se přivede napětí na pin D+ a současně se měří napětí na pinu D-. Pokud je zde detekováno kladné napětí, lze předpokládat, že je připojeno přímo k nabíječce a nikoli ke standardnímu USB portu. Jiná zařízení naopak pomocí pull-down rezistoru stáhnou jednu datovou linku ke společné zemi a jiným pull-up rezistorem přivedou napětí na zbylé piny konektoru. Jakmile pak zařízení prostřednictvím přítomnosti napětí na pinu D- detekuje připojení k nabíječce, může opět zahájit nabíjení s proudem z VBUS převyšujícím běžné limity specifikace USB portu.
Další skupina starších zařízení spoléhá na přítomnost pevného napětí (více než 1 V) na datových pinech D+ a D-. Ty jsou označovány jako nabíječky řady SE1. Pokud je toto napětí detekováno nabíjecím zařízením, předpokládá se připojení k externí nabíječce a je možné zahájit proces nabíjení. Standardní USB Host port by na datových pinech D+ a D takové napětí neměl obsahovat.
Přenosná zařízení jsou zodpovědná za detekci připojení k nabíječce a na obr. 1 je uveden příklad hardwaru, který je k tomu zapotřebí.
Základem detekčního hardwaru na obr. 1 je celkem pět funkčních bloků – detekce VBUS, detekce datových linek, primární detekce, sekundární detekce a detekce ACA. Na pinu VBUS obsahuje přenosné zařízení komparátor detekující napětí vyšší než prahová hodnota pro zahájení nabíjení. Na obrázku je označen jako VOTG_SESS_VLD.
Spínač na datových linkách je volitelný blok potvrzující navázání kontaktu během připojení. Pro signál D+ je pak připraven proudový zdroj a pro D- pull-down rezistor. Pokud napětí na pinu D+ poklesne, znamená to připojení k nabíjecímu nebo standardnímu portu a logika pokračuje spuštěním primární detekce. Volitelnou funkcí je zde také časová prodleva, která v případě absence detektoru kontaktu zajistí, že se primární detekce spustí až po uplynutí nastaveného času.
Primární detekcí jsou přitom vybavena především moderní přenosná zařízení. Jejím cílem je rozlišit mezi standardním datovým portem (SDP) a nabíjecím portem. Obr. 2 zachycuje situaci po připojení zařízení k vyhrazenému nabíjecímu portu (DCP – Dedicated Charging Port), obr. 3 po připojení k nabíjecímu datovému portu (CDP – Charging Downstream Port) a na obr. 4 představuje stav po připojení ke standardnímu datovému portu SDP.
Sekundární detekce se používá pro rozlišení mezi DCP a CDP. Proběhne-li v zařízení enumerace do stanoveného časového intervalu po detekci VBUS, lze sekundární detekci vynechat, v opačném případě je třeba její aplikace. Detekci ACA ovšem mohou podporovat pouze přenosná zařízení s USB konektorem typu Micro-AB, její implementace je tedy volitelná. V praxi se provádí na základě měření odporu ID pinu.
Obvody rozbočovače USB2534 společnosti Microchip integrují technologii RapidCharge zajišťující provedení řádné handshake signalizace do přenosných zařízení a navazujících portů pro nabíjení baterií. Součástí je rovněž plná podpora detekce připojení nabíječky na vstupním USB Host portu. Chcete-li nabídnout plnou podporu pro většinu přenosných zařízení, je nutné zajistit správné signály i pro starší typy nabíječek. Především se jedná o nabíječky řady SE1, nabíječky kompatibilní s Čínskou Telekomunikační Specifikací (CTI) YD / T 1591-2009 a BC1.2 kompatibilní zařízení. Uvedený rozbočovač přitom v jediném čipu integruje plnou podporu všech těchto protokolů a je tedy schopen zajistit kompletní služby pro zařízení výrobců Apple, Samsung a další.
Je-li USB port nakonfigurován pro podporu nabíjení baterií, nese označení CDP v případě, kdy je schopen enumerace připojeného zařízení. Není-li toho schopen, je označován jako DCP. Pokud port ovšem není pro podporu nabíjení baterií vůbec konfigurován, nese označení SDP.
I v tom případě lze ovšem pouhým přidáním pull-up rezistoru (10k) připravit libovolný výstupní USB port alespoň pro základní podporu nabíjení baterií. Hodnota těchto pinů je totiž snímána vždy po resetu zařízení, a jsou-li získané vzorky pozitivní, je daný port vhodný pro nabíjení.
Podpora nabíjení baterií může být aktivována rovněž použitím konfiguračních registrů uvnitř USB2534. Tyto registry jsou použity interním ROM firmwarem pro konfiguraci jednotlivých portů. Změna registrů může být provedena pouze naprogramováním v jednou programovatelné paměti (OTP) pomocí programovacího nástroje ProTouch.
ProTouch je vývojovým nástrojem společnosti Microchip pro konfiguraci a programování USB hub kontrolérů USB2534. Jeho použití je možné jak pro vývoj s jedním prototypem, tak i sériovou výrobu, kde je třeba konfigurovat větší množství obvodů.
Pokud na vstupu VBUS není žádné napětí, a tudíž obvod není připojen k žádnému zařízení USB host, je na všech výstupech povolena funkce nabíjení a porty se chovají jako DCP. Režim nabíjení se ukončí v okamžiku, kdy je obvod připojen k hostitelskému systému. Druhou možností automatické aktivace režimu DCP je uspání obvodu USB2534 se současným zákazem dálkového probuzení. V podpoře nabíjení baterií DCP se port automaticky pokouší navázat kontakt s připojeným zařízením a zároveň identifikovat BC kompatibilní typ. Proces identifikace je zahájen v režimu SE1. Tím sice nelze 100% určit, zda je připojené zařízení kompatibilní s tímto standardem, ale snadno se tím zjistí, že zařízení naopak SE1 nepodporuje, když jsou přepínány signály DM nebo DP.
Po aktivaci režimu RapidCharge přejde obvod USB2534 do stavu nabíjení SE1 a výstupní port nabyde hodnot napětí dle dané specifikace. Pokud je k portu skutečně připojeno zařízení typu SE1, bude pasivně detekovat požadované úrovně a začne nabíjet. Přesto DCP port nebude schopen detekovat přítomnost zařízení typu SE1. Port tak i nadále zůstává v režimu nabíjení a připojené zařízení odebírá požadovanou energii.
Pokud je připojeno zařízení typu BC 1.2, jeho proud je dostatečně silný na to, aby dokázal stáhnout datové linky na nízkou úroveň. Podobně se přitom chovají i některá starší zařízení, která také datové piny stahují ke společné zemi. Chcete-li své zařízení přizpůsobit tomuto standardu, stačí monitorovat datové signály a starší nabíjecí režim aktivovat v okamžiku, kdy je datový pin D- držen na nízké úrovni. Samozřejmě je nutné počítat s přechodovými stavy, které na datových pinech vznikají především v průběhu připojování zařízení a které je nutné vyhodnotit jako falešné signály.
Po připojení obvodu k hostitelskému zařízení přejdou všechny nabíjecí porty z režimu DCP do režimu CDP. Než dojde směrem od hostitelské aplikace k příjmu inicializačních povelů, budou všechny BC kompatibilní porty vypnuty, a to nejméně po dobu 250 ms, než dojde ke stabilizaci napájecího napětí. Podobné zpoždění lze očekávat, i pokud hostitel odešle povel k zapnutí napájení portů. Jakmile tato prodleva vyprší, jsou všechny následující příkazy prováděny okamžitě.
Změnit automatické detekční sekvence nabíjecích zařízení může i externí MCU, a to prostřednictvím SMBus runtime nabíjecích registrů. Vzhledem k tomu, že se detekce po spuštění nachází ve výchozí konfiguraci, musí MCU do řídicích registrů zapsat ještě před jejím spuštěním nebo spuštění celé sekvence rovnou blokovat. Pokud je naopak automatická detekce zakázána, může ji MCU v případě potřeby spustit.
Možnost nabíjení baterií přes USB porty poskytuje dnes značnou výhodu především v oblasti přenosných zařízeních, jako jsou mobilní telefony, tablety a další. Organizace USB-IF nedávno zveřejnila aktualizovanou specifikaci nabíjení baterií BC1.2, která má za cíl pomoci sjednotit zavedené standardy a komunikační protokoly používané mezi hostitelem a zařízením. Obvody rozbočovače USB2534 společnosti Microchip s technologií RapidCharge poskytují plnou podporu všech běžných protokolů, od historických verzí přes standard SE1, Chinese Telecommunications Industry YD/T 1591-2009, až po nový standard USB-IF BC1.2 implementovaný v moderních zařízeních od společností Apple, Samsung i celé řady dalších.
Nechybí ani podpora detekce nabíjení baterií v přenosných zařízeních, které vyžadují rozpoznání například síťové USB nabíječky.