2014-01-09 57 views
0

我想讓MagTek讀卡器在我的覆盆子pi上工作。我有一個MagTek讀卡器模式工作得很好。這是他們的室內模型之一。我購買了戶外型號(Sidewinder RS-232),這是給我的錯誤。usb.core.find回來沒有

這是唯一一個正在運行的代碼,因爲它不會繼續,直到有實際的設備。

def getData(): 
    VENDOR_ID = 0x0801 
    PRODUCT_ID = 0x0002 
    DATA_SIZE = 337 
    PACKET_SIZE = 0x0151 
    device = usb.core.find(idVendor=VENDOR_ID, idProduct=PRODUCT_ID) 
    if device is None: 
     sys.exit("Could not find MagTek USB HID Swipe Reader") 

讓我再次重申,室內模型工作得很好,從我在網上看到(http://www.linux-usb.org/usb.ids)使用相同的PRODUCT_ID。所以我沒有理由知道戶外模型爲什麼不起作用。我在等待MagTek的技術服務回覆,但我想你們會更快

回答

1

我發現問題,但它導致更多。

Brush Industries的Side Winder RS-232具有不同的供應商ID和產品ID。如果你用正確的變量替換這些變量(下面),那麼你的Side Winder RS-232應該被你的python代碼檢測到。

供應商標識= 0x12b6

產品編號= 0×0092

+1

在未來,你應該使用'lsusb'檢查有這樣的麻煩,當接通電源的設備。 –

+0

這實際上是我找到解決方案的方式。如果設備插入並在'lsusb'中輸入,則看到讀出。然後拔下設備,重新運行'lsusb'並將其與第一個讀數進行比較。 – MaylorTaylor