def start(self, options, args): bb_messenging.verbose = True # Need to be root (unless udev or OSX) if os.getuid() != 0: bb_messenging.log("\n!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\nThis might will only work as root!\n!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n") bb_util.remove_berry_charge() bb_osx.prepare_osx() berry = None berry = bb_usb.find_berry(None,None) if berry != None: # open the connection if berry.handle==None: berry.open_handle() berry.read_endpoints(None) bb_util.remove_berry_charge() if berry.readpt == -1: bb_messenging.warn(["\nNo good Data Endpoint pair, bailing out !"]) else: bb_messenging.log("\nUsing Data Endpoint Pair:"+ hex(berry.readpt)+ "/"+ hex(berry.writept)) bb_messenging.log("Using Modem pair: "+ hex(berry.modem_readpt)+ "/"+ hex(berry.modem_writept)+ "\n") bb_messenging.log("Claiming interface "+str(berry.interface)) berry.claim_interface() berry.read_infos() bb_messenging.log("Pin: "+ hex(berry.pin)) bb_messenging.log("Description: "+ berry.desc) bb_usb.set_mode(berry,bb_usb.COMMAND_MODE_DESKTOP) bb_usb.usb_read(berry,berry.readpt) bb_usb.usb_write(berry,berry.writept,[00,00,0x7,00,0xa,04,00]) bb_usb.usb_read(berry,berry.readpt) bb_usb.usb_write(berry,berry.writept,[04,00,0xc,00,0x40,00,00,00,0x25,0x80,0x8,00]) bb_usb.usb_read(berry,berry.readpt) time.sleep(2) bb_usb.usb_read(berry,berry.readpt) else: bb_messenging.warn(["\nNo RIM device found"])
import bb_usb import bb_data import bb_messenging bb_messenging.verbose=True device = bb_usb.find_berry() device.open_handle() device.read_endpoints(0) device.claim_interface() data=[0x48,0x65,0x6c,0x6c,0x6f,0x20,0x77,0x6f,0x72,0x6c,0x64,0x21,0xa] bb_usb.usb_write(device, device.writept, data, 60, "Data -> ") device.release_interface()