HARDWARE


PHONE BODY


To convert a Cortelco ITT-2500 desk telephone into a stetho-phone, I disregard its whole original system. Bringing in both high and low technologies in the modification, stetho-phone has established itself as  biofeedback and communicative device that offers its users poetics knowledge in reading  their own and communicate with others with bio data in a shared environment, the Heart Lounge. However, some particular functions like ringing sound and voice speaker remain in order to maintain the intimate features of the phone. Hooking up all sensors/actuators with Arduino Mega, a micro-controller that is the central processor underneath the phone’s shell.

adgagdsa

Compared phones:before and after versions. Original 12-button desk phone Cortelco-ITT-2500 on the left and stetho-phone on the right

Opened shell

Opened shell original Cortelco phone (before conversion) with original circuits

Arduino Mega wired with pulse oximeter, waveshield, proximity sensor, potentiometer volume controls, piezo sounder, phone switch, save pattern switch, bell and vibration motor, phone speaker, keypad, LCD, LED, power supplies and sub-circuits

Opened shell stetho-phone with Arduino Mega wired with pulse oximeter, waveshield, proximity sensor, potentiometer volume controls, piezo sounder, phone switch, save pattern switch, bell and vibration motor, phone speaker, keypad, LCD, LED, power supplies and sub-circuits




PHONE BRAIN AND MAIN CONTROLS


Micro-controller:

In order to process data that are fed through all sensors, the Arduino Mega is linked up with a computer via a USB port. Both serial (analog and digital pulse data) and static (name, age, weight and height) biometric information then processed in Arduino IDE 16.0, an open-source software environment where the interfacing between hardware and software take place.

adgasd

Arduino board wired with circuits of all hardware parts (off-frame) with a waveshield circuit (for voice instruction) on top


Hand-made Phone Switch:

The original phone switch comes with a solenoid switch that works with high voltage, which I’m not familiar with. To solve this problem I replace the original switch with a handmade contact switch using a pair of metal pads wrapped with metal foil and supports with hard sponge.

A pair of tiny metal pads wrapped with foil for making a contact switch

A pair of tiny metal pads wrapped with foil for making a contact switch

Phone swtich over the phone shell. The two white buttons sit at the seat of the handset area sensing the state of the phone (picked up/hung up)

Phone switch over the phone shell. The two white buttons sit at the seat of the handset area sensing the state of the phone (picked up/hung up)

Phone switch under the phone shell with a handset sitting on it

Phone switch under the phone shell with a handset sitting on it

The metal pads are placed opposite each other on the original switch post. When the handset is hung up, the two attach  sending information OFF via the phone switch circuit to Arduino board. When the handset is picked up, its circuit sends information ON to the Arduino board.

Contact switch ON state (left-figure) and OFF state (right-figure)

Contact switch ON state (left-figure) and OFF state (right-figure)

Contact switch circuit and diagram

Contact switch circuit and diagram with 1MΩ connected to digital input of Arduino board




INFRA-RED BELL SYSTEM

Draws attention of the the visitors to the installation to pick up the handset, stetho-phone has a bell function that rings every time someone steps into its range.

Proximity Sensor:

Proximity sensor embedded in front shell of the phone

Proximity sensor embedded in phone's front shell

The ringing function is enabled by infra-red distance sensor or also called proximity sensor that is embedded in the lower part of its front shell. The sensor  works to approximate the distance between visitors to the installation space and the phone.

Proximity sensor circuit and diagram using sharp GP2D0D02YK and 10µf capacitor

Proximity sensor circuit and diagram using sharp GP2D0D02YK and 10µf capacitor with 4.5v power supply from dc wall-wart adapter

It measures  the distance between person and object, then sends  information to the Arduino board that triggers the vibration motor circuit to work. The motor, which is set next to the bell gong moves in sequence mimicking the real ring sound, which is manipulated by delay functions in code written.


Bell:

Similar to the original phone switch, the original bell system is controlled by a solenoid bell system. Also, it takes up the half  of the phone’s base space.at the back. To solve the problem of unfamiliar technology and limited space, I use one of the original bell gongs and equip it with a vibration motor, which is triggered by the information received from the information of proximity sensor that are processed in Arduino code.

Parts for making home-made bell using tiny vibration motor, metal strip, bell gong and vibration motor circuit

Parts for making home-made bell using tiny vibration motor, metal strip and bell gong

Full system of home-made bell including vibration motor, circuit connected to 3v. power supply and Arduino board

Full system of home-made bell including vibration motor, circuit connected to 3v. power supply and Arduino board

Bell circuit and diagram with L293D h-bridge chip, vibration motor and 10µf capacitor

Vibration motor circuit and diagram using L293D h-bridge chip, vibration motor and 10µf capacitor with 3v power supply from dc wall-wart adapter

The clip shows bell ringing in sequence mimicking the real phone ringing sound.

The clip shows bell ringing and stop after the handset is picked up.

The clip shows infra-red proximity sensor working together with bell motor and phone switch




