Sunday, March 23, 2014

ANT+ Weight Scales “Hack” (a start)

I haven’t written for the blog in a while. I still plan to continue the review process of tracking software but it’s fallen to the way side as I’ve been helping out with all sorts of projects at my new job, getting use to my new surroundings, and just generally trying to keep up with an exercise routine.

That exercise routine means that I’m getting more weight contentious. I like to refer to myself as a “tank of a person”. I’m not designed for endurance sports – my body takes more to things like weightlifting. So triathlon is fighting an uphill battle. I’m getting stringent on the diet side of things. I use to track my weight manually in an excel spreadsheet, but more and more pieces of software can track it as well along with my activities consolidating the data.

Garmin Connect is shown below. With a single data point based on this hack.


Essentially I wanted a Tanita BC-1000 or BC-1500 but as shown by DCrainmaker here in his comments, the ANT+ weight scale thing isn’t what he’d recommend. Sadly, I think he’s right, mainly because of the use case. It’s nice if a watch can track, but the FR910xt isn’t designed to be worn all the time. My FR60 was, but it didn’t do powermeter data.

Since I’m not in the mood to spend that much on a scale, I figured I’d toy with some things first. Mainly the goal is a cheap digital scale, connect it to the nRF51422 and voila – a basic ANT+ scale. It won’t do body fat measurements, but its a start. Eventually I may look at a Withings or Aria solution.

I’ve skimmed the data sheet from so I’ll just dive in.


There is suppose to be a bunch of two way communications back and forth but it’s not necessary for basic weight. Essentially the scale spews weight and the watch will get it. I throw the ANT+ sensor simulator into weight scale mode. It starts transmitting data. I can set it to computing, invalid, or a weight and set the weight in 2 decimal increments. No idea what the watches will record.


Page 2/3/4 contain the other information like hydration, body fat, metabolic rate, and mass of muscle and bone. I noticed when I tried this with the FR910xt that it just received the data, but the FR60 immediately sent data back to the sensor simulator for my activity profile. I think this is to try and support multiple people and the scale can use the height and age in the BIA calculation for body fat.


Interesting.  Some pictures showing how to turn on ANT+ scales  on on your watch. First the FR910xt:





Here is the trick. I had to actually check the manual. Press the power button and it’ll start scanning for the scales! I spent a few minutes feeling like an idiot here.





I noticed that if I changed the software up or down while in this view, so did the value on watch screen. I haven’t experimented yet with what is recorded on the watch.

Now with the FR60. The menu setup:





And here is the FR60 Trick. Hold the light button for a couple of seconds and it should show up scanning.





The next step is finding a scale to disassemble. Also I stumbled onto a great Texas Instruments part that came out recently, the AFE4300. It’s an analog front end to measure strain gages (for weight), an AC current driver to drive current from one foot to the other through the body, with a differential voltage input to determine Bioelectrical Impedance all in the same package. Dev kit is 200 dollars, so that’s probably not the right solution and the chip is a QFN I believe so I’m not keen on trying to wire it up. However, if I wanted to make a scale it would be a good starting point. so I’ll probably be doing it Nordic DK board + sniffing the data lines from a scale or interfacing to an old Accuity board that I have kicking around for basic weight.

I kind of wonder if there is a BLE profile for weight scales.


  1. Keith:

    Is this an application searching for a practical fit? I thought HR speed cadence and power data were ideal for ANT+ because there are multiple data points, with time-scale correlation, and the graphical image of the download curve conveys meaningful information. Weight is one number, or rather one value at a session. You can download it to Garmin Connect or whatever one value at a time by (grey matter) memory with 5 keyboard strokes if you're going to 1 decimal place, and you count the decimal point as a key stroke!

    I've often wondered about the accuracy of the impedance measurement of body fat content. The weighing in air and in water method that the early research used was still subject to a lot of error. The idea of a nomogram type correlation using impedance bothers me, but, hey, what's so magic about a "real" body fat number anyway. Maybe the impedance derived value can be a useful metric, especially as it's reproducible. I think for a given individual whose muscle bulk has plateaued out, a straight body weight gives very useful plotting information over time as long as you control for state of hydration, which can introduce a lot of significant variation even hour to hour.

    1. The thing that I'd like to start tracking is hydration and body fat. Some of the sites I've looked at won't let you type in those values. Garmin specifically won't. The only way to get them in there if you have a lower cost scale is to cheat like this.

      DCrainmaker did a great comparison of a pressure chamber method to scales. It's hard to do hydrostatic weightly daily or the chamber, so I think people like these. Yes, your right about the lack of precise fit. It's a regression of a regression which is just multiplying error. By the time you arrive at bodyfat it can easily be 15% out.

      There are some papers I've seen comparing 2, 4, and 8 electrode sites with varying degrees of accuracy. For some people 4 would be better, some people 8 better.

      Wants to get rid of fat, and I like data to at least ensure that's right. I think consistency and precision here is sufficient rather than accuracy and precision. But then again, I haven't spent any money on this yet so how dedicated could I be.

  2. I just read the DC Rainmaker Tanita review.

    "The folks at Tanita let me know that the cheaper scale I have shown (BF679W) doesn’t have an athlete mode (while the BC-1000 does), which means it didn’t have the capability to better predict my body fat based on the assumption that my body type is probably a bit more athletic than most users of the cheaper scale. Hence the differences I saw with respect to body fat prediction."

    That doesn't give me much confidence in the absolute reliability of the Tanita method of Body Fat Assessment, or in fact ANY algorithm based method! That said, I'm prepared to consider serial impedance derived values as a reasonable useful surrogate marker, just to see where one is going.

    1. They are all weak algorithims. A lot of it's a money grab. If you take a quick peak at the data you can almost see a 30 dollar scale comparing favourably to the 300 dollar Tanita. :(

  3. offers programs, codes, hacks, tools, cheat for free download :)

  4. I had visited your website which was really good weighing scales