# I built the world's first Twitter-enabled litterbox

**URL:** <https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609>\
**Category:** Miscellaneous and Personal Stuff I Must Share\
**Created:** [June 12, 2014, 6:45am UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609 "2014-06-12T06:45:43Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Dr.Strangelove](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/dr.strangelove/32/6613_2.png) [@Dr.Strangelove](https://boards.straightdope.com/u/Dr.Strangelove)\
**Post date:** [June 12, 2014, 6:45am UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/1 "2014-06-12T06:45:43Z")

</div>

No, really! You can see the Twitter feed [here](https://twitter.com/nibblerpoop).

And I have some build instructions [here](http://www.scottcutler.net/catpoop/catpoop.html). It uses an Arduino, Raspberry Pi, external ADC, and some other bits. Obligatory cat pic at the end.

Hackaday did a [quick blurb](http://hackaday.com/2014/06/06/a-tweeting-litter-box/) on my project.

---

<div class="post-metadata">

**Author:** ![stui\_magpie](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/stui_magpie/32/11010_2.png) [@stui\_magpie](https://boards.straightdope.com/u/stui_magpie)\
**Post date:** [June 12, 2014, 6:48am UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/2 "2014-06-12T06:48:44Z")

</div>

What scares me is the number of people following that twitter account.

---

<div class="post-metadata">

**Author:** ![zoid](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/zoid/32/336_2.png) [@zoid](https://boards.straightdope.com/u/zoid)\
**Post date:** [June 12, 2014, 6:57am UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/3 "2014-06-12T06:57:47Z")

</div>

> [@Dr.Strangelove](#):
>
> No, really! You can see the Twitter feed [here](https://twitter.com/nibblerpoop).
> 
> And I have some build instructions [here](http://www.scottcutler.net/catpoop/catpoop.html). It uses an Arduino, Raspberry Pi, external ADC, and some other bits. Obligatory cat pic at the end.
> 
> Hackaday did a [quick blurb](http://hackaday.com/2014/06/06/a-tweeting-litter-box/) on my project.

I mean this in the best way possible, but you are one weird dude.

---

<div class="post-metadata">

**Author:** ![Derleth](https://avatars.discourse-cdn.com/v4/letter/d/b9e5f3/32.png) [@Derleth](https://boards.straightdope.com/u/Derleth)\
**Post date:** [June 12, 2014, 8:24am UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/4 "2014-06-12T08:24:11Z")

</div>

[Your cat’s a Twitter shitter!](http://www.penny-arcade.com/comic/2008/04/23/le-twittre/)

---

<div class="post-metadata">

**Author:** ![Dr.Strangelove](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/dr.strangelove/32/6613_2.png) [@Dr.Strangelove](https://boards.straightdope.com/u/Dr.Strangelove)\
**Post date:** [June 12, 2014, 8:33am UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/5 "2014-06-12T08:33:15Z")

</div>

> [@stui\_magpie](#):
>
> What scares me is the number of people following that twitter account.

Does it frighten you more that another joined since I posted this :)?

> [@Derleth](#):
>
> [Your cat’s a Twitter shitter!](http://www.penny-arcade.com/comic/2008/04/23/le-twittre/)

I really, really wanted to use this quote in there somewhere. But I also wanted to keep it kid friendly.

Though now that I read the comic again, I pretty much have to use “Okay poop is coming out” and “Alright, poop time”.

---

<div class="post-metadata">

**Author:** ![Knowed\_Out](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/knowed_out/32/7380_2.png) [@Knowed\_Out](https://boards.straightdope.com/u/Knowed_Out)\
**Post date:** [June 12, 2014, 12:41pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/6 "2014-06-12T12:41:21Z")

</div>

OK, I guess the OP understands he’s going to be subject to some ridicule. Indeed, my first thought was, this guy has too much time on his hands.

Then I thought, isn’t this exactly what people are using Twitter for anyway? To broadcast shit for their followers to analyze? This is no different. It’s just more literal.

Then I started to worry. What if this establishes some sort of precedent that some governing body will think needs to made law? Maybe environmental concerns will get to the point where we all have to monitor how much we shit for climate studies. Does that sound farfetched? The Pentagon [actually wanted flypaper report](http://www.museumofhoaxes.com/hoax/archive/permalink/the_flypaper_report)s because a hoax established precedent.

---

<div class="post-metadata">

**Author:** ![Knowed\_Out](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/knowed_out/32/7380_2.png) [@Knowed\_Out](https://boards.straightdope.com/u/Knowed_Out)\
**Post date:** [June 12, 2014, 1:08pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/7 "2014-06-12T13:08:30Z")

</div>

Turns out our good **Dr. Strangelove** [isn’t the first to publish scatalogical data](http://www.museumofhoaxes.com/hoax/weblog/comments/quantified_toilets).

---

<div class="post-metadata">

**Author:** ![FriarTed](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/friarted/32/1052_2.png) [@FriarTed](https://boards.straightdope.com/u/FriarTed)\
**Post date:** [June 12, 2014, 1:23pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/8 "2014-06-12T13:23:00Z")

</div>

Nibbler is cute & looks like a sweet kitty.

(The fact that he puts up with this validates that assessment.)

---

<div class="post-metadata">

**Author:** ![phouka](https://avatars.discourse-cdn.com/v4/letter/p/c5a1d2/32.png) [@phouka](https://boards.straightdope.com/u/phouka)\
**Post date:** [June 12, 2014, 1:49pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/9 "2014-06-12T13:49:28Z")

</div>

Now hold on just a minute here!

There’s no way for your entwitterpated litter box to tell the difference between kitty poop and kitty pee. You have LIED to us!

I, sir, have a disappoint.

---

<div class="post-metadata">

**Author:** ![ShadowFacts](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/shadowfacts/32/2934_2.png) [@ShadowFacts](https://boards.straightdope.com/u/ShadowFacts)\
**Post date:** [June 12, 2014, 2:28pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/10 "2014-06-12T14:28:18Z")

</div>

I just have to say that, based on the pic provided, Nibbler looks pretty embarrassed to be involved in this project. 😉

---

<div class="post-metadata">

**Author:** ![Heart\_of\_Dorkness](https://avatars.discourse-cdn.com/v4/letter/h/4bbf92/32.png) [@Heart\_of\_Dorkness](https://boards.straightdope.com/u/Heart_of_Dorkness)\
**Post date:** [June 12, 2014, 3:39pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/11 "2014-06-12T15:39:54Z")

</div>

A couple of comments:

One, I don’t know perl, so I’m not sure I’m reading this right, but it appears that you’re calculating Nibbler’s weight as the maximum total weight measured over the course of the pooping operation minus the pre-pooping baseline weight. As far as I can tell, though, the max weight represents cat plus baseline plus _that operation’s poop_. In other words, you seem to be counting the weight of the just-deposited poop in the cat’s weight. From a biometric standpoint, I think it would make more sense to calculate the cat’s _post-pooping_ weight: max weight minus the baseline _minus the poop weight_ .

And two, as **phouka** pointed out, you have no way of differentiating poop and pee. Doing this seems tricky, but not insurmountable. I’ll give it some thought and get back to you.

---

<div class="post-metadata">

**Author:** ![Machine\_Elf](https://avatars.discourse-cdn.com/v4/letter/m/82dd89/32.png) [@Machine\_Elf](https://boards.straightdope.com/u/Machine_Elf)\
**Post date:** [June 12, 2014, 3:49pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/12 "2014-06-12T15:49:15Z")

</div>

> [@Heart\_of\_Dorkness](#):
>
> And two, as **phouka** pointed out, you have no way of differentiating poop and pee. Doing this seems tricky, but not insurmountable. I’ll give it some thought and get back to you.

How about a hygrometer to measure the local rise in humidity after urination? It would rise after defecation too, but not by as much.

Maybe an IR camera and some image processing to check for shapes? After the cat leaves (indicated by the load cells), the IR camera looks for warm things. Log-shaped? #2. OTher shape? #1.

Mass? Does a single deposit of urine weigh significantly less than a single fecal deposit? Reliably so?

---

<div class="post-metadata">

**Author:** ![Roderick\_Femm](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/roderick_femm/32/14875_2.png) [@Roderick\_Femm](https://boards.straightdope.com/u/Roderick_Femm)\
**Post date:** [June 12, 2014, 4:54pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/13 "2014-06-12T16:54:40Z")

</div>

If a cat is like a person (about which I have no real idea) they might only go to pee, but if the go to poop they will also pee incidentally (i.e. relaxing all sphincters until emptiness occurs).

Relative weight of poop and pee: 24 grams of pee would be equal 24 mls, or less than one ounce. That seems reasonable for one pee event, one site I found said that the average housecat pees up to 6 ounces per day. I do not, however, know how large 24 grams of poop would be, but at less than an ounce it seems a small poop event.

---

<div class="post-metadata">

**Author:** ![Dr.Strangelove](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/dr.strangelove/32/6613_2.png) [@Dr.Strangelove](https://boards.straightdope.com/u/Dr.Strangelove)\
**Post date:** [June 12, 2014, 5:30pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/14 "2014-06-12T17:30:08Z")

</div>

> [@Heart\_of\_Dorkness](#):
>
> One, I don’t know perl, so I’m not sure I’m reading this right, but it appears that you’re calculating Nibbler’s weight as the maximum total weight measured over the course of the pooping operation minus the pre-pooping baseline weight. As far as I can tell, though, the max weight represents cat plus baseline plus _that operation’s poop_. In other words, you seem to be counting the weight of the just-deposited poop in the cat’s weight. From a biometric standpoint, I think it would make more sense to calculate the cat’s _post-pooping_ weight: max weight minus the baseline _minus the poop weight_ .

Yup, you got it. That’s a change I’ve been meaning to put in. At the time I wrote it, I wasn’t sure the total weight would be stable enough for that to matter, but it turns out it is.

At the moment I’m working on making the random text a bit less “clumpy” (it shouldn’t repeat itself on recent tweets). Also, the code is badly written and needs to be improved.

> [@Heart\_of\_Dorkness](#):
>
> And two, as **phouka** pointed out, you have no way of differentiating poop and pee. Doing this seems tricky, but not insurmountable. I’ll give it some thought and get back to you.

Yup. It’s all “kitty roca”.

Differentiating seems really hard. If she always used the box in one particular place, then a hygrometer could work, but that doesn’t really happen. Maybe an ammonia sensor of some kind, though it seems hard to calibrate.

Weight would be an indicator of some kind, but as **Roderick Femm** said, that would likely only differentiate between pee and poop+pee.

---

<div class="post-metadata">

**Author:** ![Dr.Strangelove](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/dr.strangelove/32/6613_2.png) [@Dr.Strangelove](https://boards.straightdope.com/u/Dr.Strangelove)\
**Post date:** [June 12, 2014, 5:34pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/15 "2014-06-12T17:34:10Z")

</div>

> [@Knowed\_Out](#):
>
> Then I thought, isn’t this exactly what people are using Twitter for anyway? To broadcast shit for their followers to analyze? This is no different. It’s just more literal.

I won’t deny that my main purpose was some kind of meta-commentary on the value of Twitter (aside from the fact that I like building things, that is).

But there was one thing I didn’t anticipate. I just got off from vacation a few days ago, and had left Nibbler alone for a few days. It was actually quite nice seeing the reports come in, knowing that she’s still eating, drinking, and pooping regularly. A little gross but when pets are stressed they can stop doing these things, so it was good to see that she was all right in my absence.

---

<div class="post-metadata">

**Author:** ![Dr.Strangelove](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/dr.strangelove/32/6613_2.png) [@Dr.Strangelove](https://boards.straightdope.com/u/Dr.Strangelove)\
**Post date:** [June 12, 2014, 5:52pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/16 "2014-06-12T17:52:33Z")

</div>

> [@Knowed\_Out](#):
>
> Turns out our good **Dr. Strangelove** [isn’t the first to publish scatalogical data](http://www.museumofhoaxes.com/hoax/weblog/comments/quantified_toilets).

But mine is real! I really like the odors they publish, though: neutral, nutty, sulphuric, etc. I’m very tempted to do the same for mine.

---

<div class="post-metadata">

**Author:** ![cochrane](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/cochrane/32/10441_2.png) [@cochrane](https://boards.straightdope.com/u/cochrane)\
**Post date:** [June 12, 2014, 6:05pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/17 "2014-06-12T18:05:13Z")

</div>

> [@Knowed\_Out](#):
>
> OK, I guess the OP understands he’s going to be subject to some ridicule. Indeed, my first thought was, this guy has too much time on his hands.
> 
> Then I thought, isn’t this exactly what people are using Twitter for anyway? To broadcast shit for their followers to analyze? This is no different. It’s just more literal.
> 
> Then I started to worry. What if this establishes some sort of precedent that some governing body will think needs to made law? Maybe environmental concerns will get to the point where we all have to monitor how much we shit for climate studies. Does that sound farfetched? The Pentagon [actually wanted flypaper report](http://www.museumofhoaxes.com/hoax/archive/permalink/the_flypaper_report)s because a hoax established precedent.

Sounds like the planet [Bethselamin](http://en.wikipedia.org/w/index.php?title=Places_in_The_Hitchhiker%27s_Guide_to_the_Galaxy#Bethselamin) from the Hitchhiker’s Guide to the Galaxy.

---

<div class="post-metadata">

**Author:** ![Whiskey\_Dickens](https://avatars.discourse-cdn.com/v4/letter/w/9fc348/32.png) [@Whiskey\_Dickens](https://boards.straightdope.com/u/Whiskey_Dickens)\
**Post date:** [June 12, 2014, 6:47pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/18 "2014-06-12T18:47:31Z")

</div>

I’ve steadfastly fought the urge to get a twitter account since 2009.  
I lost that battle after seeing your OP. Well done \*\*Dr. Strangelove \*\*

---

<div class="post-metadata">

**Author:** ![Dr.Strangelove](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/dr.strangelove/32/6613_2.png) [@Dr.Strangelove](https://boards.straightdope.com/u/Dr.Strangelove)\
**Post date:** [June 12, 2014, 11:23pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/19 "2014-06-12T23:23:47Z")

</div>

> [@Machine\_Elf](#):
>
> How about a hygrometer to measure the local rise in humidity after urination? It would rise after defecation too, but not by as much.

I ordered a gas sensor that should be able to detect ammonia–the MQ-135 (the MQ-137 is more sensitive, but way more expensive). Obviously there will always be some ammonia in the vicinity, but I think there’s a good chance that a pee event will have enough of a transient to be detectable as long as I track a moving baseline. We shall see (once the sensor arrives from China)!

Something else occurred to me, though it would require much more sophisticated hardware and software: the transient nature of the evacuations. If I could get accurate data at, say, 100 Hz, I could distinguish between the plop-plop-plop of poop vs. the constant stream of urine. That’s a very difficult software problem, though, since there are so many sources of noise (such as the cat moving around and burying stuff).

---

<div class="post-metadata">

**Author:** ![Sunspace](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/sunspace/32/1250_2.png) [@Sunspace](https://boards.straightdope.com/u/Sunspace)\
**Post date:** [June 12, 2014, 11:44pm UTC](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609/20 "2014-06-12T23:44:25Z")

</div>

For Og’s sake, don’t hook this up to Twitpic… 🙂

[Next page](https://boards.straightdope.com/t/i-built-the-worlds-first-twitter-enabled-litterbox/690609.md?page=2)
