Esempio n. 1
0
        snd = list(filter(lambda x: x[-1] <= 2, snd))

        try:
          sender.can_send_many(snd)
        except usb1.USBErrorTimeout:
          pass

        # Drain panda message buffer
        sender.can_recv()
    except Exception:
      traceback.print_exc()
      time.sleep(1)

if __name__ == "__main__":
  if jungle:
    serials = PandaJungle.list()
  else:
    serials = Panda.list()
  num_senders = len(serials)

  if num_senders == 0:
    print("No senders found. Exiting")
    sys.exit(1)
  else:
    print("%d senders found. Starting broadcast" % num_senders)

  if "FLASH" in os.environ:
    for s in PandaDFU.list():
      PandaDFU(s).recover()

    time.sleep(1)
Esempio n. 2
0
                continue

            for s in p.list():
                if s not in serials:
                    print("starting send thread for", s)
                    serials[s] = Process(target=send_thread, args=(p(s), 3))
                    serials[s].start()

        # try to join all send procs
        cur_serials = serials.copy()
        for s, p in cur_serials.items():
            p.join(0.01)
            if p.exitcode is not None:
                del serials[s]

        time.sleep(1)


if __name__ == "__main__":
    time.sleep(1)

    if "FLASH" in os.environ and PandaJungle is not None:
        for s in PandaJungle.list():
            PandaJungle(s).flash()

    while True:
        try:
            connect()
        except Exception:
            pass