Particle Internet Button: IoT in a Can

Published By

That title may sound like hyperbole, but the Particle Internet Button does indeed come in a can, and it provides (almost) everything you need to make an interesting IoT device. The button portion includes features such as lights and an accelerometer and is powered by a Particle Photon, which you can pull off and reuse in other applications if you desire.

Particle Internet Button Hardware

Particle Button_IMAGE 2-min 1

The heart of this device is a Particle Photon, which attaches to a special "Button" board, along with a transparent cover and a light diffuser. In typical Particle fashion, it comes brilliantly packaged in a screw-top tin—the can we mentioned—with foam padding to keep the components secure.

While it's apparent that you're supposed to plug in the onboard Photon through the gap in the plastic, it's not immediately evident what the package contains. Disassembly is easy enough; remove the clear plastic shell and pull the Photon off carefully. This step releases the diffuser and reveals the circuit board underneath, which contains 11 RGB LEDs, a three-axis accelerometer, four buttons, and a speaker. It also features female headers that break out the standard Photon pins, allowing you to use this board with other gadgets.

If you purchase a Photon by itself, expect to spend some time hooking up wires and choosing components before you start experimenting. If you get the Internet Button, however, all you need to do is hook up USB power and connect to Wi-Fi and the Particle IoT. You can then transfer a program wirelessly. While you could use standard examples with your device, the Particle also has a set of programs ready to go. We'll explore those programs as well as a customized piece of HTML that you might want to implement for control.

Particle Internet Button Projects

Once you've unwrapped the Button, get started with documentation and examples via the Web IDE. These examples provide a good starting point for a wide variety of projects. Importantly, these examples all have the #include "InternetButton.h" statement to implement the Button library.

Let's look at what these examples do:

  • Blink_An_LED: This one is pretty self-explanatory; instead of blinking the Photon's onboard LED, it blinks LED 6 on the Button board blue. You can run the standard LED blink example, but note that it will also trigger D0, which activates the speaker on the Button board.
  • Blink_ALL_the_LEDs & Buttons_and_LEDs: As you'd expect, this example blinks all the Button LEDs on then off a light blue color. You can also modify the LED color values and delay. Buttons_and_LEDs turns LED 3 on when button 2 (below) is depressed. Note that these programs won't show up in the standard examples, so you may have to press the back button or refer to the original button link.
  • Good_Combination: Responds to different button presses, and eventually makes a rainbow of colors if you press them correctly.
  • Motion & Orientation: Motion-senses acceleration and responds in kind with different lighting arrangements. The sensor picks up gravitational acceleration as well, so as you roll the device, it will turn different colors and stay that way.

Orientation lights up the lowest LED. It's almost as if you have a small amount of water that moves around in a dish. Note that the Button's sensing device is a three-axis accelerometer, not a more advanced IMU with six or nine axes of measurement.

  • Making Music: Plays tones based on the button you press. If you press all the buttons, it displays a rainbow and plays a familiar tune.

Particle Button_IMAGE 3-min 1

Internet Control

The real magic of the Particle board is its ability to control devices using the internet. To try this out, load up the Release_Firmware program, then navigate to the console and select your device. You'll see some different functions listed (which are also accessible via the app on your smartphone), and the input formats are defined in the program starting at line 51 (shown in the image below). Input values as needed and call the function.

Particle Button_IMAGE 4

This internet control example was the only one that didn't work as expected, which may be because the Internet Button is several years old and is now listed as legacy hardware. The standard HTML page asked me to log in to Spark (Particle's former name), which suggests that it's overdue for an update.

On the other hand, controlling the Button via HTML is simple. I modified the example HTML file used for the Web-Connected LED example to control the Release_Firmware program instead, turning LED 6 high and low. You can find the HTML file here, which you need to modify with your device ID and access token.

Final Thoughts on Internet Button

If you're new to the Particle ecosystem―or OTA programming in general―it's amazing to be able to press a button and have your device change connections. It seems like a small thing, but the way the Particle integrates everything together in a hassle-free environment is remarkable.

You might not need the Internet Button to get started with the Particle and the Photon, but it's a great way to get familiar with the device's capabilities. Yes, you can DIY everything I've shown here, but this product lets you build familiarity with the ecosystem in a hurry. If you're still wondering about the Particle in general, or perhaps debating which model to get, check out this post specifically on the Photon, or this article outlining the Particle Argon board.

Related news articles

Latest News

Sorry, your filter selection returned no results.

We've updated our privacy policy. Please take a moment to review these changes. By clicking I Agree to Arrow Electronics Terms Of Use  and have read and understand the Privacy Policy and Cookie Policy.

Our website places cookies on your device to improve your experience and to improve our site. Read more about the cookies we use and how to disable them here. Cookies and tracking technologies may be used for marketing purposes.
By clicking “Accept”, you are consenting to placement of cookies on your device and to our use of tracking technologies. Click “Read More” below for more information and instructions on how to disable cookies and tracking technologies. While acceptance of cookies and tracking technologies is voluntary, disabling them may result in the website not working properly, and certain advertisements may be less relevant to you.
We respect your privacy. Read our privacy policy here