<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/rss-style.xsl" type="text/xsl"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	    xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	     xmlns:dc="http://purl.org/dc/elements/1.1/"
	   xmlns:atom="http://www.w3.org/2005/Atom"
	     xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	  xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>
<channel>
	<title>lifx &#8211; Terence Eden’s Blog</title>
	<atom:link href="https://shkspr.mobi/blog/tag/lifx/feed/" rel="self" type="application/rss+xml" />
	<link>https://shkspr.mobi/blog</link>
	<description>Regular nonsense about tech and its effects 🙃</description>
	<lastBuildDate>Sun, 24 Aug 2025 09:19:25 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://shkspr.mobi/blog/wp-content/uploads/2023/07/cropped-avatar-32x32.jpeg</url>
	<title>lifx &#8211; Terence Eden’s Blog</title>
	<link>https://shkspr.mobi/blog</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title><![CDATA[Mixing Hue and Innr Smart Lights]]></title>
		<link>https://shkspr.mobi/blog/2019/11/mixing-hue-and-innr-smart-lights/</link>
					<comments>https://shkspr.mobi/blog/2019/11/mixing-hue-and-innr-smart-lights/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Sun, 24 Nov 2019 12:17:55 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[hue]]></category>
		<category><![CDATA[lifx]]></category>
		<category><![CDATA[lights]]></category>
		<category><![CDATA[NaBloPoMo]]></category>
		<category><![CDATA[Smart Home]]></category>
		<category><![CDATA[zigbee]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=32925</guid>

					<description><![CDATA[I really wanted to write a rant about how incompatible smart lights are ruining the world. But... errr... Everything just works.  Previously on my smarthome adventures, I kitted my house out with LIFX Bulbs and some WisQo Switches. I&#039;ve moved home and none of my bulbs are compatible with the existing sockets!  What else am I going to do except BUY MORE LIGHTBULBS!  As much as I enjoy LIFX,…]]></description>
										<content:encoded><![CDATA[<p>I <em>really</em> wanted to write a rant about how incompatible smart lights are ruining the world. But... errr... Everything just works.</p>

<p>Previously on my smarthome adventures, I kitted my house out with <a href="https://shkspr.mobi/blog/tag/lifx/">LIFX Bulbs</a> and some <a href="https://shkspr.mobi/blog/2017/05/internet-connected-lightswitches-redux/">WisQo Switches</a>. I've moved home and <em>none</em> of my bulbs are compatible with the existing sockets!</p>

<p>What else am I going to do except BUY MORE LIGHTBULBS!</p>

<p>As much as I enjoy LIFX, they're bloody expensive. A single GU10 bulb is FIFTY QUID!  Our new kitchen has 17 bulbs. Even if bought in bulk, that would cost me £765.  Forget that noise!</p>

<p>So, I've gone with the Philips Hue system.  The <a href="https://amzn.to/2oRKWdX">hub was just under £50 on Amazon</a>.  The bulbs use <a href="https://zigbee.org/">Zigbee</a> rather than WiFi - which makes them cheaper and more energy efficient.</p>

<p>But <a href="https://amzn.to/2APqOf8">Hue's GU10 bulbs cost about £20 each</a> - that's still quite expensive.</p>

<p>Luckily, Zigbee is an open protocol, and there are loads of manufacturers of compatible bulbs.  I found a <a href="https://amzn.to/2AO6OK8">fourpack of Zigbee GU10 for £40</a> - a tenner per bulb. A fifth of the price of LIFX.
<img src="https://shkspr.mobi/blog/wp-content/uploads/2019/10/Hue-hub-and-Innr-lights.jpeg" alt="A lot of boxes." width="680" height="649" class="aligncenter size-full wp-image-32929">
Would they work together?  Yup.  I don't have anything to rant about. I configured the hub, installed the app, plugged in the bulbs, and - boom! - they were instantly discovered and started working.</p>

<p>There are three very minor niggles.</p>

<ol>
<li>Amazon Alexa went absolutely bananas. Discovering all those bulbs at once prompted her to keep saying "I have discovered a new light bulb. You can use it by saying..." Imagine that close to 20 times.</li>
<li>The Innr bulbs don't support firmware updates unless you have the Innr hub.  That's probably not a huge problem. Their <a href="https://innr.com/pages/support">website says</a>: "so far it has never been necessary to do a firmware update. All Innr lamps have the latest firmware approved and certified by Zigbee Alliance."
I guess I'll buy and return a hub if necessary.</li>
<li>The dimming curve is slightly uneven. Using the Hue app's manual control, I can fade the lights out gently. When I turn them off, they dim quickly to about 25% brightness and then shut off. Bit weird, but not a dealbreaker.</li>
</ol>

<p>If you can recommend a cheap supplier of Zigbee lights - or any other Zigbee gadgets - please let me know.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=32925&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2019/11/mixing-hue-and-innr-smart-lights/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[People who live in smart-houses, shouldn't throw parties]]></title>
		<link>https://shkspr.mobi/blog/2018/11/people-who-live-in-smart-houses-shouldnt-throw-parties/</link>
					<comments>https://shkspr.mobi/blog/2018/11/people-who-live-in-smart-houses-shouldnt-throw-parties/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Thu, 15 Nov 2018 08:07:44 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[lifx]]></category>
		<category><![CDATA[NaBloPoMo]]></category>
		<category><![CDATA[Smart Home]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=30547</guid>

					<description><![CDATA[I have friends. More than one! I also have a home full of smart-gadgets which are controlled by apps. The two don&#039;t mix.  This is yet another complaint about solipsistic app design.  Let&#039;s take my Lifx bulbs.  I have a friend staying for a few days, and he needs to be able to turn lights on and off.  Lifx make this functionally impossible.  The available options are...   Give my full email…]]></description>
										<content:encoded><![CDATA[<p>I have friends. More than one! I also have a home full of smart-gadgets which are controlled by apps. The two don't mix.</p>

<p>This is yet another complaint about <a href="https://shkspr.mobi/blog/2015/08/anti-social-app-design/">solipsistic app design</a>.</p>

<p>Let's take my Lifx bulbs.  I have a friend staying for a few days, and he needs to be able to turn lights on and off.  Lifx make this <a href="https://www.reddit.com/r/lifx/comments/9k5ga2/guest_access_without_being_on_the_same_wifi/">functionally impossible</a>.  The available options are...</p>

<ul>
<li>Give my full email address &amp; password to him.  This feels suboptimal.</li>
<li>Allow him on to my main WiFi. Again, suboptimal. This is why <a href="https://shkspr.mobi/blog/2014/04/virgin-media-just-gave-all-of-their-customers-plausible-deniability%e2%80%8e/">my ISP provided router has a guest mode</a>.</li>
</ul>

<p>Bleugh. Neither is a good solution. Luckily I have an Amazon Alexa hooked up to the lights.  But because Alexa's "AI" is barely above the level of a speak-n-spell, that's also unsatisfactory.</p>

<p>My guest tried to turn off the hall lights. Only he used the wrong invocation. "Alexa, turn off the landing light" just doesn't cut it. Such AI, much recognition, big data mood.</p>

<p>In a fit of pique, he asked Alexa what devices it had attached. The response was typical of Alexa's usefulness:
<img src="https://shkspr.mobi/blog/wp-content/uploads/2018/11/Alexa-What-devices-are-there.png" alt="Alexa app displaying a list of NASA devices in deep space." width="392" height="801" class="aligncenter size-full wp-image-30632">
What a load of bollocks!</p>

<p>There's an obvious solution to this. Guest accounts.</p>

<p>I know it is a cliche - but Silicon Valley geeks who are too anti-social to have friends and family is a right pain in the arse for everyone else.</p>

<h2 id="note-to-commenters"><a href="https://shkspr.mobi/blog/2018/11/people-who-live-in-smart-houses-shouldnt-throw-parties/#note-to-commenters">Note to commenters</a></h2>

<p>If your solution is "just buy this new bit of kit" or "configure this half-finished library from GitHub" - then you are part of the problem.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=30547&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2018/11/people-who-live-in-smart-houses-shouldnt-throw-parties/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[Singing to my light bulbs]]></title>
		<link>https://shkspr.mobi/blog/2016/05/singing-to-my-light-bulbs/</link>
					<comments>https://shkspr.mobi/blog/2016/05/singing-to-my-light-bulbs/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Thu, 19 May 2016 10:56:55 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[IoT]]></category>
		<category><![CDATA[lifx]]></category>
		<category><![CDATA[lights]]></category>
		<category><![CDATA[Smart Home]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=22855</guid>

					<description><![CDATA[Because I&#039;m an idiot, I&#039;ve decided that what my life needs is voice activated lightbulbs.  But voice control is so 2015. Let&#039;s make these bulbs react to SINGING!  Here&#039;s a demo - fair warning, my vocal prowess is &#34;limited&#34;.  https://shkspr.mobi/blog/wp-content/uploads/2016/05/Voice-Controlled-Lifx.mp4  OK, here&#039;s how to do this.       I recently got a bunch of Lfix bulbs as part of a bug bounty.  …]]></description>
										<content:encoded><![CDATA[<p>Because I'm an idiot, I've decided that what my life needs is voice activated lightbulbs.  But voice control is <em>so</em> 2015. Let's make these bulbs react to SINGING!</p>

<p>Here's a demo - fair warning, my vocal prowess is "limited".</p>

<p></p><div style="width: 620px;" class="wp-video"><video class="wp-video-shortcode" id="video-22855-2" width="620" height="349" preload="metadata" controls="controls"><source type="video/mp4" src="https://shkspr.mobi/blog/wp-content/uploads/2016/05/Voice-Controlled-Lifx.mp4?_=2"><a href="https://shkspr.mobi/blog/wp-content/uploads/2016/05/Voice-Controlled-Lifx.mp4">https://shkspr.mobi/blog/wp-content/uploads/2016/05/Voice-Controlled-Lifx.mp4</a></video></div><p></p>

<p>OK, here's how to do this.</p>

<ul>
    <li>I recently got a bunch of <a href="https://shkspr.mobi/blog/2016/05/disclosed-lifx-security-issue/">Lfix bulbs as part of a bug bounty</a>.</li>
    <li>There's a <a href="https://api.developer.lifx.com/">full API for the Lifx bulbs</a>.</li>
    <li>My mate <a href="https://web.archive.org/web/20160525103540/https://www.rumyrashead.com/">Ruth</a> has written a <a href="https://codepen.io/Rumyra/pen/bCphe">great demo on the Chome Web Speech API</a></li>
    <li>So, speech + Lifx = awesome.</li>
</ul>

<p>This was a 5 minute hack, so <a href="https://github.com/edent/Harry-Potter-Lifx">my code is quite shameful</a>, but here are the basics.</p>

<p>Firstly, we need an HTML page with JavaScript to detect the speech.  At the moment, this only seems to work in Chrome (AKA the IE6 of 2016).</p>

<pre><code class="language-js">var red  = ["red", "read","ret"];
var yellow  = ["yellow", "yell", "yeah"];

// new instance of speech recognition
var recognition = new webkitSpeechRecognition();
recognition.lang = "en-GB";

// set params
recognition.continuous = true;
recognition.interimResults = true;
recognition.start();

recognition.onresult = function(event){

  // delve into words detected results &amp; get the latest
  // total results detected
  var resultsLength = event.results.length -1 ;
  // get length of latest results
  var ArrayLength = event.results[resultsLength].length -1;
  // get last word detected
  var saidWord = event.results[resultsLength][ArrayLength].transcript;
  saidWord = saidWord.trim();

  console.log(saidWord);
  xmlhttp=new XMLHttpRequest();

  if (red.indexOf(saidWord) &gt;= 0)
  {
      console.log("sending red!");

      xmlhttp.open("GET","lifx.php?colour=red",true);
      xmlhttp.send();
  }

  if (yellow.indexOf(saidWord) &gt;= 0)
  {
      console.log("sending yellow!");

      xmlhttp.open("GET","lifx.php?colour=yellow",true);
      xmlhttp.send();
  }
</code></pre>

<p>If it detects one of our magic words, it sends it to a server component.  I just don't trust JavaScript with my API keys.  The server page is a simple PHP script.</p>

<pre><code class="language-php">$link = "https://api.lifx.com/v1/lights/all/state";
$authToken = "";
$colour = htmlspecialchars($_GET["colour"]);
$data = array("color" =&gt; $colour, "duration" =&gt; "0.5");
$ch = curl_init($link);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_POSTFIELDS,http_build_query($data));

$headers = array('Authorization: Bearer ' . $authToken);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$response = curl_exec($ch);
</code></pre>

<p>Take the colour and send it to the bulb. Make the transition time fairly quick (half a second).  The "Rainbow" command just sends random colours with a much shorter transition.</p>

<p>And... err... that's it!  The <a href="https://api.developer.lifx.com/v1/docs/colors">Lifx API lets you send colours as strings, hex codes, HSB, etc</a>, so it is fairly flexible.</p>

<p>Sure, I could have bought an Amazon Echo (not available in my country) or a Google Home (not launched, will be abandoned next year) or a Raspberry Pi (too easy to lose) or built an app for my phone (just too much hard work) - but I'm quite happy playing around in the browser.</p>

<p>Here's the video again, if you like watching things on Twitter.</p>

<blockquote class="social-embed" id="social-embed-732987632154759168" lang="en" itemscope="" itemtype="https://schema.org/SocialMediaPosting"><header class="social-embed-header" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><a href="https://twitter.com/edent" class="social-embed-user" itemprop="url"><img class="social-embed-avatar social-embed-avatar-circle" src="data:image/webp;base64,UklGRkgBAABXRUJQVlA4IDwBAACQCACdASowADAAPrVQn0ynJCKiJyto4BaJaQAIIsx4Au9dhDqVA1i1RoRTO7nbdyy03nM5FhvV62goUj37tuxqpfpPeTBZvrJ78w0qAAD+/hVyFHvYXIrMCjny0z7wqsB9/QE08xls/AQdXJFX0adG9lISsm6kV96J5FINBFXzHwfzMCr4N6r3z5/Aa/wfEoVGX3H976she3jyS8RqJv7Jw7bOxoTSPlu4gNbfXYZ9TnbdQ0MNnMObyaRQLIu556jIj03zfJrVgqRM8GPwRoWb1M9AfzFe6Mtg13uEIqrTHmiuBpH+bTVB5EEQ3uby0C//XOAPJOFv4QV8RZDPQd517Khyba8Jlr97j2kIBJD9K3mbOHSHiQDasj6Y3forATbIg4QZHxWnCeqqMkVYfUAivuL0L/68mMnagAAA" alt="" itemprop="image"><div class="social-embed-user-names"><p class="social-embed-user-names-name" itemprop="name">Terence Eden is on Mastodon</p>@edent</div></a><img class="social-embed-logo" alt="Twitter" src="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%0Aaria-label%3D%22Twitter%22%20role%3D%22img%22%0AviewBox%3D%220%200%20512%20512%22%3E%3Cpath%0Ad%3D%22m0%200H512V512H0%22%0Afill%3D%22%23fff%22%2F%3E%3Cpath%20fill%3D%22%231d9bf0%22%20d%3D%22m458%20140q-23%2010-45%2012%2025-15%2034-43-24%2014-50%2019a79%2079%200%2000-135%2072q-101-7-163-83a80%2080%200%200024%20106q-17%200-36-10s-3%2062%2064%2079q-19%205-36%201s15%2053%2074%2055q-50%2040-117%2033a224%20224%200%2000346-200q23-16%2040-41%22%2F%3E%3C%2Fsvg%3E"></header><section class="social-embed-text" itemprop="articleBody">My Lifx bulbs now react to my (*atrocious*) singing. Forgive me!<br><br>Source Code: <a href="https://github.com/edent/Harry-Potter-Lifx">github.com/edent/Harry-Po…</a> <a href="https://twitter.com/edent/status/732987632154759168/video/1">pic.x.com/s8lxbjh9w7</a><div class="social-embed-media-grid"><video class="social-embed-video" controls="" src="https://video.twimg.com/ext_tw_video/732987511392350208/pu/vid/1280x720/55umCjHT1xggq1P6.mp4" poster="data:image/webp;base64,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" width="550"></video></div></section><hr class="social-embed-hr"><footer class="social-embed-footer"><a href="https://twitter.com/edent/status/732987632154759168"><span aria-label="18 likes" class="social-embed-meta">❤️ 18</span><span aria-label="1 replies" class="social-embed-meta">💬 1</span><span aria-label="0 reposts" class="social-embed-meta">🔁 0</span><time datetime="2016-05-18T17:34:04.000Z" itemprop="datePublished">17:34 - Wed 18 May 2016</time></a></footer></blockquote>

<p>If you enjoyed this blog post, <a href="https://www.amazon.co.uk/s/ref=as_li_ss_tl?_encoding=UTF8&amp;camp=1634&amp;creative=19450&amp;field-keywords=lifx&amp;linkCode=ur2&amp;tag=shksprblog-21&amp;url=search-alias%3Daps">buy yourself some Lifx bulbs</a> or you could <a href="http://www.amazon.co.uk/gp/registry/wishlist/13GFCFR2B2IX4">send me something from my wishlist</a>.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=22855&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2016/05/singing-to-my-light-bulbs/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		<enclosure url="https://shkspr.mobi/blog/wp-content/uploads/2016/05/Voice-Controlled-Lifx.mp4" length="4745975" type="video/mp4" />
<enclosure url="https://video.twimg.com/ext_tw_video/732987511392350208/pu/vid/1280x720/55umCjHT1xggq1P6.mp4" length="2710017" type="video/mp4" />

			</item>
		<item>
		<title><![CDATA[Disclosed - Lifx Security Issue]]></title>
		<link>https://shkspr.mobi/blog/2016/05/disclosed-lifx-security-issue/</link>
					<comments>https://shkspr.mobi/blog/2016/05/disclosed-lifx-security-issue/#respond</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Thu, 12 May 2016 11:33:42 +0000</pubDate>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[IoT]]></category>
		<category><![CDATA[lifx]]></category>
		<category><![CDATA[security]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=22800</guid>

					<description><![CDATA[I love my Lifx Bulbs.  They&#039;re a quick and easy way to retrofit Internet connected goodies into a smart-home.  One of the best things about them is their open API.  Sure, you can use IFTTT if you want something easy - but us 1337 hax0rs want an API and Lifx provides it.  The API is pretty secure - good use of OAuth and tokens to make sure whatever you&#039;re building is resistant to infiltration.  I…]]></description>
										<content:encoded><![CDATA[<p>I love my Lifx Bulbs.  They're a quick and easy way to retrofit Internet connected goodies into a smart-home.</p>

<p>One of the best things about them is their open API.  Sure, you can use IFTTT if you want something easy - but us 1337 hax0rs want an API and Lifx provides it.</p>

<p>The API is pretty secure - good use of OAuth and tokens to make sure whatever you're building is resistant to infiltration.  I mean, imagine if someone hacked your lightbulbs and ... err... switched off the light while you were reading. That'd be <em>dreadful!</em></p>

<p>As I was wandering through <a href="https://api.developer.lifx.com/docs/authentication">the developer documentation</a>, I noticed that there was a prominent login form.  The pages were <strong>not</strong> served over HTTPS, and the form was similarly submitting to an insecure page.  Typing in "https" before the URL showed a mismatched certificate error.</p>

<p>Not a great user experience - and a good way for customers to have their passwords intercepted.</p>

<h3 id="24th-april-2016"><a href="https://shkspr.mobi/blog/2016/05/disclosed-lifx-security-issue/#24th-april-2016">24th April 2016</a></h3>

<p>I took a quick note of my findings and used Lifx's contact form to alert them.</p>

<blockquote><p>The URLs http://api.developer.lifx.com/ and http://lan.developer.lifx.com/ ask developers for their email address and password.</p><br>

<p>The site is NOT served over httpS. If a user tries to manually force it to https, they get a mismatched certificate error.</p><br>

<p>If a developer is on an insecure connection, this could cause their credentials to leak.</p><br>

<p>Can I strongly urge you to fix the certificates on the site and to reset the passwords of any user who has been affected.</p></blockquote>

<h3 id="27th-april"><a href="https://shkspr.mobi/blog/2016/05/disclosed-lifx-security-issue/#27th-april">27th April</a></h3>

<p>I received this very positive note back from one of their engineers.</p>

<blockquote><p>Thank you for reporting this issue to us. At LIFX we take our users and developers security extremely seriously. Here we clearly dropped the ball, and we need to be better.</p><br>

<p>Today I obtained certificates, sent them to our provider and set the documentation sites to enforce SSL. Finally I also changed most links to link to the SSL version of the site by default. We will be internally discussing how to best inform anyone affected.</p><br>

<p>Again thank you for your time finding and reporting this vulnerability to us. Your efforts have made us all more secure.</p></blockquote>

<p>That's a pretty good response time for a company - especially given the timezone differences.</p>

<h3 id="conclusions"><a href="https://shkspr.mobi/blog/2016/05/disclosed-lifx-security-issue/#conclusions">Conclusions</a></h3>

<p>I checked, and the sites are now securely behind https.</p>

<p>It appears that the "log in" form is actually to log in to the <a href="http://readme.io/">ReadMe.IO</a> documentation service.  I would expect that most developers would see "Log In" and use their Lifx credentials.  This means that ReadMe.IO (who I'm sure are honourable people) may inadvertently be receiving usernames and passwords for an entirely different service.</p>

<p>If you've previously clicked that Log In button, it would be sensible to reset your password and revoke and OAuth tokens you may have generated.</p>

<p>If you run a website, think hard about which login prompts you display - and whether tired developers are likely to make mistakes.</p>

<h3 id="bounty"><a href="https://shkspr.mobi/blog/2016/05/disclosed-lifx-security-issue/#bounty">Bounty!</a></h3>

<p>I obviously wasn't expecting a million dollar payout - but was pleasantly surprised to receive a clutch of new bulbs as a thank you gift.
<img src="https://shkspr.mobi/blog/wp-content/uploads/2016/04/Lifx-Bug-Bounty.jpg" alt="Lifx Bug Bounty - 6 brand new bulbs" width="768" height="539" class="aligncenter size-full wp-image-22832">
Anyway, here's me casting a spell on one of my bulbs.</p>

<blockquote class="social-embed" id="social-embed-638785670002163712" lang="en" itemscope="" itemtype="https://schema.org/SocialMediaPosting"><blockquote class="social-embed" id="social-embed-638643392935763968" lang="en" itemscope="" itemtype="https://schema.org/SocialMediaPosting"><header class="social-embed-header" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><a href="https://twitter.com/edent" class="social-embed-user" itemprop="url"><img class="social-embed-avatar social-embed-avatar-circle" src="data:image/webp;base64,UklGRkgBAABXRUJQVlA4IDwBAACQCACdASowADAAPrVQn0ynJCKiJyto4BaJaQAIIsx4Au9dhDqVA1i1RoRTO7nbdyy03nM5FhvV62goUj37tuxqpfpPeTBZvrJ78w0qAAD+/hVyFHvYXIrMCjny0z7wqsB9/QE08xls/AQdXJFX0adG9lISsm6kV96J5FINBFXzHwfzMCr4N6r3z5/Aa/wfEoVGX3H976she3jyS8RqJv7Jw7bOxoTSPlu4gNbfXYZ9TnbdQ0MNnMObyaRQLIu556jIj03zfJrVgqRM8GPwRoWb1M9AfzFe6Mtg13uEIqrTHmiuBpH+bTVB5EEQ3uby0C//XOAPJOFv4QV8RZDPQd517Khyba8Jlr97j2kIBJD9K3mbOHSHiQDasj6Y3forATbIg4QZHxWnCeqqMkVYfUAivuL0L/68mMnagAAA" alt="" itemprop="image"><div class="social-embed-user-names"><p class="social-embed-user-names-name" itemprop="name">Terence Eden is on Mastodon</p>@edent</div></a><img class="social-embed-logo" alt="Twitter" src="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%0Aaria-label%3D%22Twitter%22%20role%3D%22img%22%0AviewBox%3D%220%200%20512%20512%22%3E%3Cpath%0Ad%3D%22m0%200H512V512H0%22%0Afill%3D%22%23fff%22%2F%3E%3Cpath%20fill%3D%22%231d9bf0%22%20d%3D%22m458%20140q-23%2010-45%2012%2025-15%2034-43-24%2014-50%2019a79%2079%200%2000-135%2072q-101-7-163-83a80%2080%200%200024%20106q-17%200-36-10s-3%2062%2064%2079q-19%205-36%201s15%2053%2074%2055q-50%2040-117%2033a224%20224%200%2000346-200q23-16%2040-41%22%2F%3E%3C%2Fsvg%3E"></header><section class="social-embed-text" itemprop="articleBody">That think where you have a kickarse idea only to find some beat you to it by FOUR DAYS! <a href="https://twitter.com/KelvZhan/status/637221730336002048">x.com/kelvzhan/statu…</a><blockquote class="social-embed" id="social-embed-637221730336002048" lang="en" itemscope="" itemtype="https://schema.org/SocialMediaPosting"><header class="social-embed-header" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><a href="https://twitter.com/KelvZhan" class="social-embed-user" itemprop="url"><img class="social-embed-avatar social-embed-avatar-circle" src="data:image/webp;base64,UklGRtwCAABXRUJQVlA4INACAADwDACdASowADAAPrVMn0unJCKhpy2w4BaJZgCxHrzPivM9OgOTyf1T3l+IzMFlQONnKavdvn9X/m40hmEM933K4Ydo94gBV5D3nz0FY0ivQiW8Proe53vD7AV0wpu39HexzHgn/v1SMEveTHOn2zHgAP78Dj4fGGSX6/tJP68aRNQ/CURKDMkkxhbyl26/zon96fuNapphE/toQeIKFcy4l6wIR+gC1uhMuK9ZR92ATrnllySaqSH6a9epmRq6KKgaVgGTyVI46wLL/SmVVzu0gkOjc2ywPMMeUr3uFGd7VfCjCRCO6hyWlD3Arcc30sLA9lvtSS/9sezscXd8JYBd4t/HFhC/pI56NEAr4UFAr52hdKyycSwFGboDHkdi9twuanC9gOHXxKHLTGmPcSKwetaEq5V4ftLJcd6aFZUldExnB0sSXyChPnp7vUyoySua2PxoLOcx74ejcb0LM5orqkSd1figtYOWS1Px6oH3VV1Vj+tcyCzXkribN0DFJzmWH4K/wPe52UQJIdABD8o7AaMrtfzP3MMP+vaTbNrWxTBKztjijxeephaz9GTYIoe0zNYQkHFyBYbvdXKYmL2q1K3ffYs5fJVI7+/8/0xZYJKUtU73S0wHpyRxX17nEON+gICinmMPJIrV2UdGf9KUucoKuQYIfJ2LynwWpoFAHCP02Ii3RhuOktrVhVv9eb/3COlk4zUSBd4o+H/c80dHbwTyU0bU+W5xxw2KyfpqFpLJJ1i2iKGbGy9LzCWt79SdgdqSQ2SewuZLYn5LhZp0MUx7+GDMUUTvxsTVpoUKCqV2w27ZlVyttw2BU2fpjoSwYSj78jfuL1J1tQSsmp54Lg847WQZA3Q0L+hQXdPGRouYbFxRryrplnqGHqZch7+7moltXT5gb47N1huXwsdwCt7CdP2cMj0acfb8djiS2wNva0UVflexVO4GOm/BoAA=" alt="" itemprop="image"><div class="social-embed-user-names"><p class="social-embed-user-names-name" itemprop="name">Kelvin Zhang</p>@KelvZhan</div></a><img class="social-embed-logo" alt="Twitter" src="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%0Aaria-label%3D%22Twitter%22%20role%3D%22img%22%0AviewBox%3D%220%200%20512%20512%22%3E%3Cpath%0Ad%3D%22m0%200H512V512H0%22%0Afill%3D%22%23fff%22%2F%3E%3Cpath%20fill%3D%22%231d9bf0%22%20d%3D%22m458%20140q-23%2010-45%2012%2025-15%2034-43-24%2014-50%2019a79%2079%200%2000-135%2072q-101-7-163-83a80%2080%200%200024%20106q-17%200-36-10s-3%2062%2064%2079q-19%205-36%201s15%2053%2074%2055q-50%2040-117%2033a224%20224%200%2000346-200q23-16%2040-41%22%2F%3E%3C%2Fsvg%3E"></header><section class="social-embed-text" itemprop="articleBody">First working implementation of voice controlled <a href="https://twitter.com/LIFX">@LIFX</a> lights using Python Jasper + lifx-cli <a href="https://twitter.com/smarthall">@smarthall</a> <a href="https://twitter.com/KelvZhan/status/637221730336002048/video/1">pic.x.com/lkfpjo7onz</a><div class="social-embed-media-grid"><video class="social-embed-video" controls="" src="https://video.twimg.com/ext_tw_video/637221621577740288/pu/vid/1280x720/miNZGi0Pwz3nAoso.mp4" poster="data:image/webp;base64,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" width="550"></video></div></section><hr class="social-embed-hr"><footer class="social-embed-footer"><a href="https://twitter.com/KelvZhan/status/637221730336002048"><span aria-label="6 likes" class="social-embed-meta">❤️ 6</span><span aria-label="0 replies" class="social-embed-meta">💬 0</span><span aria-label="3 reposts" class="social-embed-meta">🔁 3</span><time datetime="2015-08-28T11:14:34.000Z" itemprop="datePublished">11:14 - Fri 28 August 2015</time></a></footer></blockquote></section><hr class="social-embed-hr"><footer class="social-embed-footer"><a href="https://twitter.com/edent/status/638643392935763968"><span aria-label="0 likes" class="social-embed-meta">❤️ 0</span><span aria-label="0 replies" class="social-embed-meta">💬 0</span><span aria-label="0 reposts" class="social-embed-meta">🔁 0</span><time datetime="2015-09-01T09:23:44.000Z" itemprop="datePublished">09:23 - Tue 01 September 2015</time></a></footer></blockquote><header class="social-embed-header" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><a href="https://twitter.com/edent" class="social-embed-user" itemprop="url"><img class="social-embed-avatar social-embed-avatar-circle" src="data:image/webp;base64,UklGRkgBAABXRUJQVlA4IDwBAACQCACdASowADAAPrVQn0ynJCKiJyto4BaJaQAIIsx4Au9dhDqVA1i1RoRTO7nbdyy03nM5FhvV62goUj37tuxqpfpPeTBZvrJ78w0qAAD+/hVyFHvYXIrMCjny0z7wqsB9/QE08xls/AQdXJFX0adG9lISsm6kV96J5FINBFXzHwfzMCr4N6r3z5/Aa/wfEoVGX3H976she3jyS8RqJv7Jw7bOxoTSPlu4gNbfXYZ9TnbdQ0MNnMObyaRQLIu556jIj03zfJrVgqRM8GPwRoWb1M9AfzFe6Mtg13uEIqrTHmiuBpH+bTVB5EEQ3uby0C//XOAPJOFv4QV8RZDPQd517Khyba8Jlr97j2kIBJD9K3mbOHSHiQDasj6Y3forATbIg4QZHxWnCeqqMkVYfUAivuL0L/68mMnagAAA" alt="" itemprop="image"><div class="social-embed-user-names"><p class="social-embed-user-names-name" itemprop="name">Terence Eden is on Mastodon</p>@edent</div></a><img class="social-embed-logo" alt="Twitter" src="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%0Aaria-label%3D%22Twitter%22%20role%3D%22img%22%0AviewBox%3D%220%200%20512%20512%22%3E%3Cpath%0Ad%3D%22m0%200H512V512H0%22%0Afill%3D%22%23fff%22%2F%3E%3Cpath%20fill%3D%22%231d9bf0%22%20d%3D%22m458%20140q-23%2010-45%2012%2025-15%2034-43-24%2014-50%2019a79%2079%200%2000-135%2072q-101-7-163-83a80%2080%200%200024%20106q-17%200-36-10s-3%2062%2064%2079q-19%205-36%201s15%2053%2074%2055q-50%2040-117%2033a224%20224%200%2000346-200q23-16%2040-41%22%2F%3E%3C%2Fsvg%3E"></header><section class="social-embed-text" itemprop="articleBody"><small class="social-embed-reply"><a href="https://twitter.com/edent/status/638643392935763968">Replying to @edent</a></small>Woo! Using the WebKit Speech Recognition API I can now control my Lifx bulbs like Harry Potter :-) <a href="https://twitter.com/edent/status/638785670002163712/video/1">pic.x.com/ykphwepthy</a><div class="social-embed-media-grid"><video class="social-embed-video" controls="" src="https://video.twimg.com/ext_tw_video/638785659675770881/pu/vid/360x640/1rW7rfim87-cbKeD.mp4" poster="data:image/webp;base64,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" width="550"></video></div></section><hr class="social-embed-hr"><footer class="social-embed-footer"><a href="https://twitter.com/edent/status/638785670002163712"><span aria-label="8 likes" class="social-embed-meta">❤️ 8</span><span aria-label="1 replies" class="social-embed-meta">💬 1</span><span aria-label="0 reposts" class="social-embed-meta">🔁 0</span><time datetime="2015-09-01T18:49:06.000Z" itemprop="datePublished">18:49 - Tue 01 September 2015</time></a></footer></blockquote>

<p><a href="https://github.com/edent/Harry-Potter-Lifx">Read more on my GitHub repo</a>.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=22800&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2016/05/disclosed-lifx-security-issue/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		<enclosure url="https://video.twimg.com/ext_tw_video/637221621577740288/pu/vid/1280x720/miNZGi0Pwz3nAoso.mp4" length="5592985" type="video/mp4" />
<enclosure url="https://video.twimg.com/ext_tw_video/638785659675770881/pu/vid/360x640/1rW7rfim87-cbKeD.mp4" length="544647" type="video/mp4" />

			</item>
	</channel>
</rss>
