PIP-GRL 31415

From Technologia Incognita
Revision as of 04:46, 22 March 2013 by ZTiK (talk | contribs) (Simple parts)
Jump to: navigation, search
Projects
Pipboy3k.png
Participants ZTiK
Skills Arduino, Basic electronics, Coding, UI Design, Not Being on Fire
Status Active
Niche Electronics
Purpose World domination


What is it?

A wristcomputer similar to the PIP Boy 3000 from the game series Fallout.

The device is made up of several modules and sensors such as:

-2.8" TFT touchscreen

-MicroSD card (contains images and logfiles)

-GPS

-Compass

-FM Radio

-6 Degrees Of Freedom motionsensor

-Altitude/pressure sensor

-Light sensors

-Audio sensors

-3x Ultrabright white LED's

-1x non-diffused RGB LED

-Laserpointer

The PIP Boy 3000 from the game series Fallout also contains a geigercounter, but I do not think this is a realistic addition :( and it turns out this is actually doable :) More updates on this will follow soon.


Things to know

-To use the touch sensitive screen a stylus is... useful unless you have small fingers.

-The option pages (Page_100-103) can be opened by touching/pressing the topright corner of the screen, there is a 5x5 px square (invisible) that activates it.

-Before power up, check if the laserpointer is still properly connected. Its wires unplug rather easily.


What happens when you turn it on

When the device is powered up, the first thing it will ask is to select the proper password.

You have 4 tries, after which the device will enter 'bricked mode'.

At the moment of writing, this is bypassable by restarting the device (ie. bricked mode is NOT permanent during prototype phase).

The password selection page is a direct copy from the ROBCO's Computer Terminals primarily present in the game series Fallout.

There has been a small change made, this device will not display the amount of correct characters in the chosen password as the game does.

Once logged in, the user has a choice of several 'pages':

Page_1, Page_2 & Page_3 are 'normal' pages which contain functions the enduser is able to use.

Page_100, Page_101, Page_102 & Page_103 are 'option' pages, much like the settings screen of any computergame.

Page_99 is the 'bricked' page


Overview of page functionality

Page_1 a.k.a. STATS

The STATS page is divided into 5 menu's, each menu can have several submenus

Status menu

Status menu which has 3 submenus:

CND

Displays endusers health

RAD

Displays amount of radiation absorbed, at the moment this is actually the average of 3 random numbers. The random numbers are readings from an analog pin without anything connected to it (noise).

EFF

Displays the armor the enduser is wearing, also not functioning... (RFID tags in clothes?)


S.P.E.C.I.A.L. menu

The S.P.E.C.I.A.L. has 7 submenus:

Strength

Displays description with value 5

Perception

Displays description with value 9

Endurance

Displays description with value 9

Charisma

Displays description with value 7

Intelligence

Displays description with value 9

Agility

Displays description with value 8

Luck

Displays description with value 9


Skills menu

Doesn't display anything yet

Perks menu

Doesn't display anything yet

General menu

Doesn't display anything yet


Page_2 a.k.a. ITEMS

The ITEMS page still needs to be filled, the layout exists but nothing has been added (yet).


Page_3 a.k.a. DATA

The DATA page is where most of the magic happens, it has 5 menus:


Local Map

The Local Map displays a map of the Netherlands, and once the GPS has a fix, a rectangle will appear as a 'You are here' indicator.

The plan is to divide this into 3 submenus, each showing a different zoom level of the map (1=country, 2=province, 3=city)


World Map

Same as the Local Map, except this displays a map of the world.

The plan is to divide this into 2 submenus, each showing a different zoom level of the map (1=world, 2=continent)


Quests

The Quest menu should display your active/finished quests, but because I do not know how to implement this yet, I decided to add the Audio sensors output here.

The code written for reading the microphones peak-to-peak is horrible, and doesnt function properly yet (should make use of interupts, not a timed interval).


Misc

The Misc menu displays the values from the Light Dependent Resistor.

The goal is to use this value to decrease the backlight on the TFT using a digital potentiometer automatically.


Radio

The Radio menu contains all controls for the FM Radio.

Turn on/off, Mute on/off, Seek up/down, Tune up/down, Volume up/down.

It also displays the freq. you are listening to, and if this is a mono or stereo signal.

At the moment RDS is not being processed, but will be in the near future.


Page_99 a.k.a. BRICKED

This page will be displayed if you choose the wrong password 4 consecutive times.

Turn the device off and on to retry, bricked mode is not permanent while prototyping :)


Page_100 a.k.a DISPLAY

The DISPLAY options contain:

-Backlight brightness level (not functioning until I have the dig. potentiometer).

-Image quality low/medium/high (this defines the prefix folder where images are stored).

-HUD color (to change foreground colors)

-Background color (to change... you guessed it...)

-Return button to return to last used page/menu/submenu


Page_101 a.k.a AUDIO

The AUDIO options contain: -Mute on/off (to mute the speaker, NOT the radio!)

-Return button to return to last used page/menu/submenu


Page_102 a.k.a CONTROL

The CONTROL options contain:

-LED1 on/off (turns on/off ultrabright LED1)

-LED2 on/off (turns on/off ultrabright LED2)

-LED3 on/off (turns on/off ultrabright LED3)

-LED4 on/off (turns on/off RGB LED4 RED)

-LED5 on/off (turns on/off RGB LED4 BLUE)

-LED6 on/off (turns on/off RGB LED4 GREEN)

-LASER on/off (turns on/off LASER pointer)

-ALL on/off (turns on/off everything)

-Return button to return to last used page/menu/submenu


