Skip to content

RajrupaDas/r25-test

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

R-25 Test

Some Instructions

  1. You may use any online resources, datasheets, or documentation needed, but be mindful of your time and stay focused on the task.
  2. The duration of the test is 90 mins from 5:15pm to 6:45 pm.
  3. There will be a MCQ test conducted here
  4. There are 3 tasks in the tests. Complete all of them.
  5. In case you are not able to complete all the tasks, do upload the whatever you are able to do.
  6. In the README.md of your repository include your thought process, places where you got stuck, where you used the help of chatGPT, google or other online resources.
  7. Even if you are not able to solve anything. Do fill the readme and what your thought process would have been.
  8. Carefully read the instructions to implement the required functionality.
  9. Install mingw(c compiler) and git if you haven't already done it.
  10. After finishing your test, provide the link to your forked repository in the google form provided at the end.

Aim/Objective: You are implementing code to control motors for a rover using data received from an RC transmitter.

Description

You are implementing code to control a sabrtooth motor driver(we are only trying to control motor 1 using S1 of Sabertooth), connected to drive motors of the rover, using data received from an RC transmitter(make note that the transmitter is configured to transmit data in extended limits). The data from the transmitter is being recieved by a SBUS reciever module, you can find about the data protocol used here.

Task 0: Fork the provided repository and ensure it is set to PUBLIC so we can access and assess your work.

Task 1: Interpolation for Sabertooth.

The motor driver (Sabertooth 2x60) in the simplified serial mode (check out the datasheets) Your task is to interpolate a channel value into the format accepted by the motor driver, and make the rover move in forward or backward direction.

Task 2: Compile and run the code.

Code

  1. src/main.c: Code for running the test.
  2. lib/parsing.c: Complete the defined interpolation function here.

How to Compile & Check your code

(make sure you are in the root directory)

  1. Compile your code by running: make build
  2. To check if your code is implemented correctly run: make check

If you are able to compile your code successfully you should see something like this on your screen:

  1. If your make check was unsuccesfull, you can clean your attempt by running make clean, review your implementation and repeat the previous steps.

Solution

Understanding

Describe what you understood about the problem.

Thought Process

After understanding the problem, describe how you decided to proceed towards solving the question.

Implementation

How did you decide to implement your solution.

Mention the details, such as the scaling used in the interpolation and how you tested it.

Google Form

Link to Repo Submission

About

R25 Coding Test - GitHub Round

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 53.9%
  • Python 36.9%
  • Makefile 9.2%