This card requires you to install and setup the following components:
Fitbit
This card requires you to install and setup the following custom cards:
- type: picture-elementsimage: /local/lovelace/icons/fitbit.pngelements:- type: custom:circle-sensor-cardentity: sensor.weight_lossmax: 65min: 0stroke_width: 15gradient: truefill: '#125054'name: lossunits: ' 'font_style:font-size: 1.1emfont-color: whitetext-shadow: '2px 2px black'style:top: 5%left: 80%width: 4emheight: 4emtransform: none- type: custom:circle-sensor-cardentity: sensor.fitbit_stepsmax: 10000min: 0stroke_width: 15gradient: truefill: '#125054'name: stepsunits: ' 'font_style:font-size: 1.1emfont-color: whitetext-shadow: '2px 2px black'color_stops:1: '#09C7E8'10000: '#0BDF0E'style:top: 70%left: 5%width: 4emheight: 4emtransform: none- type: custom:circle-sensor-cardentity: sensor.floorsmax: 10min: 0stroke_width: 15gradient: truefill: '#125054'name: floorsunits: ' 'font_style:font-size: 1.1emfont-color: whitetext-shadow: '2px 2px black'color_stops:1: '#09C7E8'10: '#0BDF0E'style:top: 70%left: 24%width: 4emheight: 4emtransform: none- type: custom:circle-sensor-cardentity: sensor.distancemax: 10min: 0stroke_width: 15gradient: truefill: '#125054'name: milesunits: ' 'font_style:font-size: 1.1emfont-color: whitetext-shadow: '2px 2px black'color_stops:1: '#09C7E8'10: '#0BDF0E'style:top: 70%left: 43%width: 4emheight: 4emtransform: none- type: custom:circle-sensor-cardentity: sensor.fitbit_caloriesmax: 3000min: 0stroke_width: 15gradient: truefill: '#125054'name: calsshadow: trueunits: ' 'font_style:font-size: 1.1emfont-color: whitetext-shadow: '2px 2px black'color_stops:1: '#09C7E8'3000: '#0BDF0E'style:top: 70%left: 62%width: 4emheight: 4emtransform: none- type: custom:circle-sensor-cardentity: sensor.fitbit_minutes_activemax: 30min: 0stroke_width: 15gradient: truefill: '#125054'name: activeunits: ' 'font_style:font-size: 1.1emfont-color: whitetext-shadow: '2px 2px black'color_stops:1: '#09C7E8'30: '#0BDF0E'style:top: 70%left: 80%width: 4emheight: 4emtransform: none- type: custom:hui-markdown-cardcontent: >Ianstyle:top: 6%left: 1%font-size: 18pxcolor: whitetext-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black"--paper-card-background-color": none"--paper-material-elevation-1_-_box-shadow": none"--shadow-elevation-2dp_-_box-shadow": nonetransform: translate(0%,-50%)- type: state-iconentity: sensor.weighttitle: Weightstyle:left: 3%top: 7%"--iron-icon-fill-color": '#09C7E8'transform: none- type: state-labelentity: sensor.weighttitle: Weightstyle:left: 12%top: 8%color: whitetransform: none- type: state-iconentity: sensor.bmititle: BMIstyle:left: 31%top: 7%"--iron-icon-fill-color": '#09C7E8'transform: none- type: state-labelentity: sensor.bmititle: BMIstyle:left: 40%top: 8%color: whitetransform: none- type: state-iconentity: sensor.body_fattitle: Body Fatstyle:left: 59%top: 7%"--iron-icon-fill-color": '#09C7E8'transform: none- type: state-labelentity: sensor.body_fattitle: Body Fatstyle:left: 67%top: 8%color: whitetransform: none- type: imageentity: sensor.ionic_batterytitle: Ionic Batteryimage: /local/lovelace/icons/battery_full.pngstate_image:"High": /local/lovelace/icons/battery_high.png"Medium": /local/lovelace/icons/battery_medium.png"Low": /local/lovelace/icons/battery_low.pngstyle:left: 12%top: 1%transform: nonewidth: 24pxheight: 24px- type: state-iconentity: sensor.resting_heart_ratetitle: Resting HRstyle:left: 3%top: 21%"--iron-icon-fill-color": redtransform: none- type: state-labelentity: sensor.resting_heart_ratetitle: Resting HRstyle:left: 12%top: 22%color: whitetransform: none
I had to create template sensors for steps and calories as the Fitbit sensor produces comma separated string values instead of numeric values. I also created a template sensor to track my weight loss.
sensor:- platform: templatesensors:fitbit_steps:friendly_name: 'Steps'value_template: >{{ states.sensor.steps.state | replace(",","") }}unit_of_measurement: 'steps'fitbit_calories:friendly_name: 'Calories'value_template: >{{ states.sensor.calories.state | replace(",","") }}unit_of_measurement: 'calories'weight_loss:friendly_name: 'Weight Loss'value_template: "{{ '%.1f' | format(245.0 - (states.sensor.weight.state | float)) }}"unit_of_measurement: 'lbs'
Additional tips:
Be sure to change "Ian" in the markdown card to match the user's
Change your starting weight in the template sensor
Change your goal weight loss for the max
value in the circle-sensor-card
for sensor.weight_loss
along with any other goal values for other things like steps/distance/calories
sensor.resting_heart_rate
and sensor.ionic_battery
are dependent on the Fitbit device you use and may not be available to you.