Picorder 2

From Squared Wave
Jump to: navigation, search
Logo for the Picorder project

This page serves as a repository of information I have collected as I plan and acquire sensors and materials for my successor to the original Picorder. As the picorder 1 was bulky and power hungry in this version I am doing away with a colour screen and instead using the relatively low cost and low power Nokia 5110 screen. I think this trade off of experience versus functionality will be well worth it.

I hope that this projects sensor module will be usable for a number of other projects outside of a Tricorder prop replica so I am trying to keep the software I write modular.

Sensing Goals

Basic ambient environmental; temperature, pressure, humidity and VOC (Volatile Organic Compounds). Ranged line-of-sight temperature sensing (very small envelope. 0°c to 80°c). Magnetometer, maybe something like spectroscope if I can find one that works.



Raspberry Pi Zero W
My old favourite will return for this model. I am playing with the idea of using something like an arduino or just an ATTINY, but the Pi has so many advantages.


Mark 7 Tricorder Replica
I've acquired a prop replica kit for the mark 7 tricorder from Stapleton Productions.


Capacitive buttons
Controller to use small metal pads for capacitive buttons for inputs.


Nokia 5110 LCD screen
To provide low power information output to the user, and maybe to play some snake.


Bm860 VOC, Temp, Humidity, Pressure sensor
The BME680 is a basic environmental sensor. VOC is a nice added feature. This sensor will provide ambient environmental information.
AMG8833 IR Thermal Camera
This is a VERY low resolution and low range thermal camera. It will basically only be useful for detecting dramatic temperature differences. It was relatively cheap so I want to include it. This sensor will provide inaccurate CONTEXTUAL temperature information at range.
MLX90614 Non Contact Thermometer
A cheap and accessible non contact thermometer. This sensor provides accurate specific temperature readings at range.
An EMF sensor of some kind.
Probably a resistor on an ADC to give me basic environmental electrical readings.


As with the original picorder I want to make sure that this one has a feel of the actual prop. the TOS tricorder only had 3 indicator lights but the TNG tricorder is lit up like a christmas tree.

I'm going to try and include at the very least:

  • the four green indicator lights (alpha, beta, delta, gamma)
  • the front panel sensor array (the green ripple lights, the various and sundry sensor illuminations)
  • the EMRG button
  • the PWR button.
  • GEO, MET, BIO buttons.


Its always perplexed me that these indicator lights seem to ripple (light up and turn off one after the other) in different directions depending on the season of TNG you're watching.

It makes sense to me that the LEDs on the Tricorder should ripple from top to bottom (alpha to gamma).

I have read (somewhere) that the TNG Tricorder lights were changed by a prop maker to run in the opposite direction only so they could tell when their work was being used on screen.


I think in the interest of reducing processing load on the Pi I will just use the Pi as a clock and pulse a GPIO pin high and low to a number of decade counters to control the "look and feel" LEDS.


New software will be written that runs on some of the basic concepts of the original Picorder program. It will not use Pygame though, which will provide considerable performance and power savings, hopefully.


To reduce power consumption:

  • Only draw to screen when sensor reading has changed.

scale would be a factor for determining; different decimal places would trigger different refresh rates.



User Interface

I have given some thought to how I want the device to be usable by the operator. I'm hoping to make as many functional buttons as possible, but its difficult to determine what the best course is. For the meantime I've made this rough design for a standard bar graph readout. This style of information display seems congruent with the LCARS interface seen in the show.

Basic Temperature Reading UI



This project is a "MyCorder" build and so I'm using this subreddit to solicit advice from the community.