BIO AND ID READERS


Pulse Oximeter:

Pulse oximeter has been widely used in non-invasive medical practice. It works like a scanner that measures the oxygen saturation of arterial blood in index finger or earlobe. Commercial oximeters consists of a monitor displaying heartbeats per minute (bpm) and a lighted sensing probe. Though these commercial products are easy to use and accurate but costly. The oximeter used in this project is made up with a pair of diodes: one is a normal LED with 660 nm wavelength, another is a photodiode with 940 nm wavelength. The pair are housed in the phone’s earpiece which is connected with  a pulse rate circuit (using LM324N amplifier chip) placed in the phone’s base. Instead of displaying digital or graph as in commercial products, this DIY oximeter displays pulse data in pulsing light using an LED and pulsing tone using piezo toner (discussed later in this page). The pulse rate circuit detects pulse data and send  serial information to Arduino board.

aga

Pulse meter circuit (from mutr.org) wired with potentiometer trimmer and LED and a pulse oximeter-lighted sensing part (off-frame). The circuit was used in the early development state

aghfa

Pulse rate circuit diagram using LM324N amplifier chip

FDSH

Pulse oximeter-lighted sensing part housed in the phone's earpiece. The photodiode is facing the LED in 180 degree. The user is asked to place her/his index finger in between the diodes. The oximeter is reading the oxygen saturation in the user's finger at all time, as long as the phone's earpiece is picked up.


Keypad:

To make the interaction and output displays of steth0-phone unique to each user, their personal data like full name, age, weight and height are used with pulse data to create such uniqueness. Each user is required to type in the data through the keypad of the phone, which  is converted from the original telephone’s work like a cellphone keypad so it can read characters, signs and numbers.

Original keypad buttons and circuit

Original keypad buttons and circuit with interface pins that control each button

The original keypad though comes with letters A-Z, signs * and # and numbers 0-9 printed buttons, but its circuit only generates numbers 0-9. Looked it up on the internet and Arduino forum I found matrix keypads work in columns and rows. Each button is controlled by a pair of column- and row-interface pins. To make the keypad talk to the Arduino board it needs to know which pair of interface pins control which button. The hacking processes started with mapping the buttons and pins using sound mode of a multimeter then implementing 26 letters, signs and needed functions for coding job.

Mapping column- and row-interface pins with 12 buttons of original keypad using sound function in a multimeter

Mapping column- and row-interface pins with 12 buttons of original keypad using sound function in a multimeter

The clip shows example of mapping column and row interface pins of a button. To do so, connect 2 leads of multimeter to a pair of interface pins, then keep pressing all buttons until the multimeter make a beep sound. From this clip, I connect pin 2 and 6 with multimeter leads, it beeps when pressing button ’5′. This mean the keypad interface pins 2 and 5 control button column 1-row 1. The result is essential in making the keypad talk to Arduino and coding task when implementing letters and signs on the keypad’s circuit.


The clip shown here was recorded during the early experiment with different keypads and liquid crystal display. It shows how the keypad working after implementing full 26 letters and ‘DELETE’ and ‘SPACE’ functions. The keypad used in this clip is from Maplin, which is low cost and much easier to hack compared to the one that comes with original phone. However, its size doesn’t fit the phone’s front shell.




FEEDBACK DISPLAYS


Pulsing Light:

Data display is essential in making the steho-phone become a biofeedback product. Here I use a red LED that are housed on top of the phone shell. The LED is connected to the Arduino board which receives digital pulse data and send the output to the LED in heartbeats per minute rate.

Pulsing light display using a red LED. The clip shown here was recorded while experiment with the housing of pulse oximeter-lighted sensing parts and accuracy of data output that synchronises with the user’s heart beats. The red LED displays analog data and the green LED displays digital data. Analog data are used in the final phase of the project.

DSG

3mm white LED housed in 3mm cap

In the final development the pulsing light is made up with a 3mm white LED, housed in 3mm cap sit on the front of the phone’ shell.


Pulse Toner and Volume Control:

Inside the phone’s earpiece, a piezo transducer ABT-402-RC is placed next to the phone speaker to display the pulsing tone. The toner is connected to Arduino analog output pin to receive the pulse rate, which is a serial result of the pulse-processing function in side the Arduino code.

dsfzgdsa

Pulse Toner inside phone's earpiece using piezo transducer

Pulse Toner circuit and diagram

Pulse Toner and volume control circuit and diagram using ABT-402-RC piezo transducer, analog 10K potentiometer and 1MΩ resistor connected to analog output pin of Arduino board

The ABT-402-RC resonates 80dB of minimum sound output with 4000Hz of frequency, which are above threshold of human hearing. For reasons of health and safety and making the phone become more user-friendly, I add a 10K potentiometer with 1M resistor (see in the circuit diagram and images below) to allow the user to adjust the volume of the pulse toner.

pot_for_pulse_toner_volume_control

Pulse Toner Volume Control using A type 10K potentiometer

