I put together a brief presentation about my field trip to the Liberty Science Center.
I put together a brief presentation about my field trip to the Liberty Science Center.
Check out my slide deck summarizing my user testing and final prototype.
A few example slides.
This is a wireless controller for the type of stage lights found in many performance venues. The controller selects colors, changes the brightness, and turns the light on and off. The enclosure itself has a strong visual design that doubles as a control panel, suggesting to users how to interact with a circular soft potentiometer, a sensor not familiar to most people.
Tools: Soft potentiometer and rotary encoder, Arduino MKR1000 microcontroller, Tom Igoe’s sACNSource.h library, and vinyl adhesive sheets.
Demonstrating the controller’s color selection feature.
The user’s interactions with the tangible sensors causes analog and digital signals to be sent to the Arduino microcontroller. Code saved on the microcontroller runs logic to determine what to do based on these signals, and then stores answers that are sent via wifi to lights using the DMX protocol (the standard language used to communicate with these standard lights found in performance and retail spaces).
The circuitry inside.
I’d like to understand why my all of my controller’s features work when powered by my laptop, but only half work when powered by a LiPo battery (I used a 3.7v 2000mAh battery, which should be enough but I will have to find out). I also have some flow issues in the structure of my code, so that while a command exists to entirely shut off the lights, it’s not being activated. I hope to completely finish this controller and the MIDI music controller this spring.
Here is a flow chart & drafted working prototype for my friend’s idea of a Studio Rental app. Looking forward to getting user feedback from people in the next week.
Link to prototype here, and a few screen shots below. I used Sketch to create the prototype, and Invision to create a shareable version online. I’ll work on connecting the hotspots. https://invis.io/WYG3SWTBNRC#/282238030_Studio_Page
I made the Flow Chart in Illustrator, using the graphics I created for the User Journey last week.
This sensor report covers capacitive touch & compares a few breakout boards. I created a chart and went into more detail regarding a specific breakout board that is simple & reliable.
What is Capacitive Touch?
Capacitive Touch measures anything conductive or insulating, most commonly human touch. Capacitive Touch is great for both creative and useful applications because it works with many different materials, either in the form of the capacitive touch sensors themselves or paired with unique enclosures. This is because as mentioned, capacitive touch can measure anything that is either conductive or more insulating than air, even through an enclosure.
If your project has a lot of inputs, using a breakout board can help a lot. Here are a couple recent ITP projects that use cap touch.
How does it work?
Capacitive Touch works because the body’s water content is enough for a single finger or hand to change the electrical field surrounding two plates inside a capacitive sensor. The two plates can be thought of as antennae that senses changing electrodes. The change in electrical field caused by a finger results in a reading that you can use in your code to trigger whatever event you’d like.
To clarify, the user can be near or far away from actual capacitive sensor itself. You can move the electrode, the pad that receives the user’s input, as far away as you like. It all depends on your materials and wiring.
Pros – What is it good for?
As for benefits, there are a few. Capacitive touch:
Cons – Why buy a breakout board if you can DIY?
Sure, for a one week assignment, you can DIY your electrode with copper, foil, velostat and conductive fabric, etc. And yes, you can use the Arduino Captouch library and put off buying a breakout board.
But for a larger project, you’ll want to spend a little money because your time is better spent figuring out the higher-level or trickier parts of your project, instead of debugging what you did by hand. While yes, you can make your own quick electrodes (foil, copper, fruit), by using a manufactured electrode and/or breakout board you can trust it will all work reliably. And using the Arduino Captouch library is good, but plan to only use an Arduino Uno, as the library is only written for that microcontroller (until it’s updated).
Comparison Chart of a Few Options
Although finished, I’m having trouble posting the chart. : (
The board in action. No mechanical parts due to the magic of capacitive touch.
What is it? What does it do well?
Sparkfun’s breakout board is a cap touch button in and of itself. You don’t have to build your own electrode/button, unless you want to. It works well as a replacement for a key press.
What is it bad at?
Sparkfun and the chip maker say it’s built for proximity sensor readings. However, this barely worked for me, even on its most sensitive mode. To a regular user, it’s actually harder to hover 1 cm above the pad (proximity) then actually press it (touch).
Not great at proximity readings.
But on a related note, the board’s readings can be switched from Fast Mode to Slow Mode. Although a pain, you can move the solder on the back of the chip from Fast Mode to Slow Mode. Slow Mode is helpful if you want to use less power by sending fewer frequencies to the electrode’s pad, but be sure to test that it’s still sensitive enough to get the readings you want.
What does it NOT do?
Measure how hard the user is pressing.
Tips to Avoid Debugging
But how does it REALLY work?
The AT42QT101X chip reads the conductive area in order to detect “touches” by a user. It does this by sending high frequencies to the pad. This technology is called “digital burst mode charge transfer” or “spread spectrum charge transfer”. If a finger is pressed, the pad changes the shape of the pulses. When the chip detects these slight changes it raises the OUT line to HIGH indicating that a touch is present. The amount of time you can say it’s “on” depends on whether you’re using the 1010 or 1011 chips (with the 1010 turns off after 60 seconds of being “on”; the 1011 stays on as long as the user presses it).
What would you use it for? You might use it in things like:
You might also find it solves your design needs, such as:
Enclosure Ideas – What works or not?
You probably want to cover it up as part of an ITP project. The makers say it should work with a piece of acrylic (⅛” or thinner), cardboard, stone, ceramic, and most kinds of wood. I tested as many of these as I could. Some worked, others didn’t.
These are materials that worked.
What didn’t work for me, but maybe you can get it to work:
Here’s the link to the hook-up guide from Sparkfun:
For this last assignment we’ll be designing a product for someone we know. The design process will be broken up over several weeks:
Here are my four proposals! We were asked to think of three people and imagine products that might solve a problem in their life. Instead, I chose to ask people directly instead of imagine something. Within this kind of scope, people know their lives best & what they want!
Idea #1: Recording Studio Open Hours
A Friend’s Need: A friend of mine is a 30-something musician and now successful producer and engineer. He says he’d love an “uber or airbnb for recording studios” – a way to post your private recording studio and its open hours, say midnight to 5am. There are a lot of private studios in apartments with separate entrances or in basements, besides the usual big ones in midtown.
Proposed Product: An app or website. Further research interviews with my friend and other musicians and engineers will lead to specific features. For example, does this group of creatives use business cards? If so, is this service worth including in the site.
Idea #2: Song Saver Dongle
A Family Member’s Need: I have a family member who is a music expert. He’s collects vinyl records for years & knows a lot about certain genres of music. Now he’s in his late 30’s and has two daughters and less time. He wants to have “an app or product that continuously “shazams” or listens to sound coming out of the audio output/headphone jack on computer or mobile phone and produces a list of music played”
My Proposed Product: A small product that you pop into your audio jack and uses wifi or bluetooth to send the audio or song titles and artists to a list or spreadsheet. Note that I’m purposefully not recommending an app or software. This is because I want to stay away from designing things that listen to your whole life and connect that information to the general ecosystem of your online life . Instead, as a creator, I’d want to want to create something “dumb” enough that they are separate from your other accounts and physically communicate that by being a separate piece of hardware.
Idea #3: Getting newborns around the city
A Friend’s Need: A friend in her 30’s was severely homebound for several weeks after giving birth to newborn — even though she wanted to get outside! She couldn’t travel with the baby because she had a C-section, it’s hard to carry a baby and collapse a stroller at the same time, most subway stations don’t have elevators, and cabs require car seats but few have them.
My Proposed Products:
Idea #4: Sock Service
Family Members’ Needs: Two people in my family get holes in their socks. For at least one of them, it is a source of real frustration as they buy seemingly perfectly good socks but yet they still fall apart. The product’s failure can make them feel like they have something wrong with them — when it is the sock that has failed in that it’s not made well enough. In turn, the sock’s failure turns into another errand for the owner. Why not turn this frustration into a delight? New socks especially good at preventing holes could be delivered at home.
Proposed Product: An app or website for a monthly sock service for those that get holes in their socks, not necessarily for fashion.
Reference: FYI – there are several services out there already. Images are available across sites.
For this assignment, we created musical instruments that use the MIDI protocol. Mine combines melody and percussion, and frees up the musician to use their voice if they wish. I’m imagining that lead vocalists in bands may want an instrument like this. If this prototype were to become wireless and portable, they would be free to leave their set-up on stage to move around. It could also work just as well for other musicians whether accompanying themselves, playing in an ensemble, or backing up another musician.
The soft pot is for volume, and the buttons on the right are for choosing pitches. The orange shape signifies where to strike with your drum stick.
I was inspired by two things: One, having seen many musician friends and colleagues perform over the years while I managed and produced live music programs and concerts. I admire anyone on stage, but especially those who are up front most engaging with the audience while also playing instruments. I thought it might be fun to create something they could use that amplified how they communicate energy to the audience, all while singing and moving around the stage. And two, I’ve always loved how much sound even a small hand held instrument adds to a band. Not only that, but they usually call for such a specific gesture that the audience can really see and enjoy.
I was also inspired by these handheld instruments from across the African Diaspora and Latin America. They each add their own unique sound and specific gesture to what’s happening on stage. I admired these and thought I would make something that builds on their shape and purpose.
Guiro, Puerto Rican, Cuban and other forms of Latin American music
Assignment from Class
Make a device to control playback of synthesized or pre-recorded music using MIDI. You do not have to build the playback engine, just the physical control device. Your device will send MIDI messages to another device which will play the music.
Your device should support the following features:
Make a housing for your controller. Document it according to the project documentation guidelines at the end of this page.
First I thought of a few ideas. At first I played it safe and was going to make a guitar with buttons. But I decided to challenge myself to make an instrument that doesn’t quite exist yet.
I bought my materials, including some cool buttons, wire connectors (these are amazing – no soldering to your buttons!), and containers from where else, but the Container Store. Thanks to Nick, my classmate, for keeping it real and suggesting I just get an off the shelf container rather than make my own at this stage.
Here’s a diagram of the enclosure.
As usual, I started small so that I could get simple sensor readings from my five buttons, shake sensor, and soft pot.
Testing MIDI Code & MIDI Hardware Set Up
After that, I started working on code to connect those readings to MIDI messages. As an easy start, I tested my circuit with code provided by Tom Igoe to see if I was getting the expected serial monitor messages. Then I set up MIDI hardware with the example code, to see if I had connected the equipment properly. This took a few tries.
Creating My Own Code
Once I had example code and a hardware set up working, I started to try and write my own code that would allow the musician to use the instrument as I had in mind. My takeaway is that I learned a lot deciding for myself how to organize and structure my code. But despite getting lots of help, I hit a wall and will need some more help finishing it up.
I did accomplish a lot, though. For example, I wanted the built-in notes to be a normal C major scale, not half tones as in the Github example. I also wanted the musician to be able to control the volume by pressing up or down the soft pot, which meant passing that value into the MIDI message function, and then remembering it using state change detection. That way the musician could press once and let go, and not have to continually hold the volume soft pot sensor while pressing other notes.
Essentially I created a template function to run on every sensor input, which requires the three values of the static pin, static MIDI pitch value, and changing volume value. I wrote separate logic to capture the soft pot’s value, map it to MIDI’s volume range of 0 – 127, and use state change detection to save the latest reading. I funneled the three values into the master MIDI function which actually sends the data using Serial1.write.
At the moment, my on and off commands are mixing up, and I don’t have enough state change detection written to change the state of those on/off commands.
You can see my code at the bottom.
Fabricating was done mostly by hand, as the circular enclosure meant I couldn’t use the laser cutter. First I taped on paper and used a pen to mark the outside locations of my panel controls, and the inside locations of the breadboards and battery on the inside. I used a drill to make holes. And I found that colored adhesive vinyl sheets get across a lot of personality and even can serve as control panel instructions.
Proof It Worked
I had a mostly working circuit just before enclosing it & trying to add more state detection change. In addition to needing to work on the code, I need to make sure the shake sensor data really works with a drumstick. But proof it worked!
Final Code Documentation
Here’s my final code, as of now. I have a few quirks I look forward to figuring out, maybe as my last project in the class.
Rules of Play
In this online project, people can choose to dance on screen by themselves or with partners. Together Stevie, Simon, Nick and I put it together.
As people visit the /input page, the /output page will show the names of people joining the space. Each person can choose to stay in one spot on the screen, move or “dance” around the screen, dance near someone else’s name, and/or dance for a while near someone else’s name.
Depending on what they choose to do, their names change font type, color, or size.
And to move or “dance”, people use their phone’s X and Y orientation data.
Here is our larger diagram showing how the user interacts with the experience. First they use their own device to enter their name. Then they look up to a projected /output page from a second device, showing their names move around the screen based on the changes in x and y axis of their phones.
This diagram below demonstrates in more detail how code instructs the server and local computers to pass data via sockets so that the users can see results.
Individually, we took on specific roles similar to a team at a tech company. Mimi suggested this arrangement to be sure we were coordinating our code so that it would fit together even if we worked apart Our roles this time were as follows:
Nick – Technical Manager
Stephanie – Front End Developer
Simon – Front End and Back End Developer
Elizabeth – Project Manager
Here we are playing what we created.
Check out our game online at Glitch. See below for our code with comments.
See the code:
For this assignment, I found both user scenarios (read below) to be different enough from each another that I created two different desk counting prototypes.
Based on my instincts, I felt strongly that the emotional states of limiting one’s diet versus anticipating vacation were different enough to call for unique prototypes. I also based this decision on having read recent articles and books popularizing psychology and human behavior.
For example, I’ve heard that it is the positive emotion of anticipation that people most enjoy about vacations – not the actual vacation itself. Said another way, fantasizing about a perfect paradise is more fun than actually experiencing the realities of logistical hiccups or misunderstandings with travel mates. And when it comes to creating new habits to cut down on addictions, such as Marco’s coffee intake, I’ve read that the brain has only a certain amount of will power to spend each day …so you plan & better spend it wisely. Plus there might be negative emotions around having to restrict your diet, not positive ones like those associated with vacation.
With all of this in mind, I decided that Maria and Marco’s motivations are responding to really different emotions and possibly even reacting from different regions of the brain. Combining their needs into one prototype felt like I was simplifying their needs into a solution that wouldn’t help either of them. Therefore, I created different prototypes that played up different features to meet each of their emotions and needs.
Maria’s prototype allows her to savor the anticipation she feels leading up to her vacation. As a break from feeling sad about work, each day she can get a quick high by revealing one small detail of a beautiful photo of her vacation destination. As she eats her lunch at her desk, she can remove one puzzle piece from the board, slowly but surely knowing that she is one step closer to her escape. This design allows her to focus on one small vision of her destination, encouraging her to support savoring and really enjoying her anticipation. As for fabrication, I’m imagining that in a final prototype the puzzle pieces are cut out of flat magnets so that they are easy to peel off from the printed photograph. Behind the photograph is another magnetized board. With this arrangement, she can easily replace the photograph and reuse the magnetized pieces.
Maria begins anticipating her vacation with a full puzzle covering up a photo of her destination. Each piece represents a day between her and her flight to Yosemite National Park.
At this point, Maria is about two thirds of the way towards her hike through Yosemite. In a couple days she’ll be able to see the peak El Capitan.
Marco’s desk counter prototype goes so far as to actually help him manage his coffee addiction. This magnetized board provides not only a method to plan his coffee intake but also track his progress. Knowing he wants to stick to 15 cups a week, he can put two, maybe three, coffee mug magnets on each day. As he drinks each cup, he flips them over to show that he’s enjoyed them (encouraging the action of savoring each cup, which might help him need less in the future). If he slips and has a third or fourth, that’s not a problem. He can take one or two mugs from later in the week and move them over. But that means no coffee at brunch on the weekend! Again, the fabrication would make use of flat magnets but that are printed on both sides to show an empty or full cup of coffee.
This design allows Marco to plan out his ideal coffee consumption for the week. 15 cups divided evenly is 2 cups for six days, and 3 cups on the seventh day.
As the week goes by, Marco can flip each coffee mug to reveal the full cup of coffee that he just enjoyed. If he has more than two cups of coffee in a day, that’s OK – he can take one from later in the week, but will clearly see he has to hold back on the weekend.
I’ve heard about personas in the past, and have been suspicious of how useful it is to design for them. I myself can see that I spun a few stories above to persuade the reader that these prototypes will meet the needs of personas Maria and Marco. I’m curious if companies typically invent personas, or base them on research?
Maria is a 30 year old PR Account Manger working at Havas. She finds her job boring and lives for her vacation. Some days she feels she cannot make it to 5pm without knowing that there is a vacation on the calendar. Maria is constantly tracking the number of days until her next vacation. She is looking for a fun way to motivate herself by tracking the number of days until her next vacation.
Marco is a Sales Rep for google. His job is stressful and he has developed a bad habit of drinking too much coffee. He is trying to cut back because he can’t sleep at night. This winter he is up to 4-5 cups a day. Jon loves coffee and doesn’t want to quit, he just wants to scale back from almost 30 cups a week to a limit of 15 cups per week. marco is looking for a way to easily track his coffee consumption by counting the number of cups he drinks each week.