uiview.py 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. #!/usr/bin/env python3
  2. import time
  3. from cereal import car, log, messaging
  4. from common.params import Params
  5. from selfdrive.manager.process_config import managed_processes
  6. if __name__ == "__main__":
  7. CP = car.CarParams(notCar=True)
  8. Params().put("CarParams", CP.to_bytes())
  9. procs = ['camerad', 'ui', 'modeld', 'calibrationd']
  10. for p in procs:
  11. managed_processes[p].start()
  12. pm = messaging.PubMaster(['controlsState', 'deviceState', 'pandaStates', 'carParams'])
  13. msgs = {s: messaging.new_message(s) for s in ['controlsState', 'deviceState', 'carParams']}
  14. msgs['deviceState'].deviceState.started = True
  15. msgs['carParams'].carParams.openpilotLongitudinalControl = True
  16. msgs['pandaStates'] = messaging.new_message('pandaStates', 1)
  17. msgs['pandaStates'].pandaStates[0].ignitionLine = True
  18. msgs['pandaStates'].pandaStates[0].pandaType = log.PandaState.PandaType.uno
  19. try:
  20. while True:
  21. time.sleep(1 / 100) # continually send, rate doesn't matter
  22. for s in msgs:
  23. pm.send(s, msgs[s])
  24. except KeyboardInterrupt:
  25. for p in procs:
  26. managed_processes[p].stop()