Advertisement
Guest User

UnBeeline.c

a guest
Oct 3rd, 2012
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.40 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <usb.h>
  4.  
  5. int OpenMyDevice(struct usb_device **device, usb_dev_handle **udev_handle, int VID, int PID)
  6. {
  7. struct usb_bus *bus;
  8.  
  9. struct usb_device *dev;
  10. usb_dev_handle *udev;
  11.  
  12. int isFound = 0;
  13.  
  14. usb_init();
  15.  
  16. usb_find_busses();
  17. usb_find_devices();
  18.  
  19. for (bus = usb_busses; bus; bus = bus->next) {
  20. for (dev = bus->devices; dev; dev = dev->next) {
  21. udev = usb_open(dev);
  22. if ( (dev->descriptor.idVendor == VID) &
  23. (dev->descriptor.idProduct == PID)) {
  24. isFound = 1;
  25. break;
  26. } else {
  27. if (udev) usb_close(udev);
  28. };
  29. }
  30. if (isFound)
  31. break;
  32. }
  33.  
  34. *device = dev;
  35. *udev_handle = udev;
  36.  
  37. return isFound;
  38.  
  39. }
  40.  
  41. int main(void)
  42. {
  43. struct usb_device *dev;
  44. usb_dev_handle *udev;
  45. int rc;
  46.  
  47. char msg[] = "AT+ZOPERTE=\"beeline\"\r\n";
  48. int NUM = strlen(msg);
  49.  
  50. if (OpenMyDevice(&dev, &udev, 0x19d2, 0x0031)) {
  51. printf("Device found\n");
  52. } else {
  53. printf("Device not found\n");
  54. exit(1);
  55. };
  56.  
  57. printf("Claim_interface: %d\n", usb_claim_interface(udev, 1));
  58. printf("Alt_interface: %d\n", usb_set_altinterface(udev, 1));
  59.  
  60. rc = usb_bulk_write(udev, 2, (char *)msg, NUM, 1000);
  61.  
  62. printf("USB bulk write: %d (%d)\n", rc, NUM);
  63.  
  64. usb_close(udev);
  65.  
  66. return 0;
  67. }
  68. //gcc -lusb -o UnBeeline UnBeeline.c
  69. //make
  70. //
  71. //good^
  72. //Device found
  73. //bNumConfigurations: 1
  74. //bNumInterfaces: 4
  75. //bNumEndpoints: 2
  76. //Claim_interface: 0
  77. //Alt_interface: 0
  78. //USB bulk write: 22 (22)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement