| Forum: Water Cooler |
11. Jul 2008, 17:31 CET | Link |
First, let me say, welcome, to all of the new members... now that I have that out of the way, who the hell are all of these new members? :P
If you are new to the group, please reply, and give us a little bit of background... just curious so that I know what resources are available to us in case I'd like to bounce ideas off of any of you. :)
Thanks!
73 Replies: | |||
|---|---|---|---|
Hi, thanks for the welcome :) I joined yesterday and just made my first post over in System Design. I'm a web application developer by previous professional background, but am now working for an energy consulting company doing work and research related to smart grid, advanced metering, distributed generation and storage, and demand response applications. Home area networks and device control are part of all those applications. Examples: - I want to be able to switch some set of devices in my home to a lower-usage mode if I get a peak price signal (raise thermostat, cycle water heater, shut off the pool pump, etc). - I want to be able to read my meter data from a display in my home. - I want to track the output from the solar panels on my roof. - I want to manage the usage of my plug-in hybrid's battery as a distributed energy resource that sells energy back to the grid during peak hours. And I want to be able to do all those things over an open, standardized platform that abstracts away the underlying network complexities. I don't want to be tied to any one vendor or network technology. As an application developer, all I want to think about are the devices themselves. I don't have any experience as a home automation hobbyist. I've been trying to learn as much as I can about all the standards and technologies that are out there and then figure out what looks like the most promising route to a more open, interoperable environment. |
|||
Conan Saunders wrote on Jul 11, 2008 19:12: Welcome! I'm a web application developer by previous professional background, but am now working for an energy consulting company doing work and research related to smart grid, advanced metering, distributed generation and storage, and demand response applications. Home area networks and device control are part of all those applications. Examples: Sorry, I had to clean up the format in the quote, the quoting system here is 'interesting' to deal with. Pretty much if we can understand the protocols we'll be able to talk to it. There are a number of 'hacked' solutions to recording power usage. A lot involve laser pointers on the power meter. If I were the meter person I'd be very afraid of the contraption. I haven't seen the meter person coming to the home lately so I'm guessing that they now have wireless access to the meters (they recently replace the meter). I'd love to get the details so I could figure out the protocol. Being able to tell my power usage would be great (though I doubt my wife would change her ways). Dr. Edward Cheung of NASA has a Power Line Monitor that can be built by an EE/EET. I just haven't sat down a built one yet. The power inverts on many solar arrays have comm ports so you can poll the devices. I did some work on this: Farmpark Solar Array (sorry I don't remember the proper URL) for The Renaissance Group. It's an interactive display for children at the Farmpark. The web page is so we can check up on it. I have no solar on my home (yet). I think every will eventually have an array but no batteries. And I want to be able to do all those things over an open, standardized platform that abstracts away the underlying network complexities. I don't want to be tied to any one vendor or network technology. As an application developer, all I want to think about are the devices themselves. Well you'll have a lot of learning, there are plenty of standards. If MarcF gets his way we may create a few of our own and that's not a bad thing. :-) |
|||
Neil Cherry wrote on Jul 11, 2008 20:44: If MarcF gets his way? What about me? I said that in the very beginning (back over on our google group)... how I hoped that this thing would get big enough to where we could afford to create our own devices and protocols (both with open standards, of course). :) Add a little tequila... to your Java http://www.agaveblue.org |
|||
Wade Wassenberg wrote on Jul 11, 2008 20:51: Oops, gotta watch my attributions around here. :-) Oh, it's going to get big enough that other companies with create their devices and use out protocols. :-) Which reminds me, we may want to look at XAP and XPL. Here's a link to the XPL Java SDK. At this time it's too much to consider but we do want to play nice with others and take over the world. :-) Sorry, it's a little hard to tap all the information in my head all at once. Do be careful when I have a stream of thought, it's usually diarrhea of the mouth (keyboard?). |
|||
I have a HA system with lights, pool irrigation, HDTV, 6 zones of music and handfuls of remotes. I have dabbled with Girder and OSD on my TV. I have a rack-mount PC in my basement that runs XP as a (not very good) server. It acts as a backup NAS, a IIS server and a Tomcat server which serves a couple of Ruby on Rails web apps. It also runs MySql for my two RoR database applications. I have chosen to have a HA system which I can understand and dabble with but also mainline enough that my wife can call a HA technician to fix the essentials. The house should remain sellable. I cannot say that I have looked at all options for having control, but I do see a need for customisation of screens. A linear list of about a hundred switchable items comes as a web page from my commercial HA/Alarm system hardware and that is not at all user friendly. Screens need to be arranged by locale or room, not by source/target device. At the moment I am using Girder and NetRemote to make simple remote screens running on laptop. I will buy a PPC or more likely a compact UMPC soon. It seems that Intels Atom CPU is aimed at this UMPC market. I have never seen exactly what a Crestron can do.
Reading some of your stuff here, I think you have too much emphasis on IR. The codes are a pain, but you only have to do it once. Given ANY protocol-file-format for writing down the codes and a web site for storing them on, if you have done the codes for a Panasonic 1234, I would like a copy of your file. The file could be a CSV table with two columns so: file: Panasonic 1234.csv key code repeat Carrier Pre-quiescence Comment play 00371F0BB252310B00000A8000000000000000000000000000 4 56KHz 0 none makeItRain 00471F0BB252310B00000A8000000000000000000000000000 0 56KHz 0 The database web interface would need three pages: 1. A list of devices 2. The listing for the selected device as above 3. A listing and explanation of a preferred keys convention ( the button that lokks like a triangle pointing right should be keyed as 'play'. CCF files have a lot more than this in them (although I don't know what even though I use them. I have made a few of these kinds of files by training through my USB-UIRT. Trickier are getting hold of the codes the TV knows that the remote does not, so called discrete codes. One can often google for those. In Girder parlance each IR code is considered an 'Action'. The tricky thing about actions is the naming of them, given that there is some standardisation with many remotes having a 'Play' button, but they may also have a 'Make it rain' button. The 'Make it rain' button has to be mapped to the electric tap on the ensuite shower. This IR stuff is really quite easy as it is operates in 'Fire and forget' mode. There is no response - in two senses, firstly maybe although you said turn on, it didn't, secondly, even if it did, you may never know. If you make it too complicated, you still won't know if it worked. The Girders and Prontos and Harmonies can do this kind of stuff, but they are no longer enough. The hardware of new remote will look like some of the new UMPCs with a minimal or no keyboard, just enough to type to odd URL or login. The Girder/Net Remote software now struggles to add handling of serious two-way communication stuff such as remote control of Windows Media Player, getting weather and radar, email.... Simple icon drag and drop is too simplistic and real code is needed to handle AJAXy stuff. Having some grey (white) hairs, I would put assembler, Basic, Fortran, C, C++, Lua, Java, JavaScript and Ruby on my list. Of all of these, Java is the only one I would consider for any new work. This kind of HA stuff is a part-time hobby for me not a profession. If I use Ruby, although powerful, I find that almost every new line of code I write has its run time error, or two or three. Its nice to have strong typing so the editor can correct a lot of my errors as I type just like a modern word processor does with spelling. I see mention of C in your blogs. That was the way twenty years ago. I need to start at as high a level language as I can. Maintainability is important. You do something. You get engrossed. Then you get on with the rest of your life. Then try to re-learn Ruby syntax six months later. I need a REALLY helpful development environment. IMHO, to leverage what is being done in industry a modern HA remote should be implemented as a thin client on a browser with a back-end server doing most of the work. That's Radar and Weather dealt with. Maybe music too. What is needed are tools for GUI layout, and server side code. Right now GWT with GWT Designer $59 looks a good way to start. Try their Web Demos. That looks low enough level to me. That's GUI done. Next is drivers. I use about three right now. USB-UIRT turns IR codes into IR and is capable of learning them too. It has a Windows API but came already integrated into Girder. My Denon 4306 has a Lan port but it is really RS232 over Lan. In my driver, Denon4306 is a sub -class of AVR which has methods volume(3dB), etc. It is a fairly simple protocol. These devices need attention paid to the asynchronous output events that come from them. If someone turns the volume knob up, then a stream of volumeUp events come to the controller over the Lan port. What to do with them? My main interface is to my HAI OmniPro home automation controller which does security, lights, irrigation, garage doors, pool temperature,.... I have interfaced to it in two ways. One is plug-in from Girder for $40, but I am not yet clear if their plug-in has implemented all the potential functionality. But within a couple of hours I could make a custom lighting screen and turn lights on and off from my wireless laptop (but did they REALLY turn on?). The second interface is Java over RS232. I use it to query the HA controller, for example, to gather pool temperature and plot it as a graph using JFree. A few observations on drivers. They need to deal with asynchronous unsolicited input from the device interleaved with solicited stuff. In any open source project, often all the functionality need not be implemented up front. Focus first on the core stuff and get it right. Then, add the bells and whistles later. To me this suggests a layered approach. In my HAI driver, the lowest driver layer is tasked with packetising the RS232 stream adding/checking CRC, bit and byte packing, etc. A layer above that encapsulates kinds of messages with kinds of devices, for example temperature sensors. That is perhaps as far as the driver goes. This code is general and shareable with all having an HAI OmniPro. Above the driver layers (plug-ins, modules) is the core of the application. The customisation and mapping of drivers to raw Java GUI widgets made directly by GWT Designer. I use raw here in the sense of text boxes, drop-down lists, combo boxes, etc. An open source project should have a library of higher level widgets, for example a thermometer widget that can be mapped to thermometers. While on widgets, a desirable feature is to be able to skin the GUI. One can make a functional widget using GUI Designer tools, but it probably won't look all that pretty. Some contibutors make beautiful skins using Adobe Photoshop and their artistic skills. But they not be all that good at Java. Can the integration be made simple enough that someone new to Java can make a workable system using the modules of others? On databases - I do find my MySql database handy. I started it up last October serving my Ruby-on-Rails app. I have never seen an error from it nor lost any data running through power losses (used not to have a UPS). XP reboots and MySql comes back. I click on my browser short cut and the data is there! Reviewing what I written, a question that comes up is: What is the expected/required skill set of the user base? The answer might be that one should distinguish between a lower set of skills sufficient to use models and build a gui or a higher set of skills that can write a driver and turn asynchronous ascii gibberish into named events for dispatch. On hardware, I am quite happy to buy the stuff that is out there. By biggest investment was in wiring, lights (ALC) and the OmniPro HA. It has stuff like door contacts, motion detectors and also UL certification for alarms. It handles interface with the Alarm Monitoring company. I am glad that is quite distinct from my HA. The software I need is for integration and GUI. Finally, changing subject... I would have reservations about giving up copyright of any code I wrote to anything other than a non-profit corporation. I am afraid your blogs will scare many a potential contributor with so much talk of business and business model, shareholders, commercial licenses, etc. Is this really a scheme to get software written free for a corporation which will permit private use, but makes a commercial killing licensing free modern well-thought-ought AJAX code to commercial users. Who did you say owns the shares? How much capital is in? How do I become a shareholder? What is the purpose (mission?) of the corporation? P.S. imho this thread would work better if it was restricted to new members for their introduction. Lets put the diarrhea in a different thread! It would make a more interesting read. |
|||
Robin H wrote on Jul 27, 2008 22:21: Too late. ;-) |
|||
Hello Robin, Welcome :-) Wow, a long introduction. Some interesting points there. I'm sure it will trigger some discussion. With regards to code, yes we are heavily leaning towards Java wherever we can. Maintenance and maintainability being one the big points of the project along with defining the programming model that enables custom extensions and plugins, and creating a well-defined searchable database of devices and codes backed by SQL database. As far as licenses, nobody's asking you to give away your copyright. What you create on your free time is yours. Don't confuse copyright and license (a common mistake), these are two different things.
Juha Lindfors, OpenRemote |
|||
A bit more about my background. My company, not $100M, but it makes instruments employing embedded systems achieving a mean power consumption of .75 watt. The product I have in mind uses four processors including an ARM. It runs Linux with embedded web servers. Data is accessible using a discovery mechanism and has a gui controlled by five push buttons. Typically, one hundred or more such devices are 'discovered' on a network. Each has a gigabyte or more of data. Applications supporting it use GWT. Other guys work with Swing and RoR. Am I personally up to speed on all this stuff? No. But making a profit from it all is quite challenging. Do I have all the answers? No. Another of our products is a data acquisition satellite (Ku band) transceiver. It too uses a Linux core. All of this stuff is is strictly for commercial use ($$$). About a dozen programmers work on this it. I will switch to your systems forum and blog more. |
|||
Robin H wrote on Jul 28, 2008 02:27: Wow, you just killed the first part of my comment on the other thread. ;-) If you start to have trouble with posts (formatting) asking in the water cooler area will get you help and, of course, the help button on the upper right works too. :-) |
|||
Christian, how do we make this a sticky thread? So newcomers can find this. it is getting sticky all by itself. |
|||
Marc Fleury wrote on Jul 28, 2008 18:46: Humor, it's a difficult concept and, for some, can be very difficult to grasp (I'll leave that one, more than one?, for you to figure out ;-). |
|||
I recently researched small power meters for sub-metering sections of our homestead. Some of the meters out there provide contacts and the meter I'd expect that's gotta be simpler (and safer) than monitoring the main meter via laser. I can only imagine what the meter reader must think about that bright red dot. :) |
|||
Hi, I'm new to OpenRemote, but have been working on a masters thesis in distributed generation called solarnetwork.net: http://www.solarnetwork.net/ which is mostly written in Java under the GPL, available at SourceForge. I hope to learn more about OpenRemote, and encourage people who are interested to start submitting their solar data. thanks, John |
|||
hey, thanks for joining and dropping a note. We are going to go GPL for the core code so would like to include code like yours at some point. I realize there is a lot of things out there already, some of it pretty advanced. One of the things we did (well) in the past was to federate existing projects under a bigger umbrella. That was called Professional Open Source. Going pro meant doing the project full time and helping customers with it. Everyone benefited, obviously the developers, but also the customers that saw another level of commitment, resources and drive behind the projects. I do believe there is a similar POS play here and we will be working to make it work for you all if and when there are fits. Thanks for the input. On another note, the house i am building does include solar and I will certainly check your stuff out. |
|||
A bit about myself. Technical background: Been programming in Java for about 10 years developing web applications. I’ve used or touched about all the major frameworks, databases, servers, and other web front end technologies. Currently I’m developing web applications for Union Pacific using Wicket, JQuery, Spring, JMS, and Hibernate. I did get a chance recently to develop a public facing application that luckily enough, would help out my fellow home-theater enthusiasts iconharmony Personal Background: My love of home-theater and home automation plus the fact that I’m now building my first home, led me to scour the web for any information about HA that I could find. I’ve always been interested in HA but the fact that the solutions out there were very expensive and not at all marketed for the DIY pushed me away. A bit of searching this past month led me to Control4. They seem to have a well thought out solution from both the hardware/software side at a pricepoint I felt comfortable with. The only problem being that this was still a solution controlled by Custom Installers which led me here. I’m always ready to learn something new and help out in any way that I can – just let me know. Thanks, Shaun |
|||
Welcome Aboard Shaun! Add a little tequila... to your Java http://www.agaveblue.org |
|||
Hey Shaun,
Welcome and thanks for offering to help out. Given your interest in icons, you may want to check out the documents in Control4 is a fine solution, albeit proprietary. The Custom Installer thing is just how the market works. It is just the way it is. You need integrators like you need integrators in the java field and you probably know what I mean since you are one. So it is not a minus in my mind. In fact I believe that an early model for revenue here at OpenRemote could be to train and certify integrators. But we are not there yet. If your ambition is to have fun in HA and contribute something in an Open Community, this could be a good place for you, consider getting serious :) mi casa es su casa, or something like that. |
|||
Hi Marc, I should’ve noted in my post above that the design/idea for iconharmony was by Randy Cohen. While I'm more than capable with adobe photoshop - this is Randy's main line of work. I'll contact him and see if he's interested in helping out on that end. I was responsible for putting the guts of the application in place. Regardless, I'll check out the documents here and see what I can contribute to. I didn't mean to convey that a HA solution provided by custom installers is always a bad thing, it's just not one I would pick if I had the choice to do it myself. As you've said, there will always be the need to have custom installers based on the customers needs/wants and their experience, and complexity of their home and electronic equipment. It's more that I would like to see a solution that strives to be as simple to use and install as possible, covers most of the base HA needs, and allows the end user to tweak, configure, and grow their system as needed without a CI if they don’t want one.
|
|||
You are right, in fact in a lot of our thinking we want to enable the DIY, it is a |
|||
Marc Fleury wrote on Jul 29, 2008 19:20: Speaking of icons, I still think we need to create an OpenRemote logo, something that will be universally recognized. I am not much in the way of a graphics artist, so I'll defer to others on this, but I'd like to see something like the letter O with a picture of a remote control in the middle of it... that'd be kinda cool, no? Add a little tequila... to your Java http://www.agaveblue.org |
|||
I like the little fluffy cloud we have right now on the front page. Logos move in time but we should start with something simple like the
If anything it is a reference to Wozniak's |
|||
Marc Fleury wrote on Jul 29, 2008 20:24: Fine! And here I was gonna donate my skillz and provide something really pretty like this: But if you want some kinda fluffy cloud then be that way! :P Add a little tequila... to your Java http://www.agaveblue.org |
|||
Greetings all and thanks for the kind welcome. I just found this project while doing some research on automation and I felt called to register and see how I might participate. I've been fascinated with automation for a long time and worked with X10 technology about 20 years ago. Still have a bunch of X10 modules in a box somewhere I think... These days I live off the grid in the Northern Arizona High Desert where my wife and I are working to build a sustainable homestead. We document our work and experiments (successes and failures) on our site ByExample.com. We also operate a small web development and hosting business out of our home called Cyberian Frontier. I believe strongly in the concept of open standards and open source and I'm hoping there may be a use for my skills in this effort. I expect that I can be of help with documentation, tutorials, and perhaps technical illustration. My development skills at the moment are limited to PHP/MySQL, HTML, XHTML, and basic JavaScript. I'm sorry to say that I have zero Java experience. We might also be of help with design and graphics. My interest in OpenRemote lies in the potential of using automation software and hardware to optimize my homestead energy systems. With the price of solar and other energy sources as high as it is I want to get every watt of power I can harvest out of my investment. For example: with the ability to measure my system voltage and other stats I can intelligently decide when to pump water into our storage tank -- thereby using our water storage tank as a energy battery of sorts. It's very common for us to have excess energy on sunny days -- being able to intelligently use and allocate that surplus energy means I get the most out of my panels -- which consumed significant energy to be produced and purchased. I also need to be able to track and log system statistics for later data analysis. And when you start looking at the possibilities of what this technology can do for small-scale independent farms it's really, really inspiring! Imagine having a couple of power efficient server appliances monitoring water levels, food stocks, greenhouse temperatures, soil PH, power usage, weather conditions, etc.. Water systems can be drained to prevent costly freeze damage, irrigation can be turned on based on actual moisture needs of the soil instead of on a simple timer, etc..
It's my hope to come up with practical and affordable solutions to sustainable homestead automation and share those instructions with anyone that wants them via our site. I'm already testing some So I'm looking forward to learning more and, as time permits, help out with the effort. Kind regards, Patrick Harris |
|||
Hey all, I'm new to the site and wanted to give a quick introduction. I already posted in the other forum (skipped this step), but I'd like to stay on here so I might as well do this by the book. :)
I have no technical abilities whatsoever (can't code), and I'm a danger to myself with tools (soldering is awesome). But, I have had a lifelong fascination with automation, tracking, and remote control. Because I cannot program at all, I have waited for projects like this one to arrive and give me hope that one day I could install my own system using free/community supported software. Control4 has a sexy website, but it comes across as a I worked at Electronic Arts for a few years, before going back to school to study law. I'm finished school in December of this year, and I'm hoping to move into the open-source IP field (naturally, this project is interesting to me). I'm currently working at Qualcomm in the asset-tracking division. My real interest has always been to create a system that can be controlled from the web (laptop or remotely), and monitors/reports on utility consumption in real-time. My wife is HUGE into alternative energy, so my interest has once again turned to ways to install and meter solar cell tech for my home... and one thing leads to another and I'm contemplating an overhaul of our home. :) I love the project, and would like to help out in any way possible. As with any time I've helped with something technical, I'll get the coffees... I don't care. This stuff just interests the hell out of me. Brian |
|||
Hello All,
Found the site from an article on Arstechnica. Sadly I have no programming skills, what I do have is experience with running a home automation installation business in addition to other small businesses. I also spent 7 years working for America Online back in the bubble days as a QA Engineer, testing the AOL UI and project manager. Recently, a group of investors I work with asked me to step in and take over the daily operations of a home automation business they had invested into due to poor prior mangement. Sadly I was not able to save the business and have since moved on to other ventures. However, my short experience with the home automation business has really sparked my interest in the technology. Having worked with a few systems, Control4 and SavantAV, IMHO the systems available today on the market are either too expensive or much to dependent on system integrators. Not that I have a problem with system integrators as I know there are a few integrators here, I just believe that the technology will never have mass market appeal until a customer can buy a kit online or in a store and install the system for themselves or have it quickly installed for a few hundred dollars. So I hope to be a productive contributor when I can. Cheers! |
|||
Ruel Loehr - former jbossian. My background is build/release/installation/config managment. I'm happy to help out with any type of infrastructure/build/release work that needs to be done. |
|||
Hi Everyone. I just wanted to introduce myself. I found OpenRemote via a posting at CocoonTech and the project looks quite interesting. I have been looking for a good home automation system based around open systems for a while. I have used Misterhouse in the past but found the lack of multi-threading in Perl to be a limitation. I have seen some discussion of Xap here and I must admit that I am not much of a fan - the documentation seems to be hard to read and the addressing scheme seems to be very complicated. I have been looking at the Obix Server project which is based around the Obix OASIS work. I haven't seen Obix mentioned here yet and I would be interested in hearing what others think of it. Perhaps OpenRemote could use Obix? The plans I have (If only I had the time to execute) have been to create a couple of drivers for the Obix Server; one for the Elk-M1, one for Clipsal C-Bus and 1 for Rhino Javascript. The idea being that I can then write simple event driven scripts in Javascript which makes it easy to modify logic without needing to compile source or restart a server. Regards, Paul |
|||
Paul Wilkinson wrote on Aug 01, 2008 07:49: I think we'll keep you :) I don't think systems that interface with devices work well (or at least to their full potential) without a multi-thread model! Add a little tequila... to your Java http://www.agaveblue.org |
Add a little tequila... to your Java http://www.agaveblue.org