This section will be updated at the end of this project..............
I'm a geotechnical engineer/rock mechanist working in an experimental rock mechanics lab, where my job—essentially—is to break rocks. Specifically, I study electrical fracturing, using electric currents to fracture rock. But while brainstorming my final project, I had this wild thought: what if rocks had souls? And here we are, shattering them without a second thought—haha, it’s kind of dark but funny, right?
It got me thinking about how much we, as humans, owe to rocks. From the early days when we sparked fire by rubbing stones together, to the intricate rock carvings of ancient civilizations, and now even using minerals for our modern tech, rocks have given us so much. So, in a way, I wanted to show some appreciation for all they've done for us. That’s when I thought, why not create a smart pet rock? A little companion for rock mechanics—something cute and fun, but also a nod to all the ways rocks have helped shape our world.
My plan is to carve out a large riverbed boulder or a nearly round rock. This rock will sit on a 3D-printed box that will also contain other essential electronics and minicomputers. The main features of this pet rock will include eyes that light up when someone approaches or when it hears someone talking. Additionally, it can track people’s movements, so the eyes will follow anyone moving in front of it. If time and resources permit, I’d like to add speaking capabilities as well. I envision this project as a blend of art, technology, and engineering geology.
This Fusion design will be updated in the coming weeks.
I began brainstorming how to start the project and discussed my idea with several people. The main challenge I identified was carving the rock. My initial thought was to carve it directly, but that seemed quite difficult. Then Steve suggested a better approach—drilling the rock at a specific angle and diameter to create space for the eyes and electronic components.
Alright, let's break down what I need for the board for my final project. First, the board should be able to support Wi-Fi communication or direct message connection with a nearby computer that controls most of the tasks. It also needs to control four servo motors for eye movement and one larger servo to rotate the rock (though that part’s optional) for the rock toy. I’d also like an LED screen (now I am considering OLED screen) to display some messages and a few smaller LEDs to indicate power status or other simple info. On top of that, I want to connect a camera module (camera module can be directly connected to ESP32, so I am using that) to the board to track people and adjust the eye movement based on that. And finally, the board should connect to a speaker for audio output. That's what I have in mind so far.
After several trials and errors, and consulting with Anthony and Sam, I finally came up with the version 0 (V0) of the board for my final project. There isn’t too much happening on the board—it's primarily designed to house a Raspberry Pi Pico and an ESP32, both of which have their own microcontrollers.
Since I need to use five servo motors, the power from the Raspberry Pi Pico alone won’t be enough. So, I decided to connect an external power supply. To prevent any potential damage from power connection errors in the future, I'm adding a diode to ensure the current flows in only one direction.
The Raspberry Pi Pico and the ESP32 are connected in series for communication between the two microcontrollers. I’m also adding a four-pin output connector for the OLED display, and another four-pin output for the microphone and speaker. Even though I don’t have immediate plans to use the microphone, it would be great to incorporate it as a sensor to detect people.
Schematic
PCB
I spent the whole day 3D designing the eye mechanism for my rock toy. I took a lot of inspiration from these two YouTube videos (Video 1 and Video 2). Although my requirements and theirs are different and my CAD skills are not perfect yet, I spent the whole day working on the CAD design.
I've 3D-printed the components for the eye mechanism, which I'm calling version 0. After assembling it, I noticed several areas for improvement. First, the main frame that supports the servo motor and the eye mechanism isn't strong enough. I may need to rethink the eyelid mechanism—the concept seems to work, but I’m unsure if the servo motor is powerful enough to drive it. The tight connections are causing issues, so I’ll need to revisit the joints and redesign them. Additionally, I'll redesign the connection point between the main frame and the servo motor to ensure it's sturdy enough to resist any unwanted movement.
You can see the video here
I designed this board on week5. It primarily houses a few LED lights to indicate whether the board is functioning, and it includes two microcontrollers: the Raspberry Pi Pico and the Xiao ESP32. The Raspberry Pi Pico is used to control the servo motors and connects to the microphone and speaker sensors. The ESP32 is mainly responsible for the camera module and its built-in Wi-Fi. The ESP32 will handle the video sensor and communicate with the Raspberry Pi to move the eye mechanism accordingly. This is the plan for now—let’s see how much I can achieve.
1. Fresh after milling:
2. After slight sanding:
3. Through inspection
There was an unintended connection between the ground wire and the power due to an imperfect milling process, as shown in the picture below within the blue square. I resolved this by running a sharp object through the milling path.
4. After soldering
I am still not completely satisfied with my final board design, but I will use it to test the eye mechanism I've prepared for the final project. I'll continue updating the board as I work toward the final version.
During the week 9: Output Devices, I have changed the board and the work on the eye mechanism. For the full detail how I did that please go the docuementation of week 9. Here I will only put the major milestons.
Board Schematic
PCB Layout
After completing the soldering, this is how the final PCB board looks:
Finally, I connected the eye mechanism to the board. The next step will be to write the code to control it and begin testing.
I designed and printed the casing for the eye mechanism and gave the code a little makeover. Now it’s absolutely adorable! Don’t believe me? Take a look for yourself... prepare for cuteness overload!
We are slowly approaching the final weeks of HTMAA, and there’s still a lot I need to do for my final project. Here, I’m updating the progress I’ve made since my last update.
First and foremost, the biggest bottleneck in my project is drilling the rock to fit the eye mechanism. I consulted with a few people about how to approach this. I also went to the EAPS department to discuss using their rock core driller since I’ve used it before. Unfortunately, I had to leave empty-handed because they don’t have a 2.5" diamond bit for drilling.
I now have three options for drilling the rock. The first option is using the water jet cutter, but it has a disadvantage—it cuts all the way through, which I don’t want. The second option is buying my own 2.5" diamond core bit. The third option is reducing the size of the eye mechanism to fit a 2" diameter hole. For now, I’ve decided to go with the third option and reduce the casing size to 2". I chose this because the 2.5" hole is too large and wouldn’t look good. Reducing the hole size will improve the aesthetics of the project as well.
To implement this, I changed the casing and removed the 3D-printed arm for the eyelid and eyeball mechanism. Instead, I plan to use strong metal wire, which will also make the model more compact. Additionally, I reconfigured the servo motors so they fit inside the 2" diameter cylinder. You can see the updated design of the eye mechanism in the rendering below:
Currently, the parts are being 3D printed, and I plan to test them next week and proceed with drilling the rock. I also 3D-scanned the rock, which you can see in the video below:
The mid-term review aims to encourage students to start working on their final projects before it's too late. The instructions for the mid-term review are: "On your final project site, post a system diagram for your project, list the tasks to be completed, create a schedule for completing them, and meet with your local instructor to review these along with your weekly assignments." I believe I have the system diagram for my final project, but I still need to develop a concrete plan for completing the remaining tasks, which I will outline below.
Click here to download the Excel fileThe eye mechanism, modified on November 15, was tested today and works perfectly. Below is a picture of the mechanism and the working video.
Watch the mechanism in action:
This is Week 12 of the HTMAA class. I plan to use this week's assignment to progress on my final project while also tackling other essential tasks needed for its completion. Please visit the Week 12 documentation page for a detailed explanation of my work during this week.
Here, I am sharing updates on the design work for the rock's base box, which will house all the electronics and the gear system responsible for turning the rock left and right.
Today I left my rock in the earth science department for drilling. Special thanks to Uli
Drilling the rock to put the eye assembly, reviewing the board and redesign, learning how to use serial communication, designing and casting the box for the rock to sit in...