Universal Serial Bus compound hub with integrated keyboard
controller
Rev. 01 — 23 March 2000Objective specification
1.General description
The ISP1130 integrates a Universal Serial Bus (USB) hub with a keyboard controller
into a single chip,whichcomplieswith
the USB
1 to 2 downstream ports and 1 to 3 non-removable embedded functions, one of
which is dedicated to the keyboard operation. The hub controller is fully implemented
in hardware, ensuring a fast response to host requests.
The integrated 5 V to 3.3 V regulator allows direct connection to the USB power
supply V
can interface low-power USB devices such as a joystick or a mouse. ISP1130 uses
SoftConnect™ technology to connect to the USB host upon detection of V
low power consumption in ‘suspend’ mode allows easy design of equipment that is
compliant with the ACPI™, OnNow™ and USB power management requirements.
UniversalSerial Bus Specification Rev. 1.1
Device Class Definition for Human Interface Devices (HID)
. The downstream ports are either bus-powered or hybrid-powered and
BUS
. The hub has
BUS
and
. The
2.Features
The integrated keyboard controller is based on the 80C51 family and has 8 kbytes of
mask ROM and 256 bytes of data RAM. The code memory is protected against
reading by an external device. A built-in watchdog timer resets the device in case of a
microcontroller hang-up. To reduce power consumption, the microcontroller can be
c
c
put in sleep mode or power-down mode.
A serial I2C-bus interface is provided for optional access to an external EEPROM.
This allows the user to program the vendor ID, product ID or activate the built-in
keyboard matrix.
The ISP1130 has built-in overcurrent sense inputs, supporting individual and global
overcurrent protection for downstream ports. All ports (including the hub) have
GoodLink™ indicator outputs for easy visual monitoring of USB traffic. The ISP1130
has a reduced frequency (6 MHz) crystal oscillator to minimize Electro Magnetic
Interference (EMI). These features allow significant cost savings in system design
and easy implementation of advanced USB functionality into PC peripherals.
■ Compound USB hub device with integrated hub repeater, hub controller, Serial
Interface Engine (SIE), data transceivers and 5 V to 3.3 V voltage regulator
■ Complies with
Universal Serial Bus Specification Rev. 1.1
and
Device Class
Definition for Human Interface Devices (HID)
■ Complies with ACPI, OnNow and USB power management requirements
Philips Semiconductors
■ Supports bus-powered and hybrid-powered application
■ 1 to 2 downstream ports with automatic speed detection
■ 1 to 3 non-removable embedded functions, 1 dedicated for keyboard operation
■ 8 × 18 scan line matrix for HID compliant keyboard applications
■ Integrated 80C51 microcontroller core with 8 kbytes mask ROM and 256 bytes
■ On-chip watchdog timer for automatic fault recovery
■ Internal power-on reset and low-voltage reset circuit
■ Individual power switching for downstream ports
■ Individual port overcurrent protection with built-in sense circuits
■ 6 MHz crystal oscillator with on-chip PLL for low EMI
■ Reduced power consumption by putting microcontroller in sleep mode or
■ Visual USB traffic monitoring (GoodLink) for hub and downstream ports
■ I2C-bus interface to read vendor ID, product ID and configuration bits from
■ Operation over the extended USB bus voltage range (4.0 to 5.5 V)
■ Operating temperature range −40 to +85 °C
■ Available in 56-pin SDIP and SSOP packages.
ISP1130
USB compound hub with keyboard controller
data RAM
power-down mode
external EEPROM
3.Ordering information
Table 1:Ordering information
Type numberPackage
NameDescriptionVersion
ISP1130DLSSOP56plastic shrink small outline package; 56 leads; body width 7.5 mmSOT371-1
ISP1130NSDIP56plastic shrink dual in-line package; 56 leads (600 mil)SOT400-1
9397 750 06895
Objective specificationRev. 01 — 23 March 20002 of 68
XTAL11Icrystal oscillator input (6 MHz)
XTAL22Ocrystal oscillator output (6 MHz)
RESET3Ireset input (Schmitt trigger); a LOW level produces an
V
CC
GND5-ground supply
V
pu(3.3)
UP_DM7AI/Oupstream port D− connection (analog)
UP_DP8AI/Oupstream port D+ connection (analog)
DN1_DM9AI/Odownstream port 1 D− connection (analog)
DN1_DP10AI/Odownstream port 1 D+ connection (analog)
DN2_DM11AI/Odownstream port 2 D− connection (analog)
DN2_DP12AI/Odownstream port 2 D+ connection (analog)
PSW113Opower switch control output for downstream port 1
PSW214Opower switch control output for downstream port 2
OC1/DPGL115AI/Opin function is controlled via the USBCON register (see
OC2/DPGL216AI/Opin function is controlled via the USBCON register (see
GND17-ground supply
MX018Ikeyboard matrix return line (5 V tolerant, open drain)
MX119Ikeyboard matrix return line (5 V tolerant, open drain)
[1]
ISP1130
USB compound hub with keyboard controller
PinTypeDescription
asynchronous reset; connect to V
(internal POR circuit)
4-supply voltage; connect to USB supply V
6-regulated supply voltage (3.3 V ± 10%) from internal
regulator; used to connect pull-up resistor on UP_DP line;
pin function is controlled via the Device Status Register
(see Table 36):
Connect = 0 — V
Connect = 1 — V
floating (high impedance)
pu(3.3)
= 3.3 V
pu(3.3)
(open-drain)
(open-drain)
Table 53):
EnableOverCurrent = 0 — GoodLink LEDindicator output
for downstream port 1 (analog, open-drain); to connect an
LED use a 330 Ω series resistor
EnableOverCurrent = 1 — overcurrent sense input for
downstream port 1 (analog or digital); overcurrent sensing
can be either analog (AnalogOCDisable = 0) or digital
(AnalogOCDisable = 1)
Table 53):
EnableOverCurrent = 0 — GoodLink LEDindicator output
for downstream port 2 (analog, open-drain); to connect an
LED use a 330 Ω series resistor
EnableOverCurrent = 1 — overcurrent sense input for
downstream port 2 (analog or digital); overcurrent sensing
can be either analog (AnalogOCDIsable = 0) or digital
(AnalogOCDisable = 1)
for power-on reset
CC
BUS
[2]
[2]
9397 750 06895
Objective specificationRev. 01 — 23 March 20005 of 68
MX220Ikeyboard matrix return line (5 V tolerant, open drain)
MX3/SCL21I/Opin function is controlled via the I2C0CON register (see
Table 76):
ENS1 = 0 — keyboard matrix return line (5 V tolerant,
open drain)
[2]
ENS1 = 1 — I2C-bus clock output (5 V tolerant, open
[2]
drain)
MX4/SDA22I/Opin function is controlled via the I2C0CON register (see
Table 76):
ENS1 = 0 — keyboard matrix return line (5 V tolerant,
open drain)
[2]
ENS1 = 1 — bidirectional I2C-bus data line (5 V tolerant,
open drain)
MX523Ikeyboard matrix return line(5 V tolerant, open drain)
[2]
[2]
MX624Ikeyboard matrix return line (5 V tolerant, open drain)
MX725Ikeyboard matrix return line (5 V tolerant, open drain)
MY026I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY127I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY228I/Obidirectional keyboard matrix scan line (5 V tolerant)
GND29-ground supply
V
reg(3.3)
30-regulated supply voltage (3.3 V ± 10%) from internal
regulator; used to supply external devices
MY331I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY432I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY533I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY634I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY735I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY836I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY937I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY1038I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY1139I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY1240I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY1341I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY1442I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY1543I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY16/RD44I/Obidirectional keyboard matrix scan line (5 V tolerant)
used as read strobe when accessing external memory
WR45I/Obidirectional keyboard matrix scan line (5 V tolerant)
MY17/
used as write strobe when accessing external memory
GND46-ground supply
SYNCLK48Oembedded microcontroller clock output; used for emulation
EA49IExternal Address enable input (internal pull-up); used to
ALE50OAddress Latch Enable output; used to demultiplex AD0
PSEN51OProgram Store ENable output; selects external memory for
INT52Iexternal interrupt input (edge-triggered)
SCRLOCK53Ocontrol output for Scroll Lock LED (open-drain)
NUMLOCK54Ocontrol output for Num Lock LED (open-drain)
CAPSLOCK55Ocontrol output for Caps Lock LED (open-drain)
GND56-ground supply
[1] Symbol names with an overscore (e.g. NAME) indicate active LOW signals.
[2] MXn pins have an internal 8.2 kΩ pull-up resistor.
[3] MYn pins have an internal 82 kΩ pull-down resistor (keyboard matrix enabled) or an internal 8.2 kΩ
[1]
pull-up resistor (keyboardmatrix disabled).This is controlled by bit DisableKBDMatrix in the USBCON
register, see Table 53.
PinTypeDescription
47Opin function is controlled via the USBCON register (see
Table 53):
GL-MEMSELSelection = 0 — upstream port GoodLink
indicator output (open-drain)
GL-MEMSELSelection = 1 — chip select output for
external serial EEPROM (open-drain)
access external memory
during external memory access
program execution
…continued
6.Functional description
The ISP1130 is a compound USB hub with an integrated keyboard controller.It has 2
bus-powered downstream ports with 3 non-removable embedded functions, the first
of which is dedicated to the keyboard function. The downstream ports can be used to
connect low-speed or full-speed USB peripherals, such as a mouse, printer, another
keyboard or another hub. The block diagram is shown in Figure 1.
The embedded functions have no external hardware connections. They provide USB
endpoints for equipment functions implemented by a microcontroller. Each endpoint
has an associated FIFO buffer in the on-board RAM, which can be accessed by the
integrated microcontroller via memory mapped registers using special commands
(see Section 9).
An optional serial I2C-bus interface (see Section 11) is provided for external
EEPROM access, allowing the user to program the vendor ID, product ID or activate
the built-in keyboard matrix.
9397 750 06895
Objective specificationRev. 01 — 23 March 20007 of 68
An integrated 80C51 microcontroller serves as a keyboard controller. It has 8 kbytes
of mask ROM and 256 bytes of RAM. The I/O ports have been configured as an
8 × 18 line scan matrix. Three LED control outputs are available for keyboard status
indicators (Caps Lock, Num Lock and Scroll Lock). Interfacingto the USB hub is done
via 3 registers (command, data, status), which are accessible via the external data
memory address space (MOVX instruction).
The keyboard firmware resides in the ROM and enumerates the embedded function
as ‘HID compatible keyboard device’ during hub initialization.
The microcontroller runs on a 12 MHz clock, derived from the PLL oscillator. A
watchdog timer resets the microcontroller in case of a software hang-up.
6.2 Analog transceivers
The integrated transceivers interface directly to the USB cables through external
termination resistors. They are capable of transmitting and receiving serial data at
both ‘full-speed’ (12 Mbit/s) and ‘low-speed’ (1.5 Mbit/s) data rates. The slew rates
are adjusted according to the speed of the device connected and lie within the range
mentioned in the
USB compound hub with keyboard controller
USB Specification Rev. 1.1
ISP1130
.
6.3 Philips Serial Interface Engine (SIE)
The Philips SIE implements the full USB protocol layer. It is completely hardwired for
speed and needs no firmware intervention. The functions of this block include:
synchronization pattern recognition, parallel/serial conversion, bit (de-)stuffing, CRC
checking/generation, Packet IDentifier (PID) verification/generation, address
recognition, handshake evaluation/generation.
6.4 Hub repeater
The hub repeater is responsible for managing connectivity on a ‘per packet’ basis. It
implements ‘packet signalling’ and ‘resume’ connectivity. Low-speed devices can be
connected to downstream ports. If a low-speed device is detected the repeater will
not propagate upstream packetsto the corresponding port, unless they are preceded
by a PREAMBLE PID.
6.5 End-of-frame timers
This block contains the specified EOF1 and EOF2 timers which are used to detect
‘loss-of-activity’ and ‘babble’ error conditions in the hub repeater. The timers also
maintain the low-speed keep-alive strobe which is sent at the beginning of a frame.
6.6 General and individual port controller
The general and individual port controllers together provide status and control of
individual downstream ports. Any port status change will be reported to the host via
the hub status change (interrupt) endpoint.
9397 750 06895
Objective specificationRev. 01 — 23 March 20008 of 68
Indication of a good USB connection is provided through GoodLink technology. An
LED can be directly connected via an external 330 Ω resistor. The ISP1130 supports
GoodLink indication for the hub (upstream port) via output MEMSEL/UPGL and for
the two downstream ports via OCn/DPGLn, controlled via bits GL-MEMSELSelection
and EnableOverCurrent in the USBCON register (see Table 53).
During enumeration the LED blinks on momentarily. After successful configuration of
the ISP1130, the LED is permanently on. The hub GoodLink indicator blinks off for
approximately 128 ms when the hub receives a packet addressed to it. Downstream
GoodLink indicators blink upon an acknowledgment from the associated port. In
‘suspend’ mode the LED is off.
This feature provides a user-friendly indication of the status of the hub, the connected
downstream devices and the USB traffic. It is a useful diagnostics tool to isolate faulty
USB equipment and helps to reduce field support and hotline costs.
6.8 SoftConnect
The connection to the USB is accomplished by bringing D+ (for full-speed USB
devices) HIGH through a 1.5 kΩ pull-up resistor. In the ISP1130, the 1.5 kΩ pull-up
resistor is integrated on-chip and by default is disconnected from the +3.3 V supply.
ISP1130
USB compound hub with keyboard controller
The integrated microcontroller controls the connection of the internal resistor on D+ to
V
the Device Status register switches on V
via bit SoftConnect_N in the USBCON register (see Table 53). Bit Connect in
pu(3.3)
(defaultis off) to an alternative external
pu(3.3)
pull-up resistor. A functional schematic diagram is given in Figure 4.
dth
Connect
(Device Status
Register)
SoftConnect_N
(Configuration
Register)
Fig 4. SoftConnect control logic.
ISP1130
3.3 V
supply
1.5 kΩ
(internal
pull-up)
MGL920
V
pu(3.3)
1.5 kΩ
(external
pull-up)
UP_DP
This mechanism allows the microcontroller to complete its initialization sequence
before deciding to establish connection to the USB. Re-initialization of the USB
connection can also be performed without disconnecting the cable.
It should be noted that the tolerance of the internal resistors is higher (30%) than is
specified by the USB specification (5%). However, the overall VSE voltage
specification for the connection can still be met with good margin (see Table 92). The
decision to use this feature lies with the USB equipment designer.
9397 750 06895
Objective specificationRev. 01 — 23 March 20009 of 68
The bit clock recovery circuit recovers the clock from the incoming USB data stream
using a 4× oversampling principle. It is able to track jitter and frequency drift as
specified by the
6.10 Voltage regulator
A 5 to 3.3 V DC-DC regulator is integrated on-chip to supply the analog transceiver
and internal logic. This can also be used to supply the terminal 1.5 kΩ pull-up resistor
on the D+ line of the upstream connection.
6.11 PLL clock multiplier
A 6 to 48 MHz clock multiplier Phase-Locked Loop (PLL) is integrated on-chip. This
allows for the use of low-cost 6 MHz crystals. The low crystal frequency also
minimizes Electro-Magnetic Interference (EMI). The PLL requires no external
components.
6.12 Overcurrent detection
USB compound hub with keyboard controller
USB Specification Rev. 1.1
ISP1130
.
An overcurrent detection circuit for downstream ports has been integrated on-chip. It
is self-reporting, resets automatically, has a low trip time and requires no external
components. The ISP1130 supports individual overcurrent detection.
6.13 Power-on reset
The ISP1130 has an internal power-on reset circuit, which generates a reset pulse
when the supply voltage is switched on and when the supply voltage drops below a
predetermined threshold value (see Table 89).
6.14 I2C-bus interface
A serial I2C-bus interface (single master or slave, bit rate up to 400 kHz) is provided
to read vendor ID,product ID and other configuration data from an external EEPROM
(e.g., Philips PCF8582 or equivalent). For more information, see Section 11.
The I2C-bus interface timing is programmable and complies with the standard mode
and the Fast mode of operation as described in
number 9398 393 40011.
The I2C-bus and how to use it
, order
9397 750 06895
Objective specificationRev. 01 — 23 March 200010 of 68
Each USB device is logically composed of several independent endpoints. An
endpoint acts as a terminus of a communication flow between the host and the
device. At design time each endpoint is assigned a unique number (endpoint
identifier, see Table 3). The combination of the device address (given by the host
during enumeration), the endpoint number and the transfer direction allows each
endpoint to be uniquely referenced.
7.1 Endpoint configuration
The ISP1130 hub has 1 to 2 downstream ports and 1 to 3 embedded functions. The
upstream and downstream ports are fully handled by hardware and require no
firmware intervention. Downstream port 2 can be disabled by connecting both D+ and
D− to VCC.
The number of embedded functions can be configured from 1 to 3 via the USBCONA
register. These embedded functions give access to the keyboardcontroller and other
optional software functions. The functions are assigned as follows:
ISP1130
USB compound hub with keyboard controller
Embedded function 1: standard keyboard
•
Embedded function 2:
•
– multimedia functions (e.g. volume control)
– ACPI system control
– application launch keys
Embedded function 3: user-defined functions.
•
Each embedded function has two endpoint types: endpoint 0 (control) and endpoint 1
(generic: bulk and/or interrupt). The embedded function endpoints can handle a
maximum of 8 bytes per transfer.
Table 3:Endpoint allocation
FunctionPortsEndpoint
0: upstream
Hub
Embedded
Function 1
Embedded
Function 2
[4]
1, 2
:
downstream
3 (or 2
4 (or 3
identifier
0control-
1interrupt-
[5]
)0control0OUT8
1generic
[5]
)0control4OUT8
1generic
Transfer
type
Endpoint
index
[2]
[2]
-
[2]
1IN8
[3]
2OUT8
3IN8
5IN8
[3]
6OUT8
7IN8
Direction
OUT64
IN64
IN1
[1]
Max. packet
size (bytes)
9397 750 06895
Objective specificationRev. 01 — 23 March 200011 of 68
[1] IN: input for the USB host; OUT: output from the USB host.
[2] Hub endpoints are not indexed.
[3] Generic endpoint can be used as bulk or interrupt endpoint.
[4] Port 2 can be disabled by connecting both D+ and D− to VCC.
[5] The port number is reduced by 1 when downstream port 2 is disabled.
5 (or 4
[5]
)0control8OUT8
…continued
identifier
1generic
Transfer
type
Endpoint
index
9IN8
[3]
10OUT8
11IN8
Direction
[1]
7.2 Hub endpoint 0 (control)
All USB devices and functions must implement a default control endpoint (ID = 0).
This endpoint is used by the host to configure the device and to perform generic USB
status and control access.
The ISP1130 hub supports the following USB descriptor information through its
control endpoint 0, which can handle transfers of 64 bytes maximum:
Device descriptor
•
Configuration descriptor
•
Interface descriptor
•
Endpoint descriptor
•
Hub descriptor
•
String descriptor.
•
Max. packet
size (bytes)
7.3 Hub endpoint 1 (interrupt)
Endpoint 1 is used by the ISP1130 hub to provide port status change information to
the host. This endpoint can be accessed only after the hub has been configured by
the host (by sending the Set Configuration command).
Endpoint 1 is an interrupt endpoint: the host polls it once every 255 ms by sending an
IN token. If the hub has detected no change in the port status it returns a NAK (Not
AcKnowledge) response to this request, otherwise it sends the Status Change byte
(see Table 4).
Table 4:Status Change byte: bit allocation
BitSymbolDescription
0Hub SCa logic 1 indicates a status change on the hub’s upstream port
1Port 1 SCa logic 1 indicates a status change on downstream port 1
2Port 2 SCa logic 1 indicates a status change on downstream port 2 or on
embedded function 1 (downstream port 2 disabled)
3Port 3 SCa logic 1 indicates a status change on embedded function 1 or on
embedded function 2 (downstream port 2 disabled)
9397 750 06895
Objective specificationRev. 01 — 23 March 200012 of 68
4Port 4 SCa logic 1 indicates a status change on embedded function 2 or on
embedded function 3 (downstream port 2 disabled)
5Port 5 SCa logic 1 indicates a status change on embedded function 3; not used
if downstream port 2 is disabled
6reservednot used
7reservednot used
…continued
The ISP1130 handles all standard USB requests from the host via control endpoint 0.
The control endpoint can handle a maximum of 64 bytes per transfer.
Remark: Please note that the USB data transmission order is Least Significant Bit
(LSB) first. In the following tables multi-byte variables are displayed least significant
byte first.
Table 5 shows the supported standard USB requests. Some requests are explicitly
unsupported. All other requests will be responded with a STALL packet.
Table 5:Standard USB requests
Request namebmRequestType
Address
Set AddressX000 000005address
Configuration
Get Configuration1000 00000800, 0000, 0001, 00configuration
Set Configuration (0)X000 00000900, 0000, 0000, 00none
Set Configuration (1)X000 00000901, 0000, 0000, 00none
Descriptor
Get Configuration
Descriptor
Get Device Descriptor1000 00000600, 0100, 00length
Get String Descriptor (0)1000 00000600, 0300, 00length
Get String Descriptor (1)1000 00000601, 0309, 04length
Get String Descriptor (2)1000 00000602, 0309, 04length
byte 0 [7:0]
(Bin)
1000 00000600, 0200, 00length
bRequest
byte 1
(Hex)
wValue
byte 2, 3
(Hex)
wIndex
byte 4, 5
(Hex)
[1]
00, 0000, 00none
wLength
byte 6, 7
(Hex)
Data
value = 01H
[2]
[2]
[2]
[2]
[2]
configuration,
interface and
endpoint
descriptors
device
descriptor
language ID
string
manufacturer
string
product string
9397 750 06895
Objective specificationRev. 01 — 23 March 200013 of 68
Get Device Status1000 00000000, 0000, 0002, 00device status
Get Interface Status1000 00010000, 0000, 0002, 00zero
Get Endpoint (0) Status1000 00100000, 0000/80
[3]
, 0002, 00endpoint 0
status
Get Endpoint (1) Status1000 00100000, 0081, 0002, 00endpoint 1
status
Unsupported
Set Descriptor0000 000007XX, XXXX, XXXX, XXdescriptor;
STALL
Get Interface1000 00010A00, 00XX, XX01, 00STALL
Set InterfaceX000 00010BXX, XXXX, XX00, 00STALL
Synch Frame1000 00100C00, 00XX, XX02, 00STALL
[1] Device address: 0 to 127.
[2] Returned value in bytes.
[3] MSB specifies endpoint direction: 0 = OUT, 1= IN. The ISP1130 accepts either value.
8.2 Hub specific requests
In Table 6 the supported hub specific requests are listed, as well as some
unsupported requests. Table 7 provides the feature selectors for setting or clearing
port features.
Table 6:Hub specific requests
Request namebmRequestType
byte 0 [7:0]
(Bin)
Descriptor
Get Hub Descriptor1010 00000600, 00/29
Feature
Clear Hub Feature
X010 00000100, 0000, 0000, 00none
(C_LOCAL_POWER)
Clear Port Feature
X010 001101feature
(feature selectors)
Set Port Feature
X010 001103feature
(feature selectors)
bRequest
byte 1
(Hex)
wValue
byte 2, 3
(Hex)
wIndex
byte 4, 5
(Hex)
[1]
00, 00length
[3]
, 00 port
[3]
, 00 port
wLength
byte 6, 7
(Hex)
[2]
, 00hub descriptor
[4]
, 0000, 00none
[4]
, 0000, 00none
Data
9397 750 06895
Objective specificationRev. 01 — 23 March 200014 of 68
Get Hub Status1010 00000000, 0000, 0004, 00hubstatusand
status change
field
[4]
Get Port Status1010 00110000, 00port
, 0004, 00port status
Unsupported
[4]
Get Bus Status1010 00110200, 00port
Clear Hub Feature
X010 00000101, 0000, 0000, 00STALL
, 0001, 00STALL
(C_OVER_CURRENT)
Set Hub DescriptorX010 000007XX, XX00, 003E, 00STALL
Set Hub Feature
X010 00000300, 0000, 0000, 00STALL
(C_LOCAL_POWER)
Set Hub Feature
X010 00000301, 0000, 0000, 00STALL
(C_OVER_CURRENT)
[1]
USB Specification Rev. 1.0
[2] Returned value in bytes.
[3] Feature selector value, see Table 7.
[4] Downstream port identifier: 1 to 5 (1, 2: downstream ports, 3 to 5: embedded functions 1 to 3). If downstream port 2 is disabled, the port
identifiers are 1 to 4 (1: downstream port, 2 to 4: embedded functions 1 to 3).
PORT_CONNECTION00not usednot used
PORT_ENABLE01not useddisables a port
PORT_SUSPEND02suspends a portresumes a port
PORT_OVERCURRENT03not usednot used
PORT_RESET04resets and enables
not used
a port
PORT_POWER08powers on a portpowers off a port
PORT_LOW_SPEED09not usednot used
C_PORT_CONNECTION10not usedclears port connection
change bit
C_PORT_ENABLE11not usedclears port enable
change bit
C_PORT_SUSPEND12not usedclears port suspend
change bit
C_PORT_OVERCURRENT 13not usedclears port overcurrent
change bit
C_PORT_RESET14not usedclears port reset
change bit
9397 750 06895
Objective specificationRev. 01 — 23 March 200015 of 68
8PortPwrCtrlMask1FFmust be all ones for compatibility with
USB Specification Rev. 1.0
[1] Value in units of 2 ms.
[2] Depending on the number of embedded functions configured, the value ranges from 03H to 05H or
from 02H to 04H (downstream port 2 disabled).
Remark: Downstream port 2 can be disabled by connecting both D+ and D− to VCC. Embedded
functions are configured via the USBCONA register (see Table 55).
[3] Default value (08H): ports 1 and 2 removable, port 3 non-removable. The value can be 08H, 18H or
38H depending on the configured number of embedded functions (1, 2 or 3). When downstream
port 2 is disabled, the possible values are 4CH, 0CH or 1CH (1, 2 or 3 embedded functions).
Table 13: String descriptors
String descriptors are optional and therefore disabled by default; they can be enabled via the
Set Mode command (see Table 25).
Offset
(bytes)
Field nameSize
(bytes)
Value
(Hex)
Comments
String descriptor (0): language ID string
0bLength104descriptor length=4bytes
1bDescriptorType103type = STRING
2bString209, 04LANGID code zero
The hub returns 4 bytes. The first 2 bytes contain the port status bits (wPortStatus,
see Table 18). The last 2 bytes hold the port status change bits (wPortChange, see