Wednesday, 1 March 2017

setup raspberry pi


ftp:
sudo apt-get install -y vsftpd
sudo sed -i 's/#write_enable=YES/write_enable=YES/g' /etc/vsftpd.conf
sudo service vsftpd restart

git:
no need, already installed: sudo apt-get install git
git clone https://rosszfej@bitbucket.org/rosszfej/smarthome.git

install:

cd smarthome/raspberry
sudo chmod +x install
./install
during install enter [mysql-password]

install is different!!!
- java8 !
- mosquitto: sudo apt-get --assume-yes  update is inportant
- sudo sometimes is not enough: sudo su

export /inport mysql database: 
mysqldump -u username -p databasename > filename.sql
mysql -u username -p -h localhost DATA-BASE-NAME < data.sql

mysql setup:
sudo mysql -u root -p
CREATE DATABASE OpenHAB;
CREATE USER 'openhab'@'localhost' IDENTIFIED BY '[mysql-password]';
GRANT ALL PRIVILEGES ON OpenHAB.* TO 'openhab'@'localhost';
quit

Start OpenHab in browser:
select DEMO mode!!!

On paper UI install:
"JDBC Persistence MySQL"
"MySQL Persistence"
"MQQTBinding"
"eBus Binding"
"MQTT Action"

----> Transformations : RegEx Transformation!!!!
----> configuration / system / persitence: JDBC!!!

start oh2 console:
ssh -p 8101 openhab@localhost
pass: habopen

feature:install openhab-transport-serial
feature:list | grep transport-serial

check for passwords:
cd _buda/oh2/services
cat mysql.cfg
cat jdbc.cfg

deploy:
cd
cd smarthome/raspberry
sudo chmod +x deploy
sudo ./deploy _[name]

restart OH2:
sudo systemctl restart openhab2.service

Saturday, 18 February 2017

install openhab on Win10

install openhab2:
- download openhab zip
- download JDK 32 bit
- set JAVA_HOME user variable to c:\Program Files\Java\jdk1.8.0_121 or similar

compile xiaomi binding:
- download Openhab1 addons source openhab1-addons-master.zip
- download xiaomi binding source https://github.com/octa22/org.openhab.binding.xiaomigateway org.openhab.binding.xiaomigateway-master.zip
- download apache-maven-3.3.9-bin.zip (set some JAVA_ROOT )
- modify pom.xml in root: add new modeule
- modify pom.xml in binding: add parent
- mvn clean install

there is a bug in xiaomi binding:

 private Float formatValue(String value) {
        if (value.length() == 4)
            return Float.parseFloat(value.substring(0, 2) + "." + value.substring(2));
else if (value.length() == 3)
   return Float.parseFloat(value.substring(0, 1) + "." + value.substring(2));
else if (value.length() == 2)
   return Float.parseFloat("0." + value);
        else
            return Float.parseFloat(value);
    }

Thursday, 5 January 2017

mqtt names


heater states: OPEN, CLOSED
heater/house 


pump states: OPEN, CLOSED
pump/ground
pump/upstairs


thermostat states: OPEN, CLOSED
thermostat commands: FORCED_ON, FORCED_OFF, RELEASE
thermostat/livingroom
thermostat/guestroom
thermostat/bedroom
thermostat/room1
thermostat/room2
thermostat/room3


valve states: OPEN, CLOSED, OPENING, CLOSING
valve/livingroom
valve/guestroom
valve/bedroom
valve/room1
valve/room2
valve/room3
valve/towel1
valve/towel2


towel_dryer: WARM_UP, PAUSE, COOLING, OPEN, CLOSED
towel_dryer/towel1
towel_dryer/towel2



heating: OPEN, CLOSED
heating/livingroom
heating/guestroom
heating/bedroom
heating/room1
heating/room2
heating/room3
heating/towel1
heating/towel2


--------------------------------------------


shutter states: STOP, UP, DOWN
shutter commands: STOP, UP, DOWN
shutter/livingroom/kitchen
shutter/livingroom/window
shutter/livingroom/big
shutter/livingroom/door
shutter/bedroom/window
shutter/bedroom/door
shutter/bedroom/room1
shutter/bedroom/room2
shutter/bedroom/room3





Monday, 14 November 2016

mqtt in browser

main idea:
http://jpmens.net/2014/07/03/the-mosquitto-mqtt-broker-gets-websockets-support/

how to install:
http://www.xappsoftware.com/wordpress/2015/05/18/six-steps-to-install-mosquitto-1-4-2-with-websockets-on-debian-wheezy/comment-page-1/

https://www.element14.com/community/community/design-challenges/sci-fi-your-pi/blog/2015/06/22/pizzapi-mosquitto-websockets-success-tutorial

libwebsocket:
https://github.com/warmcat/libwebsockets/releases?after=v1.5.1

it does not work for some reason.. :(

node.js:

http://nodered.org/docs/hardware/raspberrypi.html
https://www.npmjs.com/package/mqtt

http://stackoverflow.com/questions/35347724/why-is-mqtt-not-connecting-with-nodejs

additional sites:
http://blog.thingstud.io/getting-started/free-mqtt-brokers-for-thingstudio/
http://blog.thingstud.io/recipes/how-to-make-your-raspberry-pi-the-ultimate-iot-hub/
https://github.com/warmcat/libwebsockets
http://hackaday.com/2016/05/27/minimal-mqtt-control-and-clients/

https://github.com/hexagon5un/mqtt-javascript-demo

http://thisdavej.com/beginners-guide-to-installing-node-js-on-a-raspberry-pi/

webserver:
https://www.raspberrypi.org/documentation/remote-access/web-server/apache.md

MQTT.js:
https://www.npmjs.com/package/mqtt#connect


add passwd to mosquitto:
http://stackoverflow.com/questions/31156817/how-to-set-username-password-mosquitto
http://www.steves-internet-guide.com/mqtt-username-password-example/