The Left Coast Handheld.

 
 

I needed a case..

The Star Trek game

It begin with the calculator. Once I had it working, I needed a case for it. So, after a bunch of experimenting, I modeled up a nice low profile case in Solidworks for it. I 3D printed it and worked out great.


Next was the vacuum Gauge & Leak-down Handheld. I ended up just making the calculator case a little longer to fit in the vacuum hardware. After that was The Cellphone, then The PlantBot Programmer..


Each version added something to the design. The latest rendition was The Star Trek game. By this point I had a pretty nice case complete with a inset for accessing the SD card from the outside. Along with that I had the beginnings of a pretty nifty application framework written in c++.


I figured that other people may like to use this. It makes such a nifty little piece of hardware for building custom Handhelds.

 

Assembly Notes :


The 8 pin connector needs to be removed from the display. Its not used in this project and it won’t fit in the case. You can chop it off then heat up the solder to remove the bits of the pins. Just be careful to not break anything while doing this.



















This is where the assembly stand comes in really handy. Place the two case halves into the stand. This will keep the switch from getting mashed into your desk and hold the wires into the correct position for crossing over enabling you to bundle them.


The absolute best wire I have found to use on these small projects is 30 awg silicon jacketed stranded wire. I buy mine from Adafruit and I buy every color they carry.


Silicone Cover Stranded-Core Wire - 50ft 30AWG


The trick is to wire the screen up in groups. SPI, I2C bus, chip selects, power, ground, switch, and lastly the back light solder pad controlling the screen. Wiring up in groups allows you to reuse wire colors while keeping track of what wire hooks where.



All the different wire bundles are hooked up to the display and switch. Also notice the back lite solder pad has a wire connected to the furthest from the camera of its double pads. This will control the backlight of the screen.


Notice also that the processor is mounted upside down.From this position you can get at all the wire connectors you need from the top down.


Here’s the trick for hooking up your wires to the display. Each pin has these nifty little feet. Put  a small blob on the foot, tin your wire then heat the two and they will run together.


You can remove pins that get in the way of the wires if you like. But, don’t chop off the ones near the ends because these pins are what the entire display rests on when the unit is assembled.



When running the Teensy 3.2 on outside power (Battery) you need to cut the trace between these two solder pads to disconnect the USB power from running the processor. This way the power goes to and comes from the battery/charger circuit. When plugged in you can still program the processor, and you will be charging its battery. The on/off switch, wired to the ground and enable pins of the power controller board controls whether the processor is on or off.


Where do the wires go on your processor? That depends on the code you decided to run on it.

My typical connections are...


SPI MOSI                    11 - Blue

SPI MISO                    12 - Green

SPI CLK                      13 - White

SPI D/C                        9  - Yellow


Screen chip select     10 - Blue

SD Card chip select    4 - Green


I2C data                     19 - Blue

I2C clock                    18 - White


Beep pin                     23 -  Red

Screen backlight         25 - Black



Example software


https://github.com/leftCoast/LC_handheld - Examples. And this relies on..

https://github.com/leftCoast/LC_Adafruit_1947 - Glue code for the display.

https://github.com/leftCoast/LC_GUITextTools - Text screen objects.

https://github.com/leftCoast/LC_bmpFileTools - Tools for getting .bmp images to the screen.

https://github.com/leftCoast/LC_GUIItems - Grab bag of base screen objects.

https://github.com/leftCoast/LC_GUIbase - Math foundation of the GUI stuff.

https://github.com/leftCoast/LC_baseTools - The tool kit everything is built from.