• Stars
    star
    261
  • Rank 156,630 (Top 4 %)
  • Language
  • License
    Apache License 2.0
  • Created over 4 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A pendant to warn you when you touch your face

Jet Propulsion Laboratory, California Institute of Technology (NASA JPL)

PULSE - a pendant to warn you when you touch your face

Here’s the tool and equipment list, materials, circuit diagram and assembly instructions. The ability to solder is necessary to assemble the PULSE pendant. Except for the IR sensor unit, the parts are generic and can be purchased broadly. Example links for purchasing these parts are shown.

Table of Contents

Tools and equipment needed

  1. Home-class 3D Printer (PLA material or other as user option; you can also send files out for on-line order)

  2. Soldering Iron and solder

  3. Wire Stripper

  4. Helping Hands Stand to Assist Soldering (optional)

Materials Required and links for ordering

Materials_Required.jpg

  1. IR Sensor unit: Pololu 38 kHz IR Proximity Sensor Order Here or equivalent in function and size determined by CAD here

  2. PNP Transistor: 2N3906 or equivalent: Order Here or equivalent in function

  3. 1 K Ohm standard resistor: Order Here or equivalent in function

  4. Slide Switch to fit case: Order Here or equivalent in function and size determined by CAD here

  5. Vibrating Motor to fit case Order 10x2.0mm Vibrating Motor Here or Order 10x3.4mm Vibrating Motor Here

  6. W1 – 5 cm; W2 – 4 cm; W3 – 2 cm; W4 – 2 cm; 22 Gage Wire

  7. Heat shrink tubing to cover leads: Order Here or equivalent to cover a 2.5mm diameter wire

  8. Battery Holder: Order Here or equivalent in function and size determined by CAD here

  9. 3V CR2032 Coin Battery: Order Here or equivalent in function

  10. Dark colored paint (i.e., acrylic, oil, nail polish etc.) such as black, navy blue, dark green, etc. (Required only when utilizing non-black colored case material)

Pendant Case

The PULSE pendant case was designed to hold the existing parts. Other pendant designs can be created as desired as long as the IR sensor will fit and has a clear view to the front of the pendant.

If not using black material for case, the bottom of the IR emitter will need to be painted black or covered with black electrical tape to absorb any light. If this is not done, the sensor will read false motion and vibrate continuously. Only the flat bottom, do not cover the whole LED.

Download STL Files

cad_with_parts.jpg

Circuit Diagram

Circuit_Diagram.jpg

Central to the design of the PULSE pendant is the infrared sensor unit (U1 in the diagram) that provides a high (~3 V) output signal to pin 3 by default, and drops low (~1 V) when the LED detector (D1) receives a signal indicating your hand (or other reflecting object) is in front of the pendant. L1 is the radiating infrared LED. When pin 3 goes low, it powers the PNP transistor (Q1) to energize the motor (M1) causing it to vibrate and the pendant to pulse. V1 is the 3 V battery in the case and S1 is the slide switch. Pin 4 on the infrared sensor is an enable input and is not used.

Assembly of the PULSE pendant

  1. Wire W1 solders to the center pin of the switch and wire W2 solders to an end pin of the switch. The third pin on the switch can be clipped off – it is not used. Heat shrink covers the pins. This picture shows the completed switch next to an assembled PULSE pendant

assembly_step_1.jpg

  1. The other end of W2 solders to the emitter pin of the transistor as well as wire W3. (This is a three-way connection – wires W2, W3 and the transistor emitter pin are connected together; this is the positive voltage). The picture shows the use of a helping hands to perform the soldering of three leads, and then the end result. Heat shrink is used to cover the lead at the transistor.

assembly_step_2.jpg

  1. The other end of wire W3 then attaches to pin 2 of the IR sensor

  2. Wire W4 (ground), attaches to pin 1 of the IR sensor

  3. The 1 K Ohm standard resistor attaches to the middle or base pin of the transistor. Use heat shrink to cover the connection

  4. The 1 K Ohm standard resistor attaches to pin 3 of the IR sensor. This picture shows the assembly so far

assembly_step_5.jpg

  1. The red wire of the vibrating motor solders to the collector pin of the transistor. Use heat shrink to cover the connection

assembly_step_6.jpg

  1. The black wire of the vibrating motor solders to the ground port of the battery case (jointly with W4). The other end of W1 solders to the positive pin of the battery holder. This picture shows the completed assembly and the wires folded for insertion into the bottom case