Pulse_toner_volume_control

Pulse Toner Volume Control covered with adjustable knob on bottom-right corner on the phone's shell





INSTRUCTIONS

Like other new launched devices, stetho-phone has instructions. Its voice instruction system works like an automatic voice system of a call centre that welcomes the users to the service and indicating the order of data they input. Unlike voice instruction that creates intimacy between the user, the phone and the space, the text instruction is an added functional benefit . Once the user types in their personal data (via keypad), the text screen displays that data  as shown in a clip earlier on this page. So the user can check and delete the wrong data before finally pressing a submit button. However, both instruction forms are crucial to  progress to the interaction towards the end.


Voice Instruction and Volume Control:

Unlike ordinary telephone networks, steho-phone has a  system enclosed within the installation. The voice amplified through the mini speaker inside the earpiece are pre -generated from an on-line text-to-speech of AT&T Labs, Inc.-Research. Adding a degree of human interface the phone, nine voice snippets were created with the voice of ‘Crystal..US English’ and recorded in SD card of Wave Shield v1.1 PCB that is connected to Arduino. Though the original volume controls of Cortelco telephone and Adafruit Wave Shield work well on their own systems, they don’t suit the system design of the steho-phone, so I replaced the volume control with type A 10K potentiometer. This also gives consistency to the actual look of the stetho-phone itself as the voice instruction volume control is exactly the same as the one for pulsing tone volume control.

Parts used for voice instruction system, Adafruit Wave Shield v1.1 kit, origianal Cortelco phone speaker and replaced volume control using type A 10K potentiometer

Parts used for voice instruction system, Adafruit Wave Shield v1.1 kit, original Cortelco phone speaker and replaced volume control using type A 10K potentiometer

Original system of phone speaker with original volume control marked in white circle

Original system of phone speaker with original volume control marked in white circle

Asembled Wave Sield with original volume control marked in white circle. The shield is fully connected to headset speakers and Arduino pins: high speed SIP interface, digital output and 5vpower and ground. The image was captured during the experiment of sound output qulity and volume control.

Assembled Wave Shield with original volume control marked in white circle. The shield is fully connected to headset speakers and Arduino pins: high speed SIP interface, digital output and 5v power and ground. The image was captured during the experiment of sound output quality and volume control.

Voice Instruction Volume Control covered with adjustable knob on top-right corner on the phones shell

Voice Instruction Volume Control covered with adjustable knob on top-right corner on the phone's shell

The shield receives commands from ‘voice instruction’ software function inside the main code written in Arduino IDE. When the software receives a type-in text (by the user), it tells the shield to play next voice instructions step-by-step.


Text Instruction:

In addition to voice instruction, stetho-phone displays text instruction on a small liquid crystal display (LCD). It helps to indicate the mode of interactions especially during the period the user types in their biometric data via keypad. The LCD is embedded on the top shell with backlit function that makes the texts easy to read in the low-light condition of the installation space.

16x2 numerical LCD wired with a potentiometer trimmer for backlit control

16x2 numerical LCD wired with a potentiometer trimmer for backlit control

LCD circuit and diagram (for Liquid Crystal Display library) with 10KΩ trimmer potentiomer

LCD circuit and diagram (for Liquid Crystal Display library) with 10KΩ trimmer potentiomer

In the start mode:a text instruction on LCD telling the user to press # key to start using the phone

Start mode: a text instruction telling the user to press '#' key to start using the phone

Firstname mode: a text instructio telling the user to type in her/his firstname

First name mode: a text instruction on the first line asking the user to submit name

First name mode: a text instruction with users answer displayed on the sencond line of LCD

First name mode: a text instruction with user's answer displayed on the sencond line of LCD

Connected to Arduino board, the LCD works synchronously with keypad and the voice instruction function inside the main code i.e. the voice instructs the user to type in her/his first name, the text on the LCD displays a question ‘First name: ?’. Once the user has typed in the answer, the LCD rapidly displays whatever she/he typed in. Result from the first exhibition proofs this feature makes the phone a more user-friendly device. The users could read what they typed in and/or delete before submitting the data.

The clip shows LCD displaying questions and answers from the  user’s input on modes age, weight and height.



TAKEAWAY


Saved Pattern Switch:

Without the user’ biometric data, the output contents of stetho-phone cannot be generated so every visual is, in a sense, owned by the user. To share this authorship, steho-phone has a function that allows the user to record their preferred pattern. By pressing the red button on the front shell at the time each pattern appears on the projection screen, the pattern is saved on the computer hard drive. The pattern then will be sent to the user’s email address after the exhibition.

Push-to-make swich used for making recored pattern button

Push-to-make swich covered with red cap used for making saved pattern button

Saved pattern swich circuit and diagram using a push-to-make switch and 1MΩ resistor

Saved pattern swich circuit and diagram using a push-to-make switch and 1MΩ resistor

Saved pattern button equipped on the right front shell of the phone

Saved pattern button equipped on the right front shell of the phone