The TI-83 plus is a beautiful machine for the most part, and I love my compatible TI-84 plus. Having the ability to whip out the little device and type out a TI-BASIC program in a few minutes that could be a game, an experiment, or a proof-of-concept implementation of an algorithm I am working on is awesome and very fun for me. I would still be content with my calculator except for the fact that over the past few years I have gotten a lot better at programming, and I want more control over the machine I am programming on. Barnacle is supposed to solve this by being a device specifically designed for low-level programming on the go. It will be a pocket-sized machine that runs on batteries with a fast processor, graphical LCD, qwerty keyboard, several i/o ports, and any other features I can fit into it. These extra features might include audio hardware, wireless hardware (bluetooth or wifi), an infrared port,or sd card interface. I might add other features as I think of them. The more the better because I want to be able to have the most possibilities accesible to me through code.
Barnacle will act as a regular graphing calculator, as I am used to the things that my TI calc can do, and I have a feeling that if I didn't keep the abilities around I would sorely miss them eventually. I won't go so far as to actually emulate the internal workings of the TI calculator, but I'll write code for all the functions I have used in my TI-84, and I will partially base the structure of the operating system on the texas instruments one. When it is finished it should be able to replace my TI-84 plus for school and everything else.
This will be my first project creating a PCB from scratch, and also my first major project with SMD soldering. The use of these techniques is required because of the high number of components and because of the extremely small size when completed. To get to the final iteration of this project I'll also need to learn to use Eagle CAD and maybe even get a job to fund it (gasp).
To Do
Design SD card interface circuit.
Design the audio circuit.
Design power supply circuit.
Design LCD interface circuit.
Design processor RAM interface circuit.
Design infrared communication circuit.
Design wireless interface circuit.
Design main processor circuit.
Design keyboard circuit.
Design case.
Write drivers.
Write graph calculator code.
Write onboard compiler.
Breadboard the design.
Print and etch PCB.
Solder project.
Build case.
Timeline
3/27/10 (3:37 PM)-Finished reading a Sparkfun tutorial on Eagle CAD.
3/27/10 (5:12 PM)-Started the design of the keyboard PCB in Eagle.
3/30/10 (4:20 PM)-Discussed particulars of the system with a friend, who helped me find another source for the LCD that is 2x cheaper. He also gave me an idea on how to fund the project, by creating modules to sell from each part of the project as I complete it. This works well, because Barnacle has very definite systems that are mostly seperate from one another.
Materials
Obtained?
Item
Cost
Yes
Brain
Free
Yes
Time
Priceless
No
Atmega128
$13.76
Yes
3 Atmega168s
$12.33
No
42 Tactile Switches
$14.70
No
Bluetooth Module
$34.95
No
2 Infrared Emit/Detect
$3.90
Yes
Speaker
$1.00
Yes
5v Regulator
$1.25
No
Graphic LCD
$19.95
No
SD Card Slot
$3.95
No
Power Switch
$1.50
Media
Credits
-Owen Trueblood
Code-fu, PCB design, and construction.
-InterwebsThe knowledge.