assembly_step_7.jpg

  1. The motor and switch snap into the case base

  2. The IR sensor slides into the case base rails

  3. The electronics are gently tucked into the case base

assembly_step_10.jpg

  1. Using a dark colored paint (i.e., acrylic, oil, nail polish etc.) such as black, navy blue, dark green, etc., lightly paint over the emitter as shown in the image below. Using a dark colored pen or marker will not work the same as paint.

assembly_step_11.jpg

  1. With the electronics in the case base, the battery can be installed, the switch can be set on; move your hand in front of the IR sensor and the red LED on the sensor board will light and the case will PULSE!

GitHub_Video_Thumbnail.jpg

  1. Install the top case. Attach a necklace of your choice and PULSE is complete

Frequently Asked Questions - FAQ's

  1. Q: How is battery life / current draw with the current design? I have trichotillomania and this would be a fantastic help for me and many other sufferers. However it would mean we would have to wear it all day, every day to kick the habit. From an environmental perspective I imagine we would need to change this to take a small rechargeable battery (possibly charge circuitry too) to result in less batteries going to landfill/recycling centres.

    A: The infrared sensor is the largest current draw and at continuous operation runs the battery down over a day or two depending on use. We are looking at a Version 2 that would include a rechargeable battery. Please look at the Version 2 FAQ question for changes we are considering.

  2. Q: I assume painting the IR sensor is to reduce the gain a bit? Since the high brightness version is backordered, would the low brightness version work? The range is 12 inches. Perhaps using a shorter lanyard. Or we could find another source, which would have us altering the print job.

    A: We paint the bottom of infrared sensor to limit stray transmitted IR light from bouncing back to the IR receiver. The pendant case color effects this quite a bit - for example a black case does not need the IR transmittor painted. The low-brightness version does work but with reduced range.

  3. Q: Can we order these already built?

    A: We are seeking production houses that would be interested in producing PULSE.

  4. Q: Are you planning on making a version 2?

    A: We Are. Functionality for Pulse Version 2 will have a Printed Circuit Board (PCB) holding all electronics. Standard form factor of PCB with infrared (IR) sensor and switch having standard alignment to pendant case

Acknowledgements

In early March of 2020, it was becoming quite apparent that the pandemic has reached the United States. We, like so many other countries, would have to partake in precautionary methods to protect ourselves from contracting a novel virus that was affecting the world in unrecognizable ways.

With little information available, we turned to the CDC for guidance. They provide the general public with a clear list of tasks to help prevent infection, one of which was advising us not to touch our faces. As the news unfolded and the warnings heightened, we found ourselves immersed in discussions related to the topic, most of which consisted of commiserating on the laborious task of not touching our face. During a Monday morning tag-up, and as our team members revealed how often they touch their face, Tom Cwik, the engineer, and Faith Oftadeh, the designer, suddenly realized that a simple wearable device may help with this problematic subconscious behavior.

Immediately, we started pulling together a list of inexpensive and easily accessible parts, sketching out ideas, and once the concept seemed plausible, we agreed to pursue it all while JPL closed and transitioned to telework. Within days, we found ourselves adjusting to a new way of living. While working from home, managing childcare, and attempting to do β€œbusiness as usual,” we continued developing PULSE via text and Facetime during the nights and weekends. When it came to creating a proper casing for the pendant, Dan Kolenz joined the team as the CAD mechanical designer. After prototyping and working through sluggish online parts ordering, coupled with frequent late-night texting, facetime sessions, and 3D printing in the garage, we managed to create an operating prototype.

Dave Gallagher, JPL’s Associate Lab Director provided significant encouragement and JPL support to move forward. Rafael Martinez paved the way from within JPL to allow us to release PULSE and bring it to where it is today. Lisa Harbottle volunteered to demo and model the pendant, Gary Bolotin gave a review of the electronics, Kristy Kawasaki designed the website, and Olivia Cwik was key to soldering and added to the Readme.

Our goal was to create a simple device that can help minimize the spread of a virus. We also hope that the public can further develop this concept. As we return to our office spaces and attempt to integrate back into society, we believe that PULSE may help others stay as healthy as possible.

In The Press

  • Radio interview with KNX LA 1070 AM
  • Featured on KTLA channel 5 morning news and ABC LA channel 7 June 30, 2020
  • Live via zoom on Fox channel 26 Morning Show, Houston, Wednesday July 1, 2020
  1. Techcrunch
  2. USATODAY
  3. Mashable
  4. Daily Mail
  5. CNet
  6. UK News (United Kingdom)
  7. Engadget
  8. GovTech
  9. SlashGear
  10. TheDenverChannel
  11. TechTimes
  12. TrendHunter
  13. Cosmopolitan
  14. Futurism
  15. NewsMax
  16. Houston Chronicle
  17. MSN
  18. CoronaCOVID19
  19. PublicReleases
  20. PasadenaNow
  21. NewsErector
  22. InceptiveMind
  23. 3DPrintingDesign
  24. FirstPost
  25. 8NewsNow
  26. Telecino (Spain)
  27. Tivi (Finland)
  28. GCN
  29. India Times (India)
  30. Yahoo! news
  31. Tribune (Pakistan)
  32. Groupo FΓ³rmula (Mexico)
  33. El Tiempo (Colombia)

Disclaimer

Disclaimer: The designs herein have not been reviewed, cleared, or approved by FDA or other regulatory authority, nor have they received Coronavirus Disease 2019 (COVID-19) Emergency Use Authorizations for Medical Devices. Neither California Institute of Technology (including the Jet Propulsion Laboratory)("Caltech") nor its employees or agents provide any representation or warranty, express or implied, for fitness for a particular purpose, safety, efficacy, or non-infringement of any third party intellectual property rights. Caltech offers these device designs in good faith to help healthcare providers and others prevent the spread of and treat patients with COVID-19. Physicians and other healthcare providers bear full responsibility to convey warnings and obtain patients' informed consent.

Contact Us

The research was carried out at the Jet Propulsion Laboratory, California Institute of Technology, under a contract with the National Aeronautics and Space Administration.

More Repositories

1

open-source-rover

A build-it-yourself, 6-wheel rover based on the rovers on Mars!
Prolog
8,561
star
2

osr-rover-code

Code that runs on the Open Source Rover
Python
425
star
3

autoRIFT

A Python module of a fast and intelligent algorithm for finding the pixel displacement between two images
Python
214
star
4

embedded-gcov

GCC/gcov code coverage data extraction from the actual embedded system, without requiring a file system, or an operating system, or standard C libraries.
C
173
star
5

COVID-19-respirators

JPL designed 3D and tested printed respirators to help with the COVID-19 pandemic response.
G-code
129
star
6

osr-android-app

Android application used to control the Open Source Rover
Java
73
star
7

m2020-urdf-models

Perseverance and Ingenuity URDF models used for operations visualization
71
star
8

captoolkit

NASA’s Cryosphere Altimetry Processing Toolkit
Jupyter Notebook
56
star
9

explorer-1

JPL's Design System
Vue
51
star
10

rosa

ROSA is an AI Agent designed to interact with ROS-based robotics systems using natural language queries. ROSA helps robot developers inspect, diagnose, understand, and operate robots.
Python
42
star
11

fastcat

C++ EtherCAT Device Command & Control Library
C++
41
star
12

its_live

Tool repository for accessing and working with ITS_LIVE data.
Python
40
star
13

LiveViewOpenCL

Open Source real-time visualization tools for Imaging Spectrometer development
C++
36
star
14

launchbox

A runtime environment for web applications.
Python
27
star
15

spoc_lite

A light-weight, experimental terrain classifier for Mars rovers
C++
27
star
16

ION-DTN

NASA Open Source ION Software implementation of Delay Tolerant Networking. ION development is managed by the Jet Propulsion Lab; regression testing and code management are provided by Ohio University.
C
23
star
17

regvue

Modern Hardware/Software Interface (HSI) Documentation
Vue
21
star
18

Waveport

Waveport Scattering Library
TeX
21
star
19

ASSESS

Automatic Semantic Search Engine for Suitable Standards
Python
21
star
20

FlightView

Real-time tools for Imaging Spectroscopy Data
C++
20
star
21

jsd

Just SOEM Drivers
C
18
star
22

its_live_production

A NASA MEaSUREs project to provide automated, low latency, global glacier flow and elevation change datasets
Python
17
star
23

Cassini_RADAR_Software

Public release of Cassini SAR processor, preprocessor, and topography from SAR processor.
C
17
star
24

SPOC

A website showcasing SPOC (Soil Property and Object Classification), a deep learning-based terrain classifier for Mars rovers
HTML
14
star
25

pmapper

Super resolution, deconvolution, demosaicing, oh my!
Python
13
star
26

tiledwms

C++
12
star
27

django-launchbox

A plugin for your Django app to assist in integrating with Launchbox.
Python
12
star
28

sstmp

Solar System Treks Mosaic Pipeline
Python
12
star
29

stellar

A CSS implementation of the Stellar design system for spacecraft operation tools.
SCSS
11
star
30

itslive-py

Python client for ITSLIVE glacier ice velocities.
Python
11
star
31

cortex

Modern data infrastructure for robotics projects.
Python
10
star
32

itslive-explorer

Jupyter Notebook
10
star
33

react-stellar

A React implementation of the Stellar design system for spacecraft operations tools
TypeScript
10
star
34

COVID-19-papr

JPL Designed Powered Air-Purifying Respirator (PAPR)
10
star
35

golaborate

Go servers/services for remote and autonomous testbeds and labs
Go
9
star
36

fcat

FCAT ROS2 Node
C++
9
star
37

ngdcs

NGDCS Imaging Spectroscopy Airborne Flight Computer Code
C
6
star
38

ScanBarcodes

ScanBarcodes is a SwiftUI view that scans barcodes using an iPhone or iPad camera.
Swift
6
star
39

ion-core

A streamlined packaging of core DTN features from the ION-DTN open source software
Makefile
6
star
40

lowfssim

Roman-CGI optical model of LOWFS
Python
5
star
41

coralign

Coronagraph alignment and calibration software
Jupyter Notebook
5
star
42

guiss

Python
4
star
43

design-challenge-multiphysics

Optical instrument design challenge
4
star
44

ion-network-model

The DTN Network Model Visualization Tool offers an essential graphical tool to create and edit a network of hosts, IP address assignment, and connections and captures them in a JSON model file. It can be ported into the ION Configuration Tool (https://github.com/nasa-jpl/ion-config-tool) to generate configuration files the ION software uses.
JavaScript
4
star
45

gpsGUI

EFIS-style GPS and IMU Visualization, Logging, and Log-Playback software for the ATLANS A7
C++
3
star
46

pyion

3
star
47

svelte-stellar

A Svelte implementation of the Stellar design system for spacecraft operations tools.
Svelte
3
star
48

ocean-model-interfaces

C++ interfaces that provide access to ocean model data sets.
C++
3
star
49

ion-config-tool

The ION Configuration Tool provides both command line and browser interfaces for creating and editing configuration files for the Interplanetary Overlay Network (ION) software, an implementation of Delay/Disruption Tolerant Networking technology.
JavaScript
3
star
50

golaborate-clients

clients for Golaborate in python and Matlab
Python
2
star
51

ScanBarcodesDemo

Wrapper demo app for the ScanBarcodes Swift package for iOS
Swift
2
star
52

MoonDiff

HTML
2
star
53

LLM_Exploration_Workflows

A Space for exploring and developing workflows related to LLMs using Open Source technologies
2
star
54

nasa-jpl.github.io

2
star
55

golaborate-docs

Documentation about Golaborate
2
star
56

SAAS

Simulation for the Analysis of Autonomy at the System Level
Python
2
star
57

itslive-ieee

ITS_LIVE @ IEEE Computing in Science & Engineering Manuscript
Jupyter Notebook
1
star
58

its_live_projects

Jupyter Notebook
1
star
59

fcat_msgs

ROS2 Message Definitions for FCAT node
CMake
1
star
60

launchbox-demo-service

Demo of a simple Launchbox service
HTML
1
star
61

USGS-DARPA-challange-resources

1
star
62

launchbox-plugin

A python helper class for integrating Launchbox plugins
Python
1
star
63

lunasynth

1
star
64

example-site

An example of a GitHub.io Project site in the nasa-jpl Organization
1
star
65

protospace-cad-renderer

Web based ProtoSpace model renderer
JavaScript
1
star
66

GMI

MACOS Generic Matlab Interface
Fortran
1
star
67

uavsar-wildfire

Jupyter Notebook
1
star
68

macos

Modeling and Analysis for Controlled Optical Systems
Fortran
1
star
69

TetherCAD

A python library providing tools for the design and high-level analysis of electromechanical tethers, for robotics, space, or other applications!
Python
1
star