Pragma sally shepard cover?fm=jpg&fl=progressive&q=75&w=300

Embracing the Internet of Things for Cats 🐱

Internet of things & wearables for humans? Yawn, that’s been done. The hot new market is cats. 🐱 At Pragma Conference 2015, Sally Shepard demonstrates how to effectively prototype hardware solutions and carry out user testing, all with your favorite feline.

Why am I Here to Talk About Cat Wearables? (1:35)

I have been an iOS developer since the first SDK; worked on: different apps, agencies, internal teams, run mobile teams, done contracting and consulting. Last year, the company that I was working at decided to downsize the team to iOS, and I ended up taking voluntary redundancy. Whilst at an event in London, the Mobile Forum (hosted by Facebook), there was a talk about wearables. I have always been interested in hardware (my background is in software), and I ended up employing myself. I had done projects Arduino-based, and one of them even featured cats. 🐱

With cat wearables, I wanted to make something lasting. To make an impact, you first need to solve a problem. What problems do cats have? 55% of cats that are overweight or obese. 200 to 300 million cats worldwide are kept as pets - that gives me 110 to 165 million potential users. Diet and exercise are the two potential factors that cause obesity in cats. Not interested in creating a new type of cat food, I focused on the latter: exercise.

Wearables for Cats: Requirements Gathering (8:46)

Before I could built a prototype, the requirements of the system were: 1) track the cat’s activity, 2) something that the cat could wear (e.g. a collar, since they are already used to wearing one), 3) a way to engage the cat (to generate more activity; probably with a toy). The data (collar, toys) needs to be collected, sent to the cloud, and quantified (to view the results). There also obviously needs to be an app. In this system, we have a collar on the cat and a toy, and they can talk to each other. They can also get information and send information to a “brain.” The “brain” sends data to the cloud, and the app gets data from the cloud. The collar will track the activity of the cat. When the cat has been inactive for too long, the toy turns on, starts moving around and making noises. As the cat plays with the toy, the toy will change its behavior to keep the cat engaged.

What’s the Existing Market Like? (10:30)

People spend money on their pets. There are many things in the wearables for dogs market, not much for cats. I wanted to create something that cats would engage with and love. 😻

Prototyping (12:17)

I focused on making lean prototypes. I aimed for fast/cheap prototyping. I looked at my diagram and considered which of the three separate pieces of hardware and an app and the cloud could I eliminate and focus on first. I eliminated the cloud and the app (more an incentive for the owners than to verify whether or not the cat likes this). We can leave the “brain” out for a while (it just exists as a way of the cat’s data to be uploaded and passed on to the owner). To start I could make a collar or make a toy; then, focus on making them work together.

Get more development news like this

The collar (13:54)

I wanted to make a simple prototype collar. I thought about using Fitbit (but that would only give me human steps, different from cat steps); I also used the Apple Watch (my cat did not like it). I needed to: track the movement and have that data communicated back. I needed to access raw accelerometer data and Bluetooth. I discarded Arduino (too big), and then found a MetaWear board. It was cheap and small; and it has an iOS SDK, in Objective-C though with a fully functioning sample app. You get access to all the sensor data. You can also expand it. At this point, I realized I needed a “temporary” “brain” (to get data from the collar without having to plug it into my computer): I ended up using an iPhone and running the MetaWear app on the phone (I could just get data from the board). I tried it on my cat: once he did adjust to the collar, in a very lean way, I did some electric tape. The board is in its antistatic bag, taped it to his collar. I also used the sample app; a live stream of data from the collar to the phone. Result: I had a basic collar up and running, and the data was being transmitted.

Toys (17:29)

As I was using the MetaWear for the collar, it made sense that I could also use it for the toy. You can get 3D printed cases designed for the MetaWear boards (none suitable as a cat toy), but I ended up buying on Amazon (refillable plastic eggs - they open, and I can put the board inside; and air flow balls). I had the collar tracking data, and the toys could perform a set of instructions. The phone was collecting this data manually. The next thing was getting the “brain” to trigger things automatically. But, obviously, cat steps are not the same as human steps. There is no magical filter that exists for filtering accelerometer data and making it look like cat steps. I had to write one. I examined raw data, the raw accelerometer data and played with different filters to try to get clean data.

