2 ## This file is part of the libsigrok project.
4 ## Copyright (C) 2010-2013 Uwe Hermann <uwe@hermann-uwe.de>
6 ## This program is free software; you can redistribute it and/or modify
7 ## it under the terms of the GNU General Public License as published by
8 ## the Free Software Foundation; either version 2 of the License, or
9 ## (at your option) any later version.
11 ## This program is distributed in the hope that it will be useful,
12 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
13 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ## GNU General Public License for more details.
16 ## You should have received a copy of the GNU General Public License
17 ## along with this program; if not, see <http://www.gnu.org/licenses/>.
21 # These rules do not grant any permission by itself, but flag devices
22 # supported by libsigrok.
23 # The access policy is stored in the 61-libsigrok-plugdev.rules and
24 # 61-libsigrok-uaccess.rules.
26 # Note: Any syntax changes here will need to be tested against the
27 # 'update-device-filter' Makefile target in the sigrok-androidutils
28 # repo, since that parses this file.
32 # Please keep this list sorted alphabetically by vendor/device name.
35 ACTION!="add|change", GOTO="libsigrok_rules_end"
36 SUBSYSTEM!="usb|usbmisc|usb_device|hidraw", GOTO="libsigrok_rules_end"
38 # Agilent USBTMC-connected devices
40 ATTRS{idVendor}=="0957", ATTRS{idProduct}=="0618", ENV{ID_SIGROK}="1"
42 ATTRS{idVendor}=="0957", ATTRS{idProduct}=="0607", ENV{ID_SIGROK}="1"
44 ATTRS{idVendor}=="0957", ATTRS{idProduct}=="1b07", ENV{ID_SIGROK}="1"
46 ATTRS{idVendor}=="0957", ATTRS{idProduct}=="0588", ENV{ID_SIGROK}="1"
48 ATTRS{idVendor}=="0957", ATTRS{idProduct}=="1735", ENV{ID_SIGROK}="1"
53 ATTRS{idVendor}=="a600", ATTRS{idProduct}=="a000", ENV{ID_SIGROK}="1"
54 ATTRS{idVendor}=="a600", ATTRS{idProduct}=="a004", ENV{ID_SIGROK}="1"
56 # Braintechnology USB-LPS
57 ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="0498", ENV{ID_SIGROK}="1"
59 # Brymen BU-86X adapter (e.g. for Brymen BM867/BM869 and possibly others).
60 ATTRS{idVendor}=="0820", ATTRS{idProduct}=="0001", ENV{ID_SIGROK}="1"
62 # ChronoVu LA8 (new VID/PID)
63 # ChronoVu LA16 (new VID/PID)
64 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="8867", ENV{ID_SIGROK}="1"
67 # ARMFLY AX-Pro (clone of the CWAV USBee AX)
68 # ARMFLY Mini-Logic (clone of the CWAV USBee AX)
69 # EE Electronics ESLA201A (clone of the CWAV USBee AX)
70 # HT USBee-AxPro (clone of the CWAV USBee AX)
71 # MCU123 USBee AX Pro clone (clone of the CWAV USBee AX)
72 # Noname LHT00SU1 (clone of the CWAV USBee AX)
73 # XZL_Studio AX (clone of the CWAV USBee AX)
74 ATTRS{idVendor}=="08a9", ATTRS{idProduct}=="0014", ENV{ID_SIGROK}="1"
77 # HT USBee-DxPro (clone of the CWAV USBee DX), not yet supported!
78 # XZL_Studio DX (clone of the CWAV USBee DX)
79 ATTRS{idVendor}=="08a9", ATTRS{idProduct}=="0015", ENV{ID_SIGROK}="1"
82 ATTRS{idVendor}=="08a9", ATTRS{idProduct}=="0009", ENV{ID_SIGROK}="1"
85 ATTRS{idVendor}=="08a9", ATTRS{idProduct}=="0005", ENV{ID_SIGROK}="1"
87 # Cypress FX2 eval boards without EEPROM:
89 # Braintechnology USB Interface V2.x
91 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="8613", ENV{ID_SIGROK}="1"
93 # Dangerous Prototypes Buspirate (v3)
94 # ChronoVu LA8 (old VID/PID)
95 # ChronoVu LA16 (old VID/PID)
97 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ENV{ID_SIGROK}="1"
99 # Dangerous Prototypes Buspirate (v4)
100 ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="fb00", ENV{ID_SIGROK}="1"
102 # dcttech.com USB relay card, and other V-USB based firmware
103 ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05df", ENV{ID_SIGROK}="1"
105 # DreamSourceLab DSLogic
106 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0001", ENV{ID_SIGROK}="1"
107 # DreamSourceLab DSLogic Pro
108 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0003", ENV{ID_SIGROK}="1"
109 # DreamSourceLab DScope
110 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0002", ENV{ID_SIGROK}="1"
111 # DreamSourceLab DSLogic Plus
112 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0020", ENV{ID_SIGROK}="1"
113 # DreamSourceLab DSLogic Basic
114 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0021", ENV{ID_SIGROK}="1"
116 # GW-Instek GDM-9061 (USBTMC mode)
117 ATTRS{idVendor}=="2184", ATTRS{idProduct}=="0059", ENV{ID_SIGROK}="1"
120 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="ed72", ENV{ID_SIGROK}="1"
123 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="ed73", ENV{ID_SIGROK}="1"
126 # lsusb: "04b4:2090 Cypress Semiconductor Corp."
127 # lsusb after FW upload: "04b5:2090 ROHM LSI Systems USA, LLC"
128 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="2090", ENV{ID_SIGROK}="1"
129 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="2090", ENV{ID_SIGROK}="1"
132 # lsusb: "04b4:2150 Cypress Semiconductor Corp."
133 # lsusb after FW upload: "04b5:2150 ROHM LSI Systems USA, LLC"
134 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="2150", ENV{ID_SIGROK}="1"
135 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="2150", ENV{ID_SIGROK}="1"
138 # lsusb: "04b4:2250 Cypress Semiconductor Corp."
139 # lsusb after FW upload: "04b5:2250 ROHM LSI Systems USA, LLC"
140 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="2250", ENV{ID_SIGROK}="1"
141 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="2250", ENV{ID_SIGROK}="1"
144 # lsusb: "04b4:5200 Cypress Semiconductor Corp."
145 # lsusb after FW upload: "04b5:5200 ROHM LSI Systems USA, LLC"
146 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="5200", ENV{ID_SIGROK}="1"
147 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="5200", ENV{ID_SIGROK}="1"
150 # lsusb: "04b4:520a Cypress Semiconductor Corp."
151 # lsusb after FW upload: "04b5:520a ROHM LSI Systems USA, LLC"
152 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="520a", ENV{ID_SIGROK}="1"
153 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="520a", ENV{ID_SIGROK}="1"
155 # Hantek 6022BE, renumerates as 1d50:608e "sigrok fx2lafw", Serial: Hantek 6022BE
156 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="6022", ENV{ID_SIGROK}="1"
158 # Hantek 6022BL, renumerates as 1d50:608e "sigrok fx2lafw", Serial: Hantek 6022BL
159 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="602a", ENV{ID_SIGROK}="1"
162 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="4032", ENV{ID_SIGROK}="1"
164 # IKALOGIC Scanalogic-2
165 ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4123", ENV{ID_SIGROK}="1"
169 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", ENV{ID_SIGROK}="1"
171 # ftdi-la (TIAO USB Multi Protocol Adapter (TUMPA))
172 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="8a98", ENV{ID_SIGROK}="1"
175 ATTRS{idVendor}=="1041", ATTRS{idProduct}=="8101", ENV{ID_SIGROK}="1"
177 # Keysight USBTMC-connected devices
179 ATTRS{idVendor}=="2a8d", ATTRS{idProduct}=="0101", ENV{ID_SIGROK}="1"
182 ATTRS{idVendor}=="77a1", ATTRS{idProduct}=="01a2", ENV{ID_SIGROK}="1"
184 # Lascar Electronics EL-USB-2
185 # Lascar Electronics EL-USB-CO
186 # This is actually the generic SiLabs (Cygnal) F32x USBXpress VID:PID.
187 ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="0002", ENV{ID_SIGROK}="1"
189 # LeCroy LogicStudio16
190 ATTRS{idVendor}=="05ff", ATTRS{idProduct}=="a001", ENV{ID_SIGROK}="1"
191 ATTRS{idVendor}=="05ff", ATTRS{idProduct}=="a002", ENV{ID_SIGROK}="1"
195 ATTRS{idVendor}=="05ff", ATTRS{idProduct}=="1023", ENV{ID_SIGROK}="1"
197 # Link Instruments MSO-19
198 ATTRS{idVendor}=="3195", ATTRS{idProduct}=="f190", ENV{ID_SIGROK}="1"
201 ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="fa95", ENV{ID_SIGROK}="1"
205 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", ENV{ID_SIGROK}="1"
208 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6011", ENV{ID_SIGROK}="1"
213 ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", ENV{ID_SIGROK}="1"
216 ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="0033", ENV{ID_SIGROK}="1"
218 # Openbench Logic Sniffer
219 ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="000a", ENV{ID_SIGROK}="1"
221 # Rigol DS1000 series
222 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0588", ENV{ID_SIGROK}="1"
225 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="04ce", ENV{ID_SIGROK}="1"
227 # Rigol DS2000 series
228 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="04b0", ENV{ID_SIGROK}="1"
230 # Rigol DS4000 series
231 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="04b1", ENV{ID_SIGROK}="1"
233 # Rigol DG4000 series
234 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0641", ENV{ID_SIGROK}="1"
236 # Rigol DG1000z series
237 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0642", ENV{ID_SIGROK}="1"
239 # Rigol DG800 and DG900 series
240 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0643", ENV{ID_SIGROK}="1"
243 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0e11", ENV{ID_SIGROK}="1"
245 # Rigol MSO5000 series
246 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0515", ENV{ID_SIGROK}="1"
248 # Rohde&Schwarz HMO series mixed-signal oscilloscope (previously branded Hameg) VCP/USBTMC mode
249 ATTRS{idVendor}=="0aad", ATTRS{idProduct}=="0117", ENV{ID_SIGROK}="1"
250 ATTRS{idVendor}=="0aad", ATTRS{idProduct}=="0118", ENV{ID_SIGROK}="1"
251 ATTRS{idVendor}=="0aad", ATTRS{idProduct}=="0119", ENV{ID_SIGROK}="1"
253 # Sainsmart DDS120 / Rocktech BM102, renumerates as 1d50:608e "sigrok fx2lafw", Serial: Sainsmart DDS120
254 ATTRS{idVendor}=="8102", ATTRS{idProduct}=="8102", ENV{ID_SIGROK}="1"
257 # EE Electronics ESLA100 (clone of the Saleae Logic)
258 # Hantek 6022BL in LA mode (clone of the Saleae Logic)
259 # Instrustar ISDS205X in LA mode (clone of the Saleae Logic)
260 # Robomotic MiniLogic (clone of the Saleae Logic)
261 # Robomotic BugLogic 3 (clone of the Saleae Logic)
262 # MCU123 Saleae Logic clone (clone of the Saleae Logic)
263 ATTRS{idVendor}=="0925", ATTRS{idProduct}=="3881", ENV{ID_SIGROK}="1"
266 ATTRS{idVendor}=="21a9", ATTRS{idProduct}=="1001", ENV{ID_SIGROK}="1"
268 # Saleae Logic Pro 16
269 ATTRS{idVendor}=="21a9", ATTRS{idProduct}=="1006", ENV{ID_SIGROK}="1"
271 # Siglent USBTMC devices.
272 # f4ec:ee3a: E.g. SDS1052DL+ scope
273 # f4ec:ee38: E.g. SDS1104X-E scope or SDM3055 Multimeter
274 # f4ed:ee3a: E.g. SDS1202X-E scope or SDG1010 waveform generator
275 ATTRS{idVendor}=="f4ec", ATTRS{idProduct}=="ee38", ENV{ID_SIGROK}="1"
276 ATTRS{idVendor}=="f4ec", ATTRS{idProduct}=="ee3a", ENV{ID_SIGROK}="1"
277 ATTRS{idVendor}=="f4ed", ATTRS{idProduct}=="ee3a", ENV{ID_SIGROK}="1"
279 # sigrok FX2 LA (8ch)
280 # fx2grok-flat (before and after renumeration)
281 ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="608c", ENV{ID_SIGROK}="1"
283 # sigrok FX2 LA (16ch)
284 ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="608d", ENV{ID_SIGROK}="1"
286 # sigrok FX2 DSO (2ch)
287 ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="608e", ENV{ID_SIGROK}="1"
290 ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="608f", ENV{ID_SIGROK}="1"
292 # SiLabs CP210x (USB CDC) UART bridge, used (among others) in:
299 # Voltcraft PPS-11815
300 ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", ENV{ID_SIGROK}="1"
302 # SiLabs CP2110 (USB HID) UART bridge, used (among others) in:
304 # UNI-T UT-D09 multimeter cable (for various UNI-T and rebranded DMMs)
305 ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea80", ENV{ID_SIGROK}="1"
308 ATTRS{idVendor}=="2961", ATTRS{idProduct}=="6688", ENV{ID_SIGROK}="1"
311 ATTRS{idVendor}=="2961", ATTRS{idProduct}=="6689", ENV{ID_SIGROK}="1"
313 # Sysclk SLA5032 ("32CH 500M" mode)
314 ATTRS{idVendor}=="2961", ATTRS{idProduct}=="66b0", ENV{ID_SIGROK}="1"
317 ATTRS{idVendor}=="128d", ATTRS{idProduct}=="0003", ENV{ID_SIGROK}="1"
319 # UNI-T UT-D04 multimeter cable (for various UNI-T and rebranded DMMs)
321 ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="e008", ENV{ID_SIGROK}="1"
323 # V&A VA4000 multimeter cable (for various V&A DMMs)
324 ATTRS{idVendor}=="04fc", ATTRS{idProduct}=="0201", ENV{ID_SIGROK}="1"
328 ATTRS{idVendor}=="1244", ATTRS{idProduct}=="d237", ENV{ID_SIGROK}="1"
331 ATTRS{idVendor}=="d4a2", ATTRS{idProduct}=="5660", ENV{ID_SIGROK}="1"
333 # ZEROPLUS Logic Cube LAP-C series
334 # There are various devices in the ZEROPLUS Logic Cube series:
335 # 0c12:7002: LAP-16128U
336 # 0c12:7009: LAP-C(16064)
337 # 0c12:700a: LAP-C(16128)
338 # 0c12:700b: LAP-C(32128)
339 # 0c12:700c: LAP-C(321000)
340 # 0c12:700d: LAP-C(322000)
341 # 0c12:700e: LAP-C(16032)
342 # 0c12:7016: LAP-C(162000)
343 # 0c12:7025: LAP-C(16128+)
344 # 0c12:7100: AKIP-9101
345 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7002", ENV{ID_SIGROK}="1"
346 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7007", ENV{ID_SIGROK}="1"
347 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7009", ENV{ID_SIGROK}="1"
348 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700a", ENV{ID_SIGROK}="1"
349 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700b", ENV{ID_SIGROK}="1"
350 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700c", ENV{ID_SIGROK}="1"
351 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700d", ENV{ID_SIGROK}="1"
352 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700e", ENV{ID_SIGROK}="1"
353 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7016", ENV{ID_SIGROK}="1"
354 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7025", ENV{ID_SIGROK}="1"
355 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7100", ENV{ID_SIGROK}="1"
357 LABEL="libsigrok_rules_end"