def upgrade_fw(hex_file_name, skip_goto, device_name): ih = intelhex.IntelHex() ih.fromfile(hex_file_name, "hex") if not skip_goto: goto_bootloader(device_name) sleep(6) log_level = 1 if device_name == "auto": devices = auto() if len(devices) == 0: print("Failed to find COM port matching known vid and pids") return 1 device_name = devices[0] bootloader = Bootloader(device_name, log_level) print(bootloader.get_bootloader_info()) flash_offset = 0x400000 blob = ih.tobinarray(start=flash_offset) page_size = 512 pages = len(blob) / page_size if (len(blob) % page_size) > 0: pages += 1 for page in range(0, int(pages)): if page == 0 or page > 127: address = flash_offset + page * page_size bootloader.write_page(page, ih.tobinarray(start=address, size=page_size)) sleep(1) bootloader.start_application(12) print("done")
def main(): parser = ArgumentParser() parser.add_argument( "-d", "--device", dest="device_name", help= "Optional, program can dectect serial port automatically, if not work, using this option to set seral port name used by target XeThru sensor manually, i.e com8, /dev/ttyACM0", metavar="FILE") parser.add_argument( "-m", "--mode", type=str, default='0x1A', dest="mode_code", help= "Input test mode: 0x1A: Enalbe Certification Mode, 0x1D: Tx Only, 0x1E: TX Digital Only, 0x1F: Stream TX Off, 0x1B: Disable Certification Mode.", metavar="0xXX") args = parser.parse_args() if args.device_name: device_name = args.device_name else: try: device_name = auto()[0] except: print("Fail to find serial port, please specify it by use -d!") raise set_certification_mode(device_name, mode_code=int(args.mode_code, 0))
def main(): parser = ArgumentParser() parser.add_argument("-d", "--device", dest="device_name", help="device file to use", metavar="FILE") parser.add_argument("-b", "--baseband", action="store_true", default=True, dest="baseband", help="Enable baseband output") parser.add_argument("-rf", "--radiofrequency", action="store_false", dest="baseband", help="Enable rf output") parser.add_argument("-n", "--framesnumber", metavar="NUMBER", type=int, default=20, dest="frames_number", help="Decide how mange frames shown on plotting") parser.add_argument("-r", "--record", action="store_true", default=False, dest="record", help="Enable recording") parser.add_argument("-f", "--file", dest="meta_filename", metavar="FILE", help="meta file from recording") args = parser.parse_args() if not args.meta_filename: if args.device_name: device_name = args.device_name else: try: device_name = auto()[0] except: print("Fail to find serial port, please specify it by use -d!") raise print_module_info(device_name) xep = configure_x4(device_name, args.record, args.baseband, x4_par_settings) else: player = start_player(meta_filename=args.meta_filename) mc = ModuleConnector(player, log_level=0) xep = mc.get_xep() plot_radar_raw_data_message(xep, baseband=args.baseband, frames_number=args.frames_number)
def main(): parser = ArgumentParser() parser.add_argument("-d", "--device", dest="device_name", help="device file to use, example: python %s -d COM4" % sys.argv[0], metavar="FILE") parser.add_argument("-r", "--record", action="store_true", default=False, dest="record", help="Enable recording") parser.add_argument("-w", "--datatype", dest="datatype", default="pulsedoppler", help="Data to get. pulsedoppler or noisemap", metavar="TYPE") parser.add_argument("-f", "--format", dest="format", default="byte", help="Data format to get. byte or float", metavar="FORMAT") parser.add_argument("-m", "--dopplers", dest="dopplers", default="both", help="Which pD instance to get. fast, slow or both.", metavar="FORMAT") parser.add_argument("-n", "--num-messages", dest="num_messages", type=int, default=0, help="how many matrices to read (0 = infinite)", metavar="INT") args = parser.parse_args() if args.device_name: device_name = args.device_name else: try: device_name = auto()[0] except: print("Fail to find serial port, please specify it by use -d!") raise xt_sensor = configure_sensor_dp_output(device_name, args.record, args.datatype, args.format, args.dopplers, args.num_messages) print_dp_messages(xt_sensor, args.datatype, args.format, args.num_messages)
def main(): module = auto('x4') mc = ModuleConnector(module[0]) xep = mc.get_xep() regmap = X4(xep) # Use regmap object to access registers, for example to set tx_power print("Setting TX power to 1") regmap.tx_power = 1 print("TX power is now %d" % regmap.tx_power) # In an interactive session use tab-completion to get a list of # available registers return 0
def main(): parser = OptionParser() parser.add_option( "-d", "--device", dest="device_name", help="device file to use", metavar="FILE") parser.add_option( "-b", "--baseband", action="store_true", default=False, dest="baseband", help="Enable baseband output, rf data is default") parser.add_option( "-r", "--record", action="store_true", default=False, dest="record", help="Enable recording") parser.add_option( "-f", "--file", dest="meta_filename", metavar="FILE", help="meta file from recording") (options, args) = parser.parse_args() if not options.meta_filename: if options.device_name: device_name = options.device_name else: try: device_name = auto()[0] except: print("Fail to find serial port, please specify it by use -d!") raise print_module_info(device_name) xep = configure_x4(device_name, options.record, options.baseband, x4_par_settings) else: player = start_player(meta_filename=options.meta_filename) mc = ModuleConnector(player, log_level=0) xep = mc.get_xep() plot_radar_raw_data_message(xep, baseband=options.baseband)
def display_information(device_name): print("trying to read information from module") log_level = 1 if device_name == "auto": devices = auto() if len(devices) == 0: print("Failed to find COM port matching known vid and pids") return 1 device_name = devices[0] mc = ModuleConnector(device_name, log_level) xep = mc.get_xep() sleep(1) # Allow for MC to read waiting messages from module. print(xep.get_system_info(XTID_SSIC_FIRMWAREID)) print(xep.get_system_info(XTID_SSIC_VERSION)) print(xep.get_system_info(XTID_SSIC_BUILD)) mc.close()
def main(): parser = ArgumentParser() parser.add_argument("-d", "--device", dest="device_name", help="device file to use", metavar="FILE") parser.add_argument( "-t", "--data_type", dest="data_type", default="iq", help="Data to get. iq or ap", # only one option can be choose metavar="TYPE") parser.add_argument("-r", "--record", action="store_true", default=False, dest="record", help="Enable recording") parser.add_argument("-f", "--file", dest="meta_filename", metavar="FILE", help="meta file from recording") args = parser.parse_args() if not args.meta_filename: if args.device_name: device_name = args.device_name else: try: device_name = auto()[0] except: print("Fail to find serial port, please specify it by use -d!") raise xt_sensor = configure_sensor_bb_output(device_name, args.record, args.data_type) else: player = start_player(meta_filename=args.meta_filename) mc = ModuleConnector(player, log_level=0) xt_sensor = mc.get_x4m200() plot_sensor_bb_message(xt_sensor, args.data_type)
def goto_bootloader(device_name): if device_name == "auto": devices = auto() if len(devices) == 0: print("Failed to find COM port matching known vid and pids") return 1 device_name = devices[0] log_level = 1 mc = ModuleConnector(device_name, log_level) x4m300 = mc.get_x4m300() sleep(1) # Allow for MC to read waiting messages from module. try: # if this fails it will throw x4m300.start_bootloader() except: print("Could not go to bootloader, may be there already.") mc.close()
def main(): parser = OptionParser() parser.add_option( "-d", "--device", dest="device_name", help="Seral port name used by target XeThru sensor, i.e com8, /dev/ttyACM0", metavar="FILE") parser.add_option( "-r", "--record", action="store_true", default=False, dest="record", help="Enable recording") parser.add_option( "-f", "--file", dest="meta_filename", metavar="FILE", help="meta file from recording") (options, args) = parser.parse_args() if not options.meta_filename: if options.device_name: device_name = options.device_name else: try: device_name = auto()[0] except: print("Fail to find serial port, please specify it by use -d!") raise print_module_info(device_name) x4m200 = configure_x4m200( device_name, options.record, x4m200_par_settings) else: player = start_player(meta_filename=options.meta_filename) mc = ModuleConnector(player, log_level=0) x4m200 = mc.get_x4m200() print_x4m200_messages(x4m200)
def main(): parser = OptionParser() parser.add_option( "-d", "--device", dest="device_name", help= "Seral port name used by target XeThru sensor, i.e com8, /dev/ttyACM0", metavar="FILE") (options, args) = parser.parse_args() if options.device_name: device_name = options.device_name else: try: device_name = auto()[0] except: print("Fail to find serial port, please specify it by use -d!") raise print_module_info(device_name) """
def main(): parser = OptionParser() parser.add_option( "-d", "--device", dest="device_name", help="Seral port name used by target XeThru sensor, i.e com8, /dev/ttyACM0", metavar="FILE") parser.add_option( "-r", "--record", action="store_true", default=False, dest="record", help="Enable recording") parser.add_option( "-f", "--file", dest="meta_filename", metavar="FILE", help="meta file from recording") (options, args) = parser.parse_args() if not options.meta_filename: if options.device_name: device_name = options.device_name else: try: device_name = auto()[0] except: print("Fail to find serial port, please specify it by use -d!") raise mc = ModuleConnector(device_name) start_record(mc) else: start_player(meta_filename=options.meta_filename)
def main(): parser = OptionParser() parser.add_option("-d", "--device", dest="device_name", help="device file to use", metavar="FILE") parser.add_option("-r", "--record", action="store_true", default=False, dest="record", help="Enable recording") (options, args) = parser.parse_args() if options.device_name: device_name = options.device_name else: try: device_name = auto()[0] except: print("Fail to find serial port, please specify it by use -d!") raise plot_record_movinglist_messages(device_name, options.record)
# xt_modules_print_info.py should be in the same folder """ from __future__ import print_function, division import matplotlib.pyplot as plt from matplotlib import mlab import numpy as np import pymoduleconnector from pymoduleconnector.extras.auto import auto from scipy import interpolate device_name = auto()[0] # print_module_info(device_name) mc = pymoduleconnector.ModuleConnector(device_name) # Assume an X4M300/X4M200 module and try to enter XEP mode app = mc.get_x4m300() # Stop running application and set module in manual mode. try: app.set_sensor_mode(0x13, 0) # Make sure no profile is running. except RuntimeError: # Profile not running, OK pass try: app.set_sensor_mode(0x12, 0) # Manual mode. except RuntimeError: