Practice Exercise: Paper Signals
Table of contents
Taking inspiration from Google’s paper signals, this project is going to ask you to explore some interactions between an actuator and materials. It’s going to ask you to get creative in experimenting with ways in which a motor can create notifications and signals through movement and vibration.
Starting point
You’ll work in small groups. Each group will be assigned one of the following actuators:
- A servo
- A solenoid
- A vibrating disk
- A 12V brushless fan
You’ll start by first creating a basic circuit to control your motor.
- If you’re working with the servo, follow the servo
- If you’re working with a motor (solenoid, vibrating disk or fan), follow the motor control guide
If you're working with a motor, you're going to need to use a transitor and external high amp power source. Be incredibly careful when wiring this as you could fry your particle device. ALWAYS POWER DOWN your device and disconnect power from the source when making any changes to your circuit.
Cloud Connectivity
For this exercise you do not have to hook your device up to live data, but you must add a Particle.function
to control your device. Use the Particle.function
in combination with the console to “simulate” data coming from an external source.
For example, if you were going to have your alert / notification / signal:
- Track Bitcoin: You would have your cloud function accept a number, representing either the current price of bitcoin or the change in bitcoin, and program your circuit to respond.
- Track TemperatureL: You could have your cloud function accept the current temperature in celcius or farenheit as a number, or the current weather condition as a string (e.g. raining, snowing, windy, etc.)
- Track emails: It could be simply to let you know you’ve received a new email or the number of emails you’ve got in your inbox.
- Track buses: You could have your cloud function accept the time until the next bus (i.e. the number of minutes away it is)
- etc.
Brainstorm a data source and consider the unit of measurement your ambient alert will need to respond to. Program the cloud function to accept that data and handle changes as new data arrives. Use the cloud function to test it’s response.
Material Interaction
Get creative and prototype a simple form / material interaction to help communicate your .
Consider the affordances of your motor in interacting with materials (e.g. a servo allows for rotation, cycling, movement while a solenoid allows for ‘knocking’, pushing, jumping, etc.)
Experiment with how changes in your code (e.g. frequency, speed, duration) can create behaviors between the material and the actuator you’re working with.
Document and submit your work.