Inspiration

For people without any coding background, learning syntax and simply getting a program to run can seem daunting. We've come across a lot of people even at our university who view programming as some mystical art, and can be wary to engage as a result. Additionally, when people do attempt to code, their introductory projects usually just involve some simple prints to a command line, or something similar. We wanted to create an interactive experience that enables absolute beginners to get a feel for the very basics of coding and see their work in action.

What it does

Our project involves both a starter robot with two wheels, a light, and a buzzer, and a C script that acts as a simple interpreter. Users can write commands in a c file, drag and drop the file into the robot's microcontroller, and (after putting it somewhere it can roam free) watch it go! We've included a few basic features to allow a user to control an indicator light and drive, so all a beginner needs to do is choose what they want to do! Ideally this would be on display at a club tabling event, or a space where someone could offer people to write their own robot code and test it in under 5 minutes.

How we built it

Robot

The robot was constructed using elements of the Grove Starter Kit Plus and a Raspberry Pi Pico board, as well as a few additional hardware pieces at our disposal.

Interpreter

The interpreter is LISP-style and was written in C, and the executable parses through the input of the code.txt file to separate lines of text into functions and arguments, which it then converts into appropriate instructions for the raspberry-pi microcontroller.

Challenges we ran into

We ran into a bit of difficulty with one of the motors receiving more power than another, even though the code was identical. Additionally, we hoped to implement some filesystem handling so that one could use even a simple .txt file to input their code, but we didn't have time.

Accomplishments that we're proud of

We made a working robot in 24 hours and provided a way for people to interact with code that's even easier to start than Python! We provided a fun interactive experience that could be used to encourage people to start programming.

What we learned

Programming projects are more than just an idea - they require knowledge across many skillsets, and can have a lot of unforeseen hiccups along the way.

What's next for BasicBasedBot

As mentioned above, we hope later to implement the ability for users to simply write in a .txt file instead of a .c file. If displayed at an even alongside a coding mentor, this won't be an issue, but we'd like for people to have the most ease of access possible. Additionally, we'd like to add more functionality to the robot itself.

Share this project:

Updates