> For the complete documentation index, see [llms.txt](https://gilmour.online/compsci/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gilmour.online/compsci/archives/vanek-archives/old-robotics-8/end-of-class-project.md).

# OLD: End of Class Project

{% embed url="<https://youtu.be/1y49ZzFrWAI>" %}

{% embed url="<https://youtu.be/y7NhaF1w10U>" %}

For the last two days, we will be working on our final project.

Over the course of the quarter, we have learned:

* To use digitalWrite to turn LEDs on and off
* Use digitalRead and / or attachInterrupts to find if a button has been pushed.
* Use analogRead to find how much a potentiometer has been turned.
* Use Servo.write to move a servo motor.
* To create your own functions if they are going to be called repeatedly to save on code space.
* Use a serial monitor to share data with a user.

For the final arduino project, you are going to design something physical which uses at least 3 of these concepts. You will create a 3D model of your item and include 3D components such as the arduino, servos, etc. You will not have to wire or code the circuit, but in addition to your 3D Model, you will need to share a google doc with me describing what your invention is used for and which of the above concepts it would include.

**The goal of your invention is to make life easier for the person or people using your device.**

So, the 4 steps to this project are:

1. Before building any 3D models, start by brainstorming at list 10 ideas of things you could invent / make / modify using the skills you have. Add it to the start of the google doc you will share in a **Brainstorming** section.
2. Once you decide on an invention, build it using the arduino components in Tinkercad's 3D design space.
3. Write a **Summary** in your google doc describing what your invention is used for and which of the above concepts it would include.
4. **Share** your doc with me.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://gilmour.online/compsci/archives/vanek-archives/old-robotics-8/end-of-class-project.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
