Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <string.h>
- #include <usb.h>
- int OpenMyDevice(struct usb_device **device, usb_dev_handle **udev_handle, int VID, int PID)
- {
- struct usb_bus *bus;
- struct usb_device *dev;
- usb_dev_handle *udev;
- int isFound = 0;
- usb_init();
- usb_find_busses();
- usb_find_devices();
- for (bus = usb_busses; bus; bus = bus->next) {
- for (dev = bus->devices; dev; dev = dev->next) {
- udev = usb_open(dev);
- if ( (dev->descriptor.idVendor == VID) &
- (dev->descriptor.idProduct == PID)) {
- isFound = 1;
- break;
- } else {
- if (udev) usb_close(udev);
- };
- }
- if (isFound)
- break;
- }
- *device = dev;
- *udev_handle = udev;
- return isFound;
- }
- int main(void)
- {
- struct usb_device *dev;
- usb_dev_handle *udev;
- int rc;
- char msg[] = "AT+ZOPERTE=\"beeline\"\r\n";
- int NUM = strlen(msg);
- if (OpenMyDevice(&dev, &udev, 0x19d2, 0x0031)) {
- printf("Device found\n");
- } else {
- printf("Device not found\n");
- exit(1);
- };
- printf("Claim_interface: %d\n", usb_claim_interface(udev, 1));
- printf("Alt_interface: %d\n", usb_set_altinterface(udev, 1));
- rc = usb_bulk_write(udev, 2, (char *)msg, NUM, 1000);
- printf("USB bulk write: %d (%d)\n", rc, NUM);
- usb_close(udev);
- return 0;
- }
- //gcc -lusb -o UnBeeline UnBeeline.c
- //make
- //
- //good^
- //Device found
- //bNumConfigurations: 1
- //bNumInterfaces: 4
- //bNumEndpoints: 2
- //Claim_interface: 0
- //Alt_interface: 0
- //USB bulk write: 22 (22)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement