Clippy
I am making a small bot using a Raspberry Pi 3 B a microphone and a screen which will all be held in a small case.
Created by
Savit Arora
Tier 5
15 views
0 followers
Savit Arora
added to the journal ago
Got all the Code and Libraries
What I did: I got all the libraries I needed to run my code and I got my code onto the Pi.
How I did it: I used the terminal to download the libraries I needed like PyAudio. I also updated my Python and enabled I2C for my screen. I then made my code into a text file so I could upload it to a usb and then I used to that usb to copy the code onto my Pi. I then pasted the code into the terminal and used the terminal to make it into a .py file. At first most of the libraries were giving me errors but then I found a way to download them without errors using zip files. After I got my libraries installed I made my code a file by pasting it into the terminal and using the nano command in the terminal. The first time I did it my code corrupted so I did it again and it saved properly this time.
What went well: Fixing the errors and getting my code onto the Pi went pretty well.
What's next: Testing the speakers, mic, and screen.

Savit Arora
added to the journal ago
Made the case and wired everything
What I did: I got my case finished and wired everything.
How I did it: I got the case printed by a friend multiple time because I changed the design and improved it to make it hold the Pi better. After I got the case printed with the final design I wired the screen to the Raspberry Pi and tried wiring the potentiometer for volume control but failed because the Raspberry pi can't read the analog value. Since I can't use the potentiometer to control the volume of my Pi I decided to remove it. I then got a few leds and attached them to my breadboard which I then wired to my Arduino Unos GND and digital pins.
What went well: Finishing the case and wiring everything went well but not having a external volume control anymore was sad.
What's next: Making sure the code works and hopefully submitting my demo.

CAN ⚡🚀
approved Clippy ago
Tier approved: 5
Grant approved: $23.00
Dope
Savit Arora
submitted Clippy for review ago
Nachu Thenappan 🚀
requested changes for Clippy ago
Just a small error, could you look at your Github bom file the prices only add up to 12.57 you must have forgotten to place the correct prices on the parts. Resubmit when fixed!
Savit Arora
submitted Clippy for review ago
Nachu Thenappan 🚀
requested changes for Clippy ago
Hi, it is unclear what you are trying to purchase as the BOM only adds up to 16.5$ and the screenshot given is not an actual cart screenshot yet the amount you are requesting is 25$. Please fix the repo BOM and cart screenshot before resubmitting.
Savit Arora
submitted Clippy for review ago
NotARoomba 🚀
requested changes for Clippy ago
Please put a screenshot of your full assembly in your repo readme (it should include the Arduino, OLED, and speaker)
Savit Arora
submitted Clippy for review ago
CAN ⚡🚀
requested changes for Clippy ago
Please put a screenshot of your full assembly in your repo readme
Savit Arora
submitted Clippy for review ago
NotARoomba 🚀
requested changes for Clippy ago
Your repo has not been updated with the full assembly, please add it.
Savit Arora
submitted Clippy for review ago
CAN ⚡🚀
requested changes for Clippy ago
Please put a screenshot of your full assembly in your repo
Savit Arora
submitted Clippy for review ago
Iamalive 🚀
requested changes for Clippy ago
Looks like you wrote "I will make the onshape models to simulate how the final design will look like," but didn't attach the new onshape model? You need to attach a full model with all of the electronics inside to make sure they fit!
Savit Arora
submitted Clippy for review ago
Savit Arora
added to the journal ago
Made the Case More Complex
What I did: I made the case complex by adding a Arduino slot and a place for the wires to connect it to a breadboard.
How I did it: I asked Tanook how I can make my case more complex and he gave me the idea of adding LEDS. TO add LEDS I thought about using the Arduino Uno I already have to control the LEDS which will be on a breadboard on top of the case. To add the Arduino to the case I wanted to make it look clean so I decided to make a slot in the lid where the Arduino Uno would sit. I also added a battery holder underneath so it would look clean.
What went well: Making the actual case went well but doing the measurements and adding them to the model was annoying.
What's next: I will make the onshape models to simulate how the final design will look like.

Tanuki ⚡🚀
requested changes for Clippy ago
Can you add your cad, BOM to ur readme? Your case also needs to be more complex.
Savit Arora
submitted Clippy for review ago
Kai the Jolly Guy 🚀
requested changes for Clippy ago
Hey Savit, you need to model all the electronics into your case to make sure it all fits :D When you're done, please add a final picture of the assembly to your readme and journal!
Savit Arora
submitted Clippy for review ago
technical_.
requested changes for Clippy ago
As said before, multiple times, please expand upon your journals. Do not just write "I finished my code today". This should be more comprehensive and extensive, such as some processes you took when writing the code, specific ideas you kept in mind, problems/struggles that arises. This is your last chance before getting permanently rejected.
Savit Arora
submitted Clippy for review ago
Savit Arora
added to the journal ago
Made the 3d model
What I did: I uploaded the case and learned how to use Onshape.
How I did it: To learn Onshape I watched the tutorials in the learning hub and practiced moving around. I edited the case to make sure there is enough space for the pins of the screen to fit.
What went well: Learning Onshape was a hard, but once I got the hang of it, it became easy.
What's next: I will add a powerbank to the design to ensure portability. After I made the models I realized that I forgot to add the speaker and decided to use external speakers I already have.

technical_.
requested changes for Clippy ago
As said before, "Journal is lacking in content and explanations about the processes being taken to develop the design. Please expand on the journals. You should not be writing "I finished the code today". This should be broken up into sections, with each section being a journal.". Failure to incorporate feedback on your next submission may result in a permanent rejection.
Savit Arora
submitted Clippy for review ago
technical_.
requested changes for Clippy ago
Journal is lacking in content and explanations about the processes being taken to develop the design.
Please expand on the journals. You should not be writing "I finished half of the pcb today" without providing images of your work. This should be broken up into sections.
Savit Arora
submitted Clippy for review ago
Savit Arora
added to the journal ago
Wrote The Code
What I did: I used python to create the code. After writing the code in VS Code, I deployed it to the Raspberry Pi. I first got Raspberry Pi OS on my Raspberry Pi to be able to run my code. I then installed all required libraries to run my code and cloned my github repository, which contained the code.
How I did it: I controlled my components using the RPi.GPIO library. I started configuring the microphone using Python's audio libraries. Additionally, I installed packages to support potentiometer readings and speaker output. In order to make updates after the items arrived easy, I wrote the code to keep each hardware function modular.
What went well: The Raspberry Pi booted successfully, and the libraries downloaded quickly. The code compiled without issues which was good.
Challenges: I had to troubleshoot some GPIO pin assignments and adjust screen resolution settings to match the display size. Installing the correct audio libraries for the microphone and speaker also took some trial and error.
Next steps: I plan to refine the code once all the parts arrive if my project gets approved. 
Kai the Jolly Guy 🚀
requested changes for Clippy ago
Hey Savit, you need to journal about the full assembly of your project, and also include photo's of it so that we know what your final project will look like!
Savit Arora
submitted Clippy for review ago
Tanuki ⚡🚀
requested changes for Clippy ago
Hey! Before you ship your project, your full project should be completed.
Savit Arora
submitted Clippy for review ago
CAN ⚡🚀
requested changes for Clippy ago
Please write the code for this before shipping.
Savit Arora
submitted Clippy for review ago
Savit Arora
added to the journal ago
Hardware Switch & Planning Code
What I did: I was starting the code for the Arduino Uno and then when looking through the specs to make sure that it would work to handle all the code on it's own I realized that it couldn’t handle Clippy’s requirements, so I looked at what I had and decided to use a Raspberry pi 3b instead.
How I did it: I reviewed the limitations of the Arduino Uno Rev 3 on the arduino web site and checked to see its processing power and capabilities. Once I concluded that the Arduino Uno could not handle the code I checked what other equipment I already had to make sure I did not spend anything extra and decided to use my Raspberry Pi 3b. The Pi supports Python and has enough processing power for voice input and screen output.
What went well: The switch made my project work and let me use improved items to make it run better.
Next steps: Update the README.md and begin coding. Coding will include adding the speech recognition for "Hey Clippy" and then adding the code to make it use chatgpt. After that I will work on adding captions on the screen and adding the image of clippy which is a bitmap I already have. 
Savit Arora
added to the journal ago
Made README.md
What I did: I wrote the README.md file and uploaded the .STEP file for the case.
How I did it: The README is a basic description of Clippy, the things I used, and what its basic functions should be.
What went well: The README.md tells the reader what the project should do and the materials used.

Savit Arora
added to the journal ago
Finished Case
What I did: I completed the case.
How I did it: I added cutouts for the screen's pins and potentiometer. Since the screen’s pin dimensions weren’t on amazon, I estimated and adjusted the model accordingly. As for the mic it will be hidden inside the case and placed down by the ventilation holes.
What went well: The case is the exact size of the raspberry pi 3 and the components should fit cleanly in the lid and box.
Challenges: I’ll need to check if the screen fits after the screen and box arrive. If the screen does not fit I will cut out the hole so the screen does fit.

Savit Arora
added to the journal ago
Created BOM.csv and started case
What I did: I made the BOM.csv file with the microphone and screen. I also began the case that will hold the Raspberry Pi, screen, microphone, and potentiometer.
How I did it: I researched the cheapest parts based on my plan and added them to the BOM. For the case I started by making the project files and adding the pieces needed.
What went well: I was able to find affordable components and made my BOM easily.
Next steps: I’ll finish the case, then move on to writing the README and starting the code.

Savit Arora
started Clippy ago
10/19/2025 12 PM - Created BOM.csv and started case
What I did: I made the BOM.csv file with the microphone and screen. I also began the case that will hold the Raspberry Pi, screen, microphone, and potentiometer.
How I did it: I researched the cheapest parts based on my plan and added them to the BOM. For the case I started by making the project files and adding the pieces needed.
What went well: I was able to find affordable components and made my BOM easily.
Next steps: I’ll finish the case, then move on to writing the README and starting the code.

10/19/2025 1 PM - Finished Case
What I did: I completed the case.
How I did it: I added cutouts for the screen's pins and potentiometer. Since the screen’s pin dimensions weren’t on amazon, I estimated and adjusted the model accordingly. As for the mic it will be hidden inside the case and placed down by the ventilation holes.
What went well: The case is the exact size of the raspberry pi 3 and the components should fit cleanly in the lid and box.
Challenges: I’ll need to check if the screen fits after the screen and box arrive. If the screen does not fit I will cut out the hole so the screen does fit.

10/19/2025 2 PM - Made README.md
What I did: I wrote the README.md file and uploaded the .STEP file for the case.
How I did it: The README is a basic description of Clippy, the things I used, and what its basic functions should be.
What went well: The README.md tells the reader what the project should do and the materials used.

10/19/2025 4 PM - Hardware Switch & Planning Code
What I did: I was starting the code for the Arduino Uno and then when looking through the specs to make sure that it would work to handle all the code on it's own I realized that it couldn’t handle Clippy’s requirements, so I looked at what I had and decided to use a Raspberry pi 3b instead.
How I did it: I reviewed the limitations of the Arduino Uno Rev 3 on the arduino web site and checked to see its processing power and capabilities. Once I concluded that the Arduino Uno could not handle the code I checked what other equipment I already had to make sure I did not spend anything extra and decided to use my Raspberry Pi 3b. The Pi supports Python and has enough processing power for voice input and screen output.
What went well: The switch made my project work and let me use improved items to make it run better.
Next steps: Update the README.md and begin coding. Coding will include adding the speech recognition for "Hey Clippy" and then adding the code to make it use chatgpt. After that I will work on adding captions on the screen and adding the image of clippy which is a bitmap I already have. 
10/24/2025 - Wrote The Code
What I did: I used python to create the code. After writing the code in VS Code, I deployed it to the Raspberry Pi. I first got Raspberry Pi OS on my Raspberry Pi to be able to run my code. I then installed all required libraries to run my code and cloned my github repository, which contained the code.
How I did it: I controlled my components using the RPi.GPIO library. I started configuring the microphone using Python's audio libraries. Additionally, I installed packages to support potentiometer readings and speaker output. In order to make updates after the items arrived easy, I wrote the code to keep each hardware function modular.
What went well: The Raspberry Pi booted successfully, and the libraries downloaded quickly. The code compiled without issues which was good.
Challenges: I had to troubleshoot some GPIO pin assignments and adjust screen resolution settings to match the display size. Installing the correct audio libraries for the microphone and speaker also took some trial and error.
Next steps: I plan to refine the code once all the parts arrive if my project gets approved. 
10/29/2025 - Made the 3d model
What I did: I uploaded the case and learned how to use Onshape.
How I did it: To learn Onshape I watched the tutorials in the learning hub and practiced moving around. I edited the case to make sure there is enough space for the pins of the screen to fit.
What went well: Learning Onshape was a hard, but once I got the hang of it, it became easy.
What's next: I will add a powerbank to the design to ensure portability. After I made the models I realized that I forgot to add the speaker and decided to use external speakers I already have.
11/15/2025 - Made the Case More Complex
What I did: I made the case complex by adding a Arduino slot and a place for the wires to connect it to a breadboard.
How I did it: I asked Tanook how I can make my case more complex and he gave me the idea of adding LEDS. TO add LEDS I thought about using the Arduino Uno I already have to control the LEDS which will be on a breadboard on top of the case. To add the Arduino to the case I wanted to make it look clean so I decided to make a slot in the lid where the Arduino Uno would sit. I also added a battery holder underneath so it would look clean.
What went well: Making the actual case went well but doing the measurements and adding them to the model was annoying.
What's next: I will make the onshape models to simulate how the final design will look like.

1/4/2026 - Made the case and wired everything
What I did: I got my case finished and wired everything.
How I did it: I got the case printed by a friend multiple time because I changed the design and improved it to make it hold the Pi better. After I got the case printed with the final design I wired the screen to the Raspberry Pi and tried wiring the potentiometer for volume control but failed because the Raspberry pi can't read the analog value. Since I can't use the potentiometer to control the volume of my Pi I decided to remove it. I then got a few leds and attached them to my breadboard which I then wired to my Arduino Unos GND and digital pins.
What went well: Finishing the case and wiring everything went well but not having a external volume control anymore was sad.
What's next: Making sure the code works and hopefully submitting my demo.

1/6/2026 - Got all the Code and Libraries
What I did: I got all the libraries I needed to run my code and I got my code onto the Pi.
How I did it: I used the terminal to download the libraries I needed like PyAudio. I also updated my Python and enabled I2C for my screen. I then made my code into a text file so I could upload it to a usb and then I used to that usb to copy the code onto my Pi. I then pasted the code into the terminal and used the terminal to make it into a .py file. At first most of the libraries were giving me errors but then I found a way to download them without errors using zip files. After I got my libraries installed I made my code a file by pasting it into the terminal and using the nano command in the terminal. The first time I did it my code corrupted so I did it again and it saved properly this time.
What went well: Fixing the errors and getting my code onto the Pi went pretty well.
What's next: Testing the speakers, mic, and screen.
