Shuffle

Integrating custom furniture with Spotify playlists.

Team + Role

This student group project was completed as part of the Atelier course at OCAD. My team consisted of Melissa Roberts and myself. I acted as the Physical Technician, designing and building the prototype of the chair and its corresponding circuitry with Arduino.

The Problem

Traditionally, couches/chairs and media go hand in hand. As technology has continued to advance, this relationship has simply remained complementary and stagnant.

The Goal

How might we design an experience where furniture acts as an unconventional remote?

Shuffle Summary

Shuffle is an app that integrates custom furniture with Spotify playlists. Shuffle allows you to associate different genres with different resting positions on the furniture. Want to play Hip-Hop/Rap music? Done. Want to change the song but keep the same genre? Just shuffle your body to shuffle the music. Shuffle’s custom furniture incorporates a number of pressure sensors. Using these sensors, the chair is able to determine which position you are resting in. The sensors are hooked up to an Arduino which connects via bluetooth to the Shuffle App (“CONNECT CHAIR” button). The Arduino sends readings from the sensors to the App. The 5 sensors in the chair can be triggered in different combinations associated with “positions”. When a new position is detected, the song will change.

Initial Ideation

Based on our project problem, our discussion moved to determining how  furniture and media would interact with each other. We thought about using a chair as an unconventional remote, changing characteristics based on how the user was interacting with it.

Next, it was time to determine what method of media was being “changed” via the chair. We decided on music as our method of media, as it does not require the full attention of the user; rather, it would simply act as a compliment to the experience of the chair. From personal experience, we acknowledged that the easiest way to access music was through mobile applications such as Spotify and Apple Music. We knew immediately that our project would lead us to building both a piece of furniture and a musical mobile app. Given our time frame, we chose to build for Android.

Building the Chair

Building Materials
  • Cushion
  • Stretch fabric
  • Velostat (pressure sensing fabric)
  • Fabric to cover original cushion
  • Sewing tools
  • Velcro

Figuring Out Mechanics

While constructing the app, we had to have a sample circuit working prior to the finished build of the chair. We started by generally identifying where our sensors would be located on the chair. We narrowed it down to 5 different places. We then created different position combinations, each that satisfied a different resting position on the chair. For example, when the user is lying down, they are triggering all 5 sensors. All 5 sensors being triggered together is an example of one of the combinations. The if statements are written to describe each position highlighting which sensors are ===true and which are ===false.We began by naming each position with a corresponding letter; but, we later learned that the code did not like the letter value so we then changed it to a number value.

Below are our original sketches for our project vision...

early sketch of our plans including a chair and app

And our initial Velostat installation to the pressure points...

The installation of the velostat in the cushion

Building the App

When we first discussed creating an application, we started from square one. Our only prior experience with application creation was with a couple small lectures on Nativescript.js and Vue.js. Nativescript and Vue, allow users to program mobile applications using Javascript verses having to use the native language of each platform.

Major Challenges
  • Which platform are we going to use?
  • How are we going to connect audio to the application?
  • How are we going to get the chair to talk to the application through Arduino?

Exploring Spotify

We began our application development journey by referring to the Spotify page. We learnt that Spotify gives other developers their data through something called an API (Application Programming Interface). After reviewing a few different tutorials, we noticed that most used Android over Apple. To keep things simple, we proceeded with Android.

Establishing Connection to Arduino

We began working on achieving the Arduino Bluetooth connection through listening for a serial input on the app. We created a simple circuit with one sample sensor, to send values to the app. We were also able to able to create our buttons. One button gained connection with Arduino, where the others were to control various genres of Spotify playlists.

Working on UI and Playlists

For the interface, we were able to add a “Now Playing” section which showed the current track being listened to, as well as the image of the album cover. The first challenge with this was to span the columns. Spanning the columns was required so that the buttons wouldn’t change size due to a long track or artist name. The second challenge with this was with gaining access to the album cover image. We were able to gain access to the album covers through Spotify’s Images API. We received access to the album cover of the current song through the Player API. We then were able to put the Spotify image in ImageView by using the Image URL. Finally, we created a variety of different playlists of many different genres and had them playing back on shuffle mode.

Final Build

The final version of the chair and mobile application UI.

Our final chair build, a lawn chair in grey fabricShuffle User Interface

Conclusion and Reflection

All in all, we feel that we accomplished exactly what we set out to create. Our initial idea may have seemed larger than what our knowledge could handle; however, after researching, we discovered that there are plenty of guides, tutorials and references online. There were various challenges throughout the project, but we found a way to overcome each of them. The exhibition was a success and our peers seemed to love our product. Reflecting on our experience, if we had more time there is something that we would like to explore further...

The Chair

Due to our limited budget, we could only get our hands on a lawn chair. We treated the lawn chair as if it were a couch or an indoor piece, because ultimately this is how we had imagined it. However, it would be interesting to explore the use of the lawn chair itself... as it is normally used at the beach, and people often listen to music at the beach. If we viewed the chair from this outdoor perspective, I wonder how the resting positions and overall usability would change.