ArduPilot / ArduPilot/MissionPlanner
Dronecan set param function sending incorrect value for integer strings
- Dominant language
- C#
- Stars
- 2.4k
- Forks
- 2.9k
- Avg merge
- 19h 16m
- Merged PRs (30d)
- 4
Description
#### Issue details
Large strings that can equate as an integer number cause the dronecan set parameter function to send in scientific notation.
#### Version
1.3.74 checked on master and it's still present.
#### Platform
[ X] All
[ ] AntennaTracker
[ ] Copter
[ ] Plane
[ ] Rover
[ ] Sub
#### Airframe type
Any
#### Hardware type
Cube orange / bluemark remote ID module. Hardware type doesn't effect the issue.
#### Logs
No logs but in the function here https://github.com/ArduPilot/MissionPlanner/blob/master/ExtLibs/DroneCAN/DroneCAN.cs#L2024
When a string is greater than 12 digits all numeric (probably less than this number. This is the length of the number I was using.) the object converts the string into to scientific notation.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at ExtLibs/DroneCAN/DroneCAN.cs around line 2024 and inspect how the set-parameter function converts numeric strings before sending them. Reproduce the issue with a numeric string longer than 12 digits, then verify that the transmitted value remains the original integer string rather than scientific notation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- networking, robotics
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100