Skip to content
This repository was archived by the owner on Mar 23, 2026. It is now read-only.
This repository was archived by the owner on Mar 23, 2026. It is now read-only.

500ma doesn't work, but 1600 and 16000 work #45

@CyberShadow

Description

@CyberShadow
  1. This is missing in set_charging_mode:

     if ((ret = libusb_set_configuration(dev_handle, 1)) < 0) {
     	fprintf(stderr, "ipad_charge: unable to set device configuration: error %d\n", ret);
     	fprintf(stderr, "ipad_charge: %s\n", libusb_strerror(ret));
     	return ret;
     }
    

    ipad_charge needs to set the configuration, as otherwise libusb_claim_interface fails with error -5 (not found), because (AIUI) an unconfigured device has no interfaces.

  2. The 500ma value for libusb_control_transfer didn't work for the charging port on my Sony Vaio SVS15123CXB (it would only show the charging icon for a split-second then revert to "not charging"), but upping it to 1600 worked. 16000 also worked.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions