Différences
Ci-dessous, les différences entre deux révisions de la page.
projets:poelepelletdomotique [2016/01/29 13:47] – [Neuvième étape - Installation et configuration du logiciel d'enregistrement des mesures de température] jonathan.alibert | projets:poelepelletdomotique [2024/06/18 11:34] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 48: | Ligne 48: | ||
* Pour plus d' | * Pour plus d' | ||
* Pour télécharger les sources, les compiler et installer la bibliothèque : | * Pour télécharger les sources, les compiler et installer la bibliothèque : | ||
+ | <sxh [Bash]> | ||
sudo aptitude install libssl-dev | sudo aptitude install libssl-dev | ||
git clone http:// | git clone http:// | ||
Ligne 54: | Ligne 54: | ||
make | make | ||
sudo make install | sudo make install | ||
+ | </ | ||
* Ensuite, installe le serveur/ | * Ensuite, installe le serveur/ | ||
* Compile DS18B20Manager avec la commande '' | * Compile DS18B20Manager avec la commande '' | ||
Ligne 61: | Ligne 61: | ||
* La dernière phase de cette étape consiste à lancer DS18B20Manager au démarrage du RPI. On peut procéder en rajoutant '' | * La dernière phase de cette étape consiste à lancer DS18B20Manager au démarrage du RPI. On peut procéder en rajoutant '' | ||
* Entre les commandes suivantes : | * Entre les commandes suivantes : | ||
- | + | <sxh [Bash]> | |
sudo cp / | sudo cp / | ||
sudo chmod 0755 / | sudo chmod 0755 / | ||
sudo update-rc.d DS18B20Managerd defaults | sudo update-rc.d DS18B20Managerd defaults | ||
+ | </ | ||
//à faire : fournir le script// | //à faire : fournir le script// | ||
// documenter DS18B20Manager // | // documenter DS18B20Manager // | ||
Ligne 156: | Ligne 156: | ||
* Pour cela nous allons récupérer les sources de Freeboard, et générer le projet comme suit : | * Pour cela nous allons récupérer les sources de Freeboard, et générer le projet comme suit : | ||
+ | <sxh bash; gutter: false> | ||
git clone https:// | git clone https:// | ||
cd freeboard | cd freeboard | ||
Ligne 163: | Ligne 163: | ||
sudo npm install -g grunt-cli | sudo npm install -g grunt-cli | ||
grunt | grunt | ||
+ | </ | ||
* Ensuite, installe un plugin client MQTT pour Freeboard. Pour cela, procède ainsi : | * Ensuite, installe un plugin client MQTT pour Freeboard. Pour cela, procède ainsi : | ||
+ | <sxh bash; gutter: false> | ||
cd plugins/ | cd plugins/ | ||
wget https:// | wget https:// | ||
+ | </ | ||
* Ce plugin nécessite une bibliothèque js, à récupérer et à placer de de la façon suivant : | * Ce plugin nécessite une bibliothèque js, à récupérer et à placer de de la façon suivant : | ||
+ | <sxh bash; gutter: false> | ||
cd ~/ | cd ~/ | ||
wget http:// | wget http:// | ||
+ | </ | ||
* Modifie '' | * Modifie '' | ||
+ | <sxh javascript; gutter: true> | ||
(function() | (function() | ||
{ | { | ||
Ligne 188: | Ligne 188: | ||
"/ | "/ | ||
], | ], | ||
- | | + | </ |
Modifie ''/ | Modifie ''/ | ||
Ligne 198: | Ligne 198: | ||
* Maintenant nous allons installer un serveur web, j'ai choisi nginx car il est très performant sur RPI, libre à toi de tenter d' | * Maintenant nous allons installer un serveur web, j'ai choisi nginx car il est très performant sur RPI, libre à toi de tenter d' | ||
+ | <sxh bash; gutter: false> | ||
sudo aptitude install nginx | sudo aptitude install nginx | ||
- | | + | </ |
Ensuite, nous allons paramétrer le serveur nginx en modifiant ''/ | Ensuite, nous allons paramétrer le serveur nginx en modifiant ''/ | ||
Ligne 213: | Ligne 213: | ||
* Il ne nous reste plus qu'à copier le répertoire '' | * Il ne nous reste plus qu'à copier le répertoire '' | ||
+ | <sxh bash; gutter: false> | ||
sudo cp -r ~/freeboard /var/www | sudo cp -r ~/freeboard /var/www | ||
sudo reboot | sudo reboot | ||
+ | </ | ||
* Il va aussi falloir mettre à jour le broker MQTT afin qu'il supporte les websockets : | * Il va aussi falloir mettre à jour le broker MQTT afin qu'il supporte les websockets : | ||
+ | <sxh bash; gutter: false> | ||
wget http:// | wget http:// | ||
sudo apt-key add mosquitto-repo.gpg.key | sudo apt-key add mosquitto-repo.gpg.key | ||
Ligne 225: | Ligne 225: | ||
sudo aptitude update | sudo aptitude update | ||
sudo aptitude upgrade mosquitto | sudo aptitude upgrade mosquitto | ||
+ | </ | ||
Modifier le fichier de configuration de Mosquitto pour qu'il prenne en charge les websockets : | Modifier le fichier de configuration de Mosquitto pour qu'il prenne en charge les websockets : | ||
Ligne 233: | Ligne 233: | ||
| | ||
Redémarrez le serveur ou le RPI : | Redémarrez le serveur ou le RPI : | ||
+ | <sxh bash; glutter: false> | ||
sudo service mosquitto stop | sudo service mosquitto stop | ||
sudo service mosquitto start | sudo service mosquitto start | ||
+ | </ | ||
+ | * Maintenant nous pouvons créer notre dashboard en utilisant directement le serveur MQTT ! Pratique, et beaucoup plus élégant que la précédente solution. Crée alors le freeboard comme tu le souhaites en utilisant le plugin MQTT pour les Datasources. | ||
+ | |||
+ | Ensuite récupère la configuration json via SAVE FREEBOARD. | ||
- | * Maintenant nous pouvons créer notre dashboard | + | Un fois cela fait, copie '' |
+ | |||
+ | Il y a quand même un gros défaut à cette solution | ||
===== Huitième étape - Installation et configuration du Twitter Bot pour contrôler à distance le poêle ===== | ===== Huitième étape - Installation et configuration du Twitter Bot pour contrôler à distance le poêle ===== | ||
===== Neuvième étape - Installation et configuration du logiciel d' | ===== Neuvième étape - Installation et configuration du logiciel d' | ||
Ligne 245: | Ligne 251: | ||
* Tout d' | * Tout d' | ||
+ | <sxh bash; gutter: | ||
git clone git@github.com: | git clone git@github.com: | ||
+ | </ | ||
* Installer Ruby 2, Ruby Gems, rails 4 et un SGBD : | * Installer Ruby 2, Ruby Gems, rails 4 et un SGBD : | ||
- | + | <sxh bash; gutter: false> | |
- | sudo aptitude install ruby2.1 rubygems rails mysql-server mysql-client libmysqlclient-dev | + | sudo aptitude install ruby2.1 rubygems rails mysql-server mysql-client libmysqlclient-dev |
+ | curl -sSL https:// | ||
+ | source / | ||
+ | rvm install 2.1 | ||
+ | source / | ||
+ | </ | ||
* Paramétre tout ce qui est relatif au serveur mysql : | * Paramétre tout ce qui est relatif au serveur mysql : | ||
- | | + | <sxh bash; gutter: false> |
sudo gem install mysql | sudo gem install mysql | ||
| | ||
cd ~/ | cd ~/ | ||
cp config/ | cp config/ | ||
- | mysql -u root -p | + | mysql -u root -p |
+ | </ | ||
+ | <sxh sql; gutter: false> | ||
CREATE USER ' | CREATE USER ' | ||
GRANT ALL PRIVILEGES ON * . * TO ' | GRANT ALL PRIVILEGES ON * . * TO ' | ||
FLUSH PRIVILEGES; | FLUSH PRIVILEGES; | ||
exit | exit | ||
+ | </ | ||
Modifie config/ | Modifie config/ | ||
+ | <sxh bash; gutter: false> | ||
bundle install | bundle install | ||
- | rake db:create | + | |
rake db: | rake db: | ||
+ | </ | ||
* Lance le serveur : | * Lance le serveur : | ||
+ | <sxh bash; gutter: false> | ||
rails server | rails server | ||
+ | </ | ||
===== Dixième étape - Création d'un tableau de contrôle physique ===== | ===== Dixième étape - Création d'un tableau de contrôle physique ===== | ||
Ligne 325: | Ligne 338: | ||
* Compile les exemples avec '' | * Compile les exemples avec '' | ||
+ | |||
+ | ==== Problème de remplissage de la sdcard ==== | ||
+ | |||
+ | Il arrive que atd plante et remplisse la sdcard via syslog, il suffit d' | ||
--- // | --- // |