Page_103 a.k.a GAMEPLAY

The GAMEPLAY options contain:

-PAGE1 (shortcut to goto page1)

-PAGE2 (shortcut to goto page2)

-PAGE3 (shortcut to goto page3)

-Return button to return to last used page/menu/submenu


List of parts and link to my suppliers

All components have been ordered from 6 different webshops: PJRC, Conrad, Floris.cc, Sparkfun Electronics, iPrototype.nl and AlphaCrucis.


On a sidenote:

I would rate all these webshops with 5/5 stars, with the exception of AlphaCrucis. It took them 5 weeks to respond to my mail why my order wasn't sent (one of the items is not in stock), and another 3 weeks to realize that this particular item would not be resupplied. This was when I finally received an email with the message 'your order has been shipped' and a second email with the message that a refund of somewhere around 3 euro have been initiated. When I finally received my package and checked the invoice, it turned out I had waited 8 weeks for F/M jumper cables...

Tools

1x Basetech Soldeerbout startset SH 1263 c3 230 V~ Vermogen 30 W Soldeerpunttype (omvang levering) Potloodvorm

1x Solder Wick

1x Hobby Knife

1x SparkFun Mini Screwdriver

1x SparkFun Inventor's Kit for Arduino - Carrying Case

2x Third Hand

1x Adhesive Bandages - RTFM (5 pack)

1x SparkFun Safety Glasses

1x SparkFun Static Sticker


Sensors & modules

1x Triple Axis Accelerometer & Gyro - connected, but in need of calibration

1x Line Tracking sensor - not connected yet, need to free pins and use 5v-3.3v logic level converter

1x Color Light Sensor - not connected yet, need to free PWM pins to connect RGB LED

1x Breakout voor Audio Plug - still needs to be soldered

1x Audio Plug female 3.5mm - still needs to be soldered

1x Adafruit Ultimate GPS Breakout - 66 channel w/10 Hz updates - V3 - connected and works

1x LSM303 Breakout Board - Tilt Compensated Compass - connected, but in need of calibration

1x Humidity and Temperature Sensor - RHT03 - tested and works, but now unplugged to free pins for other uses

1x Logic Level Converter - not being used (yet)

1x 8-channel Bi-directional Logic Level Converter - TXB0108 - not being used (yet)

1x MPL3115A2 Altitude/Pressure Sensor Breakout - connected, but in need of calibration

1x SpeakJet - not connected, probably never will

1x Pulse Sensor - connected and worked, needs calibration, has been disconnected to free pins

1x Evaluation Board for Si4703 FM Tuner - connected and works

1x Laser Card Module - Red - connected - connected through MCP23016 and works

1x Max Power IR LED Kit Max Power IR LED Kit - still needs to be soldered

Simple parts

1x Steekprintplaat EIC-102 (l x b x h) 165 x 55 x 8.5 mm Aantal poolklemmen 830 - currently houses the project

1x Bedradingsset EIC-J-XL Set steekbruggen (l x b x h) 205 x 145 x 40 mm - some of these are in use, the box is now in the space for everybody to use.

1x Mipow Powertube 2600, zwart SP2600M-BK Mipow 2600M mobiele oplader - not actively used, but could be at any given time.

1x Breadboard met Jumpwires - holds whatever didn't fit on the main breadboard anymore (mainly I2C devices).

1x Premium Jumpwires M/F - bag of 10, 2 are in use for the A10 & A11 pins on the Teensy.

1x Digitale Sensor kabel - not being used

1x Analoge Sensor kabel - not being used

1x Mini Speaker - was connected, but had to unplug to free pin for other uses

3x LED Wit (Extra bright) - connected through the MCP23016 expander

1x 20 in 1!Basic components mixed pack - in my box in the space unused, still need to sort and put in proper storage boxes

6x Solderless Headers - 10-pin Straight - a lot of these have been used, very useful buggers

2x Breadboard wire bundle - same as above, 1 pack has been used, the other is in the jumperwire storage box

1x Black Metal Knob - 14x24mm - not being used, doesn't fit on my potentiometer

1x Key Switch - Small - not being used yet, one of the final things to be added

1x Coin Cell Battery - 20mm - tested and works, currently searching for a nice holder

1x 10K Breadboard Potentiometer - is being used to dim the TFT backlight

1x Surface Transducer - Small - not in use yet, needs soldering of two tiny pads

1x Electret Microphone Amplifier - MAX4466 with Adjustable Gain - in use for the audio volume meter

1x LED Light Pipe 0.6" Round - not being used, not sure if it will either

3x LED Tactile Button - Red - haven't got a clue how to connect these at the moment

1x Resistor Kit - 1/4W (500 total) - very useful, although I'm not sure why 0 Ohm resistors are included...

1x Toggle Switch - not connected yet, will probably be one of the last things to do

1x Missile Switch Cover - Carbon Fiber Look - not connected yet, will probably be one of the last things to do

Advanced parts

1x Teensy USB Board, Version 3.0, with Header Pins

1x Pin Expander (MCP23016)

1x I2C Bus Expander (PCF8574AN)

1x LDR

1x Breadboard Power Supply USB - 5V/3.3V

1x MCP23017 - i2c 16 input/output port expander

1x MOSFET Power Control Kit

10x Resettable Fuse PTC

1x Crystal 32kHz - not connected


Project page on PJRC.com

http://forum.pjrc.com/threads/17717-PIP-GRL-31415-(not-spam!)


Project videos on youtube

http://www.youtube.com/playlist?list=PLU5nSKNLjNrutxzlRTsA0mQmNgPrwgW7h