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"
52 ATTRS{idVendor}=="a600", ATTRS{idProduct}=="a000", ENV{ID_SIGROK}="1"
54 # Braintechnology USB-LPS
55 ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="0498", ENV{ID_SIGROK}="1"
57 # Brymen BU-86X adapter (e.g. for Brymen BM867/BM869 and possibly others).
58 ATTRS{idVendor}=="0820", ATTRS{idProduct}=="0001", ENV{ID_SIGROK}="1"
60 # ChronoVu LA8 (new VID/PID)
61 # ChronoVu LA16 (new VID/PID)
62 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="8867", ENV{ID_SIGROK}="1"
65 # ARMFLY AX-Pro (clone of the CWAV USBee AX)
66 # ARMFLY Mini-Logic (clone of the CWAV USBee AX)
67 # EE Electronics ESLA201A (clone of the CWAV USBee AX)
68 # HT USBee-AxPro (clone of the CWAV USBee AX)
69 # MCU123 USBee AX Pro clone (clone of the CWAV USBee AX)
70 # Noname LHT00SU1 (clone of the CWAV USBee AX)
71 # XZL_Studio AX (clone of the CWAV USBee AX)
72 ATTRS{idVendor}=="08a9", ATTRS{idProduct}=="0014", ENV{ID_SIGROK}="1"
75 # HT USBee-DxPro (clone of the CWAV USBee DX), not yet supported!
76 # XZL_Studio DX (clone of the CWAV USBee DX)
77 ATTRS{idVendor}=="08a9", ATTRS{idProduct}=="0015", ENV{ID_SIGROK}="1"
80 ATTRS{idVendor}=="08a9", ATTRS{idProduct}=="0009", ENV{ID_SIGROK}="1"
83 ATTRS{idVendor}=="08a9", ATTRS{idProduct}=="0005", ENV{ID_SIGROK}="1"
85 # Cypress FX2 eval boards without EEPROM:
87 # Braintechnology USB Interface V2.x
89 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="8613", ENV{ID_SIGROK}="1"
91 # Dangerous Prototypes Buspirate (v3)
92 # ChronoVu LA8 (old VID/PID)
93 # ChronoVu LA16 (old VID/PID)
95 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ENV{ID_SIGROK}="1"
97 # Dangerous Prototypes Buspirate (v4)
98 ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="fb00", ENV{ID_SIGROK}="1"
100 # DreamSourceLab DSLogic
101 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0001", ENV{ID_SIGROK}="1"
102 # DreamSourceLab DSLogic Pro
103 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0003", ENV{ID_SIGROK}="1"
104 # DreamSourceLab DScope
105 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0002", ENV{ID_SIGROK}="1"
106 # DreamSourceLab DSLogic Plus
107 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0020", ENV{ID_SIGROK}="1"
108 # DreamSourceLab DSLogic Basic
109 ATTRS{idVendor}=="2a0e", ATTRS{idProduct}=="0021", ENV{ID_SIGROK}="1"
111 # GW-Instek GDM-9061 (USBTMC mode)
112 ATTRS{idVendor}=="2184", ATTRS{idProduct}=="0059", ENV{ID_SIGROK}="1"
115 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="ed72", ENV{ID_SIGROK}="1"
118 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="ed73", ENV{ID_SIGROK}="1"
121 # lsusb: "04b4:2090 Cypress Semiconductor Corp."
122 # lsusb after FW upload: "04b5:2090 ROHM LSI Systems USA, LLC"
123 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="2090", ENV{ID_SIGROK}="1"
124 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="2090", ENV{ID_SIGROK}="1"
127 # lsusb: "04b4:2150 Cypress Semiconductor Corp."
128 # lsusb after FW upload: "04b5:2150 ROHM LSI Systems USA, LLC"
129 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="2150", ENV{ID_SIGROK}="1"
130 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="2150", ENV{ID_SIGROK}="1"
133 # lsusb: "04b4:2250 Cypress Semiconductor Corp."
134 # lsusb after FW upload: "04b5:2250 ROHM LSI Systems USA, LLC"
135 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="2250", ENV{ID_SIGROK}="1"
136 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="2250", ENV{ID_SIGROK}="1"
139 # lsusb: "04b4:5200 Cypress Semiconductor Corp."
140 # lsusb after FW upload: "04b5:5200 ROHM LSI Systems USA, LLC"
141 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="5200", ENV{ID_SIGROK}="1"
142 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="5200", ENV{ID_SIGROK}="1"
145 # lsusb: "04b4:520a Cypress Semiconductor Corp."
146 # lsusb after FW upload: "04b5:520a ROHM LSI Systems USA, LLC"
147 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="520a", ENV{ID_SIGROK}="1"
148 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="520a", ENV{ID_SIGROK}="1"
150 # Hantek 6022BE, renumerates as 1d50:608e "sigrok fx2lafw", Serial: Hantek 6022BE
151 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="6022", ENV{ID_SIGROK}="1"
153 # Hantek 6022BL, renumerates as 1d50:608e "sigrok fx2lafw", Serial: Hantek 6022BL
154 ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="602a", ENV{ID_SIGROK}="1"
157 ATTRS{idVendor}=="04b5", ATTRS{idProduct}=="4032", ENV{ID_SIGROK}="1"
159 # IKALOGIC Scanalogic-2
160 ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4123", ENV{ID_SIGROK}="1"
164 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", ENV{ID_SIGROK}="1"
166 # ftdi-la (TIAO USB Multi Protocol Adapter (TUMPA))
167 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="8a98", ENV{ID_SIGROK}="1"
170 ATTRS{idVendor}=="1041", ATTRS{idProduct}=="8101", ENV{ID_SIGROK}="1"
172 # Keysight USBTMC-connected devices
174 ATTRS{idVendor}=="2a8d", ATTRS{idProduct}=="0101", ENV{ID_SIGROK}="1"
177 ATTRS{idVendor}=="77a1", ATTRS{idProduct}=="01a2", ENV{ID_SIGROK}="1"
179 # Lascar Electronics EL-USB-2
180 # Lascar Electronics EL-USB-CO
181 # This is actually the generic SiLabs (Cygnal) F32x USBXpress VID:PID.
182 ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="0002", ENV{ID_SIGROK}="1"
184 # LeCroy LogicStudio16
185 ATTRS{idVendor}=="05ff", ATTRS{idProduct}=="a001", ENV{ID_SIGROK}="1"
186 ATTRS{idVendor}=="05ff", ATTRS{idProduct}=="a002", ENV{ID_SIGROK}="1"
190 ATTRS{idVendor}=="05ff", ATTRS{idProduct}=="1023", ENV{ID_SIGROK}="1"
192 # Link Instruments MSO-19
193 ATTRS{idVendor}=="3195", ATTRS{idProduct}=="f190", ENV{ID_SIGROK}="1"
196 ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="fa95", ENV{ID_SIGROK}="1"
200 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", ENV{ID_SIGROK}="1"
203 ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6011", ENV{ID_SIGROK}="1"
208 ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", ENV{ID_SIGROK}="1"
211 ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="0033", ENV{ID_SIGROK}="1"
213 # Openbench Logic Sniffer
214 ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="000a", ENV{ID_SIGROK}="1"
216 # Rigol DS1000 series
217 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0588", ENV{ID_SIGROK}="1"
220 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="04ce", ENV{ID_SIGROK}="1"
222 # Rigol DS2000 series
223 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="04b0", ENV{ID_SIGROK}="1"
225 # Rigol DS4000 series
226 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="04b1", ENV{ID_SIGROK}="1"
228 # Rigol DG4000 series
229 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0641", ENV{ID_SIGROK}="1"
231 # Rigol DG1000z series
232 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0642", ENV{ID_SIGROK}="1"
234 # Rigol DG800 and DG900 series
235 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0643", ENV{ID_SIGROK}="1"
238 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0e11", ENV{ID_SIGROK}="1"
240 # Rigol MSO5000 series
241 ATTRS{idVendor}=="1ab1", ATTRS{idProduct}=="0515", ENV{ID_SIGROK}="1"
243 # Rohde&Schwarz HMO series mixed-signal oscilloscope (previously branded Hameg) VCP/USBTMC mode
244 ATTRS{idVendor}=="0aad", ATTRS{idProduct}=="0117", ENV{ID_SIGROK}="1"
245 ATTRS{idVendor}=="0aad", ATTRS{idProduct}=="0118", ENV{ID_SIGROK}="1"
246 ATTRS{idVendor}=="0aad", ATTRS{idProduct}=="0119", ENV{ID_SIGROK}="1"
248 # Sainsmart DDS120 / Rocktech BM102, renumerates as 1d50:608e "sigrok fx2lafw", Serial: Sainsmart DDS120
249 ATTRS{idVendor}=="8102", ATTRS{idProduct}=="8102", ENV{ID_SIGROK}="1"
252 # EE Electronics ESLA100 (clone of the Saleae Logic)
253 # Hantek 6022BL in LA mode (clone of the Saleae Logic)
254 # Instrustar ISDS205X in LA mode (clone of the Saleae Logic)
255 # Robomotic MiniLogic (clone of the Saleae Logic)
256 # Robomotic BugLogic 3 (clone of the Saleae Logic)
257 # MCU123 Saleae Logic clone (clone of the Saleae Logic)
258 ATTRS{idVendor}=="0925", ATTRS{idProduct}=="3881", ENV{ID_SIGROK}="1"
261 ATTRS{idVendor}=="21a9", ATTRS{idProduct}=="1001", ENV{ID_SIGROK}="1"
263 # Saleae Logic Pro 16
264 ATTRS{idVendor}=="21a9", ATTRS{idProduct}=="1006", ENV{ID_SIGROK}="1"
266 # Siglent USBTMC devices.
267 # f4ec:ee3a: E.g. SDS1052DL+ scope
268 # f4ec:ee38: E.g. SDS1104X-E scope
269 # f4ed:ee3a: E.g. SDS1202X-E scope or SDG1010 waveform generator
270 ATTRS{idVendor}=="f4ec", ATTRS{idProduct}=="ee3a", ENV{ID_SIGROK}="1"
271 ATTRS{idVendor}=="f4ed", ATTRS{idProduct}=="ee3a", ENV{ID_SIGROK}="1"
273 # sigrok FX2 LA (8ch)
274 # fx2grok-flat (before and after renumeration)
275 ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="608c", ENV{ID_SIGROK}="1"
277 # sigrok FX2 LA (16ch)
278 ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="608d", ENV{ID_SIGROK}="1"
280 # sigrok FX2 DSO (2ch)
281 ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="608e", ENV{ID_SIGROK}="1"
284 ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="608f", ENV{ID_SIGROK}="1"
286 # SiLabs CP210x (USB CDC) UART bridge, used (among others) in:
293 # Voltcraft PPS-11815
294 ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", ENV{ID_SIGROK}="1"
296 # SiLabs CP2110 (USB HID) UART bridge, used (among others) in:
298 # UNI-T UT-D09 multimeter cable (for various UNI-T and rebranded DMMs)
299 ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea80", ENV{ID_SIGROK}="1"
302 ATTRS{idVendor}=="2961", ATTRS{idProduct}=="6688", ENV{ID_SIGROK}="1"
305 ATTRS{idVendor}=="2961", ATTRS{idProduct}=="6689", ENV{ID_SIGROK}="1"
307 # Sysclk SLA5032 ("32CH 500M" mode)
308 ATTRS{idVendor}=="2961", ATTRS{idProduct}=="66b0", ENV{ID_SIGROK}="1"
311 ATTRS{idVendor}=="128d", ATTRS{idProduct}=="0003", ENV{ID_SIGROK}="1"
313 # UNI-T UT-D04 multimeter cable (for various UNI-T and rebranded DMMs)
315 ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="e008", ENV{ID_SIGROK}="1"
317 # V&A VA4000 multimeter cable (for various V&A DMMs)
318 ATTRS{idVendor}=="04fc", ATTRS{idProduct}=="0201", ENV{ID_SIGROK}="1"
322 ATTRS{idVendor}=="1244", ATTRS{idProduct}=="d237", ENV{ID_SIGROK}="1"
325 ATTRS{idVendor}=="d4a2", ATTRS{idProduct}=="5660", ENV{ID_SIGROK}="1"
327 # ZEROPLUS Logic Cube LAP-C series
328 # There are various devices in the ZEROPLUS Logic Cube series:
329 # 0c12:7002: LAP-16128U
330 # 0c12:7009: LAP-C(16064)
331 # 0c12:700a: LAP-C(16128)
332 # 0c12:700b: LAP-C(32128)
333 # 0c12:700c: LAP-C(321000)
334 # 0c12:700d: LAP-C(322000)
335 # 0c12:700e: LAP-C(16032)
336 # 0c12:7016: LAP-C(162000)
337 # 0c12:7025: LAP-C(16128+)
338 # 0c12:7100: AKIP-9101
339 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7002", ENV{ID_SIGROK}="1"
340 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7007", ENV{ID_SIGROK}="1"
341 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7009", ENV{ID_SIGROK}="1"
342 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700a", ENV{ID_SIGROK}="1"
343 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700b", ENV{ID_SIGROK}="1"
344 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700c", ENV{ID_SIGROK}="1"
345 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700d", ENV{ID_SIGROK}="1"
346 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="700e", ENV{ID_SIGROK}="1"
347 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7016", ENV{ID_SIGROK}="1"
348 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7025", ENV{ID_SIGROK}="1"
349 ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="7100", ENV{ID_SIGROK}="1"
351 LABEL="libsigrok_rules_end"