Skip to content
This repository has been archived by the owner on Apr 12, 2024. It is now read-only.

Logger Class for Testing #9

Open
4 tasks
ihagedo opened this issue Jan 23, 2022 · 4 comments
Open
4 tasks

Logger Class for Testing #9

ihagedo opened this issue Jan 23, 2022 · 4 comments
Assignees
Labels
enhancement New feature or request serial Related to the serial communication package of the ASS.

Comments

@ihagedo
Copy link

ihagedo commented Jan 23, 2022

Description

Once #7 is complete, create a logger class that can be used for table testing of serial communication.

This issue should also be completed after or concurrently issues #8 and #10 .

The design doc for this feature can be found in the loggerwriteup.pdf file on this branch. Please note due to architectural changes, the specific architecture in the writeup is slightly different than the final architecture, however, the process is identical. The write-up will be updated soon.

Sub-tasks

  • Create a Logger interface that can do the following:

    • Log the raw packets to a txt file.
      This logger would be called from the amp_serial_jetson_ECU_TEST.cpp file, specifically the build_packet function.
    • Log human-readable information using the ROS logging library including info messages (current kart state), warnings, and errors.
      The kart state logging will take place in the node created in Navigation Stack Post-Processing Node #8. It should maintain a state machine (with cmd_vel topic messages as input) to determine if the kart is speeding up, down, maintaining speed, turning right or left, and how fast packets are being sent. This node will interface with the logger to log the current kart state to ROS.
  • Make sure your code follows the style guide.

Resources

@bitmaks
Copy link

bitmaks commented Jan 23, 2022

Work happening on logger-comm branch

@zghera
Copy link
Member

zghera commented Jan 23, 2022

Can either @ihagedo , @aaaakshat , or @FraserD404 update this GitHub issue to include more details about the problem this is trying to solve and the general steps that should be taken to complete this (to the best of current knowledge). See Autonomous-Motorsports-Purdue/AMP_ASSv1#19 for a decent example on this.

At a minimum, a longer description and linking @FraserD404 's doc would be good. But following the format of the other PRs is recommended.

@zghera zghera added enhancement New feature or request serial Related to the serial communication package of the ASS. labels Jan 23, 2022
@FraserD404
Copy link

I will update this issue today following the format of Autonomous-Motorsports-Purdue/AMP_ASSv1#19

@FraserD404
Copy link

Description

Turn the data packets sent to the Arduino into human readable statements by logging the raw packets to a .txt file, then displaying them using the built in ROS logging library. The statements logged would be info, warning, errors, and current cart state. The packets would be logged in hexidecimal form in the amp_serial_jetson_ECU_TEST.cpp file, specifically the build_packet function, to an output.txt file. A separate .cpp would then translate and output the packet contents, compare the state of the cart to past packet(s) & output if it’s speeding up, down, or neutral, turning right or left, as well as the execution time.

The writeup can be found in the loggerwriteup.pdf file. Please note due to architectural changes, the specific architecture in the writeup is slightly different than the final architecture, however the process is identical. The writeup will be updated soon.

Link to Detailed Writeup

edit (Jan 24, 10:06PM): fixed broken link to branch

Edit (ZGhera, Jan 29): Added this to the top-level description

@zghera zghera transferred this issue from Autonomous-Motorsports-Purdue/AMP_ASSv1 Feb 10, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request serial Related to the serial communication package of the ASS.
Projects
None yet
Development

No branches or pull requests

4 participants