Intro: Remote Controlled Mars Rover W/ Android App
In this Instructable I will show you how to customize a remote controlled vehicle into a space rover, and also how to create a companion app. Between the rover and the Android application, this project took me about a week and a half to two weeks, working on and off. It took a lot of outside the box thinking to replicate NASA’s Curiosity Mars space rover, and translate it into RC scale using a preexisting chassis. The RC car is still 100 percent functional, and I also created a fully functioning “companion” app to go along with it, complete with 3 step secure login verification and randomized substance examination results. I added over 95 additional pieces to this build to replicate a rover, and give it the full effect with as many details as possible, resulting in a total visual overhaul. I even added custom stencils and decals to make it look like a legitimate rover, complete with NASA logos and United States flags. I even went as far as adding working LED strips to the underside of the RC rover to give it underbody lighting, and help light up its surroundings at night. There are also 2 micro cameras I picked off of 2 small drones which give it a truly realistic feel, and allow for the rover to easily be converted later on into a fully functioning Mars robot capable of recording and documenting its travels, powered by solar panels attached to its side. There is so much to go over, but first I will start with the Android application.
Step 1: Making the Application
I used MIT App inventor for the creation of the mobile app, and it turned out phenomenally with a truly authentic and professional feel. I added entirely custom backgrounds and graphics, and spent hours and hours making sure that it not only functioned, but looked really great as well.
I made sure to include as many features as I physically could think of needing, and made the app exactly like how I would want if I had a rover up on another planet. I included everything from the time and date, to a live weather feed, and even water and soil test examination results. For the accurate weather, I used an app inventor weather app, which uses python code and can retrieve and display information from the web. I used this as my base, and customized all of the aesthetics to fit in with the overall look of my app. The weather module is able to retrieve information from all of the National Weather Station’s over 2100 observed weather stations around the country! In the photos, I used “KSFO”, San Francisco's weather station, which is right near the Instructable’s headquarters. The weather module shows an image of the current weather conditions, the temperature, the wind speed and direction, the current conditions, and lastly the location. Beneath it I also added a customized section which lists the terrain, humidity, and precipitation. The next module I added was accurate test result of soil and water examinations theoretically from the rover. The results are 100 percent accurate based on the actual soil or water type. For example, water test number 8 which is a contaminated hot springs has accurate temperatures for the average hot spring, and has the accurate pH of a hot spring. I did intensive research on all of the tests I did, and the end product of the “research” could be tested in a lab and come up with the same results based on soil and water type. The soil tests include incredibly detailed coordinates,moisture content in parts per million and percentage, the soil composition, possible organic material, nitrogen levels, and finally pH levels. I even went so far as to make sure the coordinates went in a logical order, and progressed as if the rover might be traveling in the same direction. Again, the soil results are entirely accurate, and moisture content, organic material, nitrogen levels, and the pH levels are all exactly what you could find if you took the certain type of dirt composition and ran it through tests. The water examination includes the detailed coordinates, the classification/type of body of water, water temperature, bacteria levels, contaminant levels, and pH levels. The coordinates are all in the same location as the soil tests, implying that both tests were taken at the same location. As mentioned before, the coordinates progress as they naturally would for a rover traveling in a certain direction, and the water and soil results show that as the rover moved on, he traveled out of a contaminated hot springs area, with harmful bacterias and poisonous soil, into an area with a healthy freshwater river with fertile soil. If this were actually a rover on another planet, these tests would inform us on the habitability of the land and point us in the right direction on a healthy location for a colony. This part of the build was really fun, and all the research to make sure that the results could be 100% accurate was awesome. The last module for my application was to analyse and report the condition of the rover from multiple different sensors “onboard”. While there obviously aren’t all these functional sensors aboard the rover, I made sure to include an entire page full of sensors and information which might be monitored on an actual rover. I have so many conditions including Camera feed delay, robotic arm hydraulic strength, camera quality, software functionality, average speed, suspension absorption, solar power efficiency, battery backup storage, and even overall rover damage. It also states the overall condition and includes a photo of a rover, so if future problem arise, I would change the custom graphics to change any problem areas of the rover to red. Unfortunately none of this was truly functional, but nevertheless it was a blast to make, and in the future I will code it so that it picks a random “overall condition”, and from that result I will have it fill in the rest of the results as accurately as possibly based on the outcome. For example, if the overall condition is randomly picked as a “Great”, the solar panels would be functioning at a random variable between 99% to 95%, however if the rover was caught in a dust storm, and the overall condition was a “Heavily Damaged”, the solar panels would only be functioning at a random interval between 25% and 35%, because possibly the solar panel was covered by sand. (I will go into the sort of “logistics” behind how I would make this work later). Overall, the app took a couple of days to make, working almost all day on it, but the result came out absolutely fantastic, and it is downloaded on my phone right now.
Data Source #1
Data Source #2
Data Source #3
Data Source #4
Data Source #5
Step 2: Painting the RC Remote
After creating the app, I started on the aesthetics of the rover. The first change I made was painting the remote to match the color scheme I wanted on the rover. I took apart the remote, removed all the electronics inside, and saved all the screws and electronics in a simple craft organizer. Sorting the pieces this way is great because you can keep screws with the internal parts they go with, and it is a super efficient way to store these pieces. If you don't own an organizer like this (any "craft organizer"), you could alternately use sandwich and snack bags, or any cheap tupperware containers. Next, I then sanded off most of the blue paint, and masked off all of the black plastic. I spent just under an hour masking off the black plastic, and it really payed off, because there were virtually no touch ups that had to be made. For the circular turning mechanism, it was difficult to mask it off with only tape, so I used a liquid resist.A liquid resist, as the name suggests, is using any liquid substance to mask of part of a surface. In this case, I used toothpaste, and painted it over some of the tricky spots I wanted to keep white. The liquid resist works because you are laying down a thick layer of resist, whether is is toothpaste, mustard, or a specialized paint, and it prohibits any spray paint from making contact with the plastic underneath and adhering to that. After you let the spray paint dry completely, you can rinse off the resist, and it should leave you with nice clean lines wherever the resist was. For the actual painting I used a Rustoleum Semi-Gloss White, and spraypainted the RC remote. The semi-gloss really matches the texture of the black plastic, and the blue LED on the remote looks great with the black and white space color scheme.
Step 3: Painting the Chassis
After the RC rover controller, I next painted the chassis of the rover. I first had to take off the plastic shell of the RC car, then unscrew the attachment points and the front "bumper". This left me with a clean body to add any modifications, drills, and satellites I wanted. Next, I unscrewed the main body of the rc car, and spray painted that with the same Rustoleum as the remote. I hand painted the back of the rover with semigloss acrylic paint, which matched the Rustoleum perfectly. Once I finished this, I had a freshly painted slate to start adding details on.
Step 4: High Gain Antenna (100% Functional)
All of the additions I added on my rover are designed to replicate functioning parts on NASA’s space rovers. The first addition I added was a 100% functional High Gain Antenna, which is a directional antenna with a focused radio wave beam width. This narrow beam width allows more precise targeting of the radio signals, which is perfect for my rover, because I ran the antenna of the actual RC vehicle up the base, so that the radio wave signals the rover receives actually come in through the High Gain Antenna. I built it by using a cut off portion of a 1L Soda bottle as the top, and painted the inside with a metallic silver, and the outside with the same semi-gloss white. If you really wanted to be authentic you could also use tin foil or a similar material to try and capture more of the radio waves being transmitted from the RC controller, which would also drastically increase the range it could be driven from, however I was afraid it would also block out some waves if it was located on the wrong angle, so I decided not to go with that approach. The inside lattice which holds up the RC rovers antenna was made with skewers, and was also painted metallic silver which makes it look very much like metal. I used a plastic stake-type object, which I had just laying in one of my “parts” drawers, and filed away a channel in the side so that the RC antenna can run up through the base of the High Gain Antenna. The actually RC antenna neatly runs through one of the channels on the sides, and it doesn’t protrude at all. I was incredibly happy with how this turned out, and was even happier that it is fully functional.
Step 5: Articulating Solar Panel Arrays
The next detail I added was the articulating solar panels on either side of the rover. I used several Lego Mech/Bionicle pieces for each solar panel, with a ball in socket joint which allows them to move in any direction. The solar panels articulate on my model because it would increase the efficiency and allow each panel to capture more energy from the sun. Right now, the solar panels are only HD color prints, glued to foam board, however in the future I hope to add a solar array of small panels off of solar garden lamps, and run it through a small converter into the lipo battery.
Step 6: Weather Station
The weather station is located on the back of the rover, and is one of my favorite pieces. It is incredibly detailed and incredibly unique looking, with the way I painted and assembled it, I can hardly tell it is even Lego. The design is based off of a meteorologist station, and I love the realistic aspect it brings, and all the intricate detail at such a small level. I spray painted the base white, and the top “weather instruments” black. I then glued it on top of an LED bulb “base”, another item I got from my parts bins. Again, this is only a prop, however I do have a small weather sensor which sends the information to a centralized location (iPad sized LCD screen) which I would like to incorporate into a future edition of this.
Step 7: Low Gain Antenna
Unlike the High Gain Antenna, a low-gain antenna is an omnidirectional antenna with a broad radiowave beam width, which allows for the signal to be received even in rugged mountainous regious, which makes it more reliable regardless of terrain. It is made out of an ergonomic paint brush handle, and a Lego satellite dish. I had to drill a hole through the center of the Lego dish, so that it could fit onto the handle. I painted the satellite dish silver, and I painted the main rod both black and white to give it an extra layer of detail.
Step 8: UHF Antenna
The UHF (Ultra High Frequency) Antenna is able to capture high frequency radio waves which are undetectable by the High and Low Gain Antennas. This was created by a thick wire with a special adapter, and a black base from my parts bins.
Step 9: Calibration Target
Calibration Targets are designed by NASA to be a “constant” on the rover, so that the operators back on Earth can adjust color saturation and the like on the video feed that comes through the cameras (More details below). The calibration target I created was made by using a fancy pen cap, and other parts from my parts bin (who would’ve guessed?), with a red plastic tip on top so videos could be adjusted so that the color red on the tip of the target is the same hue as it was when it left Earth.
Step 10: Magnetic Array Sensor
The magnetic array sensor is a tool which traps airborne particles and analyze them to reveal any new data, specifically if they have any potential frozen water statically moving around the Martian surface. On my rover, this was a Lego piece I custom painted and added vents to cover up any lego brick “patterns” which might be showing. The instrument has a thin woven net on one side, and a large catch basin on the other, which allows it to efficiently trap airborne particles for analysis.
Step 11: C.H.I.M.R.A
The C.H.I.M.R.A, (Collection and Handling for In-Situ Martian Rock Analysis) is the abbreviated name for the drill we sent to Mars. It is equipped with a masonry bit, and a housing, specifically designed to collect dust and powder from rocks on the Martian Surface. I could go into the details, however nothing I could explain would be as useful as Smarter Every Day’s Video, so I will simply link that instead. For the custom drill I made for my rover, I tried to copy C.H.I.M.R.A’s design as best as I could, and it ended up taking 17 separate articulating customized pieces, which were sawed apart and glue back together so that I could create a drill which I believe is similar to C.H.I.M.R.A. This piece alone took me around 2 hours, excluding all of the research I did to understand how it worked, so I could include as many mock details as possible for my version, to make it look as close to the actual version as possible.
Step 12: Communication Tower
Personally I viewed this more as the rover’s “mast”, however since it is not a ship, I decided that “communication tower” sounded better, and it also makes more sense based on the functionality of the whole piece. It houses the rover’s Navigation camera (white), as well as its Thermal Emission Spectrometer (black), which captures thermal infrared data, and sends it back to Earth. The Thermal Emission Spectrometer has its own satellite located directly above it, and the Navigation camera has its own even larger antenna. Both cameras are micro cameras salvaged off of two small drones my brother and I had. In the future I will also try and buy a new connector and wire it up so that I could actually record the trips, and save them to the SD card inserted in the back of the camera. You could also use something such as a GoPro, and use the app to have it livestream right to your phone, but I used these micro cameras because they are much more aesthetically pleasing. I added a bunch of details on the main pole of the tower using paper, and I also created a custom NASA logo using the Cricut. In addition to the logo, I also added an American flag, and I absolutely love how all the little details came together at the end. I spent hours and hours trying to make this look right, and almost scrapped the whole tower all together and start again, but I ended up persevering and I am so incredibly pleased with how it turned out in the end!
Step 13: LEDs
I used LED strips attached to the bottom of the rover to give it underbody lighting, the make it easier to navigate at night, and because it looked really great and matches the LEDs in the controller. The LEDs are powered by a 9 volt battery, and are plenty bright enough to illuminate the area around the rover at night. I soldered a custom connector to the end of the wire by tearing apart an old 9 volt battery, and taking the clips off of the top. All I have to do is snap together the two ends then tuck the battery in a custom little container I made for it underneath the rover, and no matter how fast I drive or how bumpy terrain it is, the lights stay on and connected. I think the lights add a really great touch to the entire build, and it add another level of professionalism to the build, which really elevates it to a high quality looking rover.
Step 14: Final Thoughts
I am so incredibly happy with how it turned out, and all the hours focusing on tiny little details and stencils really paid off in the end, and all the details make the rover look really good and polished. Between the actual build and the Android app, absolutely no shortcuts were taken, which is why it took me nearly 2 weeks to complete this build.
My future plans for this project are to make it real and design a fully functioning rover with all the bells and whistles, with sensors and instruments to be able to test weather, water and soil composition, and a whole bunch more. I would also love to maybe use an Arduino or other micro computer (or possibly my old Galaxy) as a “brains” for the rover, and be able to send the information wirelessly through my phone. I mentioned how I would actually make it real throughout this ‘ible, and if anyone has any specific questions please be sure to ask in the comments. Overall, I was so thrilled with the final result of this build, and can’t wait to try and make a fully functional MK2.