2

I want to make a Python script to change the dafault configuration of a Samsung smartphone. I'm using the PyUSB library to get the configuration. I can't switch to the second configuration.

The code is the following

# -*- coding:Utf-8 -*-
import sys
import usb.core
import usb.util

def main():
    #Recherche d'un Samsung Galaxy
    device = usb.core.find(idVendor=0x04e8, idProduct=0x6860)
    if device is None:
        raise ValueError('No Samsung device')
    #Affiche la configuration
    #print(device)
    cfg = device.get_active_configuration()
    print('*****Before changing*******************')
    print(cfg)
    device.set_configuration(2)
    cfg = device.get_active_configuration()
    print('*****After changing*******************')
    print(cfg)    
#end main

if (__name__ == '__main__'):
    main()
    sys.exit()
#end if

and the returned error is

Traceback (most recent call last):
  File "./test_usb.py", line 26, in <module>
    main()
  File "./test_usb.py", line 19, in main
    device.set_configuration(2)
  File "/usr/lib/python2.7/dist-packages/usb/core.py", line 799, in set_configuration
    self._ctx.managed_set_configuration(self, configuration)
  File "/usr/lib/python2.7/dist-packages/usb/core.py", line 128, in managed_set_configuration
    self.backend.set_configuration(self.handle, cfg.bConfigurationValue)
  File "/usr/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 730, in set_configuration
    _check(self.lib.libusb_set_configuration(dev_handle.handle, config_value))
  File "/usr/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 552, in _check
    raise USBError(_strerror(ret), ret, _libusb_errno[ret])
usb.core.USBError: [Errno 16] Resource busy

I have modified the /etc/udev/rules.d/00-usb.rules to set rights to the current user.

SUBSYSTEM=="usb_device", SYSFS{idVendor}=="04e8", SYSFS{idProduct}=="6860", GROUP="usbusers", MODE="0776"

Thanks, Jeff

Foxrider83
  • 21
  • 6
  • For information, the https://stackoverflow.com/questions/15074394/pyusb-dev-set-configuration can't solve my trouble. – Foxrider83 Aug 31 '18 at 12:35

0 Answers0