Raw Data & Quantify (20:27)

The raw data was interesting, but it needed more context (cats do more than just sleep). I listed the cat’s activities (walking, running, playing, jumping, sleeping, grooming), and followed the cat with the app. I added buttons to the iPhone app; as he did things, I would tap the button (which added another parameter to the accelerometer data). Later, I could check the data against the activity type (e.g. determine what constitutes a cat step, a jump, sleeping), and update the app with that information.

Lots of Data: a Less Lean Tangent, the Kinect (21:30)

I had a lean tangent: the Kinect (can see skeletons: record cat’s activities, notify me and compare the data). I spent about two days trying to get the Kinect to work with my Mac. I ended up having to use a Surface Pro. It does not support cat skeletons out of the box. I then considered user testing with cats. I had done user testing in the past with humans for apps, it is easy to find out from a human what they hate and what they like by facial expressions and their body language. But user testing with cats, however, they are very complicated creatures: unclear intentions, lack of interest (definitely more time-consuming and challenging than humans).

The Future! (24:34)

Super-smart toys: Prototyping with the air flow balls and the eggs have been limiting. I want the toys to react more to the cat’s movement and how far away he is from the toy and for the toy’s behavior to change. Problems with cat toys: you never know if the cat is going to like it. The “brain” could also analyze the effectiveness of the toy engaging with the cat. If the cat is not engaged, it can change the behavior until it finds something that the cat likes.

Collar attachment: There are different collars available for cats. I did not want the whole collar needed to be the tracker (you would have to take it off to recharge it). Since the collar attachment has Bluetooth, we could add beacons to, for example, the food/water dish and the litter box. This could give us a better understanding of the cat’s overall health and behaviors.

Track additional behaviours: I need to test with more cats. 🐱🐱🐱🐱🐱🐱🐱

Product, hiring people, and a cool name: I want to go beyond prototypes; a product that people can buy. I will be putting this on Kickstarter in the end of November hopefully. I also need to hire some people. And I need a cool name. I loved working on this project, I am really looking forward to taking it to the next level.

You can always make it leaner (28:20)

Approaching hardware does not have to feel like a monumental task. Make use of your existing skills. I picked the MetaWear board because it has an iOS SDK. I like writing in Objective-C, and in Swift, but sadly they do not support that yet. I did not want to have to also learn a new language, try to make use of what you already know. Once you verified your solution, you can focus on creating more specialized hardware.

Lean prototyping is key. Lean prototype can be leaner and then probably leaner still. We are still at a relatively early stage of wearables and the Internet of Things. Push the platform forward; as long as you are solving a real problem, do not worry if people think that what you are doing is silly.

Thank You! Questions? (30:06)

Q: Did you speak to any vets or experts on pets?

Sally: That is next on the list of getting involved with some vets. I did see a platform recently. I think it is called iPet something or other because you just stick an i in front of anything, but it was this thing where there were toys in animal shelters, and you can go on, and you get two minutes to control the toys and watch the cats play with them. But none of the cats do anything because everybody just constantly bounces toys at them all day, but it was still interesting. I think vets are getting on board with the idea of using technology.

Q: Why are not you using a laser product?

Sally: Only some cats who respond to laser pointers. There is a Kickstarter at the moment for a toy that will randomly start shooting lasers around. I had a dog before, though, that actually had a sensitivity to lasers and would have a seizure.

About the content

This talk was delivered live in October 2015 at #Pragma Conference. The video was transcribed by Realm and is published here with the permission of the conference organizers.

Sally Shepard

Sally is an iOS developer, consultant & speaker. She loves working on accessibility, which led her to successfully kickstart Inclusive Tools. She likes to spend her free time working on cat wearables with her pet/tester, Pavlo.

4 design patterns for a RESTless mobile integration »