packages feed

usb-id-database 0.4 → 0.4.0.1

raw patch · 8 files changed

+762/−332 lines, 8 filesdep +base-unicode-symbolsdep +containers-unicode-symbolsdep ~basedep ~containers

Dependencies added: base-unicode-symbols, containers-unicode-symbols

Dependency ranges changed: base, containers

Files

LICENSE view
@@ -1,4 +1,4 @@-This BSD3 license applies to all fiels except usb_dot_org_db.txt and+This BSD3 license applies to all files except usb_dot_org_db.txt and usb_id_repo_db.txt.  The data file usb_id_repo_db.txt is licensed under the terms of the
System/USB/IDDB/Base.hs view
@@ -1,4 +1,6 @@ {-# LANGUAGE CPP #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE UnicodeSyntax #-}  module System.USB.IDDB.Base     ( IDDB(..)@@ -31,13 +33,31 @@     )     where +-- base+import Control.Monad ( (=<<), fmap )+import Data.Char     ( String )+import Data.Function ( ($) )+import Data.Int      ( Int )+import Data.Maybe    ( Maybe )+import Data.Tuple    ( fst, snd )++-- base-unicode-symbols+import Prelude.Unicode ( (∘) )++-- containers import qualified Data.IntMap as IM import qualified Data.Map    as MP +-- containers-unicode-symbols+import qualified Data.IntMap.Unicode as IM ( (∅) )+import qualified Data.Map.Unicode    as MP ( (∅) )+ #ifdef BUILD_WITH_CABAL import Paths_usb_id_database ( getDataFileName ) #else-getDataFileName :: FilePath -> IO FilePath+import Control.Monad ( return )+import System.IO     ( IO, FilePath )+getDataFileName ∷ FilePath → IO FilePath getDataFileName = return #endif @@ -52,142 +72,142 @@ type SubClassDB = IM.IntMap (String, ProtocolDB) type ProtocolDB = IM.IntMap String --- |A database of USB identifiers. Contains both vendor identifiers--- and product identifiers.-data IDDB = IDDB { dbVendorNameId :: MP.Map String Int-                 , dbVendorIdName :: IM.IntMap String-                 , dbProducts     :: IM.IntMap ProductDB-                 , dbClasses      :: ClassDB-                 , dbAudioCTType  :: IM.IntMap String-                 , dbVideoCTType  :: IM.IntMap String-                 , dbHIDDescType  :: IM.IntMap String-                 , dbHIDDescItem  :: IM.IntMap String-                 , dbHIDDescCCode :: IM.IntMap String-                 , dbHIDUsage     :: IM.IntMap (String, IM.IntMap String)-                 , dbPhysDescBias :: IM.IntMap String-                 , dbPhysDescItem :: IM.IntMap String-                 , dbLanguages    :: IM.IntMap (String, IM.IntMap String)+-- |A database of USB identifiers. Contains both vendor identifiers and product+-- identifiers.+data IDDB = IDDB { dbVendorNameId ∷ MP.Map String Int+                 , dbVendorIdName ∷ IM.IntMap String+                 , dbProducts     ∷ IM.IntMap ProductDB+                 , dbClasses      ∷ ClassDB+                 , dbAudioCTType  ∷ IM.IntMap String+                 , dbVideoCTType  ∷ IM.IntMap String+                 , dbHIDDescType  ∷ IM.IntMap String+                 , dbHIDDescItem  ∷ IM.IntMap String+                 , dbHIDDescCCode ∷ IM.IntMap String+                 , dbHIDUsage     ∷ IM.IntMap (String, IM.IntMap String)+                 , dbPhysDescBias ∷ IM.IntMap String+                 , dbPhysDescItem ∷ IM.IntMap String+                 , dbLanguages    ∷ IM.IntMap (String, IM.IntMap String)                  }  -- |An empty database.-emptyDb :: IDDB-emptyDb = IDDB { dbVendorNameId = MP.empty-               , dbVendorIdName = IM.empty-               , dbProducts     = IM.empty-               , dbClasses      = IM.empty-               , dbAudioCTType  = IM.empty-               , dbVideoCTType  = IM.empty-               , dbHIDDescType  = IM.empty-               , dbHIDDescItem  = IM.empty-               , dbHIDDescCCode = IM.empty-               , dbHIDUsage     = IM.empty-               , dbPhysDescBias = IM.empty-               , dbPhysDescItem = IM.empty-               , dbLanguages    = IM.empty+emptyDb ∷ IDDB+emptyDb = IDDB { dbVendorNameId = (MP.∅)+               , dbVendorIdName = (IM.∅)+               , dbProducts     = (IM.∅)+               , dbClasses      = (IM.∅)+               , dbAudioCTType  = (IM.∅)+               , dbVideoCTType  = (IM.∅)+               , dbHIDDescType  = (IM.∅)+               , dbHIDDescItem  = (IM.∅)+               , dbHIDDescCCode = (IM.∅)+               , dbHIDUsage     = (IM.∅)+               , dbPhysDescBias = (IM.∅)+               , dbPhysDescItem = (IM.∅)+               , dbLanguages    = (IM.∅)                }  ------------------------------------------------------------------------------- -- Query database ------------------------------------------------------------------------------- -vendorName :: IDDB -- ^Database-           -> Int  -- ^Vendor identifier-           -> Maybe String+vendorName ∷ IDDB -- ^Database+           → Int  -- ^Vendor identifier+           → Maybe String vendorName db vid = IM.lookup vid $ dbVendorIdName db -vendorId :: IDDB   -- ^Database-         -> String -- ^Vendor name-         -> Maybe Int+vendorId ∷ IDDB   -- ^Database+         → String -- ^Vendor name+         → Maybe Int vendorId db name = MP.lookup name $ dbVendorNameId db -productName :: IDDB -- ^Database-            -> Int  -- ^Vendor identifier-            -> Int  -- ^Product identifier-            -> Maybe String-productName db vid pid = IM.lookup pid . snd =<< IM.lookup vid (dbProducts db)+productName ∷ IDDB -- ^Database+            → Int  -- ^Vendor identifier+            → Int  -- ^Product identifier+            → Maybe String+productName db vid pid = IM.lookup pid ∘ snd =<< IM.lookup vid (dbProducts db) -productId :: IDDB   -- ^Database-          -> Int    -- ^Vendor identifier-          -> String -- ^Product name-          -> Maybe Int-productId db vid name = MP.lookup name . fst =<< IM.lookup vid (dbProducts db)+productId ∷ IDDB   -- ^Database+          → Int    -- ^Vendor identifier+          → String -- ^Product name+          → Maybe Int+productId db vid name = MP.lookup name ∘ fst =<< IM.lookup vid (dbProducts db) -className :: IDDB -- ^Database-          -> Int  -- ^Class identifier-          -> Maybe String-className db cid = fmap fst . IM.lookup cid $ dbClasses db+className ∷ IDDB -- ^Database+          → Int  -- ^Class identifier+          → Maybe String+className db cid = fmap fst ∘ IM.lookup cid $ dbClasses db -subClassName :: IDDB -- ^Database-             -> Int  -- ^Class identifier-             -> Int  -- ^Sub class identifier-             -> Maybe String-subClassName db cid scid = fmap fst $   IM.lookup scid . snd+subClassName ∷ IDDB -- ^Database+             → Int  -- ^Class identifier+             → Int  -- ^Sub class identifier+             → Maybe String+subClassName db cid scid = fmap fst $   IM.lookup scid ∘ snd                                     =<< IM.lookup cid (dbClasses db) -protocolName :: IDDB -- ^Database-             -> Int  -- ^Class identifier-             -> Int  -- ^Sub class identifier-             -> Int  -- ^Protocol identifier-             -> Maybe String-protocolName db cid scid protId =   IM.lookup protId . snd-                                =<< IM.lookup scid   . snd+protocolName ∷ IDDB -- ^Database+             → Int  -- ^Class identifier+             → Int  -- ^Sub class identifier+             → Int  -- ^Protocol identifier+             → Maybe String+protocolName db cid scid protId =   IM.lookup protId ∘ snd+                                =<< IM.lookup scid   ∘ snd                                 =<< IM.lookup cid (dbClasses db) -audioClassTerminalTypeName :: IDDB -- ^Database-                           -> Int  -- ^Audio class terminal type identifier-                           -> Maybe String+audioClassTerminalTypeName ∷ IDDB -- ^Database+                           → Int  -- ^Audio class terminal type identifier+                           → Maybe String audioClassTerminalTypeName db actid = IM.lookup actid (dbAudioCTType db) -videoClassTerminalTypeName :: IDDB -- ^Database-                           -> Int  -- ^Video class terminal type identifier-                           -> Maybe String+videoClassTerminalTypeName ∷ IDDB -- ^Database+                           → Int  -- ^Video class terminal type identifier+                           → Maybe String videoClassTerminalTypeName db actid = IM.lookup actid (dbVideoCTType db) -hidDescTypeName :: IDDB -- ^Database-                -> Int  -- ^HID descriptor type identifier-                -> Maybe String+hidDescTypeName ∷ IDDB -- ^Database+                → Int  -- ^HID descriptor type identifier+                → Maybe String hidDescTypeName db hidid = IM.lookup hidid (dbHIDDescType db) -hidDescItemName :: IDDB -- ^Database-                -> Int  -- ^HID descriptor item identifier-                -> Maybe String+hidDescItemName ∷ IDDB -- ^Database+                → Int  -- ^HID descriptor item identifier+                → Maybe String hidDescItemName db hidid = IM.lookup hidid (dbHIDDescItem db) -hidDescCountryCodeName :: IDDB -- ^Database-                       -> Int  -- ^HID descriptor country code identifier-                       -> Maybe String+hidDescCountryCodeName ∷ IDDB -- ^Database+                       → Int  -- ^HID descriptor country code identifier+                       → Maybe String hidDescCountryCodeName db hidid = IM.lookup hidid (dbHIDDescCCode db) -hidUsagePageName :: IDDB -- ^Database-                 -> Int  -- ^HID usage page identifier-                 -> Maybe String+hidUsagePageName ∷ IDDB -- ^Database+                 → Int  -- ^HID usage page identifier+                 → Maybe String hidUsagePageName db upid = fmap fst $ IM.lookup upid (dbHIDUsage db) -hidUsageName :: IDDB -- ^Database-             -> Int  -- ^HID usage page identifier-             -> Int  -- ^HID usage identifier-             -> Maybe String-hidUsageName db upid uid =   IM.lookup uid . snd+hidUsageName ∷ IDDB -- ^Database+             → Int  -- ^HID usage page identifier+             → Int  -- ^HID usage identifier+             → Maybe String+hidUsageName db upid uid =   IM.lookup uid ∘ snd                          =<< IM.lookup upid (dbHIDUsage db) -physicalDescBiasName :: IDDB -- ^Database-                     -> Int  -- ^Physical descriptor bias identifier-                     -> Maybe String+physicalDescBiasName ∷ IDDB -- ^Database+                     → Int  -- ^Physical descriptor bias identifier+                     → Maybe String physicalDescBiasName db phyid = IM.lookup phyid (dbPhysDescBias db) -physicalDescItemName :: IDDB -- ^Database-                     -> Int  -- ^Physical descriptor item identifier-                     -> Maybe String+physicalDescItemName ∷ IDDB -- ^Database+                     → Int  -- ^Physical descriptor item identifier+                     → Maybe String physicalDescItemName db phyid = IM.lookup phyid (dbPhysDescItem db) -langName :: IDDB -- ^Database-         -> Int  -- ^Primary language identifier-         -> Maybe String-langName db lid = fmap fst . IM.lookup lid $ dbLanguages db+langName ∷ IDDB -- ^Database+         → Int  -- ^Primary language identifier+         → Maybe String+langName db lid = fmap fst ∘ IM.lookup lid $ dbLanguages db -subLangName :: IDDB -- ^Database-            -> Int  -- ^Primary language identifier-            -> Int  -- ^Sub language identifier-            -> Maybe String-subLangName db lid slid =   IM.lookup slid . snd+subLangName ∷ IDDB -- ^Database+            → Int  -- ^Primary language identifier+            → Int  -- ^Sub language identifier+            → Maybe String+subLangName db lid slid =   IM.lookup slid ∘ snd                         =<< IM.lookup lid (dbLanguages db)
System/USB/IDDB/LinuxUsbIdRepo.hs view
@@ -1,63 +1,92 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE UnicodeSyntax #-}+ {-| Functions to acquire a database from <http://linux-usb.org>. -}  module System.USB.IDDB.LinuxUsbIdRepo-    ( parseDb+    ( -- * Parsing+      parseDb+      -- * Acquiring a database     , staticDb     , fromFile     , dbURL     ) where ++-------------------------------------------------------------------------------+-- Imports+-------------------------------------------------------------------------------++-- base import Control.Arrow        ( second )-import Control.Monad        ( fmap )-import Data.Char            ( isSpace )-import Data.List            ( lines, unlines, isPrefixOf )-import Data.Maybe           ( fromJust )+import Control.Monad        ( (>>=), (>>), fail, fmap, return )+import Data.Bool            ( Bool, not )+import Data.Char            ( String, isSpace )+import Data.Function        ( ($), id )+import Data.Int             ( Int )+import Data.List            ( all, filter, map, isPrefixOf, lines, unlines )+import Data.Maybe           ( Maybe, fromJust )+import Data.Tuple           ( fst ) import Numeric              ( readHex )+import Prelude              ( Num, error, fromInteger )+import System.IO            ( IO, FilePath, readFile )++-- base-unicode-symbols+import Prelude.Unicode      ( (∘), (∧) )++-- containers+import qualified Data.IntMap as IM+import qualified Data.Map    as MP++-- parsimony import Parsimony import Parsimony.Char       ( char, string, hexDigit, tab )-import System.IO            ( FilePath, readFile )++-- usb-id-database import System.USB.IDDB.Base import System.USB.IDDB.Misc ( eitherMaybe, swap, restOfLine ) -import qualified Data.IntMap as IM-import qualified Data.Map    as MP +-------------------------------------------------------------------------------+-- Parsing+-------------------------------------------------------------------------------+ -- |Construct a database from a string in the format used by -- <http://linux-usb.org>.-parseDb :: String -> Maybe IDDB-parseDb = eitherMaybe . parse dbParser . stripBoring+parseDb ∷ String → Maybe IDDB+parseDb = eitherMaybe ∘ parse dbParser ∘ stripBoring  -- |Remove comments and empty lines.-stripBoring :: String -> String+stripBoring ∷ String → String stripBoring = unlines-            . filter (\xs -> not (isComment xs) && not (isEmpty xs))-            . lines+            ∘ filter (\xs → not (isComment xs) ∧ not (isEmpty xs))+            ∘ lines -isComment :: String -> Bool+isComment ∷ String → Bool isComment = isPrefixOf "#" -isEmpty :: String -> Bool+isEmpty ∷ String → Bool isEmpty = all isSpace -dbParser :: Parser String IDDB-dbParser = do (vendorNameId, vendorIdName, productDB) <- vendorSection-              classDB <- genericSection (label "C") 2 id-                         . genericSection tab 2 id-                           . genericSection (count 2 tab) 2 fst+dbParser ∷ Parser String IDDB+dbParser = do (vendorNameId, vendorIdName, productDB) ← vendorSection+              classDB ← genericSection (label "C") 2 id+                         ∘ genericSection tab 2 id+                           ∘ genericSection (count 2 tab) 2 fst                              $ return ()-              at      <- simpleSection "AT" 4-              hid     <- simpleSection "HID" 2-              r       <- simpleSection "R" 2-              bias    <- simpleSection "BIAS" 1-              phy     <- simpleSection "PHY" 2-              hut     <- genericSection (label "HUT") 2 id-                         . genericSection tab 3 fst+              at      ← simpleSection "AT" 4+              hid     ← simpleSection "HID" 2+              r       ← simpleSection "R" 2+              bias    ← simpleSection "BIAS" 1+              phy     ← simpleSection "PHY" 2+              hut     ← genericSection (label "HUT") 2 id+                         ∘ genericSection tab 3 fst                            $ return ()-              l       <- genericSection (label "L") 4 id-                         . genericSection tab 2 fst+              l       ← genericSection (label "L") 4 id+                         ∘ genericSection tab 2 fst                            $ return ()-              hcc     <- simpleSection "HCC" 2-              vt      <- simpleSection "VT" 4+              hcc     ← simpleSection "HCC" 2+              vt      ← simpleSection "VT" 4                return IDDB { dbVendorNameId = vendorNameId                           , dbVendorIdName = vendorIdName@@ -74,58 +103,58 @@                           , dbLanguages    = l                           }     where-      hexId :: Num n => Int -> Parser String n-      hexId d = do ds <- count d hexDigit+      hexId ∷ Num n ⇒ Int → Parser String n+      hexId d = do ds ← count d hexDigit                    case readHex ds of-                     [(n, _)]  -> return n-                     _         -> error "impossible"+                     [(n, _)]  → return n+                     _         → error "impossible" -      label :: String -> Parser String ()+      label ∷ String → Parser String ()       label n = string n >> char ' ' >> return ()        -- Top level section without subsections.-      simpleSection :: String -> Int -> Parser String (IM.IntMap String)+      simpleSection ∷ String → Int → Parser String (IM.IntMap String)       simpleSection sym idSize = genericSection (string sym >> char ' ')                                                 idSize fst $ return () -      genericSection :: (Parser String p)-                     -> Int-                     -> ((String, s) -> r)-                     -> Parser String s-                     -> Parser String (IM.IntMap r)+      genericSection ∷ (Parser String p)+                     → Int+                     → ((String, s) → r)+                     → Parser String s+                     → Parser String (IM.IntMap r)       genericSection prefix idSize convert =-          fmap (IM.fromList . map (second convert))-          . many . try . genericItem prefix idSize+          fmap (IM.fromList ∘ map (second convert))+          ∘ many ∘ try ∘ genericItem prefix idSize -      genericItem :: (Parser String p)-                  -> Int-                  -> Parser String s-                  -> Parser String (Int, (String, s))+      genericItem ∷ (Parser String p)+                  → Int+                  → Parser String s+                  → Parser String (Int, (String, s))       genericItem prefix idSize sub = do-          _        <- prefix-          itemId   <- hexId idSize-          _        <- count 2 $ char ' '-          itemName <- restOfLine-          s        <- sub+          _        ← prefix+          itemId   ← hexId idSize+          _        ← count 2 $ char ' '+          itemName ← restOfLine+          s        ← sub           return (itemId, (itemName, s)) -      vendorSection :: Parser String ( MP.Map String Int+      vendorSection ∷ Parser String ( MP.Map String Int                                      , IM.IntMap String                                      , IM.IntMap ProductDB                                      )       vendorSection = do-        xs <- many (try (vendorParser <?> "vendor"))-        return ( MP.fromList [(name, vid) | (vid, name, _)   <- xs]-               , IM.fromList [(vid, name) | (vid, name, _)   <- xs]-               , IM.fromList [(vid, pdb)  | (vid, _,    pdb) <- xs]+        xs ← many (try (vendorParser <?> "vendor"))+        return ( MP.fromList [(name, vid) | (vid, name, _)   ← xs]+               , IM.fromList [(vid, name) | (vid, name, _)   ← xs]+               , IM.fromList [(vid, pdb)  | (vid, _,    pdb) ← xs]                ) -      vendorParser :: Parser String (Int, String, ProductDB)+      vendorParser ∷ Parser String (Int, String, ProductDB)       vendorParser = do-        vid      <- hexId 4-        _        <- count 2 $ char ' '-        name     <- restOfLine-        products <- many (productParser <?> "product")+        vid      ← hexId 4+        _        ← count 2 $ char ' '+        name     ← restOfLine+        products ← many (productParser <?> "product")         return ( vid                , name                , ( MP.fromList $ fmap swap products@@ -133,29 +162,34 @@                  )                ) -      productParser :: Parser String (Int, String)-      productParser = do _    <- tab-                         pid  <- hexId 4-                         _    <- count 2 $ char ' '-                         name <- restOfLine+      productParser ∷ Parser String (Int, String)+      productParser = do _    ← tab+                         pid  ← hexId 4+                         _    ← count 2 $ char ' '+                         name ← restOfLine                          return (pid, name) ++-------------------------------------------------------------------------------+-- Acquiring a database+-------------------------------------------------------------------------------+ -- |Load a database from file. If the file can not be read for some reason an -- error will be thrown.-fromFile :: FilePath -> IO (Maybe IDDB)-fromFile = fmap parseDb . readFile+fromFile ∷ FilePath → IO (Maybe IDDB)+fromFile = fmap parseDb ∘ readFile  -- |Load a database from a snapshot of the linux-usb.org database which is---  supplied with the package.-staticDb :: IO IDDB-staticDb = getDataFileName staticDbPath >>= fmap fromJust . fromFile+-- supplied with the package.+staticDb ∷ IO IDDB+staticDb = getDataFileName staticDbPath >>= fmap fromJust ∘ fromFile     where-      staticDbPath :: FilePath+      staticDbPath ∷ FilePath       staticDbPath = "usb_id_repo_db.txt"  -- |<http://linux-usb.org/usb.ids> -- -- The source of the database. Download this file for the most up-to-date -- version.-dbURL :: String+dbURL ∷ String dbURL = "http://linux-usb.org/usb.ids"
System/USB/IDDB/Misc.hs view
@@ -1,19 +1,30 @@+{-# LANGUAGE UnicodeSyntax #-}+{-# LANGUAGE NoImplicitPrelude #-}+ module System.USB.IDDB.Misc     ( eitherMaybe     , swap     , restOfLine     ) where +-- base+import Data.Char     ( String )+import Data.Either   ( Either, either )+import Data.Function ( ($), const, flip )+import Data.Maybe    ( Maybe(..) )+import Data.Tuple    ( uncurry )++-- parsimony import Parsimony        (Parser, manyTill) import Parsimony.Char   (anyChar, newline)  -eitherMaybe :: Either e a -> Maybe a+eitherMaybe ∷ Either r α → Maybe α eitherMaybe = either (const Nothing) Just -swap :: (a, b) -> (b, a)+swap ∷ (α, β) → (β, α) swap = uncurry $ flip (,) -restOfLine :: Parser String String+restOfLine ∷ Parser String String restOfLine = manyTill anyChar newline 
System/USB/IDDB/UsbDotOrg.hs view
@@ -1,71 +1,104 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE UnicodeSyntax #-}+ {-| Functions to acquire a database from <http://www.usb.org>. -}  module System.USB.IDDB.UsbDotOrg-    ( parseDb+    ( -- * Parsing+      parseDb+      -- * Acquiring a database     , staticDb     , fromFile     , dbURL     ) where -import Control.Monad        ( fmap )-import Data.Maybe           ( fromJust )++-------------------------------------------------------------------------------+-- Imports+-------------------------------------------------------------------------------++-- base+import Control.Monad        ( (>>=), (>>), fail, fmap, return )+import Data.Char            ( String )+import Data.Function        ( ($) )+import Data.Int             ( Int )+import Data.Maybe           ( Maybe, fromJust )+import System.IO            ( IO, FilePath, readFile )+import Text.Read            ( read )++-- base-unicode-symbols+import Prelude.Unicode      ( (∘) )++-- containers+import qualified Data.IntMap as IM ( fromList )+import qualified Data.Map    as MP ( fromList )++-- containers-unicode-symbols+import qualified Data.IntMap.Unicode as IM ( (∅) )++-- parsimony import Parsimony import Parsimony.Char       ( char, digit )-import System.IO            ( FilePath, readFile )-import System.USB.IDDB.Base ( IDDB(..)-                            , getDataFileName-                            )++-- usb-id-database+import System.USB.IDDB.Base ( IDDB(..), getDataFileName ) import System.USB.IDDB.Misc ( eitherMaybe, swap, restOfLine ) -import qualified Data.IntMap as IM ( fromList, empty )-import qualified Data.Map    as MP ( fromList ) +-------------------------------------------------------------------------------+-- Parsing+-------------------------------------------------------------------------------  -- |Construct a database from a string in the format used by usb.org.-parseDb :: String -> Maybe IDDB-parseDb = eitherMaybe . parse staticDbParser+parseDb ∷ String → Maybe IDDB+parseDb = eitherMaybe ∘ parse staticDbParser -staticDbParser :: Parser String IDDB+staticDbParser ∷ Parser String IDDB staticDbParser = do-  vendors <- many vendorParser+  vendors ← many vendorParser   return IDDB { dbVendorNameId = MP.fromList $ fmap swap vendors               , dbVendorIdName = IM.fromList vendors-              , dbProducts     = IM.empty-              , dbClasses      = IM.empty-              , dbAudioCTType  = IM.empty-              , dbVideoCTType  = IM.empty-              , dbHIDDescType  = IM.empty-              , dbHIDDescItem  = IM.empty-              , dbHIDDescCCode = IM.empty-              , dbHIDUsage     = IM.empty-              , dbPhysDescBias = IM.empty-              , dbPhysDescItem = IM.empty-              , dbLanguages    = IM.empty+              , dbProducts     = (IM.∅)+              , dbClasses      = (IM.∅)+              , dbAudioCTType  = (IM.∅)+              , dbVideoCTType  = (IM.∅)+              , dbHIDDescType  = (IM.∅)+              , dbHIDDescItem  = (IM.∅)+              , dbHIDDescCCode = (IM.∅)+              , dbHIDUsage     = (IM.∅)+              , dbPhysDescBias = (IM.∅)+              , dbPhysDescItem = (IM.∅)+              , dbLanguages    = (IM.∅)               }     where-      vendorParser :: Parser String (Int, String)-      vendorParser = do vid  <- many1 digit+      vendorParser ∷ Parser String (Int, String)+      vendorParser = do vid  ← many1 digit                         char '|'-                        name <- restOfLine+                        name ← restOfLine                         return (read vid, name) ++-------------------------------------------------------------------------------+-- Acquiring a database+-------------------------------------------------------------------------------+ -- |Load a vendor database from file. If the file can not be read for --  some reason an error will be thrown.-fromFile :: FilePath -> IO (Maybe IDDB)-fromFile = fmap parseDb . readFile+fromFile ∷ FilePath → IO (Maybe IDDB)+fromFile = fmap parseDb ∘ readFile -staticDbPath :: FilePath+staticDbPath ∷ FilePath staticDbPath = "usb_dot_org_db.txt"  -- |Load a database from a snapshot of the usb.org database which is --  supplied with the package.-staticDb :: IO IDDB-staticDb = getDataFileName staticDbPath >>= fmap fromJust . fromFile+staticDb ∷ IO IDDB+staticDb = getDataFileName staticDbPath >>= fmap fromJust ∘ fromFile  -- |<http://www.usb.org/developers/tools/comp_dump> -- -- The source of the database. Download this file for the most up-to-date -- version.-dbURL :: String+dbURL ∷ String dbURL = "http://www.usb.org/developers/tools/comp_dump" 
usb-id-database.cabal view
@@ -1,5 +1,5 @@ name:          usb-id-database-version:       0.4+version:       0.4.0.1 cabal-version: >=1.6 build-type:    Simple stability:     provisional@@ -27,11 +27,17 @@   description: Enable profiling for the example program   default:     False +source-repository head+  type:     darcs+  location: http://code.haskell.org/~roelvandijk/code/usb-id-database+ library-  build-depends: base        >= 3 && < 4.2-               , bytestring  == 0.9.*-               , containers  == 0.2.*-               , parsimony   >= 1 && < 1.1+  build-depends: base                       >= 3.0.3.1 && < 4.3+               , base-unicode-symbols       == 0.1.*+               , bytestring                 == 0.9.*+               , containers                 <  0.4+               , containers-unicode-symbols == 0.1.*+               , parsimony                  >= 1 && < 1.1   ghc-options: -Wall   cpp-options: -DBUILD_WITH_CABAL   exposed-modules: System.USB.IDDB
usb_dot_org_db.txt view
@@ -8,11 +8,12 @@ 1027|Future Technology Devices International Limited 1032|Quanta Computer Inc. 1033|NEC Corporation-1034|Kodak Co.+1034|Eastman Kodak Company 1035|Weltrend Semiconductor 1037|VIA Technologies, Inc. 1038|MCCI 1041|BUFFALO INC.+1044|Giga-Byte Technology Co., Ltd. 1046|Nuvoton Technology Corp. 1054|Creative Labs 1057|Nokia Corporation@@ -35,12 +36,11 @@ 1131|American Megatrends 1133|Logitech Inc. 1134|Behavior Tech Computer Corporation-1137|Philips Consumer Lifestyle BV+1140|Sanyo Electric Co. Ltd. 1146|Semtech Corporation 1149|Kensington 1150|LSI Corporation 1151|Plantronics, Inc.-1154|Kyocera Corporation 1155|STMicroelectronics 1161|Foxconn / Hon Hai 1165|ITE Tech Inc.@@ -78,7 +78,6 @@ 1281|Fujikura/DDK 1287|Hosiden Corporation 1293|Belkin Corporation-1300|FCI Electronics 1302|Longwell Electronics/Longwell Company 1305|Star Micronics Co., LTD 1309|American Power Conversion@@ -88,7 +87,6 @@ 1321|Aladdin Knowledge Systems 1324|Canon Development Americas 1329|Wacom Technology Corp.-1335|Inventec Corporation 1343|Synopsys, Inc. 1356|Sony Corporation 1360|Fuji Xerox Co., Ltd.@@ -105,6 +103,7 @@ 1412|RATOC System Inc. 1423|Alcor Micro, Corp. 1424|OMRON Corporation+1439|LaCie 1449|OmniVision Technologies, Inc. 1452|Apple 1453|Y.C. Cable U.S.A., Inc@@ -154,6 +153,7 @@ 1683|Hagiwara Sys-Com Co., Ltd. 1689|Tektronix, Inc. 1699|Saitek PLC+1700|Xiamen Doowell Electron Co., Ltd. 1709|Greatland Electronics Taiwan Ltd. 1710|Testronic Labs 1720|Pixela Corporation@@ -169,6 +169,7 @@ 1816|Imation Corp. 1846|Lorom Industrial Co., Ltd. 1892|Cyber Power Systems, Inc.+1894|Jess-Link Products Co., Ltd. (JPC) 1899|OMNIKEY 1911|Comda Enterprise Corporation 1913|Fairchild Semiconductor@@ -180,7 +181,7 @@ 1975|TIME Interconnect Ltd. 1988|Datafab Systems Inc. 1994|AVerMedia Technologies, Inc.-1996|Carry Computer Eng., Co., Ltd.+1996|Carry Technology Co., Ltd. 1999|Casio Computer Co., Ltd. 2001|D-Link Corp. 2010|Arasan Chip Systems Inc.@@ -189,7 +190,6 @@ 2039|Century Corporation 2041|Dotop Technology, Inc. 2058|Evermuch Technology Co., Ltd.-2096|Palm Inc. 2101|Action Star Enterprise Co., Ltd. 2112|Argosy Research Inc. 2159|MEC IMEX INC/HPT@@ -201,7 +201,6 @@ 2247|TAI TWUN ENTERPRISE CO., LTD. 2276|Pioneer Corporation 2278|Gemalto SA-2297|Wipro Technologies 2310|FARADAY Technology Corp. 2313|Audio-Technica Corp. 2316|Silicon Motion, Inc. - Taiwan@@ -216,8 +215,11 @@ 2390|BSquare Corporation 2391|Agilent Technologies, Inc. 2395|Medialogic Corporation+2397|Polycom, Inc.+2436|Apricorn 2438|Panasonic Electric Works Co., Ltd. 2468|Contech Research, Inc.+2472|Lin Shiung Enterprise Co., Ltd. 2475|Japan Cash Machine Co., Ltd. 2497|ARRIS International 2498|NISCA Corporation@@ -236,6 +238,7 @@ 2636|COMPUTEX Co., Ltd. 2640|Mimaki Engineering Co., Ltd. 2652|Broadcom Corp.+2667|Green House Co., Ltd. 2685|Intertek NSTL 2689|CHESEN ELECTRONICS CORP. 2702|Japan Aviation Electronics Industry Ltd. (JAE)@@ -253,16 +256,17 @@ 2856|Kenwood Corporation 2876|Olivetti S.p.A 2894|Musical Electronics Ltd.+2900|Sinbon Electronics Co., Ltd.+2903|Hanwang Technology Co. Ltd. 2922|Maxim Integrated Products 2965|ASIX Electronics Corporation 2967|O2 Micro, Inc. 2996|HTC Corporation 3010|Seagate Technology LLC-3034|Realtek Semiconductor Corp. 3035|Ericsson AB 3044|Elka International Ltd.+3046|Wonderful Photoelectricity (DongGuan), Co., Ltd. 3054|LTK International Limited-3064|Fujitsu Technology Solutions GmbH 3078|Hasbro, Inc. 3100|Hang Zhou Silan Microelectronics Co. Ltd 3108|Taiyo Yuden Co., Ltd.@@ -293,14 +297,13 @@ 3409|Volex (Asia) Pte Ltd 3413|ASKA Technologies Inc. 3425|MEILU ELECTRONICS (SHENZHEN) CO., LTD.-3426|Darfon Electronics Corp. 3452|Taiwan Line Tek Electronic Co., Ltd. 3463|Dolby Laboratories Inc. 3468|C-MEDIA ELECTRONICS INC. 3471|Pitney Bowes 3484|Chee Chen Hi-Technology Co., Ltd. 3495|IOGEAR, Inc.-3524|Macpower & Tytech Technology Co., LTD.+3524|Macpower & Tytech Technology Co., LTD 3525|SDK Co, Ltd. 3537|Contek Electronics Co., Ltd. 3540|Custom Engineering SPA@@ -324,12 +327,14 @@ 3779|AXELL CO., LTD. 3782|InnoVISION Multimedia Limited 3797|ChronoLogic Pty. Ltd.+3812|Sunrich Technology (H.K.) Ltd. 3848|CSL Wire & Plug (Shen Zhen) Company 38672|Moschip Semiconductor Technology 3868|Funai Electric Co., Ltd. 3886|Good Man Corporation 3890|YFC-BonEagle Electric Co., Ltd. 3896|Nien-Yi Industrial Corp.+3916|WORLDWIDE CABLE OPTO CORP. 3922|WING KEI ELECTRICAL CO., LTD. 3923|Taiyo Cable (Dongguan) Co. Ltd. 3924|Kawai Musical Instruments Mfg. Co., Ltd.@@ -342,7 +347,9 @@ 4026|SAN SHING ELECTRONICS CO., LTD.. 4027|Bitwise Systems, Inc. 4046|Sony Ericsson Mobile Communications AB+4069|Suntecc Inc. 4087|CHI SHING COMPUTER ACCESSORIES CO., LTD.+4100|LG Electronics Inc. 4134|Newly Corporation 4168|Targus Group International 4172|AMCO TEC International Inc.@@ -357,10 +364,10 @@ 4238|Lotes Co., Ltd. 4266|Cables To Go 4270|Princeton Technology Corp.+4280|DIBCOM 4292|Silicon Laboratories, Inc. 4301|Kycon Inc. 4310|Actions Semiconductor Co., Ltd.-4362|Moxa Inc. 4370|YM ELECTRIC CO., LTD. 4371|Medion AG 4381|Centon Electronics@@ -387,11 +394,10 @@ 4779|Honey Bee Electronic International Ltd. 4792|Zhejiang Xinya Electronic Technology Co., Ltd. 4818|LINE TECH INDUSTRIAL CO., LTD.-4823|Better Holdings (HK) Limited 4907|Konica Minolta Holdings, Inc. 4936|Katsuragawa Electric Co., Ltd. 4989|Pericom Semiconductor Corp.-5054|Ricoh Printing Systems, Ltd.+5014|Silicon Storage Technology, Inc. 5066|JyeTai Precision Industrial Co., Ltd. 5071|Wisair Ltd. 5073|A-Max Technology Macao Commercial Offshore Co. Ltd.@@ -410,13 +416,12 @@ 5169|Pertech Resources, Inc. 5173|Wistron NeWeb Corp. 5174|Denali Software, Inc.-5206|Extending Wire & Cable Co., Ltd.+5180|Altek Corporation 5217|Staccato Communications 5242|Formosa21 Inc. 5246|UPEK Inc. 5247|Hama GmbH & Co., KG 5255|DSP Group, Ltd.-5262|EVATRONIX SA 5271|Panstrong Company Ltd. 5293|CTK Corporation 5295|ATP Electronics Inc.@@ -441,11 +446,11 @@ 5546|Gearway Electronics (Dong Guan) Co., Ltd. 5577|D-Box Technologies 5589|Coulomb Electronics Ltd.+5596|Hynix Semiconductor Inc. 5600|Seong Ji Industrial Co., Ltd. 5612|Belcarra Technologies Corp. 5645|Samtec 5650|Soft DB Inc.-5679|WiQuest Communications, Inc. 5694|HongLin Electronics Co., Ltd. 5728|Creatix Polymedia GmbH 5753|Total Phase@@ -455,37 +460,34 @@ 5804|Dongguan ChingLung Wire & Cable Co., Ltd. 5836|silex technology, Inc. 5843|Frontline Test Equipment, Inc.-5855|King Billion Electronics Co., Ltd. 5877|Futurelogic Inc. 5942|CANON IMAGING SYSTEMS INC. 5960|MQP Electronics Ltd. 5964|ASMedia Technology Inc. 5977|LucidPort Technology, Inc.+5993|ARTEK Inc.+6001|Shenzhen Alex Connector Co., Ltd. 6002|System Level Solutions, Inc. 60186|Empia Technology, Inc.+6020|TopSeed Technology Corp. 6024|ShenZhen Litkconn Technology Co., Ltd. 6038|Printrex, Inc. 6053|Advanced Connection Technology Inc.-6078|Dongguan Yangming Precision of Plastic Metal Elec.Co.Lt 6083|SGB Group Ltd. 6095|Hip Hing Cable & Plug Mfy. Ltd. 6121|DisplayLink (UK) Ltd. 6127|Lenovo 6133|K.K. Rocky-6134|Unicomp, Inc 6193|Gwo Jinn Industries Co., Ltd.-6228|Memory Devices Ltd. 6242|Teridian Semiconductor Corp.-6257|Aveo Technology Corp.-6271|Siano Mobile Silicon Ltd. 6292|SyntheSys Research, Inc. 6296|Summit Microelectronics-6326|Mikkon Technology Limited 6357|Starline International Group Limited 6371|Fitilink Integrated Technology, Inc. 6397|FineArch Inc. 6420|Alco Digital Devices Limited 6421|Nordic Semiconductor ASA+6434|Power 7 Technologies Corp. 6448|Shenzhen Xianhe Technology Co., Ltd. 6449|Ningbo Broad Telecommunication Co., Ltd. 6473|Lab126@@ -495,6 +497,7 @@ 6537|Nuconn Technology Corp. 6541|Fairchild Imaging 6556|Richnex Microelectronics Corporation+6557|Dexxon 6607|Parrot SA 6632|Industrial Technology Research Institute 6639|Pak Heng Technology (Shenzhen) Co., Ltd.@@ -503,11 +506,9 @@ 6710|Biwin Technology Ltd. 6720|TERMINUS TECHNOLOGY INC. 6730|Silicon Image-6753|Abbott Diabetes Care 6766|Global Unichip Corp. 6767|Sagem Orga GmbH 6772|Oberthur Technologies-6777|Bayer Health Care LLC 6779|Lumberg Connect  GmbH 6795|SGS Taiwan Ltd. 6808|Leica Camera AG@@ -515,8 +516,7 @@ 6822|eFortune Technology Corp. 6830|Johnson Component & Equipments Co., Ltd. 6859|Salcomp Plc-6865|Desay Wire Co., Ltd.-6885|Jianduan Technology (Shenzhen) Co., Ltd+6865|Desan Wire Co., Ltd. 6893|High Top Precision Electronic Co., Ltd. 6894|Dongguan Chang'an Jinxia Rex Electronics Factory 6895|Octekconn Incorporation@@ -551,24 +551,22 @@ 7329|Symwave, Inc. 7347|Aces Electronic Co., Ltd. 7348|OPEX CORPORATION+7358|Texas Instruments - Stellaris 7359|FORTAT SKYMARK INDUSTRIAL COMPANY-7370|NextWave Broadband Inc. 7390|Telecommunications Technology Association (TTA) 7391|WonTen Technology Co., Ltd. 7393|Amphenol KAE-7421|Flextronics Digital Design Japan, LTD. 7432|NINGBO HENTEK DRAGON ELECTRONICS CO., LTD. 7434|Johnson Controls, Inc. The Automotive Business Unit-7456|SAMTACK INC. 7465|Horng Tong Enterprise Co., Ltd. 7490|DRAGON JOY LIMITED 7491|Montage Technology, Inc.-7493|Qisda Corporation 7496|Shenzhen XinYonghui Precise Technology Co., Ltd. 7497|SHENZHEN LINKCONN ELECTRONICS CO., LTD. 7501|Pegatron Corporation 7502|INPHI CORPORATION 7516|Fresco Logic Inc.+7517|QIXING INDUSTRIAL (HK) CO. 7520|ASLINK (H.K.) PRECISION CO., LTD. 7529|Walta Electronic Co., Ltd. 7531|The Linux Foundation@@ -600,6 +598,7 @@ 7758|Etron Technology, Inc. 7789|WAN SHIH ELECTRONIC (H.K.) CO., LTD. 7795|COMLINK ELECTRONICS CO., LTD.+7817|Vtion Information Technology (Fujian) Co., Ltd. 7843|Dragonstate Technology Co., Ltd. 7846|novero GmbH 7863|WIN WIN PRECISION INDUSTRIAL CO., LTD.@@ -608,23 +607,18 @@ 7911|EPCOS 7912|ONDA COMMUNICATION S.p.a. 7913|PC PARTNER LIMITED+7954|Photometrics 7958|Olidata SpA-7977|Analogix Semiconductor, Inc.+7968|Shenzhen Tenwei Electronics Co., Ltd. 7985|SASKEN COMMUNICATION TECH LTD. 7989|Amphenol Shouh Min Industry 7996|Chang Yang Electronics Company Ltd.-8002|ID2P TECHNOLOGIES, INC.-8003|RAPID BRIDGE LLC 8009|ITT Corporation-8022|MUT 8027|KYODO COMMUNICATIONS & ELECTRONICS INC.-8039|MICRO INNOVATIONS CORP.-8040|General Dynamics UK Limited-8062|Canon India Private Limited+8053|Innostor Co., Ltd. 8063|NOVA Sensors 8064|MagicPixel Inc. 8073|Dongguan Goldconn Electronics Co., Ltd.-8074|Morning Star Industrial Co., Ltd. 8108|DIFFON CORPORATION 8109|Cresta Technology Inc. 8110|Lumidigm, Inc.@@ -674,6 +668,7 @@ 8432|Insight Technology Incorporated 8438|EXMAN ELECTRIC 8439|SOFTHARD Technology Ltd.+8445|NOVO NORDISK A/S 8446|Elektrobit Inc. 8448|RT Systems Inc. 8457|VIA Labs, Inc.@@ -682,4 +677,23 @@ 8492|Shenzhen Linoya Electronic Co., Ltd. 8493|Dong Guan City Marubeni Electronic Co., Ltd. 8494|Amphenol AssembleTech (Xiamen) Co., Ltd.+8504|iVina, Inc.+8519|Chin-Ban Electronics (Hong Kong) Co.+8520|Visteon Sistemas Automotives Ltda.+8524|Y Soft Ltd.+8534|Weistech Technology Co., Ltd.+8535|Digital Imaging Technology+8536|TA WEI TECHNOLOGY CO., LTD.+8550|JVC KENWOOD Holdings, Inc.+8551|Zhejiang Fousine Science & Technology Co., Ltd.+8552|TZYR HWEY ENTERPRISE CO., LTD.+8563|HUIZHOU HUANGJI PRECISIONS FLEX ELECTRONICAL CO., LTD.+8564|Transcend Information, Inc.+8565|Light Blue Optics, Inc.+8566|TMC/Allion Beijing Lab+8583|ESM PEEKTON+8584|CalDigit+8618|TAKASAKI KYODO COMPUTING CENTER CO., LTD.+8627|Dongguan Teconn Electronics Technology Co., Ltd.+8629|SHENZHEN JASON ELECTRONICS CO., LTD. 8888|Motorola MDS
usb_id_repo_db.txt view
@@ -9,8 +9,8 @@ #	The latest version can be obtained from #		http://www.linux-usb.org/usb.ids #-# Version: 2009.09.17-# Date:    2009-09-17 20:34:02+# Version: 2009.12.16+# Date:    2009-12-16 20:34:13 #  # Vendors, devices and interfaces. Please keep sorted.@@ -129,6 +129,7 @@ 	0312  Color Inkjet CP1700 	0314  designjet 30/130 series 	0317  LaserJet 1200+	0324  SK-2885 keyboard 	0401  ScanJet 5200c 	0404  DeskJet 830c/832c 	0405  ScanJet 3400cse@@ -324,6 +325,7 @@ 	3217  LaserJet 3050 	3302  PhotoSmart 1218 	3304  DeskJet 990c+	3312  OfficeJet J6410 	3317  LaserJet 3052 	3402  PhotoSmart 1115 	3404  DeskJet 6122@@ -337,6 +339,7 @@ 	3617  EWS 2605 	3711  PSC 2500 	3717  EWS UPD+	3724  Webcam 	3802  PhotoSmart 100 	3817  LaserJet P2015 series 	3902  PhotoSmart 130@@ -433,6 +436,7 @@ 	6a11  PhotoSmart C6200 series 	6a17  LaserJet 4240 	6b02  PhotoSmart R707 (PTP mode)+	6b11  Photosmart C4500 series 	6c17  Color LaserJet 4610 	6f17  Color LaserJet CP6015 series 	7004  DeskJet 3320c@@ -494,6 +498,7 @@ 	a004  DeskJet 5850c 	b002  PhotoSmart 7200 series 	b102  PhotoSmart 7200 series+	b116  Webcam 	b202  PhotoSmart 7600 series 	b302  PhotoSmart 7600 series 	b402  PhotoSmart 7700 series@@ -549,6 +554,7 @@ 03fd  Xilinx, Inc. 03fe  Farallon Comunications 0400  National Semiconductor Corp.+	05dc  Rigol Technologies DS1000USB Oscilloscope 	0807  Bluetooth Dongle 	080a  Bluetooth Device 	1000  Mustek BearPaw 1200 Scanner@@ -556,6 +562,7 @@ 	1237  Hub 	a000  Smart Display Reference Device 	c35b  Printing Support+	c55d  Rigol Technologies DS5000USB Oscilloscope 0401  National Registry, Inc. 0402  ALi Corp. 	5462  M5462 IDE Controller@@ -578,6 +585,7 @@ 	6008  Serial Converter 	6009  Serial Converter 	6010  FT2232C Dual USB-UART/FIFO IC+	6011  FT4232H 	8040  4 Port Hub 	8070  7 Port Hub 	8370  7 Port Hub@@ -830,6 +838,7 @@ 040b  Weltrend Semiconductor 	6510  Weltrend Bar Code Reader 	6520  XBOX Xploder+	6533  Speed-Link Competition Pro 040c  VTech Computers, Ltd 040d  VIA Technologies, Inc. 	3184  VNT VT6656 USB-802.11 Wireless LAN Adapter@@ -870,7 +879,12 @@ 	00d8  WLI-U2-SG54HP 	00d9  WLI-U2-G54HP 	00da  WLI-U2-KG54L 802.11bg+	00e8  Buffalo WLI-UC-G300N Wireless LAN Adapter+	012e  Buffalo WLI-UC-AG300N Wireless LAN Adapter+	0148  Buffalo WLI-UC-G300HP Wireless LAN Adapter+	0150  Buffalo WLP-UC-AG300 Wireless LAN Adapter 	0157  Buffalo External Hard Drive HD-PEU2+	015d  Buffalo WLI-UC-GN Wireless LAN Adapter 0412  Award Software International 0413  Leadtek Research, Inc. 	1310  WinFast TV - NTSC + FM@@ -1072,6 +1086,9 @@ 	0024  5610 XpressMusic (Storage mode) 	0025  5610 XpressMusic (PC Suite mode) 	0028  5610 XpressMusic (Imaging mode)+	002d  6120 Phone (Mass storage mode)+	002e  6120 Phone (Media-Player mode)+	002f  6120 Phone (PC-Suite mode) 	0042  E51 (PC Suite mode) 	006d  N95 (Storage mode) 	006e  N95 (Multimedia mode)@@ -1144,6 +1161,7 @@ 	04f9  6300 (PC Suite mode) 	0508  E65 (PC Suite mode) 	0600  Digital Pen SU-1B+	0610  CS-15 (Internet Stick 3G modem) 	0800  Connectivity Cable DKU-5 	0801  Data Cable DKU-6 	0802  CA-42 Phone Parent@@ -1172,7 +1190,10 @@ 	223a  8-in-1 Card Reader 	2503  USB 2.0 Hub 	2504  USB 2.0 Hub+	2512  USB 2.0 Hub+	2514  USB 2.0 Hub 	2524  USB MultiSwitch Hub+	2602  USB 2.0 Hub 0425  Motorola Semiconductors HK, Ltd 	0101  G-Tech Wireless Mouse & Keyboard 	f102  G-Tech U+P Wireless Mouse@@ -1506,6 +1527,7 @@ 	2020  ColorPage-Slim 1200 USB2 	2021  ColorPage-SF600 	301d  Genius MaxFire MiniPad+	400f  Genius TVGo DVB-T02Q MCE 	6001  GF3000F Ethernet Adapter 	7004  VideoCAM Express V2 	7006  Dsc 1.3 Smart Camera Device@@ -1519,6 +1541,7 @@ 	701c  G-Shot G512 Still Camera 	7020  Sim 321C 	7025  Eye 311Q Camera Device+	7029  Genius Look 320s (SN9C201 + HV7131R) 	702f  Genius Slim 322 	7045  Genius Look 1320 V2 	704c  Genius i-Look 1321@@ -1840,6 +1863,7 @@ 	0005  XX33 SmartCard Reader Keyboard 	0010  SmartBoard XX44 	0011  G83 (RS 6000) Keyboard+	0021  CyMotion Expert Combo 	0023  CyMotion Master Linux Keyboard 	0027  CyMotion Master Solar Keyboard 	002a  Wireless Mouse & Keyboard@@ -1949,6 +1973,7 @@ 	09a1  QuickCam Communicate MP/S5500 	09a2  QuickCam Communicate Deluxe/S7500 	09a4  QuickCam E 3500+	09a5  Quickcam 3000 For Business 	09a6  QuickCam Vision Pro 	09b0  Acer OrbiCam 	09b2  Fujitsu Webcam@@ -2063,6 +2088,7 @@ 	c312  DeLuxe 250 Keyboard 	c315  Classic New Touch Keyboard 	c316  HID-Compliant Keyboard+	c317  Wave Corded Keyboard 	c318  Illuminated Keyboard 	c401  TrackMan Marble Wheel 	c402  Marble Mouse (2-button)@@ -2199,7 +2225,7 @@ 	203f  TSU9200 Remote Control 	2046  TSU9800 Remote Control 	205e  TSU9300 Remote Control-	262c  SPC230NC WebCam+	262c  SPC230NC Webcam 	485d  Senselock SenseIV v2.x 0472  Chicony Electronics Co., Ltd 	0065  PFU-65 Keyboard@@ -2430,6 +2456,7 @@ 	1032  DGX-305 	1033  DGX-505 	103c  MOTIF-RACK ES+	1054  S90XS Keyboard/Music Synthesizer 	2000  DGP-7 	2001  DGP-5 	3001  YST-MS55D USB Speaker@@ -2683,6 +2710,7 @@ 	10a9  iP6600D 	10b6  PIXMA iP4300 Printer 	10c2  PIXMA iP1800 Printer+	10c4  Pixma iP4500 Printer 	1404  W6400PG 	1405  W8400PG 	150f  BIJ2350 PCL@@ -2947,12 +2975,14 @@ 	3117  PowerShot A700 	312d  Elura 100 	3138  PowerShot A710 IS+	3147  EOS 1Ds Mark III 	3155  PowerShot A450 	315a  PowerShot G9 	315d  PowerShot A720 	3176  PowerShot A590 	317a  Powershot A470 	3184  Digital IXUS 80 IS (PTP mode)+	31bc  PowerShot D10 	31ff  Digital IXUS 55 04aa  DaeWoo Telecom, Ltd 04ab  Chromatic Research@@ -3127,6 +3157,7 @@ 	012c  Perfection V350 (GT-F700) 	012d  Perfection V10/V100 (GT-S600/F650) 	012f  Perfection V350 (GT-F700)+	0130  Perfection V500 (GT-X770) 	0202  Receipt Printer M129C 	0401  CP 800 Digital Camera 	0402  PhotoPC 850z@@ -3242,6 +3273,10 @@ 	0937  WN-WAG/USL Wireless LAN Adapter 	0938  WN-G54/USL Wireless LAN Adapter 	093f  WNGDNUS2 802.11n+	0944  WHG-AGDN/US Wireless LAN Adapter+	0945  WN-GDN/US3 Wireless LAN Adapter+	0947  WN-G150U Wireless LAN Adapter+	0948  WN-G300U Wireless LAN Adapter 	0a03  Serial USB-RSAQ1 	0a07  USB2-iCN Adapter 	0a08  USB2-iCN Adapter@@ -3768,6 +3803,7 @@ 	b028  VGA UVC Webcam 	b029  1.3M UVC Webcam 	b071  2.0M UVC Webcam / CNF7129+	b091  Webcam 	b107  CNF7070 Webcam 04f3  Elan Microelectronics Corp. 	0210  AM-400 Hama Optical Mouse@@ -3967,6 +4003,7 @@ 	2004  PT-2300/2310 p-Touch Laber Printer 	2015  QL-500 P-touch label printer 	2016  QL-550 P-touch label printer+	201a  PT-18R P-touch label printer 	2100  Card Reader Writer 04fa  Dallas Semiconductor 	2490  DS1490F 2-in-1 Fob, 1-Wire adapter@@ -4044,7 +4081,7 @@ 	0012  F8T012 Bluetooth Adapter 	0013  F8T013 Bluetooth Adapter 	0017  B8T017 Bluetooth+EDR 2.1-	0050  F5D6050 802.11b Wireless Adapter+	0050  Atmel at76c503a [F5D6050 802.11b Wireless Adapter v2000] 	0081  F8T001v2 Bluetooth 	0083  Bluetooth Device 	0084  F8T003v2 Bluetooth@@ -4084,12 +4121,17 @@ 	3201  F1DF102U/F1DG102U Flip KVM 	4050  ZD1211B 	5055  F5D5055-	6051  802.11b-	7050  F5D7050 ver 1000 WiFi+	6051  802.11b Wireless Network Adapter+	7050  F5D7050 Wireless G Adapter v1000/v2000 	7051  F5D7051 54g USB Network Adapter-	705a  F5D7050A Wireless Adapter+	705a  Ralink RT2573 [F5D7050 Wireless G Adapter v3000] 	705b  Wireless G Adapter-	705c  802.11bg+	705c  Zydas ZD1211B [F5D7050 Wireless G Adapter v4000]+	705e  Realtek RTL8187B [F5D7050 Wireless G Adapter v5000]+	8053  Ralink RT2870 [F5D8053 N Wireless USB Adapter v1000/v4000]+	805e  Realtek RTL8192U [F5D8053 N Wireless USB Adapter v5000]+	815c  Ralink RT2870 [F5D8053 N Wireless USB Adapter v3000]+	815f  Realtek RTL8192SU [F5D8053 N Wireless USB Adapter v6000] 	905b  F5D9050 ver 3 Wireless Adapter 	905c  Wireless G Plus MIMO Network Adapter 050e  Neon Technology, Inc.@@ -4202,7 +4244,7 @@ 0537  Inventec Corp. 0538  Caldera International, Inc. (SCO) 0539  Shyh Shiun Terminals Co., Ltd-053a  Preh Werke GmbH & Co. KG+053a  PrehKeyTec GmbH 053b  Global Village Communication 053c  Institut of Microelectronic & Mechatronic Systems 053d  Silicon Architect@@ -4304,6 +4346,7 @@ 	0056  MG Memory Stick Reader/Writer 	0058  Clie PEG-N7x0C PalmOS PDA Mass Storage 	0066  Clie PEG-N7x0C/PEG-T425 PalmOS PDA Serial+	0067  CMR-PC3 Webcam 	0069  Memorystick MSC-U03 Reader 	006d  Clie PEG-T425 PDA Mass Storage 	006f  Network Walkman (EV)@@ -4731,10 +4774,12 @@ 	4602  Eumex 400 (WinXP/2000) 	4701  AVM FRITZ!Box Fon ata 	5401  Eumex 300 IP-	5601  AVM FRITZ!WLAN Stick-	6201  WLAN USB v1.1-	62ff  WLAN USB v1.1 [no firmware]-	8401  FRITZ!WLAN Stick N+	5601  AVM Fritz!WLAN USB+	6201  AVM Fritz!WLAN USB v1.1+	62ff  AVM Fritz!WLAN USB (in CD-ROM-mode)+	8401  AVM Fritz!WLAN USB N+	8402  AVM Fritz!WLAN USB N 2.4+	84ff  AVM Fritz!WLAN USB N (in CD-ROM-mode) 057d  Shark Multimedia, Inc. 057e  Nintendo Co., Ltd 	0306  Wii Remote Controller RVL-003@@ -4863,6 +4908,7 @@ 	000e  Digital Camera 	000f  Digital Camera 0586  ZyXEL Communications Corp.+	0025  802.11b/g/n USB Wireless Network Adapter 	0102  omni.net II ISDN TA 	1000  Omni NET Modem / ISDN TA 	1500  Omni 56K Plus@@ -4871,7 +4917,7 @@ 	3309  ADSL Modem Prestige 600 series 	330a  ADSL Modem Interface 	330e  USB Broadband ADSL Modem Rev 1.10-	3400  802.11b+	3400  ZyAIR B-220 IEEE 802.11b Adapter 	3401  ZyAIR G-220 802.11bg 	3402  ZyAIR G-220F 802.11bg 	3407  G-200 v2 802.11bg@@ -4883,6 +4929,7 @@ 	3413  ZyAIR AG-225H v2 802.11bg 	3415  G-210H 802.11g Wireless Adapter 	3416  NWD-210N 802.11b/g/n-draft wireless adapter+	341a  NWD-270N Wireless N-lite USB Adapter 0587  America Kotobuki Electronics Industries, Inc. 0588  Sapien Design 0589  Victron@@ -4917,6 +4964,7 @@ 	5492  Hub 	6232  Hi-Speed 16-in-1 Flash Card Reader/Writer 	6254  USB Hub+	6331  SD/MMC/MS Card Reader 	6335  SD/MMC Card Reader 	6360  Multimedia Card Reader 	6361  Multimedia Card Reader@@ -5039,6 +5087,7 @@ 	1550  VEHO Filmscanner 	2640  OV2640 Webcam 	2643  Monitor Webcam+	264b  Monitor Webcam 	2800  SuperCAM 	4519  Webcam Classic 	7670  OV7670 Webcam@@ -5107,21 +5156,26 @@ 	1209  iPod Video 	120a  iPod Nano 	1240  iPod Nano 2.Gen (DFU mode)+	1255  iPod Nano 4.Gen (DFU mode) 	1260  iPod Nano 2.Gen 	1261  iPod Classic 	1262  iPod Nano 3.Gen+	1263  iPod Nano 4.Gen+	1265  iPod Nano 5.Gen 	1290  iPhone 	1291  iPod Touch 1.Gen 	1292  iPhone 3G+	1293  iPod Touch 2.Gen 	1294  iPhone 3GS 	1300  iPod Shuffle 	1301  iPod Shuffle 2.Gen 	8202  HCF V.90 Data/Fax Modem 	8203  Bluetooth HCI-	8204  Bluetooth HCI [Bluetooth 2.0 + EDR, build-in]+	8204  Bluetooth HCI [Bluetooth 2.0 + EDR, built-in] 	8205  Bluetooth HCI 	8206  Bluetooth HCI-	8240  IR Receiver [build-in]+	8240  IR Receiver [built-in]+	8242  IR Receiver [built-in] 	8300  Built-in iSight (no firmware loaded) 	8501  Built-in iSight [Micron] 	8502  Built-in iSight@@ -5474,7 +5528,7 @@ 	0604  USB 1.1 Hub 	0605  USB 2.0 Hub [ednet] 	0606  USB 2.0 Hub / D-Link DUB-H4 USB 2.0 Hub-	0608  USB-2.0 4-Port HUB+	0608  USB-2.0 4-Port HUB [Hama] 	0660  USB 2.0 Hub 	0700  SIIG US2256 CompactFlash Card Reader 	0701  USB 2.0 IDE Adapter@@ -5494,6 +5548,7 @@ 	0711  Card Reader 	0712  Delkin Mass Storage Device 	0715  USB 2.0 microSD Reader+	0723  USB 2.0 SD/MMC/MS Flash Card Reader 	0760  USB 2.0 Card Reader/Writer 	0761  Genesys Mass Storage Device 	0780  USBFS DFU Adapter@@ -5995,6 +6050,7 @@ 	000a  SDCard/MMC Reader/Writer 0694  Lego Group 	0001  Mindstorms Tower+	0002  Mindstorms NXT 0698  Chuntex (CTX) 	1786  1300ex Monitor 	2003  CTX M730V built in Camera@@ -6034,6 +6090,7 @@ 	0010  Tornado Speakerphone FaxModem 56.0 	0011  Tornado Speakerphone FaxModem 56.0 	1000  ADT VvBus for CopperJet+	1004  CopperJet 821 RouterPlus 06a2  Topro Technology, Inc. 	0033  USB Mouse 06a3  Saitek PLC@@ -6081,6 +6138,7 @@ 	803f  X36 Flight Controller 	806f  P2000 Tilt Pad 	80c0  Pro Gamer Command Unit+	80c1  Cyborg Command Pad Unit 	a502  Gaming Mouse 	ff04  R440 Force Wheel 	ff0c  Cyborg Force Rumble Pad@@ -6446,6 +6504,7 @@ 	0300  BAY-3U1S1P Parallel Port 	0302  Parallel Port 	0900  SVGA Adapter+	5001  Trigger UV-002BD[Startech USBVGAE] 0713  Interval Research Corp. 0714  NewMotion, Inc. 	0003  ADB to USB convertor@@ -6672,6 +6731,7 @@ 076e  Kuan Tech Enterprise Co., Ltd 076f  Jhen Vei Electronic Co., Ltd 0770  Welch Allyn, Inc - Medical Division+0771  Observator Instruments BV 0774  AmTRAN Technology Co., Ltd 0775  Longshine Electronics Corp. 0776  Inalways Corp.@@ -6715,7 +6775,7 @@ 	5150  SDCZ2 Cruzer Mini Flash Drive (thin) 	5151  Cruzer Micro Flash Drive 	5153  Cruzer Flash Drive-	5406  Cruzer Micro 1/2/4GB Flash Drive+	5406  Cruzer Micro U3 	5408  Cruzer Titanium U3 	6100  Ultra II SD Plus 2GB 	7100  Cruzer Mini@@ -6739,6 +6799,8 @@ 	7431  Sansa M200v4 (msc) 	7432  Sansa Clip (mtp) 	7433  Sansa Clip (msc)+	7434  Sansa Clip V2 (mtp)+	7435  Sansa Clip V2 (msc) 	7450  Sansa C250 	7451  Sansa C240 	7460  Sansa Express@@ -6788,6 +6850,9 @@ 	0064  LDR-R Device 	00b3  DVD Multi-plus unit LDR-H443U2 	010c  Realtek RTL8187 Wireless 802.11g 54Mbps Network Adapter+	0162  LAN-WN22/U2 Wireless LAN Adapter+	0163  LAN-WN12/U2 Wireless LAN Adapter+	0164  LAN-W150/U2M Wireless LAN Adapter 078b  Happ Controls, Inc. 	0010  Driving UGCI 	0020  Flying UGCI@@ -6846,12 +6911,15 @@ 	0017  FEther USB2-TX 	001a  ULUSB-11 Key 	002f  CG-WLUSB2GNL+	003c  CG-WLUSB2GNL+	003f  CG-WLUSB300AGN 	7613  Stick-11 V2 802.11b Adapter 	9601  FEther USB-TXC 07ab  Freecom Technologies 	fc01  IDE bridge 	fc02  Cable II USB-2 	fc03  USB2-IDE IDE bridge+	fcd6  Freecom HD Classic 	fcf8  Freecom Classic SL Network Drive 07af  Microtech 	0004  SCSI-DB25 SCSI Bridge [shuttle]@@ -6933,6 +7001,11 @@ 	1201  IEEE 802.11b Adapter 	200c  XX2 	2573  Wireless LAN Card+	2770  802.11n/b/g Mini Wireless LAN USB2.0 Adapter+	2870  802.11n/b/g Wireless LAN USB2.0 Adapter+	3070  802.11n/b/g Mini Wireless LAN USB2.0 Adapter+	3071  802.11n/b/g Mini Wireless LAN USB2.0 Adapter+	3072  802.11n/b/g Mini Wireless LAN USB2.0 Adapter 	4000  DU-E10 Ethernet [klsi] 	4002  DU-E100 Ethernet [pegasus] 	4003  1/10/100 Ethernet Adapter@@ -7143,7 +7216,15 @@ 	3c05  EH103 Wireless G Adapter 	3c07  Wireless G DWA-110 Adapter 	3c09  DWA-140 802.11n Adapter [ralink rt2870]+	3c0a  DWA-140 RangeBooster N USB Adapter(rev.B2)+	3c0b  DWA-110 Wireless G USB Adapter(rev.B)+	3c0d  DWA-125 Wireless 150 USB Adapter+	3c0e  WUA-2340 USB Adapter(rev.B)+	3c0f  AirPlus G DWL-G122 Wireless Adapter(rev.E) 	3c10  DWA 160A 802.11n+	3c11  DWA-160 Xtreme N Dual Band USB Adapter(rev.B)+	3c13  DWA-130 Wireless N USB Adapter(rev.B)+	3c15  DWA-140 Wireless N USB Adapter(rev.B3) 	5100  Remote NDIS Device 	f101  DBT-122 Bluetooth 	fc01  DBT-120 Bluetooth Adapter@@ -7318,7 +7399,11 @@ 	5501  Wireless Adapter 11g 	6500  Cable Modem 	6618  802.11n Wireless Adapter-	7522  802.11N Wireless Adapter+	7511  Arcadyan 802.11N Wireless Adapter+	7512  Arcadyan 802.11N Wireless Adapter+	7522  Arcadyan 802.11N Wireless Adapter+	8522  Arcadyan 802.11N Wireless Adapter+	a512  Arcadyan 802.11N Wireless Adapter 	a618  SMC EZ Connect N Draft 11n Wireless Adapter 	b004  CPWUE001 USB/Ethernet Adapter 	b522  EZ Connect N Draft 11n Wireless USB2.0 Adapter@@ -7326,6 +7411,7 @@ 	c003  802.11b Wireless Adapter 	c501  Zoom Wireless-G 	c561  802.11a/g Wireless Adapter+	d522  Speedport W 102 Stick IEEE 802.11n USB 2.0 Adapter 	e501  ZD1211B 	e506  WUS-201 802.11bg 	f501  802.11g Wireless Adapter@@ -7348,15 +7434,17 @@ 	4210  WG121(v2) 54 Mbps Wireless [Intersil Prism GT] 	4220  WG111(v1) 54 Mbps Wireless [Intersil Prism54 Intersil 3886] 	4230  MA111(v2) 802.11b Wireless [SIS SIS 162]-	4240  WG111v2 54 Mbps Wireless [RealTek RTL8187L]+	4240  WG111(v1) rev 2 54 Mbps Wireless [Intersil Prism54 Intersil 3886] 	4260  WG111v3 54 Mbps Wireless [realtek RTL8187B] 	4300  WG111U Double 108 Mbps Wireless [Atheros AR5004X / AR5005UX] 	4301  WG111U (no firmware) Double 108 Mbps Wireless [Atheros AR5004X / AR5005UX] 	6a00  WG111v2 54 Mbps Wireless [RealTek RTL8187L] 	7100  WN121T RangeMax Next Wireless-N [Marvell TopDog] 	9000  WN111(v1) RangeMax Next Wireless [Marvell TopDog]-	9001  WN111 v2 802.11n-	9010  WNDA3100 802.11n+	9001  WN111(v2) RangeMax Next Wireless [Atheros AR9001U-(2)NG]+	9010  WNDA3100(v1) 802.11n [Atheros AR9001U-(2)NG]+	9011  WNDA3100(v2) 802.11n+	9040  WNA1000 Wireless-N 150 [Atheros AR9001U-(2)NG] 	a001  PA101 10 Mbps HPNA Home Phoneline RJ-1 084d  Minton Optic Industry Co., Inc. 	0001  Jenoptik JD800i@@ -7478,8 +7566,12 @@ 0887  Hannstar Electronics Corp. 088b  MassWorks, Inc. 	4944  MassWorks ID-75 TouchScreen+088c  Swecoin AB+	2030  Ticket Printer TTP 2030 0892  DioGraphy, Inc. 	0101  Smartdio Reader/Writer+0897  Lauterbach+	0002  Power Debug/Power Debug II 089c  United Technologies Research Cntr. 089d  Icron Technologies Corp. 089e  NST Co., Ltd@@ -7735,6 +7827,8 @@ 	0001  Hard Drive Adapter (TPP) 	0002  SigmaDrive Adapter (TPP) 0906  Faraday Technology Corp.+0908  ShenZhen SANZHAI Technology Co.,Ltd+	2701  Spy Pen VGA 0909  Audio-Technica Corp. 090a  Trumpion Microelectronics, Inc. 	1001  T33520 Flash Card Controller@@ -7792,6 +7886,7 @@ 	0004  iQue 3600 	0200  Data Card Programmer (install) 	1200  Data Card Programmer+	21a5  etrex Cx (msc) 	2295  Colorado 300 	2353  Nüvi 205T 0920  Echelon Co.@@ -7904,7 +7999,7 @@ 	0300  VideoAdvantage 	0302  Syntek DC-112X 	0320  VideoAdvantage-	1100  Video Enhamcement Device+	1100  DC-1100 Video Enhamcement Device 	1112  Veo Web Camera 	a311  Video Enhancement Device 0933  Quantum Corp.@@ -7928,7 +8023,7 @@ 	2608  PAC7311 Trust WB-3300p 	260e  PAC7311 Gigaware VGA PC Camera:Trust WB-3350p:SIGMA cam 2350 	260f  PAC7311 SnakeCam-	2621  PAC731x Trust WebCam+	2621  PAC731x Trust Webcam 	2624  Webcam 093b  Plextor Corp. 	0010  Storage Adapter@@ -7993,6 +8088,7 @@ 096e  Feitian Technologies, Inc. 	0802  ePass2000 (G&D STARCOS SPK 2.4) 0971  Gretag-Macbeth AG+	2005  Huey 0973  Schlumberger 	0001  e-gate Smart Card 0974  Datagraphix, a business unit of Anacomp@@ -8278,10 +8374,14 @@ 	2123  Bluetooth dongle 	2130  2045 Bluetooth 2.0 USB-UHE Device with trace filter 	2131  2045 Bluetooth 2.0 Device with trace filter+	2145  Bluetooth with Enhanced Data Rate II 	2150  BCM2046 Bluetooth Device 	4500  BCM2046B1 USB 2.0 Hub (part of BCM2046 Bluetooth) 	4502  Keyboard (Boot Interface Subclass) 	5800  BCM5880 Secure Applications Processor+	5801  BCM5880 Secure Applications Processor with fingerprint swipe sensor+	5802  BCM5880 Secure Applications Processor with fingerprint touch sensor+	5803  BCM5880 Secure Applications Processor with secure keyboard 	6300  Pirelli Remote NDIS Device 0a5d  Diatrend Corp. 0a5f  Zebra@@ -8441,7 +8541,7 @@ 	0401  ID TECH Spectrum III Hybrid Smartcard Reader 0ace  ZyDAS 	1201  802.11b-	1211  802.11bg+	1211  ZEW 2501 802.11bg Wireless Adapter 	1215  WLA-54L 802.11bg 	1221  ZD1221 802.11n 	1602  ZyXEL Omni FaxModem 56K@@ -8520,14 +8620,20 @@ 	1726  Laptop OLED Display 	172a  ASUS 802.11n Network Adapter 	172b  802.11n Network Adapter-	1731  ASUS 802.11n Network Adapter+	1731  802.11n Network Adapter 	1732  802.11n Network Adapter 	1734  ASUS AF-200 	173c  BT-183 Bluetooth 2.0 	1742  802.11n Network Adapter+	1751  BT-253 Bluetooth Adapter+	1760  802.11n Network Adapter+	1761  802.11n Network Adapter+	1784  802.11n Network Adapter 	6101  Cable Modem 	620a  Remote NDIS Device 	b700  Broadcom Bluetooth 2.1+0b0b  Datamax-O'Neil+	106e  Datamax E-4304 0b0c  Todos Data System AB 	0009  Todos Argos Mini II Smart Card Reader 0b0d  ProjectLab@@ -8897,7 +9003,7 @@ 	0108  Mass Storage Device 	0111  Card Reader 	0113  Mass Storage Device-	0115  Mass Storage Device+	0115  Mass Storage Device (Multicard Reader) 	0116  Mass Storage Device 	0117  Mass Storage Device 	0118  Mass Storage Device@@ -9110,6 +9216,7 @@ 	624c  PC Camera (SN9C201 + MI1320) 	624e  PC Camera (SN9C201 + SOI968) 	624f  PC Camera (SN9C201 + OV9650)+	6251  PC Camera (SN9C201 + OV9650) 	6253  PC Camera (SN9C201 + OV9650) 	6260  PC Camera (SN9C201 + OV7670ISP) 	6262  PC Camera (SN9C201 + OM6802)@@ -9129,7 +9236,7 @@ 	628f  PC Camera with Microphone (SN9C202 + OV9650) 	62a0  PC Camera with Microphone (SN9C202 + OV7670ISP) 	62a2  PC Camera with Microphone (SN9C202 + OM6802)-	62b0  PC Camera with Microphone (SN9C201 + MI0360/MT9V011 or MI0360SOC/MT9V111)+	62b0  PC Camera with Microphone (SN9C202 + MI0360/MT9V011 or MI0360SOC/MT9V111) 	62b3  PC Camera with Microphone (SN9C202 + OV9655) 	62ba  PC Camera with Microphone (SN9C202 + S5K53BEB) 	62bb  PC Camera with Microphone (SN9C202 + OV7660)@@ -9137,7 +9244,9 @@ 	62be  PC Camera with Microphone (SN9C202 + OV7663) 	62c0  Sonix USB 2.0 Camera 	62e0  MSI Starcam Racer+	6310  Sonix USB 2.0 Camera 	63e0  Sonix Integrated Webcam+	63f1  Integrated Webcam 	63f8  Sonix Integrated Webcam 	8000  DC31VC 	8006  Dual Mode Camera (8006 VGA)@@ -9282,6 +9391,7 @@ 	004f  Cinergy Analog XS 	005c  Cinergy T² 	0069  Cinergy T XE DVB-T Receiver+	0077  Aureon Dual USB 0cd4  Bang Olufsen 	0101  BeolinkPC2 0cd5  LabJack Corporation@@ -9312,12 +9422,14 @@ 	0020  Wi-Fi Wireless LAN Adapter 	0022  802.11b/g/n Wireless Network Adapter 	0023  UB81 802.11bgn+	0025  802.11b/g/n USB Wireless Network Adapter 	0026  UB82 802.11abgn 0ce9  pico Technology 	1001  PicoScope3204 0cf1  e-Conn Electronic Co., Ltd 0cf2  ENE Technology, Inc. 	6220  SD Card Reader (SG361)+	6225  SD card reader (UB6225) 0cf3  Atheros Communications, Inc. 	0001  AR5523 	0002  AR5523 (no firmware)@@ -9326,6 +9438,7 @@ 	0005  AR5523 	0006  AR5523 (no firmware) 	1001  TG121N+	3000  AR3011 	9170  AR9170 802.11n 0cf4  Fomtex Corp. 0cf5  Cellink Co., Ltd@@ -9474,6 +9587,7 @@ 	1400  Attache 256MB USB 2.0 Flash Drive 	1420  PS2044 Pen Drive 	1470  Vosonic X's-Drive II+ VP2160+	1620  USB Disk Pro 	1900  USB Thumb Drive 0d7e  American Computer & Digital Components 	2507  Hi-Speed USB-to-IDE Bridge Controller@@ -9592,7 +9706,7 @@ 	5515  MP3 Player 	5516  MP3 Player 	5581  Mega Sky 5580 DVB-T Tuner-	6823  802.11b+	6823  UB11B/MS-6823 802.11b Wi-Fi adapter 	6826  IEEE 802.11g Wireless Network Adapter 	6855  Bluetooth Device 	6861  MSI-6861 802.11g WiFi adapter@@ -9704,18 +9818,34 @@ 	0007  Bluetooth 2.0 Adapter 10m 	000b  Bluetooth 2.0 Adapter DFU 	000d  WL-168 Wireless Network Adapter 54g-	0017  WL-182+	0017  WL-182 Wireless-N Network USB Card 	0019  Bluetooth 2.0 adapter 10m CN-512v2 001-	001a  Bluetooth 2.0 adapter 100m CN-521v2 001-	061c  LN-028+	001a  Bluetooth 2.0 adapter 100m CN-521v2 001 +	002b  WL-188 Wireless Network 300N USB Adapter+	002c  WL-301 Wireless Network 300N USB Adapter+	002d  WL-302 Wireless Network 300N USB dongle +	0039  WL-315 Wireless-N USB Adapter+	003b  WL-321 Wireless USB Gaming Adapter 300N+	003c  WL-323 Wireless-N USB Adapter+	003d  WL-324 Wireless USB Adapter 300N+	003e  WL-343 Wireless USB Adapter 150N X1+	003f  WL-608 Wireless USB Adapter 54g+	0040  WL-344 Wireless USB Adapter 300N X2+	0041  WL-329 Wireless Dualband USB adapter 300N+	0042  WL-345 Wireless USB adapter 300N X3+	0047  WL-352v1 Wireless USB Adapter 300N 002+	0048  WL-349v1 Wireless USB Adapter 150N 002+	004a  WL-358v1 Wireless Micro USB Adapter 300N X3 002+	004b  WL-360 Wireless Micro USB Adapter X3+	061c  LN-028 Network USB 2.0 Adapter 	21f4  44 St Bluetooth Device 	2200  Sitecom bluetooth2.0 class 2 dongle CN-512 	2208  Sitecom bluetooth2.0 class 2 dongle CN-520 	2209  Sitecom bluetooth2.0 class 1 dongle CN-521-	9071  802.11bg-	9075  802.11bg-	90ac  WL-172-	9712  WL-113 rev 2+	9071  WL-113 rev 1 Wireless Network USB Adapter+	9075  WL-117 Hi-Speed USB Adapter+	90ac  WL-172 Wireless Network USB Adapter 54g Turbo+	9712  WL-113 rev 2 Wireless Network USB Adapter 0df7  Mobile Action Technology, Inc. 	0620  MA-620 Infrared Adapter 	0700  MA-700 Bluetooth Adapter@@ -9731,6 +9861,9 @@ 	0001  Touchscreen 0e03  Nippon Systemware Co., Ltd 0e08  Winbest Technology Co., Ltd+0e0b  Amigo Technology Inc.+	9031  802.11n Wireless USB Card+	9041  802.11n Wireless USB Card 0e0c  Gesytec 	0101  LonUSB LonTalk Network Adapter 0e0f  VMware, Inc.@@ -9743,6 +9876,8 @@ 0e16  JMTek, LLC 0e17  Walex Electronic, Ltd 0e1b  Crewave+0e20  Pegasus Technologies Ltd.+	0101  NoteTaker 0e21  Cowon Systems, Inc. 	0300  iAudio CW200 	0400  MP3 Player@@ -9766,9 +9901,11 @@ 	0009  Handyscope HS3 (br) 	000a  Handyscope HS4 	000b  Handyscope HS4 (br)-	000e  Handyscope HS4 Diff-	000f  Handyscope HS4 Diff (br)+	000e  Handyscope HS4-DIFF+	000f  Handyscope HS4-DIFF (br) 	0010  Handyscope HS2+	0011  TiePieSCOPE HS805 (br)+	0012  TiePieSCOPE HS805 	0018  Handyprobe HP2 	0042  TiePieSCOPE HS801 	00fd  USB To Parallel adapter@@ -9805,13 +9942,18 @@ 	6119  remote receive and control device 	6441  C-Media Sound Device 0e5d  Neltron Industrial Co., Ltd-0e66  Hawking-	0013  rt2870 [Hawking Hi-Gain Wireless-N]+0e66  Hawking Technologies+	0001  HWUN1 Hi-Gain Wireless-300N USB Adapter w/ Upgradable Antenna+	0003  HWDN1 Hi-Gain USB Wireless-300N Dish Adapter+	0009  HWUN2 Hi-Gain Wireless-150N USB Adapter w/ Upgradable Antenna+	000b  HWDN2 Hi-Gain USB Wireless-150N Dish Adapter+	0013  Hi-Gain Wireless-N USB [rt2870] 	400b  UF100 10/100 Network Adapter 	400c  UF100 Ethernet [pegasus2] 0e67  Fossil, Inc. 	0002  Wrist PDA 0e6a  Megawin Technology Co., Ltd+	0101  MA100 [USB-UART Bridge IC] 0e70  Tokyo Electronic Industry Co., Ltd 0e72  Hsi-Chin Electronics Co., Ltd 0e75  TVS Electronics, Ltd@@ -9974,6 +10116,22 @@ 0f61  Varian, Inc. 0f62  Acrox Technologies Co., Ltd 	1001  Targus Mini Trackball Optical Mouse+0f63  LeapFrog Enterprises+	0500  Fly Fusion+	0600  Leap Port Turbo+	0700  POGO+	0800  Didj+	0900  TAGSchool+	0a00  Leapster 2+	0b00  Crammer+	0c00  Tag Jr+	0d00  My Pal Scout+	0e00  Tag32+	0f00  Tag64+	1000  Kiwi16+	1100  Leapster L2x+	1111  Fly Fusion+	1300  Didj UK/France (Leapster Advance) 0f68  Kobe Steel, Ltd 0f69  Dionex Corp. 0f6a  Vibren Technologies, Inc.@@ -10027,10 +10185,12 @@ 0fca  Research In Motion, Ltd. 	0001  Blackberry Handheld 0fce  Sony Ericsson Mobile Communications AB+	00af  V640i Phone [PTP Camera] 	00d4  C902 [MTP] 	00d9  C702 Phone 	1010  WMC Modem-	10d4  C902 [PictBridge]+	10af  V640i Phone [PictBridge]+	10d4  C902 Phone [PictBridge] 	d008  V800-Vodafone 802SE WMC Modem 	d016  K750i Phone 	d017  K608i Phone@@ -10040,9 +10200,11 @@ 	d041  K510i Phone 	d042  W810i Phone 	d046  K610i Phone-	d0d4  C902 [Modem]+	d0af  V640i Phone+	d0d4  C902 Phone [Modem] 	e042  W810i Phone-	e0d4  C902 [Mass Storage]+	e0af  V640i Phone [Mass Storage]+	e0d4  C902 Phone [Mass Storage]  0fcf  Dynastream Innovations, Inc. 0fd0  Tulip Computers B.V. 0fd1  Giant Electronics Ltd.@@ -10103,6 +10265,8 @@ 	3342  Cayman 3352 DSL Modem 	3382  3380 Series Network Interface 	6072  DSL Modem+	9031  Motorola 802.11n Dualband USB Wireless Adapter+	9032  Motorola 802.11n 5G USB Wireless Adapter 	cb01  Cayman 3341 Ethernet DSL Router 1010  Fukuda Denshi Co., Ltd 1011  Mobile Media Tech.@@ -10155,12 +10319,14 @@ 	8002  GN-BR402W 	8003  GN-WLBM101 	8004  GN-WLBZ101 802.11b Adapter-	8005  802.11b+	8005  GN-WLBZ201 802.11b Adapter 	8006  GN-WBZB-M 802.11b Adapter 	8007  GN-WBKG 	8008  GN-WB01GS 	800a  GN-WI05GS 	800b  GN-WB30N 802.11n WLAN Card+	800c  GN-WB31N 802.11n USB WLAN Card+	800d  GN-WB32L 802.11n USB WLAN Card 1046  Winbond Electronics Corp. [hex] 	8901  Bluetooth Device 	9967  W9967CF/W9968CF Webcam IC@@ -10189,6 +10355,7 @@ 	0400  External HDD 	0500  hub 	0702  Passport External HDD+	0900  MyBook Essential External HDD 	0901  MyBook External HDD 	1001  External Hard Disk 1059  Giesecke & Devrient GmbH@@ -10368,6 +10535,8 @@ 10e1  CablePlus, Ltd 10e2  Nada Electronics, Ltd 10ec  Vast Technologies, Inc.+10f0  Nexio Co., Ltd+	2002  iNexio Touchscreen controller 10f5  Turtle Beach 	0200  Audio Advantage Roadie 10fb  Pictos Technologies, Inc.@@ -10504,6 +10673,7 @@ 	6854  AirCard 885 Device 	6870  MC8780 Device 	6871  MC8781 Device+	6893  MC8777 Device 119a  ZHAN QI Technology Co., Ltd 119b  ruwido austria GmbH 	0400  Infrared Keyboard V2.01@@ -10558,6 +10728,8 @@ 125c  Apogee Inc. 	0010  Alta series CCD 125f  A-DATA Technology Co., Ltd.+1260  Standard Microsystems Corp.+	ee22  Intersil ISL3887 [EZ-Connect 802.11g Adapter v3] 1264  Covidien Energy-based Devices 1266  Pirelli Broadband Solutions 	6302  Fastweb DRG A226M ADSL Router@@ -10576,8 +10748,23 @@ 1275  Xaxero Marine Software Engineering, Ltd. 	0002  WeatherFax 2000 Demodulator 	0080  SkyEye Weather Satellite Receiver+1283  zebris Medical GmbH+	0100  USB-RS232 Adaptor+	0110  CMS20+	0111  CMS 10+	0112  CMS 05+	0114  ARCUS digma PC-Interface+	0115  SAM Axioquick recorder+	0116  SAM Axioquick recorder+	0120  emed-X+	0121  emed-AT+	0130  PDM+	0150  CMS10GI (Golf) 1286  Marvell Semiconductor, Inc. 	8001  BLOB boot loader firmware+1291  Qualcomm Flarion Technologies, Inc. / Leadtek Research, Inc.+	0010  FDM 2xxx Flash-OFDM modem+	0011  LR7F06/LR7F14 Flash-OFDM modem 1292  Innomedia 	0258  Creative Labs VoIP Blaster 1293  Belkin Components [hex]@@ -10587,6 +10774,7 @@ 129b  CyberTAN Technology 	1666  TG54USB 802.11bg 	1667  802.11bg+	1828  Gigaset USB Adapter 300 12a7  Trendchip Technologies Corp. 12ab  Honey Bee Electronic International Ltd. 12ba  Licensed by Sony Computer Entertainment America@@ -10598,7 +10786,10 @@ 	1001  E620 USB Modem 	1003  E220 HSDPA Modem / E270 HSDPA/HSUPA Modem 	1009  U120+	140b  EC1260 Wireless Data Modem HSD USB Card+	1446  E1552 (HSPA modem) 12d2  LINE TECH INDUSTRIAL CO., LTD.+12d6  EMS Dr. Thomas Wuensche 12d7  BETTER WIRE FACTORY CO., LTD. 12e6  Waldorf Music GmbH 	0013  Blofeld@@ -10737,6 +10928,9 @@ 	3243  DTV-DVB UDXTTM6010 - A/D Driver(Without HID) 	3244  DTV-DVB UDTT 7047Z-USB 2.0 DVB-T Driver 	3247  802.11 n/g/b Wireless LAN Adapter+	3262  802.11 n/g/b Wireless LAN USB Adapter+	3273  802.11 n/g/b Wireless LAN USB Mini-Card+	3284  Wireless LAN USB Mini-Card 	7020  DTV-DVB UDST7020BDA DVB-S Box(DVBS for MCE2005) 	7022  DTV-DVB UDST7022BDA DVB-S Box(Without HID) 13dc  ALEREON, INC.@@ -10762,9 +10956,15 @@ 	1110  Merlin S620 	1120  Merlin EX720 	1130  Merlin S720-	1400  Merlin U740+	1400  Merlin U730/U740 (Vodafone)+	1410  Merlin U740 (non-Vodafone)+	1430  Merlin XU870+	1450  Merlin X950D 	2110  Ovation U720/MCD3000+	2410  Expedite EU740+	2420  Expedite EU850D/EU860D/EU870D 	4100  U727+	4400  Ovation MC930D/MC950D 1415  Nam Tai E&E Products Ltd. or OmniVision Technologies, Inc. 	0000  Sony SingStar USBMIC 	0020  Sony Wireless SingStar@@ -10772,6 +10972,8 @@ 1419  ABILITY ENTERPRISE CO., LTD. 1429  Vega Technologies Industrial (Austria) Co. 142a  Thales E-Transactions+	0003  Artema Hybrid+	0005  Artema Modular 	0043  medCompact 1430  RedOctane 	4734  Guitar Hero4 hub@@ -10811,6 +11013,7 @@ 	e015  eHome Infrared Receiver 	e016  eHome Infrared Receiver 147e  Upek+	1000  Biometric Touchchip/Touchstrip Fingerprint Sensor 	2016  Biometric Touchchip/Touchstrip Fingerprint Sensor 147f  Hama GmbH & Co., KG 1484  Elsa AG [hex]@@ -10826,6 +11029,8 @@ 	2570  802.11g WiFi 	2573  RT2501USB Wireless Adapter 	2671  RT2601USB Wireless Adapter+	2870  RT2870 Wireless Adapter+	3070  RT2870 Wireless Adapter 	9020  RT2500USB Wireless Adapter 	9021  RT2501USB Wireless Adapter 1497  Panstrong Company Ltd.@@ -10856,6 +11061,8 @@ 	6900  Card Reader 14d8  JAMER INDUSTRIES CO., LTD. 14dd  Raritan Computer, Inc.+14e1  Dialogue Technology Corp.+	5000  PenMount 5000 Touch Controller 14e5  SAIN Information & Communications Co., Ltd. 14ea  Planex Communications 	ab10  GW-US54GZ@@ -10930,6 +11137,10 @@ 	9015  AF9015 DVB-T USB2.0 stick 	9016  AF9015 DVB-T USB2.0 stick 15a8  Teams Power Limited+15a9  Gemtek+	0004  WUBR177G+	0006  Wireless 11n USB Adapter+	0010  802.11n USB Wireless Card 15aa  Gearway Electronics (Dong Guan) Co., Ltd. 15ba  Olimex Ltd. 	0003  OpenOCD JTAG@@ -10946,6 +11157,7 @@ 	00c3  Mini Optical Mouse 15d5  Coulomb Electronics Ltd. 15d9  Unknown+	0a33  Optical Mouse 	0a37  Mouse 15dc  Hynix Semiconductor Inc. 15e0  Seong Ji Industrial Co., Ltd.@@ -11104,6 +11316,9 @@ 	0103  mvBlueFOX camera 1657  Struck Innovative Systeme GmbH 	3150  SIS3150 USB2.0 to VME interface+165b  Frontier Design Group+	8101  Tranzport Control Surface+	fad1  Alphatrack Control Surface 1660  Creatix Polymedia GmbH 1668  Actiontec Electronics, Inc. [hex] 	0009  Gateway@@ -11181,6 +11396,8 @@ 	7811  AR5523 	7812  AR5523 (no firmware) 16ac  Dongguan ChingLung Wire & Cable Co., Ltd.+16b5  Persentec, Inc.+	0002  Otto driving companion 16c0  VOTI 	03e8  free for internal lab use 1000 	03e9  free for internal lab use 1001@@ -11227,11 +11444,23 @@ 1736  CANON IMAGING SYSTEM TECHNOLOGIES INC. 1737  Linksys 	0039  USB1000+	0070  WUSB100 RangePlus Wireless USB Adapter+	0071  WUSB600N Dual-Band Wireless-N USB Network Adapter+	0078  WUSB100 RangePlus Wireless USB Network Adapter ver. 2+	0079  WUSB600N Wireless-N USB Network Adapter with Dual-Band ver. 2 1740  Senao+	0605  LevelOne WUA-0605 N_Max Wireless USB Adapter+	0615  LevelOne WUA-0615 N_Max Wireless USB Adapter 	2000  NUB-8301 802.11bg+	9701  EnGenius 802.11n Wireless USB Adapter+	9702  EnGenius 802.11n Wireless USB Adapter+	9703  EnGenius 802.11n Wireless USB Adapter+	9705  EnGenius 802.11n Wireless USB Adapter+	9706  EnGenius 802.11n Wireless USB Adapter 1743  General Atomics 174c  ASMedia Technology Inc. 174f  Syntek+	1403  Integrated Webcam 	5212  USB 2.0 UVC PC Camera 	5a11  PC Camera 	5a31  Sonix USB 2.0 Camera@@ -11255,6 +11484,7 @@ 	0313  LW313 802.11n Adapter [ralink rt2770 + rt2720] 1781  Multiple Vendors 	083e  MetaGeek Wi-Spy+	083f  MetaGeek Wi-Spy 2.4x 	0938  Iguanaworks USB IR Transceiver 1782  Spreadtrum Communications Inc. 1784  TopSeed Technology Corp.@@ -11263,6 +11493,13 @@ 1797  JALCO CO., LTD. 17a0  Samson Technologies Corp. 	0001  C01U condenser microphone+	0002  Q1U dynamic microphone+	0100  C03U multi-pattern microphone+	0101  UB1 boundary microphone+	0200  StudioDock monitors (internal hub)+	0201  StudioDock monitors (audio)+	0301  Q2U handheld microphone with XLR+	0302  GoMic compact condenser microphone 17a4  Concept2 	0001  Performance Monitor 3 	0002  Performance Monitor 4@@ -11294,24 +11531,33 @@ 	3202  VisionDTV USB-Ter/HAMA USB DVB-T device warm 1831  Gwo Jinn Industries Co., Ltd. 1832  Huizhou Shenghua Industrial Co., Ltd.+183d  VIVOphone+	0010  VoiceKey 1854  Memory Devices Ltd. 185b  Compro 	d000  Compro Videomate DVB-U2000 - DVB-T USB cold 	d001  Compro Videomate DVB-U2000 - DVB-T USB warm 1861  Tech Technology Industrial Company 1862  Teridian Semiconductor Corp.+1870  Nexio Co., Ltd+	0001  iNexio Touchscreen controller 1871  Aveo Technology Corp. 1894  Topseed 	5632  Atek Tote Remote 	5641  TSAM-004 Presentation Remote 1897  Evertop Wire Cable Co.+18a5  Verbatim, Ltd+	0214  Portable Hard Drive+	0218  External Hard Drive 18b4  e3C Technologies 	1001  DUTV007 	1689  DUTV009 18b6  Mikkon Technology Limited 18b7  Zotek Electronic Co., Ltd.-18c5  AMIT+18c5  AMIT Technology, Inc. 	0002  CG-WLUSB2GO+	0008  CG-WLUSB2GNR Corega Wireless USB Adapter+	0012  CG-WLUSB10 Corega Wireless USB Adapter 18cd  Ecamm 	cafe  Pico iMage 18d5  Starline International Group Limited@@ -11332,10 +11578,10 @@ 18fd  FineArch Inc. 190d  Motorola GSG 1914  Alco Digital Devices Limited-1915  Linksys-	2233  WUSB11 v2.8 802.11b Adapter-	2234  WUSB54G 802.11g Adapter-	2236  WUSB11 v3.0 802.11b Adapter+1915  Nordic Semiconductor ASA+	2233  Linksys WUSB11 v2.8 802.11b Adapter+	2234  Linksys WUSB54G 802.11g Adapter+	2236  Linksys WUSB11 v3.0 802.11b Adapter 192f  Avago Technologies, Pte. 1930  Shenzhen Xianhe Technology Co., Ltd. 1931  Ningbo Broad Telecommunication Co., Ltd.@@ -11396,8 +11642,11 @@ 1a12  KES Co., Ltd. 1a25  Amphenol East Asia Ltd. 1a2a  Seagate Branded Solutions+1a32  Quanta Microsystems, Inc.+	0304  802.11n Wireless LAN Card 1a36  Biwin Technology Ltd. 1a40  TERMINUS TECHNOLOGY INC.+	0101  USB-2.0 4-Port HUB 1a41  Action Electronics Co., Ltd. 1a44  VASCO Data Security International 	0001  Digipass 905 SmartCard Reader@@ -11511,30 +11760,30 @@ 	0064  Pleo robotic dinosaur 1b36  ViXS Systems, Inc. 1b3b  iPassion Technology Inc.-	2933  PC Camera/WebCam controller-	2935  PC Camera/WebCam controller-	2936  PC Camera/WebCam controller-	2937  PC Camera/WebCam controller-	2938  PC Camera/WebCam controller-	2939  PC Camera/WebCam controller-	2950  PC Camera/WebCam controller-	2951  PC Camera/WebCam controller-	2952  PC Camera/WebCam controller-	2953  PC Camera/WebCam controller-	2955  PC Camera/WebCam controller-	2956  PC Camera/WebCam controller-	2957  PC Camera/WebCam controller-	2958  PC Camera/WebCam controller-	2959  PC Camera/WebCam controller-	2960  PC Camera/WebCam controller-	2961  PC Camera/WebCam controller-	2962  PC Camera/WebCam controller-	2963  PC Camera/WebCam controller-	2965  PC Camera/WebCam controller-	2966  PC Camera/WebCam controller-	2967  PC Camera/WebCam controller-	2968  PC Camera/WebCam controller-	2969  PC Camera/WebCam controller+	2933  PC Camera/Webcam controller+	2935  PC Camera/Webcam controller+	2936  PC Camera/Webcam controller+	2937  PC Camera/Webcam controller+	2938  PC Camera/Webcam controller+	2939  PC Camera/Webcam controller+	2950  PC Camera/Webcam controller+	2951  PC Camera/Webcam controller+	2952  PC Camera/Webcam controller+	2953  PC Camera/Webcam controller+	2955  PC Camera/Webcam controller+	2956  PC Camera/Webcam controller+	2957  PC Camera/Webcam controller+	2958  PC Camera/Webcam controller+	2959  PC Camera/Webcam controller+	2960  PC Camera/Webcam controller+	2961  PC Camera/Webcam controller+	2962  PC Camera/Webcam controller+	2963  PC Camera/Webcam controller+	2965  PC Camera/Webcam controller+	2966  PC Camera/Webcam controller+	2967  PC Camera/Webcam controller+	2968  PC Camera/Webcam controller+	2969  PC Camera/Webcam controller 1b3f  Generalplus Technology Inc. 1b47  Energizer Holdings, Inc. 	0001  CHUSB Duo Charger (NiMH AA/AAA USB smart charger)@@ -11543,6 +11792,8 @@ 1b5a  Chao Zhou Kai Yuan Electric Co., Ltd. 1b65  The Hong Kong Standards and Testing Centre Ltd. 1b72  ATERGI TECHNOLOGY CO., LTD.+1b75  Ovislink Corp.+	3072  AirLive WN-360USB adapter 1b76  Legend Silicon Corp. 1b80  Afatech 	c810  AF9015 BDA Device@@ -11632,6 +11883,7 @@ 1ce1  Amphenol KAE 1cfc  ANDES TECHNOLOGY CORPORATION 1cfd  Flextronics Digital Design Japan, LTD.+1d07  Solid-Motion 1d08  NINGBO HENTEK DRAGON ELECTRONICS CO., LTD. 1d09  TechFaith Wireless Technology Limited 1d0a  Johnson Controls, Inc. The Automotive Business Unit@@ -11639,6 +11891,10 @@ 1d14  ALPHA-SAT TECHNOLOGY LIMITED 1d1f  Diostech Co., Ltd. 1d20  SAMTACK INC.+1d4d  PEGATRON CORPORATION+	0002  Ralink RT2770/2720 802.11b/g/n Wireless LAN Mini-USB Device+	000c  Ralink RT3070 802.11b/g/n Wireless Lan USB Device+	000e  Ralink RT3070 802.11b/g/n Wireless Lan USB Device 1d50  OpenMoko, Inc. 1d5b  Smartronix, Inc. 1d6b  Linux Foundation@@ -11656,7 +11912,14 @@ 	2030  2030 USB Keyboard 1e68  TrekStor GmbH & Co. KG 	001b  DataStation maxi g.u+1e71  NZXT+	0001  Avatar Optical Mouse+1e74  Coby Electronics Corporation+	6511  MP705-8G MP3 player+	6512  MP705-4G 1ebb  NuCORE Technology, Inc.+1eda  AirTies Wireless Networks+	2310  802.11n USB Wireless LAN Card 1f28  Cal-Comp 2001  D-Link Corp. [hex] 	0001  DWL-120 WIRELESS ADAPTER@@ -11701,6 +11964,7 @@ 	9b00  Broadband Cable Modem Remote NDIS Device 	abc1  DSB-650 Ethernet [pegasus] 	f013  DLink 7 port USB2.0 Hub+	f103  DUB-H7 7-port USB 2.0 hub 	f10d  Accent Communications Modem 	f110  DUB-AV300 A/V Capture 	f111  DBT-122 Bluetooth adapter@@ -11713,11 +11977,15 @@ 	5303  GW-US54GXS 802.11bg 	5304  GWUS300 802.11n 	ab01  GW-US54HP+	ab24  GW-US300MiniS+	ab25  150N Wireless LAN USB Adapter 	ab50  GW-US54Mini2 	c002  GW-US54SG 	c007  GW-US54GZL 	ed02  GW-USMM 2040  Hauppauge+	2011  WinTV MiniCard [Dell Digital TV Receiver]+	2400  WinTV PVR USB2 (Model 24019) 	4700  WinTV Nova-S-USB2 	6502  WinTV HVR-900 	6503  WinTV HVR-930@@ -11727,6 +11995,7 @@ 	7070  Nova-T Stick 3 	9300  WinTV NOVA-T USB2 (cold) 	9301  WinTV NOVA-T USB2 (warm)+2047  Texas Instruments 20b1  XMOS Ltd 	10ad  XUSB Loader 	f7d1  X2TAG - USB to JTAG interface@@ -12003,10 +12272,12 @@ 	0058  Port Replicator 	1001  Keyboard Hub 	1002  Keyboard Hub+	1003  Keyboard Hub 	2001  Keyboard HID Support 	2002  SK-8125 Keyboard 	2003  Keyboard 	2005  RT7D50 Keyboard+	2011  Multimedia Pro Keyboard 	2100  SK-3106 Keyboard 	2101  SmartCard Reader Keyboard 	2105  Model L100 Keyboard@@ -12164,6 +12435,11 @@ 	0200  OrbiCam 5a57  Zinwell 	0260  RT2570+	0280  802.11a/b/g/n USB Wireless LAN Card+	0282  802.11b/g/n USB Wireless LAN Card+	0283  802.11b/g/n USB Wireless LAN Card+	0284  802.11a/b/g/n USB Wireless LAN Card+	5257  Metronic 495257 wifi 802.11ng 6189  Sitecom 	182d  USB 2.0 Ethernet 	2068  USB to serial cable (v2)@@ -12185,6 +12461,10 @@ 6a75  Shanghai Jujo Electronics Co., Ltd 7104  CME (Central Music Co.) 	2202  UF5/UF6/UF7/UF8 MIDI Master Keyboard+7392  Edimax Technology Co., Ltd+	7711  EW-7711UTn nLite Wireless USB Adapter+	7717  EW-7717UN 802.11n Wireless USB Adapter+	7718  EW-7718UN 802.11n Wireless USB Adapter 8086  Intel Corp. 	0001  AnyPoint (TM) Home Network 1.6 Mbps Wireless Adapter 	0100  Personal Audio Player 3000@@ -12204,6 +12484,7 @@ 	1110  PRO/Wireless LAN Module 	1111  PRO/Wireless 2011B 802.11b Adapter 	1134  Hollister Mobile Monitor+	1139  In-Target Probe (ITP) 	1234  Prototype Reader/Writer 	3100  PRO/DSL 3220 Modem - WAN 	3101  PRO/DSL 3220 Modem@@ -12232,6 +12513,24 @@ 	7830  MCS7830 Ethernet 99fa  Grandtec 	8988  V.cap Camera Device+a128  AnMo Electronics Corp. / Dino-Lite (?)+	0610  Dino-Lite Digital Microscope (SN9C201 + HV7131R)+	0611  Dino-Lite Digital Microscope (SN9C201 + HV7131R)+	0612  Dino-Lite Digital Microscope (SN9C120 + HV7131R)+	0613  Dino-Lite Digital Microscope (SN9C201 + HV7131R)+	0614  Dino-Lite Digital Microscope (SN9C201 + MI1310/MT9M111)+	0615  Dino-Lite Digital Microscope (SN9C201 + MI1310/MT9M111)+	0616  Dino-Lite Digital Microscope (SN9C120 + HV7131R)+	0617  Dino-Lite Digital Microscope (SN9C201 + MI1310/MT9M111)+	0618  Dino-Lite Digital Microscope (SN9C201 + HV7131R)+a168  AnMo Electronics Corporation+	0610  Dino-Lite Digital Microscope+	0611  Dino-Lite Digital Microscope+	0613  Dino-Lite Digital Microscope+	0614  Dino-Lite Pro Digital Microscope+	0615  Dino-Lite Pro Digital Microscope+	0617  Dino-Lite Pro Digital Microscope+	0618  Dino-Lite Digital Microscope a600  Asix 	e110  OK1ZIA Davac 4.x a727  3Com@@ -12244,6 +12543,19 @@ 	2710  ULink d209  Ultimarc 	0301  I-PAC Arcade Control Interface+e4e4  Xorcom Ltd.+	1130  Astribank series+	1131  Astribank series+	1132  Astribank series+	1140  Astribank series+	1141  Astribank series+	1142  Astribank series+	1150  Astribank series+	1151  Astribank series+	1152  Astribank series+	1160  Astribank 2 series+	1161  Astribank 2 series+	1162  Astribank 2 series eb03  MakingThings 	0920  Make Controller Kit eb1a  eMPIA Technology, Inc.