GithubHelp home page GithubHelp logo

ecobar's Introduction

ecoBar

Ecobee BitBar plugin for monitoring and controlling an Ecobee thermostat from your macOS menu bar.

Example output from one line bot

Features:

  • Runs in macOS menu bar, optimized for regular mode and dark mode
  • Works with one or more Ecobee thermostats including the excellent ecobee3
  • Allows control of temperature setpoints, fan mode, thermostat mode, readout of sensors
  • Sync's Ecobee API token and settings via iCloud Drive if available
  • Works with Farenheit or Celcius based on Ecobee setting
  • Has update notification for new versions of ecoBar

Standalone Install (Simple):

Install as a BitBar Plugin (Advanced):

  • Download and install BitBar
  • Install the Ecobee Gem by running gem install ecobee
  • Place the file ecoBar.rb and directory eco_bar in your BitBar plugin directory (typically ~/Documents/BitBar)
  • Rename the plugin to something like ecobar.1m.rb for a 1 minute refresh rate.
  • See BitBar documentation for details on customizing BitBar plugins

Known issues:

  • When multiple Macs are running this, and one goes to sleep and wakes up, there can be refresh token collisions resulting in re-registration being required (being addressed)

TODO:

  • Port to BitBar v2 for faster refresh, static menu bar, fewer processes
  • Update registration process for instant refresh
  • Add more control/display features or customization/preferences

ecobar's People

Contributors

robzr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

danielberes

ecobar's Issues

rescue in block refresh_access_token_wrapper

since upgrading to Catalina (10.15.0/1/2), ECOBAR hasn't worked ... it ALWAYS throws the yellow yield sign in the Mac OS menu bar with the error of "rescue in block refresh_access_token_wrapper" plus 15 other lines of dump

image

Cool Setpoint

For some reason the range of temperatures on the "Cool Setpoint" never goes below 73 degrees F. This doesn't correspond with the temperature range I've got set up on my ecobee thermostat. What controls the available temperature range?

reset ecobee, ecobar

I reset my ecobee (to install in a new house), and now ecobar displays a caution sign and show an error saying 'class or module required for rescue clause.' I have tried doing a clean uninstall, and installed the newest version. There is also no option to re-register,etc.
screen shot 2016-12-12 at 8 19 48 pm
Is there a file I need to delete somewhere?

TypeError on Init

Getting this error on init:

brmathes@BRMATHES-M-41PD > ./ecoBar.1m.rb
/Users/brmathes/.bitbar/ecobee/ecobee/token.rb:147:in `rescue in block in refresh_access_token_wrapper': class or module required for rescue clause (TypeError)
	from /Users/brmathes/.bitbar/ecobee/ecobee/token.rb:145:in `block in refresh_access_token_wrapper'
	from /Users/brmathes/.bitbar/ecobee/ecobee/token.rb:144:in `times'
	from /Users/brmathes/.bitbar/ecobee/ecobee/token.rb:144:in `refresh_access_token_wrapper'
	from /Users/brmathes/.bitbar/ecobee/ecobee/token.rb:58:in `access_token'
	from /Users/brmathes/.bitbar/ecobee/ecobee/token.rb:49:in `initialize'
	from ./ecoBar.1m.rb:53:in `new'
	from ./ecoBar.1m.rb:53:in `<main>'

Looking at the code .. i can't see anything obvious and my ruby-fu has atrophied. Any ideas?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.