Internet Button – How to set it up

Recently, one of my colleagues and I bought an internet button from I thought it would be fun to play around with. After spending a few (frustrating) hours trying to get it to work as I wanted, I thought it might be helpful if I gave an overview of how I got it running. If you’re a whiz developer, you probably don’t need to read this. However, if you’re not a programer and thought that you’d buy an internet button to play around with, this guide is going to save you a serious amount of time.

What are we going to learn?

In the first instance, the plan was to enable you to hit the button to send an email. Fundamentally, we will get the button up and running and connect it to IFTTT.

Why is this guide needed?

Fundamentally, this guide is needed because all of the instructions seem to be old and don’t work. Also, the code repos that they recommend you download into your IDE also seem to be old and don’t work. So rather than you try and figure it out, I am going to give you the TL;DR.

You’re not a developer, but you got it to work. How?

This question is simply an excuse for me to insert my new favourite meme (thanks Shaw!), which pretty much sums up all of my development efforts. I laugh, because it is true (mostly).

Pasted image at 2016_08_19 08_46 PM

Cale is not a developer

 Ok, what needs to be done

Well, once the button arrives you need to follow the instructions to set it up. When the instructions get to a part about “flashing” the memory of the button from the console, this is where it gets tricky. Rather than muck about, here is code that is guaranteed to work (well, it worked for me):

#include "InternetButton/InternetButton.h"

// Create a Button named b. It will be your friend, and you two will spend lots of time together.
// You may be wondering about those two slashes and this gray text- they're called comments, and
// don't affect the code. Think of this as the voice of the narrator.
InternetButton b = InternetButton();

// The code in setup() runs once when the device is powered on or reset. Used for setting up states, modes, etc
void setup() {
// Tell b to get everything ready to go
// Use b.begin(1); if you have the original SparkButton, which does not have a buzzer or a plastic enclosure
// to use, just add a '1' between the parentheses in the code below.
void loop() {
Particle.publish("allbuttons","Tim", 1, PRIVATE);

else {

You simply have to copy and paste the above code into the IDE, hit the Verify button at the top left (the tick), and then flash the code to your internet button (press the button above – it looks like a lightning bolt).

Now, log into your console and click on your device. When you press the button, it should come through with “Tim” to the log. If that’s the case, you can now connect IFTTT to listen for “Tim” and you are away… the world is your internet button oyster.

Why Tim?
Long story.

How to Land a Shark from the Shark Tank (Pt 1)

How to Land a Shark from the Shark Tank (Pt 1)

With the upcoming TV show on Ten, Shark Tank, it’s an opportune time to explore what it takes to land a Shark – i.e. get one to invest in your business. I guess I should know, I’ve landed one. Twice.

It’s worth noting at this point that I do not consider myself a particularly good entrepreneur. My ability to talk shit is limited, and I am hopelessly honest. I enjoy solving difficult problems, and the reality with starting most businesses is that the difficult issues are solved early and then it is just a matter of grinding it out. Ergo – I am a shit entrepreneur.

There is one aspect of the start-up process I am good at, having said that. Raising money. That probably shouldn’t be a surprise given my professional background also centers on raising money.

So how does one go about raising money from sophisticated investors? Well, there are a few tricks to it, but the main one is this:

“If you need to raise money, then nothing else matters.”

If you don’t need to raise money, then don’t do it. As an ego trip, it is not a very smart one. You should be trying to keep as much of your equity as you can. However, if you need to raise money, then it needs to be your #1 priority.

At the moment, if you can’t raise seed funding within 10 pitches, something is VERY wrong… some suggestions:

  1. Your team is shit.
  2. Your product/service is shit.
  3. Your presentation is shit.
  4. Your presenting skills are shit.
  5. You are pitching the wrong people (your networks or your researching ability are shit)

The first two issues are potentially terminal, as they should be. The last 3 are totally solvable and if you kill the last 3, in this environment you could overcome the first 2. – case in point. Urrgh.

Why do I say that? Well, because I’ve seen heaps of other companies try to raise money. Pitching for months, some wear it as a badge of honour. That’s rubbish. If no money = no business then the last 3 must be your #1 priority. Your = the whole team.

In the next installment I will go through the anatomy of the start up pitches our team used to raise money from one of the people on the Shark Tank. The bones of the pitches were the same just the skins were different. I’ll also talk about what we did to bring it all together.

3 steps to never forgetting anything ever again

Forgetting stuff sucks. As we are all busy, busy, busy, it becomes easier and easier to forget things. No one ever puts their hands up to remind you that you have forgotten to follow them up on something that you asked for. They have probably forgotten about it also. I am probably pretty frustrating to deal with, because I am quite persistent and I never forget to follow up anything. Ever.

Here is my secret to never forgetting anything ever again, in 3 easy steps:

  1. Follow this link ;
  2. Sign up; then
  3. Use it, religiously.

Seriously, it has to be one of the easiest apps to use, and it is one of the few apps I consider useful enough to put my hard earned down on. I use heaps of different apps, and try out many more, but is one of my favourites. Here are a couple of ways I use it:

  • I email you, asking you to provide me something by a Monday at 4pm. In the BCC field, I include On Monday at 4pm, I get an email reminder. If you haven’t sent through what I requested, guess who gets a follow up at 4:01pm. Yep, you.
  • If I need to do something at a specific time, I just shoot a quick email message off with the subject being what I need to do. I walk home from work, so I am often struck with inspiration or other random thoughts. If I realise I need to do something, for instance, a quick email to and tomorrow morning when I arrive at work I have a reminder in my inbox.

One thing to note is that as you are effectively sending an email to a third party app, you should be careful about what you’re sending. I never BCC on sensitive or confidential emails. I just shoot a quick email off after the initial email with the person’s name, and a quick note to job my memory. Of course, the reality is that we shouldn’t send anything confidential by email… but let’s be real – the world would grind to a halt!

Anyway, I guess it isn’t my little secret anymore.

Hope it helps!

Cale Bennett.