Check the vehicle state before sending each command
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
Part of the prerequisites for real commands (tracking issue to follow). Related: #14, #11.
Problem
The generic "command availability" work (#14, contracts#13) is a larger feature and will come later. Until then, a command handler that just sends frames could, for example, open the charge port or close a window while the car is driving, or act on a state that went stale when the bus fell silent. All E-GMP commands are still "Not implemented" (#37–#42), so this can be settled before the first one lands.
Proposal
- A shared check that runs before a command's frames are built. Each command declares the state it needs, and a command that doesn't hold is answered with a failed
CommandResponseand a clear message. A dedicated status code comes with contracts#13. - State freshness counts as a precondition. Don't act on state older than N seconds, or while the bus is silent (see #11).
- The response is always sent, including when the command is rejected because read-only is on or the identity isn't confirmed.
- Consider a minimum interval between repeats of the same command, so a stuck button can't flood the bus.
- Each command PR lists its preconditions in its description and in
docs/. Candidates to settle per command from real behaviour: not driving (charge port, trunk and frunk), car awake, current state differs from the requested one.
Done when
There is a helper and tests with fixture states, the docs describe the rule, and the first implemented command uses it.
- Ngôn ngữ chính
- Rust
- Star
- 1
- Fork
- 0
- Merge trung bình
- 12 giờ 49 phút
- Pull request đã merge (30 ngày)
- 19
Chuẩn bị môi trường
Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Không có hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của OpenCarControls/firmware
-
e-gmp enhancement
OpenCarControls/firmware#75 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
OpenCarControls/firmware#74 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
OpenCarControls/firmware#72 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
e-gmp enhancement
OpenCarControls/firmware#71 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
OpenCarControls/firmware#70 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của OpenCarControls/firmware
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
farion1231/cc-switch#8829 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Validate CI command vectors before indexing Cargo subcommandsCó thể đã có người làm @amandeavor đã nhận hôm nay. Đang mởbug ci good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
longbridge/gpui-kit#3677 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
E-pr-welcome
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
seanmonstar/reqwest#3121 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 68/100
ilya-zlobintsev/LACT#1235 ·
Maintainer thường phản hồi trong vòng 1 ngày