GithubHelp home page GithubHelp logo

agnos-builder's People

Contributors

adeebshihadeh avatar andiradulescu avatar bongbui321 avatar gast04 avatar gregjhogan avatar houqp avatar incognitojam avatar jnewb1 avatar jyoung8607 avatar nelsonjchen avatar nickn17 avatar pd0wm avatar robbederks avatar sshane avatar yassineyousfi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

agnos-builder's Issues

Filesystem corruption prevention

current rw partitions

  • /persist - we should probably make this ro
    • we put the SSH host keys on there now. these should move to userdata
    • should only need to remount rw in provisioning to write the keys
  • /cache - just handle corruption in agnos by reformatting
  • /dsp - probably doesn't need to be rw?
  • /firmware - also probably doesn't need to be rw?
  • /data - we should try to unmount cleanly
  • /data/media - ditch the last segment and unmount cleanly once we can make sure the rlog ends up on userdata

Add unique AGNOS id

Useful for the updater, since we can't use the hash (takes too long) or agnos version (not unqiue).

Cleanup debs

Remove unused files and services in userspace/debs. Also break them up into smaller packages with individual functions/goals.

new packages

  • PyTorch (the xx version?)
  • pyside2, with shiboken generator

Fix weston sleeps

All these sleeps add up to at least 7 seconds of the startup time:

Improve modem startup time

Restarting the modem (lte + ModemManager services) from a cold boot while AGNOS is already booted seems way faster than normal startup. Is the modem service just started late in the boot process?

ModemManager: try all APNs

Currently, ModemManager only seems to try the first APN for a provider. It will keep trying to connect and fail with the first APN for the provider.

Remove "cd /data/openpilot" from bash config

There should be a nice way to change the default directory for only the main tmux session to /data/openpilot instead of cd /data/openpilot in the bashrc. Ideally, this is done in openpilot's launch script. AGNOS doesn't need to know anything about /data/openpilot.

onnx doesn't load supercombo

AGNOS onnx issue:

comma@tici:/data/openpilot$ python3 -c 'import onnx; onnx.load("/data/openpilot/selfdrive/modeld/models/supercombo.onnx")'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/local/pyenv/versions/3.8.10/lib/python3.8/site-packages/onnx/__init__.py", line 11, in <module>
    from onnx.external_data_helper import load_external_data_for_model, write_external_data_tensors, convert_model_to_external_data
  File "/usr/local/pyenv/versions/3.8.10/lib/python3.8/site-packages/onnx/external_data_helper.py", line 14, in <module>
    from .onnx_pb import TensorProto, ModelProto
  File "/usr/local/pyenv/versions/3.8.10/lib/python3.8/site-packages/onnx/onnx_pb.py", line 8, in <module>
    from .onnx_ml_pb2 import *  # noqa
  File "/usr/local/pyenv/versions/3.8.10/lib/python3.8/site-packages/onnx/onnx_ml_pb2.py", line 33, in <module>
    _descriptor.EnumValueDescriptor(
  File "/usr/local/pyenv/versions/3.8.10/lib/python3.8/site-packages/google/protobuf/descriptor.py", line 755, in __new__
    _message.Message._CheckCalledFromGeneratedFile()
TypeError: Descriptors cannot not be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
If you cannot immediately regenerate your protos, some other possible workarounds are:
 1. Downgrade the protobuf package to 3.20.x or lower.
 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).

More information: https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates

Setting PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python does work, but we should fix if we can

Wi-Fi networks with WPA3 are not supported

Wi-Fi networks using only the WPA3 security protocol are showing the 🚫 symbol next to them, and cannot be joined.

  • The Qualcomm 845 does seem to support WPA3 at a hardware level. (Source: XDA Developers)
  • Discord user nelsonjchen said the missing Security Flag might be "NM_802_11_AP_SEC_KEY_MGMT_SAE". (Link to post)

See the network "DingoAteYourBaby" in the attached screenshot, which is only using WPA3. The IOT network current connected, has the exact same settings, on the same Access Point, except it is using WPA2.
Comma_WPA3

power drop monitor: log timestamp to param

When the power drop monitor triggers, append the current timestamp (seconds since boot) to a param. Openpilot can take care of making sure this gets cloudlogged and ends up in the qlogs next boot.

Burn in prevention

Something like limiting the max brightness 5% every hour the display is on. Also, limit the max brightness when no UI is running.

Low battery state

Sometimes comma three's boot up into a "low battery state". In this state, some cores don't come online.

Repeatedly prints this:

Apr 28 18:59:35 tici kernel: FG: is_batt_empty: batt_soc_rt_sts: 32 vbatt: 4392078 uV msoc:0
Apr 28 18:59:35 tici kernel: FG: is_batt_empty: batt_soc_rt_sts: 32 vbatt: 4392078 uV msoc:0
Apr 28 18:59:36 tici kernel: FG: is_batt_empty: batt_soc_rt_sts: 32 vbatt: 4392078 uV msoc:0
Apr 28 18:59:36 tici kernel: FG: is_batt_empty: batt_soc_rt_sts: 32 vbatt: 4392078 uV msoc:0
Apr 28 18:59:36 tici kernel: FG: is_batt_empty: batt_soc_rt_sts: 32 vbatt: 4392078 uV msoc:0
Apr 28 18:59:36 tici kernel: FG: is_batt_empty: batt_soc_rt_sts: 32 vbatt: 4392078 uV msoc:0

from bootlogs/fbbb958f3157f063/2022-04-28--18-59-39.bz2

Make pip work easily

  • set no cache dir
  • TMPDIR needs to be big and not a non-tmpfs
  • hook pip install to remount the rootfs as rw

Currently, sudo mount -o rw,remount / && sudo $(which pip) install scipy works.

Shutdown faster

Part of the remaining jankiness with the supercaps is keeping the device up between unplugging and replugging. If that time is too short, then systemd will complete a proper shutdown, which can take a long time. We'd still like to properly shutdown, so let's try to just make it faster (10s?).

C3 fastboot mode possible timeout or way to exit fastboot

The way I have my C3 set up typically leaves the secondary usb port plugged into a computer in my car. This causes me a problem when the device reboots or is powered off from inactivity. As when it comes back on it boots into fastboot and the only way to disengage is to remove power wait for caps to discharge and then return power with it unplugged from this computer.

  • Requesting that fastboot has a button i could tap on screen to exit fastboot
  • a timeout so if no fastboot commands detected in X minutes it continues to boot
  • or if it detects that the usb interface is disconnected it exits fastboot.

thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.