Get Your Toilet Roll On

And now for a little bit of IoT fun, my latest project over on

Roll Pole: Never run out of toilet paper again. Roll Pole monitors your toilet paper and orders fresh supplies when you are down to that last roll.

Yes, internet connected toilet paper! It is what the internet was invented for…



Roll Pole uses a Particle Photon and IR sensors to detect and report the number of rolls on the pole. This is sent to Tinamous where it can be monitored along with the battery voltage.


Using the Particle and the Tesco IFTTT channels fresh loo roll supplies can be added to your Tesco shopping cart automatically.

Check out the project over on

DDD East Anglia Ticket Competition. Get your #DDDEA On!

Tinamous has been sponsoring DDD East Anglia since it started and we’re immensely proud to be able to help the event happen. If you’ve not been to a DDD event you’re missing out on some amazing community events.  They happen all over the UK, so be sure to check out one near you.
Just like in previous years, the tickets for this free event sold out in the blink of an eye.  As a sponsor, Tinamous receives a number of free tickets and we’re giving them away!
Here’s your chance to win 1 of 4 DDD East Anglia Tickets…
Tinamous is all about getting things onto the internet and building your own Internet of Things. We make it really easy to get data from and interact with internet connected devices such as the Particle Core,  Photon, Arduino’s and Raspberry Pis.
We would like to know what ‘things’ you would like to see connected to the internet. Give the maker community ideas for ‘things’ they could make which would be useful when internet connected.
How to Enter:
Tweet the ‘thing’ you would like to get connected. Be sure to include the #GetYourThingOn hash tag.
Example Tweet:
  • Avoid the obvious and already connected. No prizes for fridge, smoke alarm, thermostat etc. They’ve all been done.
  • Prizes will be awarded based on usefulness and originality.
  • Feel free to add your reasoning (e.g. in a second/third tweet or blog post), especially if it’s not obvious.  (This is not required for entrance to the competition.)
  • Feel free to include #Tinamous or #IoT, if you like and have room left in the tweet, but again, these are not a requirement.
The rules are simple.
  • Entrance is via a tweet posted on as described above.
  • The tweet MUST include the hashtag #GetYourThingOn
  • There will be only 4 Winners.
  • Tickets will be awarded on Saturday, 19 September 2015 so be quick!
  • Notification of winners will be via Twitter.
  • Tickets are for DDD East Anglia on Saturday, 26 September 2015 in Cambridge.
  • The prize is the ticket only. Transportation and other expenses are not included.
  • Judging will be by myself, (@TinamousSteve).
  • The judge’s decision is final.
  • Ticket has no monetary value.

My DDD East Anglia Presentation : A brief introduction to making your own (Internet of Things) Thing

A few months ago (I know, I’m really slow at blogging!) I gave a presentation at DDD EastAnglia on how to make your own Internet of Things Thing. Here are my slides from the talk:

The Gadgeteer code can be found on GitHub at

The NeoPixel rings I used in the SteamPunk goggles are available from AdaFruit at and the Arduino code is a slight modification of the example code that AdaFruit make available for the NeoPixels on GitHub


IoT Bingo Cards

Have you noticed all the hype around IoT? So many buzz words like Big Data, Machine Learning and so on. If you go to an IoT conference why not print out of the bingo cards from the attached and see how well you do.

In other news, be sure to bring one to the Internet of Things Day in Oslo, I’m on at 1:30 in Room 3 talking about how a simple IoT solution is driving sales and empowering the customer from a consulting project I’ve been working on.


Print out one of the cards in the attached PDF and if you get a BINGO run I’ll give you one of the cool triple function pens (but I won’t have many so be quick!)

IoT Hype Bingo Cards

Tinamous MQTT Broker

MQTT is a protocol that is popular in the Internet of Things world, it is a light weight, asynchronous, pub/sub protocol, it’s simple but powerful.

Tinamous now has a basic implementation of a MQTT Broker. At this time it supports only QOS0, No Last Will Testament, No SSL, nothing fancy. It does however allow you to use MQTT to talk to the Tinamous platform and makes it very easy to get your devices posting measurements or status messages.

Note: Because of the lack of SSL you should be careful when using the MQTT broker at this stage that nothing private/confidential is exposed.

The MQTT broker provides support for status messages, measurements and alerts as well as pub/sub for your own messages.  Status messages, measurements and alerts posted through the web site or REST API are published to the MQTT Broker and can be subscribed to.

Naturally MQTT doesn’t support the full Tinamous API, their is no support for clearing messages, getting historical measurements/status posts or adding users, however it does provide a real time stream of messages, measurements and alerts which is ideal for many small connected devices and saves you having to learn the Tinamous REST API.

Getting started with Tinamous MQTT:

  • Use the same account url as you do with the web browser (e.g. user for MQTT and for web browser)
  • Port 1883. SSL on 8883 is not supported at this time.
  • You can connect using a Tinamous user or device account.
  • Use username and password authentication. The username needs to include your account name as well.
    • e.g. if your Tinamous account is “MyAccount”, such that you connect at and your username is “UserName” you need to use “UserName.MyAccount” as your MQTT username
  • Use a different ClientId for different clients (and different instances of the same client).
  • Topics are case sensitive.
  • Publishing to a /Tinamous/… topic will not fan out to subscribers as you would normally expect with MQTT. The message is taken in, processed and then pushed out via the appropriate Tinamous topics.
  • It’s a very very very early version so may have issues, please let me know if you find problems.
  • Use QOS0 only, other Qos’s may not work as expected (or at all!)

