rgardner / extreme-design

Energy Sensing + Automation
http://www.robert-gardner.com/extreme-design/
0 stars 0 forks source link

Web Dashboard #7

Closed rgardner closed 9 years ago

rgardner commented 9 years ago

need to be able to

rgardner commented 9 years ago

web-mockup

I was thinking maybe something like this?

rgardner commented 9 years ago

@dbasner, @Hotblack did Lakshmi want any control over the data from the dashboard, or just pretty graphs?

Hotblack commented 9 years ago

Doesn't need to be pretty. Even something from the command line would be totally fine. He just wants us to show how the platform can save people money. Like, showing current rates, current power consumption, and electricity/money saved (doesn't need to be real data). Actionable suggestions would definitely be awesome, too. Like, showing what peak vs off-peak will look like.

Hotblack commented 9 years ago

I never saw the mock-up. Did Nicole make that? Looks good.

rgardner commented 9 years ago

No, I did! Haha. Ok, we should definitely talk about specifics then.

I've made a lot of progress on the backend. I'm using the producer / consumer paradigm and saving all data to a mongo database.

I think we should split up those different actions between me and @dbasner (and you if the hardware isn't keeping you too busy).

@dbasner. What do you think? Which ones sound most fun to you?

On Saturday, November 22, 2014, Adam Jackrel notifications@github.com wrote:

I never saw the mock-up. Did Nicole make that? Looks good.

— Reply to this email directly or view it on GitHub https://github.com/rgardner/extreme-design/issues/7#issuecomment-64096095 .

rgardner commented 9 years ago

Peak: 8am - 12 mid Off-Peak: 12 mid - 8AM Super-Peak: 2PM - 6PM (only during summer months)

Date Peak Off-Peak Super-Peak
June 1 — Sept 30 19.01 cents/kWh 1.34 cents/kWh 19.01 cents/kWh
All other months 7.04 cents/kWh 1.34 cents/kWh N/A

http://www.coned.com/customercentral/energyresvoluntary.asp

note for later.

dbasner commented 9 years ago

I'm happy doing either, if your already doing back end I might as well learn/do the front end. I'm going to spend tomorrow looking at your backend code more/learning something like angular/learning how to access that data from angular. I'd be down to meet at some point tomorrow to talk about the details in person if you guys are free. I'm free to do anything before/until 5. 

— Sent from Mailbox

On Sat, Nov 22, 2014 at 6:36 PM, Bob Gardner notifications@github.com wrote:

No, I did! Haha. Ok, we should definitely talk about specifics then. I've made a lot of progress on the backend. I'm using the producer / consumer paradigm and saving all data to a mongo database. I think we should split up those different actions between me and @dbasner (and you if the hardware isn't keeping you too busy). @dbasner. What do you think? Which ones sound most fun to you? On Saturday, November 22, 2014, Adam Jackrel notifications@github.com wrote:

I never saw the mock-up. Did Nicole make that? Looks good.

— Reply to this email directly or view it on GitHub https://github.com/rgardner/extreme-design/issues/7#issuecomment-64096095 .


Reply to this email directly or view it on GitHub: https://github.com/rgardner/extreme-design/issues/7#issuecomment-64099825

rgardner commented 9 years ago

How much time do you have in the next two days (Sunday and Monday)? I want to make sure that you have enough time to get this done using the framework you pick. AngularJS, MongoDB, etc are popular, but can be trickier than first sight.

On Saturday, November 22, 2014, dbasner notifications@github.com wrote:

I'm happy doing either, if your already doing back end I might as well learn/do the front end. I'm going to spend tomorrow looking at your backend code more/learning something like angular/learning how to access that data from angular. I'd be down to meet at some point tomorrow to talk about the details in person if you guys are free. I'm free to do anything before/until 5.

— Sent from Mailbox

On Sat, Nov 22, 2014 at 6:36 PM, Bob Gardner <notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com');> wrote:

No, I did! Haha. Ok, we should definitely talk about specifics then. I've made a lot of progress on the backend. I'm using the producer / consumer paradigm and saving all data to a mongo database. I think we should split up those different actions between me and @dbasner (and you if the hardware isn't keeping you too busy). @dbasner. What do you think? Which ones sound most fun to you? On Saturday, November 22, 2014, Adam Jackrel <notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com');> wrote:

I never saw the mock-up. Did Nicole make that? Looks good.

— Reply to this email directly or view it on GitHub < https://github.com/rgardner/extreme-design/issues/7#issuecomment-64096095>

.


Reply to this email directly or view it on GitHub:

https://github.com/rgardner/extreme-design/issues/7#issuecomment-64099825

— Reply to this email directly or view it on GitHub https://github.com/rgardner/extreme-design/issues/7#issuecomment-64103446 .

dbasner commented 9 years ago

So I need to check to see if I have any other work but I'm pretty certain this is most of what I've got going on for sun/mon/tues.  So barring learning I have a Spanish essay due or something random this will be what I'll spend all my time doing. That being said, it's a lot to learn all at once, so I'll let you know if I have questions. Are you familiar with angular?

— Sent from Mailbox

On Sat, Nov 22, 2014 at 9:14 PM, Bob Gardner notifications@github.com wrote:

How much time do you have in the next two days (Sunday and Monday)? I want to make sure that you have enough time to get this done using the framework you pick. AngularJS, MongoDB, etc are popular, but can be trickier than first sight. On Saturday, November 22, 2014, dbasner notifications@github.com wrote:

I'm happy doing either, if your already doing back end I might as well learn/do the front end. I'm going to spend tomorrow looking at your backend code more/learning something like angular/learning how to access that data from angular. I'd be down to meet at some point tomorrow to talk about the details in person if you guys are free. I'm free to do anything before/until 5.

— Sent from Mailbox

On Sat, Nov 22, 2014 at 6:36 PM, Bob Gardner <notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com');> wrote:

No, I did! Haha. Ok, we should definitely talk about specifics then. I've made a lot of progress on the backend. I'm using the producer / consumer paradigm and saving all data to a mongo database. I think we should split up those different actions between me and @dbasner (and you if the hardware isn't keeping you too busy). @dbasner. What do you think? Which ones sound most fun to you? On Saturday, November 22, 2014, Adam Jackrel <notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com');> wrote:

I never saw the mock-up. Did Nicole make that? Looks good.

— Reply to this email directly or view it on GitHub < https://github.com/rgardner/extreme-design/issues/7#issuecomment-64096095>

.


Reply to this email directly or view it on GitHub:

https://github.com/rgardner/extreme-design/issues/7#issuecomment-64099825

— Reply to this email directly or view it on GitHub https://github.com/rgardner/extreme-design/issues/7#issuecomment-64103446 .


Reply to this email directly or view it on GitHub: https://github.com/rgardner/extreme-design/issues/7#issuecomment-64103629

rgardner commented 9 years ago

I did one project in Angular earlier this year, but I don't have time to get back up to speed in it.

Cool, I just want to make sure you have enough time. Learning's important, but getting it done matters more.

On Saturday, November 22, 2014, dbasner notifications@github.com wrote:

So I need to check to see if I have any other work but I'm pretty certain this is most of what I've got going on for sun/mon/tues. So barring learning I have a Spanish essay due or something random this will be what I'll spend all my time doing. That being said, it's a lot to learn all at once, so I'll let you know if I have questions. Are you familiar with angular?

— Sent from Mailbox

On Sat, Nov 22, 2014 at 9:14 PM, Bob Gardner <notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com');> wrote:

How much time do you have in the next two days (Sunday and Monday)? I want to make sure that you have enough time to get this done using the framework you pick. AngularJS, MongoDB, etc are popular, but can be trickier than first sight. On Saturday, November 22, 2014, dbasner <notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com');> wrote:

I'm happy doing either, if your already doing back end I might as well learn/do the front end. I'm going to spend tomorrow looking at your backend code more/learning something like angular/learning how to access that data from angular. I'd be down to meet at some point tomorrow to talk about the details in person if you guys are free. I'm free to do anything before/until 5.

— Sent from Mailbox

On Sat, Nov 22, 2014 at 6:36 PM, Bob Gardner <notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com'); <javascript:_e(%7B%7D,'cvml','notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com');');>> wrote:

No, I did! Haha. Ok, we should definitely talk about specifics then. I've made a lot of progress on the backend. I'm using the producer / consumer paradigm and saving all data to a mongo database. I think we should split up those different actions between me and @dbasner (and you if the hardware isn't keeping you too busy). @dbasner. What do you think? Which ones sound most fun to you? On Saturday, November 22, 2014, Adam Jackrel < notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com'); <javascript:_e(%7B%7D,'cvml','notifications@github.com javascript:_e(%7B%7D,'cvml','notifications@github.com');');>> wrote:

I never saw the mock-up. Did Nicole make that? Looks good.

— Reply to this email directly or view it on GitHub <

https://github.com/rgardner/extreme-design/issues/7#issuecomment-64096095>

.


Reply to this email directly or view it on GitHub:

https://github.com/rgardner/extreme-design/issues/7#issuecomment-64099825

— Reply to this email directly or view it on GitHub < https://github.com/rgardner/extreme-design/issues/7#issuecomment-64103446>

.


Reply to this email directly or view it on GitHub:

https://github.com/rgardner/extreme-design/issues/7#issuecomment-64103629

— Reply to this email directly or view it on GitHub https://github.com/rgardner/extreme-design/issues/7#issuecomment-64103797 .

rgardner commented 9 years ago

@dbasner When you start on this, can you create a new repo in the project-nikola org account? Maybe call it web-dashboard or something? @Hotblack and I would love to see the progress you're making.

Hotblack commented 9 years ago

Environmental sensor is done. I don't have the hardware with me this weekend, so I've been working on other stuff I've been neglecting this past week. On monday I want to work on making some kind of form-factor for the killawatt. Lakshmi really wanted us to demo how easy it will be to setup. So, I'm working on making it a 1-2-3 step process. Really, the only feature not implemented is the actuation. I ordered a SSR relay, but it might not get here in time.

dbasner commented 9 years ago

Yeah I'll make a new one I was going to ask about tar, right now I'm reading. I'll let you know what is going on as things change. 

— Sent from Mailbox

On Sun, Nov 23, 2014 at 1:39 PM, Bob Gardner notifications@github.com wrote:

@dbasner When you start on this, can you create a new repo in the project-nikola org account? Maybe call it web-dashboard or something? @Hotblack and I would love to see the progress you're making.

Reply to this email directly or view it on GitHub: https://github.com/rgardner/extreme-design/issues/7#issuecomment-64128945

rgardner commented 9 years ago

@Hotblack Can we still get the simple relay working? Do we have the power for turning on and off the christmas lights? I'm at the point where I need quality time with the hardware to try everything out and get the existing code working.

ok @dbasner keep us updated.

Hotblack commented 9 years ago

@rgardner On thursday, I built another xbee transmitter circuit on a breadboard for you, plus another killawatt. So you should be all good for testing.

dbasner commented 9 years ago

Just as a heads up, I am going to try as hard as I can to do all of this because I really want to learn and I want to get something real done.  But I have felt pretty sick/nauseas today and progress is slow going.  If I had to guess the bulk of the work is going to get done tomorrow. So if you don't hear a ton of real progress today/tonight, expect it tomorrow when I am praying this bug is gone. 

— Sent from Mailbox

On Sun, Nov 23, 2014 at 2:14 PM, Adam Jackrel notifications@github.com wrote:

@rgardner On thursday, I built another xbee transmitter circuit on a breadboard for you, plus another killawatt. So you should be all good for testing.

Reply to this email directly or view it on GitHub: https://github.com/rgardner/extreme-design/issues/7#issuecomment-64130232

dbasner commented 9 years ago

But I have nothing to do on Monday after 12 except this, so I am just going to spend literally all day on it. I expect to have something on Tuesday. 

— Sent from Mailbox

On Sun, Nov 23, 2014 at 2:36 PM, daniel basner dbasner@gmail.com wrote:

Just as a heads up, I am going to try as hard as I can to do all of this because I really want to learn and I want to get something real done.  But I have felt pretty sick/nauseas today and progress is slow going.  If I had to guess the bulk of the work is going to get done tomorrow. So if you don't hear a ton of real progress today/tonight, expect it tomorrow when I am praying this bug is gone.  — Sent from Mailbox On Sun, Nov 23, 2014 at 2:14 PM, Adam Jackrel notifications@github.com wrote:

@rgardner On thursday, I built another xbee transmitter circuit on a breadboard for you, plus another killawatt. So you should be all good for testing.

Reply to this email directly or view it on GitHub: https://github.com/rgardner/extreme-design/issues/7#issuecomment-64130232

dbasner commented 9 years ago

nobody has any specific reasons for us not to use nodejs right? I am really just going with things that have the most accessible documentation, and it's looking like its going to be a mongodb/node/angular trifecta.

To be honest I am having a bit of a hard time understanding the new producer/consumer setup bob made (although from what I can tell, it looks really good, just different). Because I think my time is better spent getting a dashboard up than asking a million questions about the code, I am going to begin making the dashboard separate from the rest of the code and then worry about integrating it in later. In theory/from my understanding they are separate processes anyways, one is something that grabbing packets and writing to the db and the dashboard part is a node server that treats this db like it would any other.

These are the steps I want to take today/tom, in this order, going from simple/least complicated to most:

This is more or less my todo/what I have done list over the next two days:

  1. read a ton of stuff about mongo,node,angular (done but really happening at every point)
  2. install, create a mongodb db and put/grab some data from it using pymongo to get comfortable (done)
  3. read up on node.js/mongo and how they work together (working on it)
  4. get a simple node server going and get comfortable with that
  5. node server that is connected to mongo
  6. basic angular (or something else) stuff.
  7. Tie angular, mongo and node together and literally just display numbers from a db on a page.
  8. make those numbers into graphs and make it look slightly less ugly if possible
  9. Translate things from the fake database over and get it working with our setup. 9.

PLEASE let me know if you guys disagree think the way I am approaching this is wrong/stupid. I am working fast/hard to try learn this new stuff but if I am approaching this the wrong way it won't get done. Any suggestions appreciated.

I would like to meet tomorrow (I'll be at elab by 12:20) to talk with you guys about progress and future of the dashboard, even if its just skype or something. I know that we are working on different things and the idea is that we can be working separately and still function, but since I am new at all these technologies getting feedback and asking questions is super useful.

Thanks, Daniel Basner

-Daniel Basner

On Sun, Nov 23, 2014 at 2:50 PM, daniel basner dbasner@gmail.com wrote:

But I have nothing to do on Monday after 12 except this, so I am just going to spend literally all day on it. I expect to have something on Tuesday.

— Sent from Mailbox https://www.dropbox.com/mailbox

On Sun, Nov 23, 2014 at 2:36 PM, daniel basner dbasner@gmail.com wrote:

Just as a heads up, I am going to try as hard as I can to do all of this because I really want to learn and I want to get something real done. But I have felt pretty sick/nauseas today and progress is slow going. If I had to guess the bulk of the work is going to get done tomorrow. So if you don't hear a ton of real progress today/tonight, expect it tomorrow when I am praying this bug is gone.

— Sent from Mailbox https://www.dropbox.com/mailbox

On Sun, Nov 23, 2014 at 2:14 PM, Adam Jackrel notifications@github.com wrote:

@rgardner https://github.com/rgardner On thursday, I built another xbee transmitter circuit on a breadboard for you, plus another killawatt. So you should be all good for testing.

— Reply to this email directly or view it on GitHub https://github.com/rgardner/extreme-design/issues/7#issuecomment-64130232 .

rgardner commented 9 years ago

You're exactly right, the automation package and the web dashboard you're making are logically separate. The automation package will write to a mongo database called sensor_readings. All you have to do is graph that data.

I have no objections to node.js and I'm confident you can get this done.

For tomorrow, I don't think mongodb connections is critical. If it's faster to hard code arrays with fake data, then do that! Getting angular and node talking, with dummy graphs to display that hard-coded data should be enough work for tomorrow.

To that end, I recommend drawing a sample user interface on a piece of paper. Start higher level - graphs, current temperature / humidity, power usage, etc. This will help clarify what exactly you need to learn about angular and node to get there. As you make it easy enough to plug and play mongo, I don't think you should think about mongo right now.

You don't need to understand everything you see about mongo, node.js, and angular - just enough to get the job done before Tuesday night.

Thanks for taking the lead on this and posting your plan here - it really helps to keep us on the same page.

rgardner commented 9 years ago

re: the automation package; I can explain it to you and @Hotblack this week; but it's not important for Tuesday. My priority is to get it all working and to figure out what the different types of data will look like (energy, environmental, etc.)

rgardner commented 9 years ago

http://plnkr.co/edit/T9J7bz?p=preview

rgardner commented 9 years ago

Moved to project-nikola/Dashboard