Deserializing error for string type
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- cpp
- Lĩnh vực
- embedded-iot, robotics
Hướng nghiên cứu
Tái hiện lệnh gọi service trên STM32F767ZI với một trường string bằng ROS 2 Humble, sau đó kiểm tra lỗi của executor tại ucdr_deserialize_sequence_header khi phân tích kiểu message lồng nhau. Issue được hoàn tất khi MCU chấp nhận và xử lý lệnh gọi service mà không có lỗi giải tuần tự hóa, trong khi các lệnh gọi service không có string vẫn tiếp tục hoạt động.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Describe the bug
String types in service types cause microROS on the MCU side to fail in the executor due to a deserializing error. Running it through a debugger it fails in ucdr_deserialize_sequence_header when parsing the nested message type.
Service calls with non-string types work as expected. I've verified it's not a buffer overflow since the buffer size >> bytes received. There is also no packet corruption in UDP traffic, the dest packet and src packet match 1:1.
To Reproduce
Steps to reproduce the behaviour:
- On MCU, init service with service type that has a string type
- On host side, call service
Expected behaviour
The MCU accepts the service call and handles accordingly.
Actual behaviour
Executor fails due to deserialization error.
System information (please complete the following information):
- OS: Ubuntu 22.04
- ROS 2 Humble
- MCU: STM32F767ZI
- Ngôn ngữ chính
- C++
- Star
- 201
- Fork
- 111
- Merge trung bình
- 1 ngày 6 giờ
- Pull request đã merge (30 ngày)
- 10
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 micro-ROS/micro-ROS-Agent
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 68/100
micro-ROS/micro-ROS-Agent#270 ·
-
micro-ROS Agent on macOS Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
micro-ROS/micro-ROS-Agent#269 ·
-
Release to apt Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
micro-ROS/micro-ROS-Agent#267 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 42/100
micro-ROS/micro-ROS-Agent#266 · 1 bình luận ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
micro-ROS/micro-ROS-Agent#265 · 1 bình luận ·
Tất cả issue của micro-ROS/micro-ROS-Agent
Issue tương tự
-
enhancement
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
QuantStack/git2cpp#187 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
AXERA-TECH/ax-llm#77 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
games-on-whales/wolf#509 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100