-
Posts
692 -
Joined
-
Last visited
Everything posted by barrygordon
-
www.the-gordons.net. Go to the bottom of the main page and follow the obvious link.
-
I just posted an updated version of my ha-bridge configuration program. You can now set the address of the ISY as opposed to the program doing a uPnP Search. I prefer the search but some users have problems with it due to conflicts, search settings, firewalls, router settings etc. You can now set the locations for the ha-Bridges and the ISY.
-
look in /etc/data that is the default location. Here are the 4 startup lines for my multi emulator RPi. You can see I have the data and log files stored in the /home/pi/echobridge directory in a subfolder for logs and one for data. Each of the 4 emulators running on the machine uses a different log file name and a different data file name. nohup java -jar -Dvera.address=192.168.1.229 -Dupnp.config.address=$_IP -Dserver.port=8081 -Dupnp.response.port=50001 -Dupnp.device.db=/home/pi/echobridge/data/device81.db /home/pi/echobridge/ha-bridge-0.4.3.jar > /home/pi/echobridge/logs/log81.txt 2>&1 & nohup java -jar -Dvera.address=192.168.1.229 -Dupnp.config.address=$_IP -Dserver.port=8082 -Dupnp.response.port=50002 -Dupnp.device.db=/home/pi/echobridge/data/device82.db /home/pi/echobridge/ha-bridge-0.4.3.jar > /home/pi/echobridge/logs/log82.txt 2>&1 & nohup java -jar -Dvera.address=192.168.1.229 -Dupnp.config.address=$_IP -Dserver.port=8083 -Dupnp.response.port=50003 -Dupnp.device.db=/home/pi/echobridge/data/device83.db /home/pi/echobridge/ha-bridge-0.4.3.jar > /home/pi/echobridge/logs/log83.txt 2>&1 & nohup java -jar -Dvera.address=192.168.1.229 -Dupnp.config.address=$_IP -Dserver.port=8084 -Dupnp.response.port=50004 -Dupnp.device.db=/home/pi/echobridge/data/device84.db /home/pi/echobridge/ha-bridge-0.4.3.jar > /home/pi/echobridge/logs/log84.txt 2>&1 & The bash variable _IP is set earlier in the RC.local file so it is the IP of the RPi. I believe I posted that in an earlier post on this thread. Oops sorry I did not see that you wanted the info for a windows machine.
-
The Dvera address is the address of the ISY.
-
I now have the 4 Emmulators (ha-bridge 0.4.3) and a copy of stunnel the SSL wrapper, and tightvncserver all running on a single RPi. If you want a copy of the Micro SD (16 Gig) which can be easily loaded into a RPi model 2 to duplicate the configuration I am using, contact me via eMail. You will need to tell me how to send it to you. If you want it electronically you will need to supply an account at a transfer service like sendspace or dropbox through which I can send it. Or I will give you my postal address where you can send a blank 16G microSD card and a self addressed return envelope. I will burn your card and send it back to you.
-
I have just updated the program on my web site. The bug was caused by the assumption that all ISY users store their devices in folders which represent rooms. If you have previously installed the program, then unzip the archive on my web site and then unzip the CAB file. A cab file is just a renamed zip archive. The executable from the CAB file should now replace the executable that you installed. Appreciate any feedback regarding its operation. I would especially like to see the log file which is also stored in the execution folder.
-
The stop being reported has to do with the ISY configurations. Everyone takes a slightly different approach. I am working on the problem with one person. I have posted a newer version but I do not believe it fixes the issue. The program handles multiple emulators on the same machine or multiple emulators on multiple machines. It allows you to select an emulator when you add a device, or let it pick the emulator with the smallest number of devices. I am running 4 emulators on a single RPi with no issue. The program allows for add, delete, move and update. move will move device from one emulator to another. Update will allow you to change things about a device e.g. its friendly name. It allows for Custom end points different than the ISY994, but you have to write your own endpoint. The configuration system merely sets up the correct values for the URL when you provide the IP:port of your endpoint.
-
Okay, I just need a little more info. Send me your ini file as you have modified it. It sounds like it did not find and download your ISY data. Also send me the log file it wrote. It should be in the same directory as the executable. send it to barry@the-gordons.net. I have not yet installed pretty error traps and will be doing that shortly. Also, how do you organize your ISY? Single level folders, nested folders etc?
-
I have just updated my ha-bridge emulator configuration tool on my web site. It will now handle multiple emulators on the same machine (Raspberry Pi) and contains the correct start up lines for this to be possible. It runs with the 'New' Emulator developed by bwssystems (www.bwssystems.com) It should run with versions 0.4.2 or greater. I am using version 0.4.3 In my home I have a lot of mini remotes and keypads controlling things. For example, the ceiling lights in the master bedroom can be controlled by my iPads, my iPhone, A wall dimmer switch and a a mini-remote. To keep all the led's in sync I use scenes heavily. Now with the Amazon Echo using the same scenes everything still stays in sync. I am currently running over 90 scenes/devices/programs distributed over the 4 bridges. I am Smiling!
-
I am not sure. But if you go to help under the amazon echo app and have the Echo customer support call you back I am sure they will be able to help you.
-
I just posted on my web site the first iteration of my configuration system for the Amazon Echo. This program runs only on Windows PC's. I have only run it on Windows 7 but there is no reason it should not run on Windows 8 or 10. It has a complete GUI that is not Browser based. It will locate your ISY and read its complete configuration. It will locate all your Emulators; ha-bridge, and probably the older one also. It downloads their databases. It deals with multiple emulators and allows you to choose which emulator is to get a device you wish to add to the set. It has a reasonable manual that explains how it works, and how to use it. It is on my web site as an installation package. Feel free to download and try it. My web site is www.the-gordons.net. look for the link to programs and downloads on the main page towards the bottom. It should be easy to find after you follow that link. I have used it to set up my home system with the Amazon Echo but only using devices. I have not tried scenes or programs but that should also be fine. I support anything I write (within reason) and appreciate any feedback.
-
Scyto, All my RPi's run headless. I use tightvnc to control them from my office desktop. Yes the-Dvera is the address of the endpoint you want the bridge to talk to. When you set uip the onURL and the OffURL you include the userid password as in http://admin:admin@192.168.1.229/rest/. . . Yes you need to handcraft the URL's . . . but I will be distributing a new configuration system that runs on a PC. It queries the ISY for its configuration and automatically fills in the URL's after you select a device, scene or a program from a drop down list. All you need to provide is the friendly name for Alexa, the device type (switch is what I use) and the Rest commands starting with /rest/. . . The app fills in all the rest. It allows for complete configuration of multiple ha-bridge systems, finds the ISY and all the bridges automatically. In my rc.local file which starts the bridge I automatically determine the IP address of the RPi and set it accordingly in the start command in rc.local as follows: #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. echo "Running the RC.local Bash script" # Print the IP address and set $_IP with the IP address to use later _IP=$(hostname -I) || true if [ "$_IP" ]; then printf "My IP address is %s\n" "$_IP" fi echo "Starting the Echo Bridge Emulator" nohup java -jar -Dvera.address=192.168.1.229 -Dupnp.config.address=$_IP /home/pi/echobridge/ha-bridge-0.4.2.jar > /home/pi/echobridge/log.txt 2>&1 & echo "Starting the tightvncserver" /etc/init.d/tightvncserver start echo "The RC.local Bash script has completed" exit 0 Have fun!
-
I'm Sorry, but isn't this 21 page thread a sub-forum. I grant you it is not explicitly recognized as such, but you go to the "How are you using the ISY" which is a forum or is it a subforum?; and you click on the top item which is held there and here you are.
-
Scyto asked: 1) are there any reason to select hue emulator vs hue bridge app vs wemo emulator? 2) do I need the emulator if I have real hue? I was confused by the mapper apps instructions.... 3) does anyone have insight into the statements some have made about UDI doing Echo support? 4) I haven't figured out what or where stunnel fits in? 5) same for skills server...? To make things easier, I will refer to the original emulator as the "Emulator" and the new version as the "Bridge" 1) I know nothing about the "Wemo" unit. The "Bridge" allows for about 40 or so devices before it max's out. The mapper app is not needed as the "Bridge" has a built in web server and using a browser and the web pages provided in the "Bridge" complete control over defining your devices is available with a nice graphical interface. 2) If you have a real HUE then it will only control the Philips devices AFAIK. It definitely will not control the UDI ISY994 family (the "ISY"), nor will it control any other HA controllers like the Autelis line of pool/SPA controllers. The same statement is probably true of the Wemo or the Wink. Using the "Bridge" I can control the ISY by sending it any REST command I want and the same for other devices that accept some control over IP, UDP, RS232, or IR; if you are willing to write some code. I am currently controlling 72 devices using multiple "Bridge" units. 67 are on an "ISY" the rest or on an Autelis controller and a PC system. The Echo system, no matter what it is controlling, only allows the use of certain phrases ("Utterances" in Amazon Speak). They must begin with the wake up word and the uses a simple command syntax (when talking to a bridge/emulator) such as "Turn on", "Turn Off", "Dim". Using the Echo Remote, small hand held IR remote like device, you can skip the wake up word as you press a button the remote to wake up Alexa and just say the desired phrase such as "Turn on the kitchen lights". The remote uses Bluetooth and is paired with a single Echo. 3) I believe that UDI has begun to develop some sort of interface to the Echo but are in the very early stages. As usual, in the early phases of development developers do not like to issue ETA's and make promises. 4) If you want to get away from the simple phrases and say things such as "Set my bedroom Air conditioner to cool at 872 degrees". Then you need either to use a skill developed by some developer or write your own skill. A skill consists of Utterances, sentences you want the echo to recognize; Intents, the way you wish the Utterance to be interpreted; and an end point. The things the Echo can do such as tell you the weather, give you news, play music are all skills. Endpoints are the code that do the work once the spoken phrase has been recognized and parsed by the Echo. The results of the parsing is sent to the end point. The end point can be in the 'Amazon Cloud" or on your own LAN as a private end point. If the endpoint is in the cloud expect to pay some money for using it unless you wrote it, and then you might have to pay Amazon for use of their cloud. If the endpoint is on your LAN the cost is practically $0) but you have to write it. All LAN based endpoints must use SSL (HTTPS) with Certificates. This means you have to deal with encryption and decryption using public/private keys which is non trivial. 5) The stunnel is a small software app that runs on a PC or an RPi, or a Linux system (any machine that runs Java). It provides an SSL wrapper to any other app that accepts HTTP but not HTTPS. Basically you tell your router to send all incoming SSL traffic to the stunnel app, and tell the stunnel app where to send the clear-text (HTTP) to. This works both ways decrypting incoming messages and encrypting those it sends out. It does not appear to interfere with a standard web server (Apache, Chrome, etc) as Yahoo which uses HTTPS is still working on my systems. stunnel handles all of the certificate verification and provides the tools needed to build your own certificate, either self signed or signed by a Certificate Authority such as Verisign. I hope the above clarifies the state for Scyto and others. I plan to be able to supply a Micro SD card image with the standard Raspbian as the OS, tightvncserver and the ha-Bridge all installed. I will not charge for it and will send it via sendspace (similar to DropBox). It will probably be 16 G unless I can find an app to shrink a 16 Gig image to 8 Gig or 4 Gig. It will require minimal effort, 1) burn the image to a micro SD using Win32DiskImager, 2) put the card in the RPI, 3) start the RPI, 4) change the host name if you want. 5) Enter into the start command the address for the ISY on your network. I am going to discuss with the author having the "Bridge" do a search for the ISY to eliminate the need to make that change. It will handle DHCP so no need to adjust the RPi IP address. If it is running the Echo will find it. I prefer the "Bridge" over the "emulator" for the reasons stated in (2) and that it is being very actively supported by the author (bwssystems.com). I am discussing with him an ability to start multiple "Bridges" on a single RPi for an unlimited number of devices. He is actively pursuing the use of a Harmony system with the "Bridge", there currently being a discovery issue (discovery is via uPnP). The Dim command is not working correctly but we both believe it to be an Amazon problem and they have been notified. I am now off to get my Sunday breakfast and read the NY Times. Be back later since I have some code to write.
-
Samba is another way of doing it. With Winscp you don't have to do anything no installs on the Unix box and it just runs. I have Samba on every PC in the house and on the NAS which is a Unix based system. I was going to put it on the RPi's but this was trivial and has a really nice user interface.
-
A few days ago someone turned me on to WINSCP (Google and download it) I am finding it invaluable in dealing with the RPi's I am running. WINSCP allows you to define a session with a Unix device. When you set up the session it will ask for the IP of the device and a userid and password for the device. It will then open a window with two panes. The lift pane will have a windows directory, and the right pane a directory from the Unix (RPi) machine. You are now in the windows world and for the most part do not have to worry about Unix commands. In the beginning I suggest you sign on as Pi with a password of Raspberry assuming you are running a standard build and have not changed the userid and password. If you are comfortable, then redo the session signing on as user root with password root. You can now edit any thing on the target machine using the standard windows text editor, "notepad" or any other you might have set up as the default. BE CAREFUL you can now edit/destroy files you should not touch. You are running as root!
-
The two Echos will know about the same bridges after you do a discovery so they will act identically. In fact if they both hear what you said the command will be sent twice, once from each Echo.
-
I just got stunnel running on my RPi. Appears to be working fine, forwarding my intents/utterances to my skill endpiont running on a PC. I have one question that perhaps a Unix guru can help me with. If I do a ps -ef | grep stunnel in terminal I get 6 replies marked as stunnel as follows: root 2207 1 0 16:36 ? 00:00:00 /usr/bin/stunnel4 /etc/stunnel/stunnel.conf root 2208 1 0 16:36 ? 00:00:00 /usr/bin/stunnel4 /etc/stunnel/stunnel.conf root 2209 1 0 16:36 ? 00:00:00 /usr/bin/stunnel4 /etc/stunnel/stunnel.conf root 2210 1 0 16:36 ? 00:00:00 /usr/bin/stunnel4 /etc/stunnel/stunnel.conf root 2211 1 0 16:36 ? 00:00:00 /usr/bin/stunnel4 /etc/stunnel/stunnel.conf root 2216 1 0 16:36 ? 00:00:00 /usr/bin/stunnel4 /etc/stunnel/stunnel.conf I expected to see just one entry. This seems to imply to me that there are 6 stunnel process running. Can anyone tell me why or where I should look if it is a problem. From what I have researched stunnel just uses threads for efficiency. On Linux based OS's threads get Process ID's so they appears as processes, but they really are just threads of the same process AFAIK
-
The new version of the emulator by bwssystems is a much more concise version of the emulator. That is why it can support 40 devices. I know the echo does a proper uPnP search and that emulator responds properly providing the location as IP:Port. If the Echo obeys the rules getting three emulators running on the RPi should simple. Right now I am trying to get stunnel up and running on the RPi. If I can do that I suspect I will be able to get the stunnel proxy and multiple emulators on the same RPi. Traffic flow should be low so response should not degrade. Hopefully I will have it resolved by the end of this weekend.
-
I am attempting to develop my RPi skills. Eventually I would like to phase out the Win 7 soon to be win 10 servers My real goal is to have all the emulators running on a single RPi if that ends up as possible. I have to look at the addressing variances. AFAIK the Echo should find each emulator using the uPnP search, and retrieve both the IP and the Port from the Notify reply to the search. The question is will the echo use the port address it receives. Right now I am moving my stunnel to an RPi. The emulator I am using max's out at 40 devices AFAIK. I have 37 on one of them.
-
A brief status update: I have three RPi's running the same SD card all with the bridge emulator installed. The only thing different is the host names which I change using raspi-config. All cards start as the Raspbian OS from the NOOBS image at RaspberryPi.org. They then get the emulator and tightvncserver installed. I modify the rc.local file which is run at every boot just before the gui is started to start the emulator and tightvncviewer in the background. The RPi's all run wired with no mouse or keyboard (headless). The same SD card is used in every machine and is a 16Gig image file. I do all my work from my office on a nice development system with very fast drives (15,000 RPM), a high speed 7 core processor and 16gig of RAM. I use WINSCP (Google it) to move files between by RPi's and windows and tightvnc cliient to directly deal with the RPi's. The RPi's are mounted on a wall in my electronics room which has all the HA equipment for the house. This includes three rack mounted servers, and a 21 TB NAS expandable to 44 TB. The electronics room has its own UPS and the house has a standby generator so I get very high up-times measured in years as long as I don't take systems down. The NAS was actually up for 2+ years before I took it down to upgrade the OS. When I say UP I mean no stops for any reason what so ever. Eventually one of the RPi's will get stunnel, the Skills server and the External server. These three items are currently running as "auto start at boot" on a PC that runs 24/7. The Skills server will be the most flexible. The External server is used with the bridge to handle things other than the ISY994 such as my Autelis pool controller and my PC controlled Theater. Anything using the bridge is currently limited to "turn on" and "turn off". Dimming has a bug that I believe is an Echo bug, and not a bridge issue. It seems any spoken brightness level e.g. "Alexa turn on the kitchen lights at XX percent" has Alexa telling the bridge that the desired brightness is either 51 or full on. The emulator has a full configuration system built in as a web server at 8080. I am running 0.4.2 of the emulator. The Skills server currently accepts very limited intents and utterances, as I have been busy getting everything else stabilized. I just need to sit down and develop all the utterances I want the Echo to handle and than write whatever special code I need. In its current state it shows activity messages indicating what was sent from Alexa as an intent which breaks the utterance that was recognized into slots providing a name value pair such as {"room":"'kitchen", "light:"Ceiling"} Essentially the Echo has parsed the phrase that was heard, making life easier for the coder (me). My current Echo configuration is a total of 72 devices. 67 are on the ISY994, 3 are for my pool (SPA, Waterfall, Pool lights), 1 for starting my Home Theater, and one is for testing dimming. I have about 7 groups on the Echo with names such as "Kitchen Area" which I basically use as "turn Off" functions. Responsiveness is quite fast under 2 seconds from when I say something till the action completes and Alexa says "Okay". There are currently 2 Echos in the house.
-
The problem with the dimming function seems to be with the Echo not the bridge. Commands from the echo to the bridge do not reflect what was uttered by the speaker. I understand how the bridge deals with the code. If you turn on all debugging in the bridge then you can see what the bridge gets from the echo and what it sends to the endpoint, the ISY994 in my case. The Bridge is sending what it gets. I will get back to you later on this forum a I am am running late for an appointment. This is what I basically use in my rc.local to turn on full debugging and see what is going on in the bridge: nohup java -jar -Dvera.address=192.168.1.229 -Dupnp.config.address=192.168.1.83 -Dorg.slf4j.simpleLogger.defaultLogLevel=DEBUG /home/pi/echobridge/ha-bridge-0.3.5.jar > /home/pi/echobridge/log.txt 2>&1 & You can do the same and should be able to see what is happening.
-
The author is working on this and has issued several newer versions (he is at 0.4.2) . I suggest you upgrade to see if he has solved the Harmony problem, as I don't have a harmony device. Check his wen site (http://www.bwssystems.com) and check the MiCasaVerde board where a lot of people are trying to get the harmony working with the bridge http://forum.micasaverde.com/index.php?topic=31920.new;topicseen#new. The latest version is at http://www.bwssystems.com/files/ha-bridge-0.4.2.jar Also the information about some new settings is at: https://github.com/bwssystems/ha-bridge I am currently working with the author on dimming for the ISY994 I have it currently working with a small external app running on a 24/7 PC. It handles other things in my house like my pool. I can now say "Alexa, turn on the SPA.
-
Mark-vo, We probably have gone down different paths since my main interest is software and not hardware. When I started I was an electrical engineer with a hardware outlook, but my first job was as a programmer in 1960 so I quickly drifted to the dark side. I live to code. I was one of the test engineers for the original GPS system (circa 1963) installed aboard the SSBN George Washington. That system cost $3,000,000 and was in two large cabinets each one by measuring 2x2x5 in feet not inches. I am very interested in what you have done with RFID tags. I have not had much success with them. Could you follow up via email? I own the domain the-gordons.net and my name is barry so the email address should be obvious.
-
I have started using the new emulator which is referred to as the ha-bridge. It is version 0.4.0. I currently have 3 RPi's running this version of the bridge all in a wired configuration. I have my own configurator which is part of my ISY proxy server which I am still working on. Bridge-1 has 37 devices, Bridge-2 has 30 devices and Bridge-3 has 4 devices for a total of 71. Alexa discovers them all and appears to have no issue dealing with them. Response times are very good, generally under 2 seconds for the action to complete (e.g. a light to turn on). I have two Echos running and even if they both hear the same command there appears to be no issues. I am "discussing" with the Amazon Echo development people the need to be able to know which Echo is talking for an Alexa skill so the skill application on the Echo has an id, and perhaps some day a libido. In that way the simple phrase "turn the lights off" can be made to apply to the room you/Echo is in My configurator handles the bridge in a manner similar to the Mapper application, but allows allows an Alexa command action to be directed to an external controller, i.e. not the ISY 994 by using a Custom URL for off and on which has the IP address of the proxy server application itself. the Proxy server can then act as a proxy for the other controllers. I use this for my Pool controller and my Home Theater. The pool is controlled by an Autelis controller and the Theater by a PC that listens for commands after being woken with a WOL. All of the translation work is done by the proxy server and is for the most part table driven by a JSON description of the external controller and its commands. The final activity on the Proxy server is to handle an "Alexa Skill" which allows for a much more flexible dialog between the speaker and Alexa. This is working in a minimal manner as I have not yet completed the vocabulary of phrases (utterances in Amazon speak) that Alexa will be driven by. Alexa does recognize the limited set I provided and speaks exactly what I tell her to say, not just "Okay". The bridge has a complete configuration system built in as a web server at port 8080. It is very well done and removes the need for any external systems for just dealing with anISY994 If you are not a Linux expert I strongly suggest you google and download a copy of WINSCP. It is an amazingly well crafted tool and is free. It allows for easy file transfers between a linux machine and a windows machine using drag and drop logic with built in editing capability. That is how I loaded the emulator into the RPi's after downloading them to windows. It is a superb piece of work and wish I found it a long time ago. I have built my RPi systems starting with the NOOBS Image from the Raspberry Pi organization. I then selected the Raspian OS. I added the tightvnc server system to the RPi. This provides complete remote control of the Graphical UI that Raspian provides. I have a tightvnc client on my main machine in my office. The RPi's run headless mounted on a wall with a power cable and a LAN connection, no keyboard, no monitor. I was going to install Samba but it is not really needed given WINSCP since I am not using the RPi's as anything but hosts for the Bridge's. To get tightvnc and the bridge to run after every boot, I modified the rc.local file located in /etc. Here is my copy of it: #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. echo "Running the RC.local Bash script" # Print the IP address _IP=$(hostname -I) || true if [ "$_IP" ]; then printf "My IP address is %s\n" "$_IP" fi echo "Starting the Echo Bridge Emulator" nohup java -jar -Dvera.address=192.168.1.229 -Dupnp.config.address=$_IP /home/pi/echobridge/ha-bridge-0.4.0.jar > /home/pi/echobridge/log.txt 2>&1 & echo "Starting the tightvncserver" /etc/init.d/tightvncserver start echo "The RC.local Bash script has completed" exit 0 This file will automatically determine the RPi's IP address no matter how it got it (Static, DHCP, reservation. . .) and use that for the upnp address parameter that the bridge requires. I can freely move the SD cards around between the RPi's and have done so with no issues. It is my intent to make an image of the SD card (it will be a 16 Gig image as that is what I use in all my systems) and will make it available to those who want it via sendspace which is like dropbox. the only thing one might want to do is change the host name and the password. The host name is easy using the raspi-config tool. I don't worry about the passwords as these machines are not reachable from outside my LAN. It is really funny to see peoples expressions when I say "Alexa, turn off the Kitchen lights" or Alexa, turn on the Theater" and things just happening. I wish my wife was still around, she would get a big kick out of it.