Slashdot is powered by your submissions, so send in your scoop


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×

Comment Re: 70 lines of code ... IF (Score 1) 32

I said nothing about NOT using the cloud. It's all **about** using the cloud as much as possible to simplify the devices and to avoid unnecessarily building the same kind of backend for every project, over and over again. And to whoever said that people aren't still building custom backends, I offer examples: nest, fitbit, jawbone up, nike fuelband, automatic, WeMo, hue (light bulbs), whistle, Streetline (parking sensors), Sensys, (traffic sensors), various divisions of GE, Basis, etc. Advertising and datacenter management are the main places I know of where 3rd party analytics backends are widely used today. Not too many years ago, one required a team of probably 5-10 developers-- EEs, firmware, web app developers, a TechOps team, etc., to just get this basic functionality. Now a hobbyist could follow a tutorial like this and do it over a weekend. And there are lots of other devices with switch-based sensors or basic analog inputs that could follow this pattern and build different kinds of devices, with custom dashboards. So no need to stick to pedometers. At this point, I'm done responding-- the free flowing anger in this space makes it a tiring place to discuss anything, which is why I had previously not even submitted anything here. But I hope people have fun with this. And if you don't like something, add some missing functionality, or have an additional application, by all means send me a pull request so I can share them.

Comment Re: oh another step counter (Score 1) 32

Pedometers (devices and apps) seem to work poorly on elliptical trainers and won't work at all on bicycles. So if you want to track these activities , it's helpful to have multiple specialized trackers that know what's going on for different use cases and then combine the data in the cloud. Combining the data is a project for another day, however. I'm sure future elliptical and exercise bikes will build that functionality in. This is the general trend a lot of us expect-- lots of small, specialized devices everywhere, posting to API-accessible backends with analytics.

Comment Re: My Favorite part (Score 1) 32

(A) ad hominem attacks are never appropriate here, although they're all to common. Learn some commenting manners, which exist to promote better reasoning and more useful commentary. (B) I'm not talking about on-device analytics and on device dashboards. I'm talking about he full power of what you can store and calculate in the cloud, since all the data is there. In the future, I could decide to add a regression analysis combining this data with my sleep and work schedules, or plot my average cadence over time, even though I didn't calculate rollups of that while the data was being captured. With fairly small effort and coding, I could build a leaderboard and stats across thousands of users, and have regional comparisons to create competition. And i sure don't want to do all that on a battery powered constrained device in the field.

Comment Re: Advert for wife's company. Lame. (Score 1) 32

I know quite a about low power, and have myself complained about people saying that mA is low power-- I've been building wireless sensor nodes averaging 100 uA down to an energy scavenger at nA levels -- but the key here is the part about average. The 5 uA is _while it's on the WiFi_ -- I turn almost everything off, down to low uA levels when the accelerometer shows it's idle for 10 minutes, and use the wakeup pin interrupt to get out of deep sleep when I start pedaling again.

Comment Re: I mentally shut this out when... (Score 1) 32

This is embedded software-- I'm passing data to an interrupt routine. This is a common design pattern, not the usual wonton misuse of globals. Can't pass parameters to an interrupt routine. In C, I might have encapsulated the global with a getter/setter, but the only benefits to that here would be to hide data via file scoping (which imp doesn't have), and to validate the value of a Boolean for.... what? I could have used a semaphore, but imp code is not interruptible, so that wouldn't do much either. I appreciate constructive coding suggestions and pull requests, so please feel free. But don't assume others are idiots based on such a crude heuristic.

Comment Re: My Favorite part (Score 4, Informative) 32

I understand the concerns. I've tried to disclose appropriately and focused on two things: 1. This is a legitimately new approach. Pretty much everyone I know in the IoT and connected device world is still building a backend infrastructure and coding their own APIs, even for pure analytics apps. 2. A detailed tutorial seemed appropriate so people can see some of the ins and outs of doing this, and to show that now non-experts can do this kind of thing as a weekend project. Obviously, this doesn't eliminate code or servers. But the big win is that I don't have to deal with any of that. It's like saying Rails wasn't a big deal because all the code is on the framework, or AWS isn't a big deal because there are still servers. So look, I'm not a PR flack or something, I've been working on wireless sensors professionally for over a decade and I'm just excited to see the work get a easier, because I've spent a lot of the past 6 years building out and maintaining a scaled sensor backend before. It sucked, and I don't want to do it again if I can avoid it!

Submission + - Ellipto: a DIY fitness tracker and dashboard in 70 lines (

InternetOfJim writes: This is one of the most fun weekend projects I've done in a while — a fitness tracker for my elliptical trainer. But the real agenda was to figure out how lazy I could be via web services (Keen IO and Brace IO) and development platforms (Electric Imp). Quite lazy, as it turns out. I wound up with a working device and a nice realtime dashboard with no soldering, no backend to manage, and surprisingly little original code needed beyond the sensing and power conserving parts of the firmware and a little javascript to customize the dashboard.

Slashdot Top Deals

This is an unauthorized cybernetic announcement.