Wednesday, January 27, 2010

Edacious: implementation of the withings scale api in java

The Withings Scale is a really cool product. It is a weight scale that has built in wifi so that when you weigh yourself, the information is automagically uploaded to their website where you can track your loss (or gain!) over time. It also tracks BMI, Fat Mass and Lean Mass. Sure, you could do this yourself with a vastly less expensive device, but the convenience of having something you just step on once in the morning for about 10 seconds is really cool. The scale is very well designed and looks nice in any room.

The best part of this device is that they provide geeks like me with a way to access the data you upload to their website. I'm working on a secret little project to make these numbers fun to play with. I needed a Java implementation of their API to access the data, so I wrote one and made it open source. Click the link above to buy the scale from amazon and keep your eyes open for the application I'm working on.


exuberance said...

Weight! Do you get to do some sort of dance dance revolution thing on it to set your WIFI password; or better yet to login each time you use it?

Jon Scott Stevens said...

You have to tap each corner to input your password each time and it will shock you if your weight goes up. =)

exuberance said...

No doubt the real money is in the peripherals? Could this be then answer the the eternal mystery raised by the underpants gnomes? WIFI lingerie. Your booty is a platform!

soabotics said...

Does this run over their rest api? I guess since thats the only API they seem to have published that you would have had to - no? I noticed that their rest api supports the ability to have data pushed out asynchronously to the client after subscription but I didn't see anything in the javadoc that indicated you supported the async model - can you confirm? And on that topic if you do in fact support the async did you magically figure out some way to have it call back to your client if its behind a firewall?


Jon Scott Stevens said...

Yes, it uses their published api.

Yes, my api supports creating subscriptions. The callback is something you support with your own hosted server. My api doesn't need to help you with that since you set what you want the callback to be.

Vassilis Stamatopoulos said...

Can you import data from the scale over WIFI without beeing connected to the internet? If not do you know any bodyscales that have an API throug WIFI, ANT or USB?
Thank you so much