예제 #1
0
def main(gctx=None):
    params = Params()
    dongle_id = params.get("DongleId")
    access_token = params.get("AccessToken")
    ws_uri = ATHENA_HOST + "/ws/" + dongle_id

    crash.bind_user(id=dongle_id)
    crash.bind_extra(version=version, dirty=dirty, is_eon=True)
    crash.install()

    conn_retries = 0
    while 1:
        try:
            print("connecting to %s" % ws_uri)
            ws = create_connection(ws_uri,
                                   cookie="jwt=" + access_token,
                                   enable_multithread=True)
            ws.settimeout(1)
            conn_retries = 0
            handle_long_poll(ws)
        except (KeyboardInterrupt, SystemExit):
            break
        except Exception:
            conn_retries += 1
            traceback.print_exc()

        time.sleep(backoff(conn_retries))

    params.delete("AthenadPid")
예제 #2
0
def main():
    params = Params()
    dongle_id = params.get("DongleId").decode('utf-8')
    cloudlog.bind_global(dongle_id=dongle_id,
                         version=version,
                         dirty=dirty,
                         is_eon=True)
    crash.bind_user(id=dongle_id)
    crash.bind_extra(version=version, dirty=dirty, is_eon=True)
    crash.install()

    try:
        while 1:
            cloudlog.info("starting athena daemon")
            proc = Process(name='athenad',
                           target=launcher,
                           args=('selfdrive.athena.athenad', ))
            proc.start()
            proc.join()
            cloudlog.event("athenad exited", exitcode=proc.exitcode)
            time.sleep(5)
    except:
        cloudlog.exception("manage_athenad.exception")
    finally:
        params.delete(ATHENA_MGR_PID_PARAM)
예제 #3
0
def main():
    params = Params()
    dongle_id = params.get("DongleId")
    crash.bind_user(id=dongle_id)
    crash.bind_extra(version=version, dirty=dirty, is_eon=True)
    crash.install()

    # setup shared parameters
    last_gps = None
    query_lock = threading.Lock()
    last_query_result = None
    last_query_pos = None
    cache_valid = False
    osm_way_id = 0
    sharedParams = {'last_gps' : last_gps, 'query_lock' : query_lock, 'last_query_result' : last_query_result, \
                    'last_query_pos' : last_query_pos, 'cache_valid' : cache_valid, \
                    'osm_way_id' : osm_way_id}

    qt = QueryThread(1, "QueryThread", sharedParams=sharedParams)
    mt = MapsdThread(2, "MapsdThread", sharedParams=sharedParams)
    mggps = MessagedGPSThread(3,
                              "MessagedGPSThread",
                              sharedParams=sharedParams)

    qt.start()
    mt.start()
    mggps.start()
예제 #4
0
파일: mapd.py 프로젝트: umaiiir/openpilot
def main(gctx=None):
    params = Params()
    dongle_id = params.get("DongleId")
    crash.bind_user(id=dongle_id)
    crash.bind_extra(version=version, dirty=dirty, is_eon=True)
    crash.install()

    main_thread = threading.Thread(target=mapsd_thread)
    main_thread.daemon = True
    main_thread.start()

    q_thread = threading.Thread(target=query_thread)
    q_thread.daemon = True
    q_thread.start()

    while True:
        time.sleep(0.1)
예제 #5
0
파일: mapd.py 프로젝트: togo01/ArnePilot
def main():
    params = Params()
    dongle_id = params.get("DongleId")
    crash.bind_user(id=dongle_id)
    crash.bind_extra(version=version, dirty=dirty, is_eon=True)
    crash.install()

    # setup shared parameters
    last_gps = None
    query_lock = threading.Lock()
    last_query_result = None
    last_query_pos = None
    cache_valid = False
    traffic_status = 'None'
    traffic_confidence = 100
    last_not_none_signal = 'None'
    speedLimittraffic = 0
    speedLimittrafficvalid = False
    speedLimittrafficAdvisory = 0
    speedLimittrafficAdvisoryvalid = False
    sharedParams = {'last_gps' : last_gps, 'query_lock' : query_lock, 'last_query_result' : last_query_result, \
                    'last_query_pos' : last_query_pos, 'cache_valid' : cache_valid, 'traffic_status' : traffic_status, \
                    'traffic_confidence' : traffic_confidence, 'last_not_none_signal' : last_not_none_signal, \
                    'speedLimittraffic' : speedLimittraffic, 'speedLimittrafficvalid' : speedLimittrafficvalid, \
                    'speedLimittrafficAdvisory' : speedLimittrafficAdvisory, 'speedLimittrafficAdvisoryvalid' : speedLimittrafficAdvisoryvalid}

    qt = QueryThread(1, "QueryThread", sharedParams=sharedParams)
    mt = MapsdThread(2, "MapsdThread", sharedParams=sharedParams)
    mggps = MessagedGPSThread(3,
                              "MessagedGPSThread",
                              sharedParams=sharedParams)
    mgarne = MessagedArneThread(4,
                                "MessagedArneThread",
                                sharedParams=sharedParams)

    qt.start()
    mt.start()
    mggps.start()
    mgarne.start()