Introduction: Build a Portable Linux or Android Device to Be Proud Of!
I have a few things to mention before we begin:
- This is not a finished Instructable. I have been working as consistently on this project as a full-time high school student can since I found out about this contest, but sadly I'm just a few days short.
- It would've pained me to let this go after I put as much free time as I did into it, so I'm posting it anyways.
- While you might be able to get the jist and duplicate my design, I encourage you to make it better! And make it yours!
- I will have finished by the time the Microcontroller contest ends, I will post an updated entry there. My goal is to post the entry from the device.
- If you find any of my bumbling through my first Instructables instructable useful, incredibly stupid, and/or entertaining, please vote.
Step 1: Gather Inspiration
There's no need to feel pressured to create something unique. Sometimes the best projects are better versions of already existing ones. This is the 'diffusion' in "invention, innovation, diffusion". A teacher once told me "The person that makes the better mousetrap will be a millionaire."
A simple online search will tell you if your idea has already been produced in one form or another. Try searching with different keywords!
The idea with my project was to take a Raspberry Pi B+, and break it out into DIY controller interface and exposed prototyping area (that could be used for sensor or motor breakout), and put it into a relatively small enclosure with battery. Oh, and it should look a little cool too, so I included bells and whistles like a backlight that shines through a design, and a whirring fan with slick grilles.
Step 2: Make a Budget; Gather Materials
It is important to set a budget for yourself when making an electronics project (especially an electronics project), because if you don't, it is easy to get carried away with little extras that you don't really need.
I bought most of my items from Adafruit http://www.adafruit.com/
And I got a little carried away.
A list of items I procured one way or another: (Items below dash were donated or salvaged) ((Items marked with an "*" were found on Adafruit))
- * Battery pack (big!)
- * Step-up (3.7V to 5V 1A+)
- * LiPo charger (with load and battery lines!)
- * Raspberry Pi B+
- Smallest HDMI connector I could find (I found this on Best Buy's website)
- * HDMI (800x480) Display (I later had problems with the first LCD I bought, had to purchase another)
- * LCD driver board with low voltage differential signaling out (LVDS) ((Important for channeling the signal through the hinge!)
- 20 pin LVDS to 50 pin TTL converter board (found this on Ebay, searched for what I called it on this line)
- * Backlight
- * Buttons
- * A protoboard for the main circuit board
- * A breakout for the Raspberry Pi B+
- * Joysticks
- * Rubber feet
- * Heat shrink
- Resistors (10K ohm)
- Aluminum 6061, HDPE (and a CNC!)
- 3D printer and supplies (thanks buddy!)
- A hinge from an old laptop (a Dell laptop) ((looks pretty common))
- A small fan from another old laptop's CPU cooler assembly (a Compaq laptop)
You will also need the following tools and supplies:
- A soldering iron (and solder)
- solder wick and a solder sucker for mess-ups (I had lots!)
- Wire strippers and crimpers
- A digital multi-meter
Its also handy to have some digital calipers, as we will see later.
Step 3: Assemble the Small Parts
Now you've got your smaller sub-assembly pieces, you might have to assemble them!
A quick search on the supplier's website will likely give you all the information you need to assemble these parts.
If you have any salvaged parts, this is the step where you lighten them up, like the lobotomy/mummification I performed on this standard USB cable I found.
Step 4: Discovering Problems You Didn't Think You'd Have
When I bought my first LCD I discovered it didn't work with the LVDS converter board I bought. Some hair pulling, digital multi-metering, and data-sheet-looking later I thought I found the problem. The LVDS-out on my LCD driver board was giving me much lower voltage than the AT070TN94 wanted. To fix this I bought a AT070TN91 display, which has a not as bright backlight, had the same display dimensions and resolution, and was a little slimmer.
I bought mine on http://www.amazon.com/
The lesson here is to double and triple check all of your components will work together before you start designing around them, the time it takes to look at datasheets is a lot less than the time it takes to fix your model!
Step 5: Start Thinking About the Design
Don't start your models yet! These are some preliminary tips I wish I had when I started this project. The next step has some tips while you are starting your models.
After you've got all your parts assembled and tested, its time to put them all together (at least for now) and begin thinking about how your project is going to fit into its little box. I took photos of me holding all the parts together from all sides to see where ports might be and tried several configurations to minimize negative space.
The above isn't the most important part of this step, however. What is important is modeling all of your parts on a computer, or finding the models online (I found the Raspberry Pi B+'s model online!)
If this isn't possible, something you could try is make three-view drawings of each part on transparency so you can overlay them to get a more precise "model" you can design the rest of your project on.
A useful tool to have around is a set of digital calipers. When you are taking measurements on a part, round up to the nearest logical unit. Remember some parts may be in inches while others may be in metric units.
Step 6: Refining the Design
As your design progresses, you might find some problems you didn't think you would have. Earlier I advised you to make sure you don't have any problems later on, now I'm advising you to make your design has to be as flexible to change as possible, in case you do have any problems. (everybody makes mistakes!)
For example, when I discovered my LCD configuration would not work, I was able to quickly change the model to fit the new, slimmer LCD.
If you're like me and measured everything "exact", go ahead and give yourself a few thousandths on your fitting parts.
The design for this project took almost the whole entry period! If I had made a few more mistakes or made the models resistant to change it would have taken longer!
Step 7: Begin Assembling the Casing!
Once you have your design completed, its time to put it into the real world!
- For the metal portions I first exported a sketch with all the geometry of the model from Inventor 2015 to a DXF format, then imported that into Mastercam X7 to toolpath, using the Inventor model as a depth guide, then exported the G-code to our CNC software MasterXU.
- For 3-D printed parts I first exported the Inventor .ipt to a STL format (make sure it is in the same units you used to draw it in the export settings!) then imported to "Cube Software", then into a "3-D print file" that could be read by the printer.
- For the routed HDPE I will export a sketch with all the geometry of the model from Inventor to a DXF format, the import that into Partworks 3 to toolpath, using the Inventor model as a depth guide, once again, then exporting the tool file to Shopbot format, ready for routing.
If you have a large enough 3-D printer, you could 3-D print the entire project, or if you don't have a large enough printer like me, find another way to encase your project (be creative!)
Because of a lack of time and because I am a okay machinist, I chose the CNC route.
Mastercam X7, Master XU, and the CNC are all owned by my high school, and I am thankful they let me use the equipment and materials for non-academic purposes.
Step 8: To Be Continued? YES.
And so, with four hours to the deadline, my project lies unfinished. But its well on its way to completion.
I learned a lot, and there's still a lot to learn. I haven't even begun to work on the software side of the project (that could be an instructable in itself!) besides the Real Time Clock (RTC) and the buttons.
As I have worked on this project new parts have arrived that could have made the project easier/cooler like Adafruit's own HDMI to TTL converter board, or their LCD backpacks they are cooking up. Seriously check them out (http://www.adafruit.com/)
Some ideas for future iterations:
- Slimmer (Raspberry Pi compute module)
- More powerful microcontroller (ODroid U3?)
- Entirely 3-D printed
- Custom PCB (with keyboard and buttons and possibly DDR2 slot for Pi compute)
- TOUCH SCREEN
- Shoulder buttons
- Android KitKat?
As you can see from my ideas, and probably the ones you're thinking of right now, there's a lot you can do with this. Hopefully I have a chance to try some of these as well as entirely new projects I'm thinking of.
If you want to see this and more, please show support, please vote.
If you are interested in using my models, do not hesitate to message me with which part you'd like, and what file format you want it in. I will release the final design in the Microcontroller contest sometime before the closing date.