Tinamous Topics:

  • Device / Usernames do not include the account name in topics. This is needed only for authentication.
  • Wildcards (# and +) are supported for subscriptions on all topics but not on publish.

Status Posts:

  • Publish to: /Tinamous/V1/Status
    • The data should be the message to post to the timeline (e.g. “Hello World”)
  • Subscribe to: /Tinamous/V1/Status/[UserName]
    • Here the UserName is just the simple device/username, it does not need the account qualifier.
    • You can use wildcards to get status posts from all users (e.g. /Tinamous/V1/Status/+).
    • When you publish the message it will not be broadcast to subscribers on the /Tinamous/V1/Status topic but under the sub topic of the user you are connected as (e.g. /Tinamous/V1/Status/Thermistor)


You can publish measurements in two different ways, either as a simple measurement value to the appropriate device/channel/field or as a json object with multiple fields.

  • Publish to: /Tinamous/V1/Measurements
    • use a Json object representation of the measurements, this may contain up-to 12 fields as per the REST api.
  • Publish to: /Tinamous/V1/Measurements/[channel]/Field[n]
    • where channel is typically 0, but may be any user set value as per the API
    • and Fieldn is “Field1” to “Field12”
  • Subscribe to: /Tinamous/V1/Measurements/[device name]/[FieldName]
    • Where device User/Login Name is the user or device publishing measurements
    • FieldName is the friendly name configured for the field (Defaults to “Field 1”, but settable for devices, e.g. Temperature)
    • No channel information is included so if you have the same field name on different channels this will get mixed up
  • Subscribe to: /Tinamous/V1/Measurements/[device name]/[channel]/Field[n]
    • Where channel is the measurement channel number, typically 0.
    • Field[n] is “Field1” to “Field12” as per the REST API.
  • Subscribe to: /Tinamous/V1/Measurements/[device name]
    • Rich Json objects of the measurements are published to this topic.


Alerts support 3 levels, “Critical”, “Error” and “Warning”. With the alert a message is also added.
  • Publish to: /Tinamous/V1/Alerts/[Level]
    • These are not re-published to subscribers on this topic.
    • The message should be the message text to go with the alert (e.g. “Fridge power fail”)
  • Subscribe to: /Tinamous/V1/Alerts/[device or username]/[Level]
    • Use wildcards to get alerts of certain levels from any user. e.g. /Tinamous/V1/Alerts/+/Critical will capture all Critical alerts from any user.
    • The message will be the simple message text entered for the alert.
  • Subscribe to: /Tinamous/V1/Alerts/[device or username]
    • This publishes a rich json object describing the alert in more details.

Your Own Topics:

  • You can publish/subscribe to any topic you wish, however the /Tinamous namespace should not be used as more topics will be added.
  • You will only see published messages from users in your account.

 Give it a try:

All Tinamous accounts are MQTT enabled so you can dive in now with your own account, or you can give it a try using the demo account if you prefer.
  • broker url:
  • port: 1883
  • user: MqttDemoDevice (Username for authentication is MqttDemoDevice.demo)
  • password: MqttDemoPassword1

Tested clients:

Sample Code:

See you at DDD North 2013

We are excited to be sponsoring DDD North this year, myself and Gill will be demonstrating Tinamous with an internet connected* Fez Spider Gadgeteer, some x-mas tree lights, RFID cards, temperature and humidity sensors and the press of button.

We’ll are donating two Fez Spider starter kits which are being given away to DDD North attendees as part of the swag (although you may have to attend the Gadgeteer/Netduino talks and submit feedback to the speakers to be in the running for them).

We are also putting some beer tokens behind the bar for the geek dinner, hope you can make it along to enjoy a beer with us at the end of what should be a really interesting day!

If you want to find out more about Tinamous, chat about all things IoT, or pick up some funky Tinamous/IoT stickers come along to our booth at DDD North – you can’t miss us we’ll be the ones with the big purple Tinamous monster on our T-Shirts!

* – Here’s hoping I’ve not cursed our demo, WiFi internet at conferences tends to be a bit touchy at the best of times!

The world is going all IoT!

The Internet of Things (IoT) is expanding at a massive pace, more and more devices are getting internet enabled and they all need a home.

Sites like Twitter have proved how powerful communication is even with only 140 characters, however you probably wont want your fridge, freezer and weather station all sending reports to Twitter and them getting merged into the mass of tweets flowing past you eyes and out there for everyone to see.

Internet based devices tend to report data, such as the temperature of your fridge, if the power has failed, the current light level and sites like Twitter don’t support measurements, other sites that do support measurements lack microblogging status messages and a Twitter style interface, so Tinamous is designed to bring these worlds together, a Twitter-like interface supporting measurements and alerts as well as status posts.

With Tinamous we bring the world of simple short communications together with devices measurements and alerting to provide a private dashboard of all your devices, at a quick glance you can see a history of status posts and measurements.

It’s got an Arduino, Netduino, Gadgeteer and generally micro friendly Api. We know that these devices have seriously limited capabilities. Trying to set-up OAuth, or HTTPS on them can be very difficult, if not impossible so our api is designed with them in mind.

Which is really just to say, hello and welcome to Tinamous and the Tinamous blog!