Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes 'Tuto Multimédia'.



Plus d’options de recherche

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Bienvenue
    • Nouveau ? Présentez-vous
    • Le bistrot
    • Mon installation domotique
    • Annonces et suggestions
  • La Home Center et ses périphériques
    • La Home Center pour les nuls
    • HC 2 & Lite
    • HC 3
    • Modules Fibaro
    • Modules Z-wave
    • Périphériques et matériels autres
    • Plugins
    • Quick App
    • Multimédia (audio, vidéo ...)
    • Chauffage et Energie
    • Actionneurs & Ouvrants (Portail, volets, piscines, ...)
    • Eclairage
    • Applications Smartphones et Tablettes
  • Autres solutions domotiques
    • Box / Logiciel
    • Modules Nice (433 & 866 MHz)
    • Modules Zigbee
    • GCE Electronics
    • Modules Bluetooth Low Energy
  • Objets connectés
    • Les Assistants Vocaux
    • Netatmo
    • Philips Hue
    • DIY (Do It Yoursel)
  • Sécurité
    • Alarmes
    • Caméras
    • Portiers
    • Serrures
  • Informatique / Réseau
    • Tutoriels
    • Matériels Réseaux
    • Matériels Informatique
    • NAS
    • Virtualisation
  • Les bonnes affaires
    • Sites internet
    • Petites annonces

Rechercher les résultats dans…

Rechercher les résultats qui…


Date de création

  • Début

    Fin


Dernière mise à jour

  • Début

    Fin


Filtrer par nombre de…

Inscription

  • Début

    Fin


Groupe


Jabber


Skype


Ville :


Intéret :


Version

59 résultats trouvés

  1. Voici un VD qui permet d'appeler facilement les fonctions TTS des 3 actuellement disponibles: KAROTZ SONOS (via le VD de @krikroff ) S.A.R.A.H. Avantages: - sans passer par une Variable Globale - Et avec historisation des 10 derniers messages Voir exemple d'utilisation plus bas pour GEA. Exemples pour S.A.R.A.H. et SONOS: Exemple Gea: local TTS_Sarah = {"VirtualDevice", id2["S_A_R_A_H__SAY_IT"], 1} local TTS_Sonos = {"VirtualDevice", id2["SONOS_SAY_IT"], 1} ensuite: {"Label", id2["SONOS_SAY_IT"], "Message", "Bonjour, enclenchement du chauffage du ré de chaussée"},TTS_Sonos, ou {"Label", id2["S_A_R_A_H_SAY_IT"], "Message", "Bonjour, enclenchement du chauffage du ré de chaussée"},TTS_Sarah, Voici la partie config du bouton et le VD générique est attaché ci-dessous. -- Say It Copyright Sébastien Jauquet 2016 -- V 1.0.0 28/09/2016 ------------------------------------------- -- HOW TO USE THIS VD: -- Rename the name of the label (Say It XXXXXX !), NOT the ID !!! -- Rename the name of the VD (XXXXX Say It !) -- Fill Ip Address and port in the VD settings -- Port: usualy 8080 for SARAH and 80 for KAROTZ -- Un-comment one of the three line below depending of the device you want to control local TTS_Device = "sarah" --local TTS_Device = "karotz" --local TTS_Device = "sonos" local id2 = { SONOS_REMOTE = 2124 } -- enter Krikroff sonos VD id ------- NO USER MOD BELOW ------------------------------- local selfId = fibaro:getSelfId() local SARAH_KAROTZ_Ip = fibaro:get(selfId, "IPAddress") local port = fibaro:get(selfId, "TCPPort") function urlencode(s) if (s) then .... blablabla icônes: XXXXXX_Say_It_!.vfib
  2. Dans le cadre de mes recherches au cours du développement du plugin Freebox Player Remote (ça remonte Lol ) et en quête d’une solution efficace ayant pour objectif de déterminer l’état « Allumé » ou « Éteint » du périphérique, j’ai rapidement fait le tour des premières solutions envisageables en utilisant notamment l’API de la Freebox ou bien à l’aide d’un module mesurant la consommation mais au final rien de bien concluant ! J’ai donc commencé à envisager la chose autrement et investiguer plus au niveau du réseau, pour au final trouver mon bonheur. En effet, le Freeplayer implémente plusieurs protocoles réseau dont l’ UPnP (Universal Plug and Play) comme beaucoup de diffuseurs du marché d’ailleurs et une des particularités intéressante avec l’ UPnP est la découverte de services qui permet de s’affranchir de toute configuration fastidieuse pour les faire communiquer les uns avec les autres. Le protocole de découverte est basé sur SSDP et cela tombe très bien, j’ai déjà joué avec dans le passé… Le SSDP, c’est quoi ? S.S.D.P pour Simple Service Discovery Protocol, est un protocole de communication donnant la possibilité aux clients de découvrir des services disponibles sur le réseau. Pour cela il utilise UDP (User Datagram Protocol) sur le port 1900. Il ne reste plus qu’à trouver le port utilisé par le Freeplayer ainsi que l’adresse sur laquelle il diffuse les informations sur ses services. J’ai pour cela utilisé une petite application console réalisée quelques mois avant dans le cadre d’un autre projet afin de mettre en Å“uvre le SSDP mais il existe des outils UPnP pour Windows et Linux permettant d’arriver aux mêmes résultats. Aperçu d’une découverte du réseau… En réponse aux paquets envoyés, le Freeplayer diffuse donc son adresse d’accès aux services device.xml sur le port 54243. Cette url d’accès aux services est disponible uniquement lorsque le FreePlayer est sous tension et allumé mais pas lorsqu’il est éteint complétement ou en veille, voilà la solution ! Pour information, voici le contenu du fichier de description : Mais dans notre cas le contenu du fichier ne sera pas utile... Il ne reste plus qu’à mettre à profit tout ceci dans un script et le tour est joué Exemple d’utilisation en LUA dans une scène: local httpClient = net.HTTPClient(); httpClient:request('http://192.168.1.110:54243/device.xml', { success = function(result) local status = tonumber(result.status) if (status ~= 200) then print('Status: OFF or In Standby Mode') elseif (status == 200) then print('Status: ON') end end, error = function(err) print('Connection refused') end, options = { method = 'GET', headers = { ['Accept'] = 'text/html, application/xhtml+xml', ['Accept-Language'] = 'fr-FR' } } }); Exemple d’utilisation en LUA dans un Virtual Device: local HC2 = Net.FHttp('192.168.1.110', 54243); local result, status, errorCode = HC2:GET("/device.xml"); if errorCode == 0 then if tonumber(status) == 200 then fibaro:debug('Status: ON') else fibaro:debug('Status: OFF or In Standby Mode') end else fibaro:debug('Connection refused') end Maintenant c'est à vous de jouer pour l’intégrer dans vos scénarios
  3. Lazer

    Onduleur Eaton

    Remplacer le ventilateur d'origine bruyant d'un onduleur Eaton 5P par un Noctua silencieux Replace Eaton UPS noisy fan by silent Noctua Note : je suis finalement repassé sur le ventilateur d'origine et j'ai déplacé l'onduleur dans un lieu plus frais, et où il peut faire autant de bruit qu'il veut. Il faut un tournevis Torx (taille T10 de mémoire) pour retirer les vis, ainsi qu'un Cruciforme. Sur la façade arrière, il faut enlever les vis entourées en rouge sur la photo ci-dessous : Le petit ventilateur bruyant est bien visible (entouré en bleu). Il faudra enlever les 2 vis qui le maintiennent. A l'avant, il faut retirer le capot de protection plastique, déconnecter les batteries et les sortir, et dévisser les 3 vis dont seule 1 est visible sur la photo : Voici le ventilateur d'origine : Il s'agit d'un SUNON MagLev MB40201V2-000C-G99 : Tension : 12 V DC Vitesse de rotation : 6200 RPM Débit d'air : 13,2 m³/h = 7.7 CFM Niveau sonore : 21 dBA Dimensions : 40mm x 40mm x 20mm On va le remplacer par un Noctua NF-A4x10 FLX trouvable sur Amazon.fr : Tension : 12 V DC Vitesse de rotation : 4500 RPM Débit d'air : 8,2 m³/h = 4.8 CFM Niveau sonore : 17,9 dBA Dimensions : 40mm x 40mm x 10mm Le package du Noctua est complet : Cote à cote : L'inconvénient est que le connecteur utilisé par le ventilateur d'origine est propriétaire, et n'est pas standard dans le monde du ventilateur pour PC : Il s'agit d'un connecteur JST de type XH. Il faut donc acheter un lot de 10 connecteurs JST XH 3 Poles sur Amazon.fr : Malheureusement, comme on le voit sur les photos précédentes, le brochage est différent, puisque les fils noir et jaune sont inversés. Afin de réaliser un câblage propre, on éjecte les 2 connecteurs jaunes et noirs en appuyant avec une pointe fine, et en tirant délicatement le fil : Pour info, détail du connecteur : Noctua a eu la bonne idée de fournir un connecteur universel permettant de connecter un connecteur propriétaire à l'autre bout. Malheureusement, ce connecteur n'a que 2 fils, et il manque le 3ème fil (jaune) dont nous avons absolument besoin pour la mesure de la vitesse de rotation (sans cela, l'onduleur se met en erreur car il considère le ventilateur comme étant HS) : Donc on n'utilisera pas cet adaptateur, et à la place, on coupe la rallonge fournie par Noctua en plein milieu, qui elle dispose bien des 3 fils, et on y connecte notre connecteur JST XH à l'aide des Scotchlocks fournis : On connecte maintenant le nouveau câble sur la carte mère à la place de l'original : Et on fixe le ventilateur Noctua à l'aide des amortisseurs fournis, qui seront plus silencieux que de simples vis : Et voilà c'est terminé, l'onduleur fonctionne sans souci. Reste à voir sur la durée si il ne chauffe pas trop. L'onduleur n'est pas totalement silencieux, mais il devient ainsi très discret, rien à voir avec la turbine initiale.
  4. Bonsoir, Je possède un HP MicroServer Gen8 sur lequel j'ai installé DSM5. Je souhaitais obtenir l'état des capteurs renvoyés par la carte iLO4 (c'est accessible seulement en HTTPS donc seulement depuis une scène et pas un VD). Cela permet aussi de faire des actions comme l'arrêt, démarrage, reboot du MicroServer. J'ai trouvé les infos dans la documentation HP RESTful API Data Model Reference for iLO 4. Si cela intéresse quelqu'un j'ai crée un mini VD et une scène pour interroger l'API HTTPS. Voici un exemple de valeurs retournées : [DEBUG] 00:20:37: ## Thermal ## [DEBUG] 00:20:37: Ambient: 23°C [DEBUG] 00:20:37: CPU: 40°C [DEBUG] 00:20:37: System: 58°C [DEBUG] 00:20:37: ## ProLiant MicroServer Gen8 ## [DEBUG] 00:20:37: PowerState: On Pour cela il faut créer une scène LUA avec le contenu du fichier joint (Scene-HP_iLO_v0.1.lua) et lui renseigner le hash des identifiants, login:pass encodé en Base64 (utilisateur et mot de passe récupéré avec POSTMAN comme dans le tuto github dans le lien) Ensuite, importer le VD contenu du fichier joint HP_iLO-0.1.vfib et lancer le. Il va créer automatiquement les variables. Il faut lancer la scène manuellement pour le moment mais vous pouvez améliorer le code et me faire part de vos modifications. Scene-HP_iLO_v0.1.lua HP_iLO-0.1.vfib
  5. Salut tout le monde, Tout est dans le titre, quelqu'un a deja fait un VD pour la Freebox Player ? Je ne parle pas evidemment du plugin de Krikroff, mais bien d'un VD ;-) Me connaissant, si je mets un plugin tiers, je vais oublier de l'enlever avant de faire une MAJ et après chaque MAJ faut remettre le plugin lol
  6. Je viens de tomber sur ce site alors que google translate me jouait encore des tours (limitation avec demande de captcha). http://www.voicerss.org. Il y a une API et plein de doc. Je me suis inscrit mais ce n'est pas vraiment utile pour l'utilisation que je veux en faire : générer des fichiers MP3 pour le diffuser sur mes squeezebox (ou sur tout autre système audio Sonos en tête) En version gratuite on a droit à 350 générations de TTS par jour avec l'API. Ca devrait nous suffire pour le moment. Mais je ne sais pas si le fait d'utiliser une commande http rentre dans cette limitation de l'utilisation avec l'API (à tester donc). On peut jouer sur différents paramètres : voir la doc ici (http://www.voicerss.org/api/documentation.aspx) la langue (canada) : hl=fr-ca -> si omis c'est en anglais le codec (mp3, WAV,AAC ...) : c=AAC -> si omis le mp3 est par défaut l'échantillonnage : f=16khz_16bit_stereo -> si omis, c'est 8 kHz, 8 Bit, Mono par défaut Exemple qui annonce "ouverture du portail" en français au format AAC en 16Khz : http://www.voicerss.org/controls/speech.ashx?hl=fr-fr&c=aac&f=16khz_16bit_stereo&src=Ouverture%20du%20portail Voici un exemple de code qui utilise voiceRSS (ça se passe ligne 99 pour le lien vers VoiceRSS). Ce code peut être placé dans un bouton d'un virtual device. On pourra l'appeler au moment de se coucher ou de fermer la maison. Le code vérifie l'état des portes et annonce en TTS sur un squeezebox qu'"elles sont toutes fermées" ou que l'une ou plusieurs sont ouvertes en les nommant. L'intérêt de la TTS c'est que le code est dynamique et qu'il fabrique la phrase en fonction de la situation : "Toutes les portes sont fermées" "Attention la porte d'entrée me semble ouverte". "Attention il y a X portes ouvertes. Celle de la XX, et de YY, et du ZZ." -> "Attention il y a 3 portes ouvertes. Celle de la cuisine, et de l'entrée, et du portail." NB : pour que la synthèse vocale soit agréable à écouter il faut parfois jouer sur l'orthographe. Exemple : "Attention a la porteu d'entrai elle me semble ouverte ." Je n'ai pas tout vérifié avec voiceRSS mais c'était le cas avec google. J'avoue que la TTS de google est un peu plus naturelle et agréable à entendre. Mais au moins cette solution fonctionne gratuitement 350 fois par jour ! -- Adresse IP du Logitech Media Server local ipadd = "192.168.0.46" -- le port du serveur local portno = 9090 -- L'adresse MAC de la squeeze local player = "00:xx:xx:29:xx:3e " local playername = "SqueezeBox " -- réglage du niveau sonore local NiveauSo = 35 local notification = "" local NombrePorte = 0 -- 32 Garage if tonumber(fibaro:getValue(305, "value")) > 0 then NombrePorte = NombrePorte + 1 if NombrePorte > 1 then notification = notification.." et du garage ." else notification = notification.." du garage ." end end -- 34 Chambre bas if tonumber(fibaro:getValue(307, "value")) > 0 then NombrePorte = NombrePorte + 1 if NombrePorte > 1 then notification = notification.." et de la chambre du bas ." else notification = notification.." de la chambre du bas ." end end -- 38 Entrée principale if tonumber(fibaro:getValue(313, "value")) > 0 then NombrePorte = NombrePorte + 1 if NombrePorte > 1 then notification = notification.." et de lentrer ." else notification = notification.." de lentrer ." end end -- 39 cuisine du bas if tonumber(fibaro:getValue(330, "value")) > 0 then NombrePorte = NombrePorte + 1 if NombrePorte > 1 then notification = notification.." et de la cuisine du bas ." else notification = notification.." de la cuisine du bas ." end end -- 45 portail if tonumber(fibaro:getValue(45, "value")) > 0 then NombrePorte = NombrePorte + 1 if NombrePorte > 1 then notification = notification.." et du portail ." else notification = notification.." du portail ." end end -- Si il n'y a pas de porte ouverte : if NombrePorte == 0 then notification = "Toutes les porte sont fermer." end -- Si il n'y a qu'un porte ouverte : if NombrePorte == 1 then notification = "Attention a la porteu "..notification.." elle me semble ouverte ." end -- Si on a plusieurs portes ouvertes : if NombrePorte > 1 then notification = "Attention il y a "..NombrePorte.." porte ouverte . Celle "..notification end -- Allumage de la squeezebox local cmnd = "Power 1 " local stringtosend = player .. cmnd .. string.char(10) tcpSocket = Net.FTcpSocket(ipadd, portno) tcpSocket:setReadTimeout(2*1000) bytes, errorCode = tcpSocket:write(stringtosend) -- On règle le volume sonore ici 35 local cmnd = "mixer volume " .. NiveauSo .. " " local stringtosend = player .. cmnd .. string.char(10) tcpSocket = Net.FTcpSocket(ipadd, portno) tcpSocket:setReadTimeout(2*1000) bytes, errorCode = tcpSocket:write(stringtosend) -- On envoie le message local notification = string.gsub((notification)," ", "%%20"); --on remplace les espaces par %20 fibaro:debug(notification) local cmnd = "playlist play http://www.voicerss.org/controls/speech.ashx?hl=fr-fr&src=" .. notification; local stringtosend = player .. cmnd .. string.char(10) tcpSocket = Net.FTcpSocket(ipadd, portno) tcpSocket:setReadTimeout(2*1000) bytes, errorCode = tcpSocket:write(stringtosend) -- OFF de la squeezeBox après 10 secondes fibaro:sleep(10*1000) local cmnd = "power 0 " local stringtosend = player .. cmnd .. string.char(10) tcpSocket = Net.FTcpSocket(ipadd, portno) tcpSocket:setReadTimeout(2*1000) bytes, errorCode = tcpSocket:write(stringtosend) Amusez-vous bien
  7. jojo

    Hc2 Monitoring

    Je vous ai proposé il y a peu un monitoring de votre Synology depuis la HC2 (http://www.domotique-fibaro.fr/index.php/topic/5682-synology-monitoring/) Je vous propose maintenant le contraire : monitorer votre HC2 depuis votre Synology. L'idée vient du fait que mon HC2 fonctionnait très bien, mais qu'il y avait un problème au câble réseau ... Pour le ping, un tout grand merci à Lazer, sans qui je n'y serais jamais arrivé. Pour la notification si la box est en erreur 503, merci à CaptainIgloo et samhuin pour cette partie de script. Pour la notification par mail depuis le synology, voici où je me suis inspiré : http://forum.synology.com/enu/viewtopic.php?f=32&t=79334 Fonctionnalités Ping de la box HC2/L depuis le Synology Vérification si pas de code erreur 503 Si erreur notification dans le Syno et envoie d'un mail Le script : IP=192.168.xxx.xxx TO="adresse.mail@a.notifier" HOST=$(/bin/hostname) /bin/ping -c 1 -w 10 ${IP} if [ $? -ne 0 ] then SUBJECT="HC2/L Ping error" BODY="La box HC2/L (${IP}) ne ping plus (test toutes les minutes).\n\nSynology DiskStation\n\nFrom ${HOST}" HEADERS="From: ${TO}" NOTIF="${SUBJECT} - ${IP}" /usr/bin/php -r "mail(\"${TO}\", \"${SUBJECT}\", \"${BODY}\", \"${HEADERS}\");" /usr/syno/bin/synodsmnotify "@administrators" "System Event" "${NOTIF}" fi URL="http://$IP/api/loginStatus" coderetour=`curl -I $URL 2>/dev/null | head -n 1 | cut -d' ' -f2` if [ "$coderetour" == "503" ] then echo "Code retour 503" SUBJECT="HC2/L 503 error" BODY="La box HC2/L (${IP}) retourne un code erreur 503. Evaluer si un redémarrage de la box est nécessaire.\n\nSynology DiskStation\n\nFrom ${HOST}" HEADERS="From: ${TO}" NOTIF="${SUBJECT} - ${IP}" /usr/bin/php -r "mail(\"${TO}\", \"${SUBJECT}\", \"${BODY}\", \"${HEADERS}\");" /usr/syno/bin/synodsmnotify "@administrators" "System Event" "${NOTIF}" # curl http://$IPHC/services/finishUpgradeAfterError.php else echo "Le code retour est " $coderetour fi Configuration du Synology : Si ce n'est pas fait, il faut configurer le Syno pour qu'il puisse envoyer des mails : Panneau de configuration -> Notifications Panneau de configuration -> Planificateur de tâches Créer -> Script défini par l'utilisateur Dans le champ "Script défini par l'utilisateur", coller le script ci-dessus (en mettant l'IP de la box et votre adresse mail dans les champ IP et TO Le champ "Utilisateur" doit être root (sinon le ping retourne une erreur, même si ping ok) Dans l'onglet" Programmer", planifier la fréquence d'exécution du script Préciser l'heure de dernière exécution à 23:59, car par défaut c'est 00:59. Pour vérifier que tout fonctionne bien, mettez une adresse IP non existante. Bonus : Dans le même ordre d'idée, j'ai fait un petit scrip "Keep Alive", pour vérifier une fois par jour que les mails, etc s'envoient correctement depuis mon Syno. Comme l'IP que je renseigne est celle du Syno, s'il m'envoie un mail comme quoi le Syno ne ping plus, c'est qui il a un autre problème. IP=192.168.xxx.xxx TO="adresse.mail@a.notifier" HOST=$(/bin/hostname) /bin/ping -c 1 -w 1 ${IP} if [ $? -ne 0 ] then SUBJECT="Keep alive error from ${HOST}" BODY="${IP} ne ping plus" HEADERS="From: ${TO}" /usr/bin/php -r "mail(\"${TO}\", \"${SUBJECT}\", \"${BODY}\", \"${HEADERS}\");" /usr/syno/bin/synodsmnotify "@administrators" "System Event" "${BODY}" else SUBJECT="Keep alive from ${HOST} ok" BODY="${IP} ping ok" HEADERS="From: ${TO}" /usr/bin/php -r "mail(\"${TO}\", \"${SUBJECT}\", \"${BODY}\", \"${HEADERS}\");" /usr/syno/bin/synodsmnotify "@administrators" "System Event" "${BODY}" fi
  8. Bonjour, Je vous propose un petit tutoriel qui m’a permis de pouvoir contourner un problème qui m’ennuyais profondément… Comment allumer ma TV connectée Samsung en veille de manière fiable et économique depuis ma HC2 ? En effet, je dispose d’une TV Samsung modèle UE55D8000 qui a l’avantage comme la plupart des TV connectées de disposer d’une API de pilotage en IP afin de pouvoir la télécommander depuis un smartphone ou autre. Un plugin Fibaro permet d’ailleurs de piloter une TV Samsung. Oui mais voilà , car il y a toujours un Mais… En IP, on peut contrôler la quasi totalité des fonctions de la TV à l’exception d’une, la fonction ON. Pourquoi ? Et bien tout simplement car Samsung a choisi de faire en sorte que la TV, en veille n’a plus de stack IP active et n’est donc plus à l’écoute des requêtes de commandes qui se solderons par un Timeout. Peut-être que depuis ceci a évolué et que les nouveaux modèles sont maintenant à l'écoute même en veille mais ce n'est pas le cas de mon modèle. Le seul point positif à tout ça, c’est que la consommation de la TV en veille est nulle. C’est déjà ça mais avec une prise commandée on aurait pu contourner cela pour économiser de l’énergie la nuit par exemple. Si j’avais une FreeBox Revolution, le problème ne se poserait pas puisque cette dernière est compatible HDMI-CEC et qu’on peut la paramétrer pour que la mise en route de la FreeBox allume la TV. Malheureusement, la LiveBox Play que j’ai la "chance" de posséder ne gère pas les commandes HDMI-CEC, ce qui m’a par ailleurs amené à rédiger un autre tuto permettant de mieux la dompter : TV Commande LiveBox Play Bref, partant de là , j’ai étudié les différentes solutions qui s’offraient à moi : 1) Utiliser un boitier Infrarouge pilotable en IP : je ne suis pas trop fan de cela car il devra être posé dans mon salon à un endroit visible, nécessitant une alimentation, le tout pour un usage unique sachant que je contrôle tous mes autres équipements par radio ou IP. Bof... 2) Utiliser un boitier spécifique contrôlable en IP et disposant de sorties HDMI CEC ou RS232. En cherchant bien, il existe des boitier spécialisés qui proposent ce type de fonctions mais cela rester onéreux pour simplement allumer une TV 3) Utiliser mon RPI qui lui est déjà dans mon meuble TV raccordé à mon ampli avec kodi. C’est naturellement cette 3ième option que j’ai choisi de mettre en oeuvre non seulement pour le côté pratique et aussi pour économique car dans mon cas, cela n’a nécessité aucun investissement Prérequis : - Un RPI1 ou RPI2 (j’ai fait le test avec les 2 et ça fonctionne) - Quelques notions système unix pour savoir installer une distribution et exécuter les commandes qui vont bien Principe : 1) le RPI est raccordé en HDMI à la TV ou à l’ampli si vous en avez un, peu importe. 2) le RPI dispose d’une adresse IP fixe sur votre réseau (réservation d’IP sur votre routeur) 3) une commande standard HDMI-CEC va nous permettre de donner un ordre d’allumage à destination de la TV. On utilise pour cela la lib-cec 4) pour exécuter cette commande depuis la HC2, ce qui est la principale difficulté, je vous propose une petite API PHP que j’ai écrite Je vais donc dans ce tuto vous donner les clés pour configurer votre RPI correctement et vous fournir le code de l’API de contrôle PHP. En bonus, j’ai ajouté à cette API 2 fonctions pratiques qui vont vous permettre d’éteindre ou de rebooter proprement votre RPI depuis la HC2. Etapes à suivre : 1) Installez une distribution linux sur votre RPI1 ou 2 (Raspbian pour faire simple) 2) Installez la lib-cec en suivant un tuto comme celui-ci : https://github.com/Pulse-Eight/libcec/issues/84 Vous pouvez-vérifier que votre installation est correcte en testant les commandes suivantes : echo "on 0" | cec-client -s echo "standby 0" | cec-client -s Vous aurez compris que la première doit allumer la TV et la seconde l'éteindre. 3) Installez apache et php en suivant ce tuto : https://www.raspberrypi.org/documentation/remote-access/web-server/apache.md Une fois que vous avez installé tout ça et que tout tourne correctement, voici ce qu’il vous reste à faire. 4) régler des petits problèmes de droits qui vont permettre au serveur apache du RPI d’exécuter des commandes CEC. Pour cela, exécutez ces 3 commandes: sudo chmod 777 /var/www sudo chmod 777 /dev/vchiq sudo usermod -G video -a www-data 5) Maintenant, nous allons donner à apache le privilège de pouvoir exécuter des commandes en tant que root mais sans mot de passe. Ce n’est pas recommandé en terme de sécurité sur un serveur web à risque mais dans notre cas, cela ne pose pas de problème. Pour cela, saisissez la commande sudo visudo Puis éditer le fichier pour ajouter les lignes suivantes en bleu ci-dessous # User privilege specification root ALL=(ALL:ALL) ALL www-data ALL=(ALL) NOPASSWD:/usr/local/bin/cec-client www-data ALL=(ALL) NOPASSWD:/bin/echo www-data ALL=(ALL) NOPASSWD:/sbin/shutdown 6) Dernière petite manipulation et après s’en est fini pour les commandes. Par défaut, lorsque votre RPI va démarrer, il va exécuter une commande HDMI-CEC d’allumage de la TV durant sa phase de boot. Ce n’est pas pour notre cas d’usage le comportement souhaité. Imaginez un coupure de courant en votre absence. La TV s’allumerait automatiquement au re-démarrage… si comme moi vous avez automatisé l’allumage de l’ampli, box TV etc… cela peut vite devenir ennuyeux… Voici ce qu’il faut faire pour éviter cela. Exécutez la commande suivante qui permet d’éditer la configuration de démarrage de votre RPI : sudo nano /boot/config.txt Vous allez normalement trouver la ligne suivante hdmi_ignore_cec_init=1 à dé-commenter en retirant le # en début de ligne. Sinon, ajoutez là au fichier et enregistrez le. 7) Installation de l’API PHP Nous allons ici déployer sur le serveur apache de votre RPI des fichiers PHP qui vont nous permettre d’exécuter à distance les commandes CEC ou autre. Pour cela : - allez dans /var/www et créez un répertoire à nommer selon votre convenance « cec » par exemple - copiez dans ce répertoire les fichiers php fournis ci-dessous tv_on.php tv_off.php shutdown.php reboot.php 8) Tests : le moment de vérité. Bon maintenant on va voir si tout a bien été installé et configuré… Sur votre ordinateur, ouvrez un navigateur et testez l’URL suivante, TV éteinte : http://<ip-de-mon-RPI>/cec/tv_on.php Normalement, votre TV doit s’allumer. Si ce n’est pas le cas, ne paniquez pas, il doit y avoir un erreur à récupérer quelque part pour comprendre ce qui ne va pas. 9) Intégration sur la HC2 (ou HCL) : vous l’avez compris, maintenant que cela fonctionne rien de plus simple que d’exécuter un GET comme ceci par exemple pour allumer la TV depuis la HC2 RPI = Net.FHttp("<ip-de-mon-RPI>", 80) response = RPI:GET("/cec/tv_on.php") fibaro:debug(response) A titre d’illustration, je vous joint un Virtual Device et ses icônes, personnalisé à mes besoins qui me permet de gérer la mise en route/veille de l’ensemble des équipements situés dans mon meuble TV. Télévision.vfib Et les icônes correspondant à ma TV Samsung J'espère que ce tuto vous rendra service. En ce qui me concerne, il tourne depuis environ 10 mois sans aucun plantage et me permet d'allumer la TV automatiquement le soir lorsque mon épouse rentre à la maison ou dès que quelqu'un allume la LiveBox.
  9. erwan

    Synology Dsaudio

    Salut à tous, Un petit mot pour vous dire que je suis entrain de préparer un module virtuel pour piloter l'application DSAudio depuis la HC2 J'y vois comme intéret de pouvoir lancer de la musique sur mon ampli DLNA depuis l'appui d'un simple bouton Zwave installé dans mon salon. J'ai un prototype en bash qui marche, je suis entrain de le porter en LUA pour l'intégrer sur la HC2. Y'a des gens intéressés pour tester quand j'aurai une beta ? Vous aviez déjà une autre solution, moi j'ai rien trouvé pour la HC2 Voili, Erwan
  10. EDIT : développé pour DSM 5.x. Ne fonctionne PAS avec DSM 6.x Voici un module virtuel qui va permettre de contrôler les paramètres principaux de votre Synology. Ce module virtuel regroupe plusieurs codes repris sur le forum : Ping d'un device par Krikroff : http://www.domotique-fibaro.fr/index.php/topic/109-ping-dun-équipement-réseau/ WOL par Krikroff : http://www.domotique-fibaro.fr/index.php/topic/107-wake-on-lan-wol-démarrer-son-ordinateur-à -distance/ Reboot & shutdown par fdp2 et Lazer : http://www.domotique-fibaro.fr/index.php/topic/3425-arreter-ou-rebooter-votre-synology-avec-la-hc2/ Merci à eux ainsi qu'à mprinfo pour l'idée originale et à Did pour les icônes Fonctionnalités Vérifie toutes les 10 seconde (paramétrable) si le Syno est up ou down (ping) Possibilité de commander un reboot ou un arrêt (shutdown) du Synology. Ces deux actions sont protégées pas un double click à faire dans les 2 secondes (merci encore à Steven pour ce bout de code) Possibilité de faire un Wake On Lan (il faut fournir la MAC adresse du Synology) Une notification est envoyée aux smarphones définis dans la table "pushID". La variable "Syno_Status" (créée automatiquement) est mise à jour avec l'information du Label Status. Ainsi vous pouvez réutiliser cette information dans GEA, ou d'autres scènes ou VD. Il est possible également de surveiller des Synology ne se trouvant pas dans le même réseau que la HC2 Installation Le fichier .zip joint contient le VD et les icônes. Importer le VD Remplir le champ "IP Adresse :" avec l'IP du Syno (ou sont DNS externe) Remplir le champ "TCP Port :" avec le port du Syno (par défaut 5000) Charger toutes les icônes dans la HC2. Assigner l'icône blanche (Synology.png) comme icône par défaut du VD Assigner les icônes reboot, shutdown et WOL aux boutons reboot, shutdown et Wake On Lan respectivement Table "pushID" (dans la main loop et tous les boutons) : laisser 0 pour ne pas recevoir de notification, ou mettre l'ID du ou des devices devant recevoir un message push (trouvez leur ID à l'aide du toolkit de Krikroff) Dans les boutons "reboot" et "shutdown", remplir les champs login et password avec les crédential d'un utilisateur avec les droits admin sur le Synology. Dans le bouton Wake On Lan, remplir le champ "MacAdresse" avec la MacAdresse du Synology. Dans le mainloop renseigner également les id des icônes Synology.On et Synology.Off dans les champs "okIcon" et "nokIcon" (pour trouver ces id : http://www.domotique-fibaro.fr/index.php/topic/3880-r%C3%A9cup%C3%A9rer-lid-dune-ic%C3%B4ne/) Evolutions envisagées Je pense déjà aux évolutions à apporter à ce VD. Pour cela j'ai besoin : De vos idées De votre aide pour exploiter l'API du Synology (http://www.nas-forum.com/forum/topic/46256-script-web-api-synology/) (je ne suis PAS dévelopeur) Idées déjà à l'étude : Récupération automatique de la MacAdresse sur base de l'IP Température du Syno La v2.41 permet de paramétrer le vitesse du double click (spécial mprinfo ) Les icônes sont toujours dans le fichier zip original. Synology_Monitoring_v2.41.vfib Synology_Monitoring_v2.4.zip
  11. Bonjour, Je me suis lancé le défi de rendre z-wave un pluviomètre Oregon PCR800. En effet, l'offre de pluviomètre compatible nativement avec la HC2, ou plus particulièrement la HCL, ne cours pas les rues. Je n'ai repéré que deux pluviomètre "compatible" : Netatmo en wifi : tout le monde le connait mais pour ne faire que pluviomètre, ça fait très cher ! Hydreon RG-11 : un capteur de pluie optique qui doit être associé à un Fibaro FGS pour "compter" la pluie qui tombe. Ce capteur doit être alimenté en 12/24V et bien sur le FGS doit également être alimenté. Comme je suis un peu fainéant, je ne choisirai pas cette solution non plus (trop de câble à passer) Vous me direz aussi : tu prends un raspberry, Jeedom (ou autre) avec le récepteur RF433 et hop avec ton Oregon tu auras ton pluvio ! Oui mais non, Cela fait toujours trop cher et sa multiplie les plateformes. Du coup, je me suis tourné vers du "fait le toi-même". En fait, je connaissais les stations météo Oregon et Lacrosse depuis longtemps et j'avais vu que c'était plutôt basique à l'intérieur. Un système de balance avec deux béchers et un aimant au milieu avec, en face, un interrupteur à lames souples (similaire au Fibaro FGK d'ailleurs). De plus, j'ai une formation électronique à la base... donc quand même ! Ma première approche a été de me dire que j'allais utiliser l'entrée binaire du Fibaro FGK pour récupérer les infos de l'Oregon. J'ai donc cherché avec le multimètre l'endroit où je pourrai récupérer les infos de basculement des réservoirs. Sans succès ! En effet, il y un vernis sur toute la carte qui empêche toutes mesures (et protège de l'eau par la même occasion). J'ai donc soudé deux fils directement sur ILS pour avoir son état… à‡a marche ! Du moins au multimètre… Car une fois connecté au FGK, il ne voit rien du tout. Je ne sais pas pourquoi. Enfin je ne sais plus pourquoi (je suis censé le savoir à la base ). De là , je vois que j'ai démonté tout mon pluvio, la carte, le compartiment de pile, la bascule… Je me rends compte que la solution est là ! Toute conne ! Il suffit que j'utilise le FGK directement avec un aimant sur la bascule. Gros coup de chance, le FGK passe couché dans le pluvio à la hauteur de la bascule (il y a des petits ergots dans le support qui l'empêche de descendre). Voici les ergots J'ai quand même mis le FGK dans une petite pochette histoire qu'il soit protégé de l'humidité. J'ai récupéré des aimants de reste que j'avais acheté pour ma baie et hop après quelques essais voilà le travail ! Comme vous pouvez voir sur la photo ci-dessus, le FGK repose sur les ergots et je le tiens pour ne pas qu'il tombe. Il restera en place en replaçant le couvercle (ça passe pile poil). à‡a permet de ne pas utiliser de colle. Bien sà»r, il ne faudra peut être pas le secouer après ! Tadaaaa ! Du coup, j'ai inclus le FGK à ma HCL et j'ai maintenant un pluviomètre dans mon interface (merci la galerie d'icône de notre cher forum) ! A partir de là , je vais laisser le soin au possesseur de HC2 de faire des choses bien chiadées car moi avec la HCL je ne peux pas faire grand-chose. Avant ce pluviomètre et depuis trois ans, je remplissais un fichier excel à la main avec les données de mon pluviomètre manuel. Maintenant, j'ai une scène qui m'envoie par mail chaque basculement (correspondant à 1 mm) et je n'ai plus qu'à reporter cette quantité dans mon fichier. Par exemple, s'il tombe 11mm, j'ai 11 mails (ne vous inquiétez pas, j'ai fait un filtre dans ma boite mail, je me suis pas spamé !). Après les orages de ces derniers jours, la résolution donnée de 1 mm par bascule à l'air correcte en comparaison de la quantité que j'obtiens dans le pluvio manuel. Voilà , c'est une solution "alternative" aux pluviomètres du marché. Personnellement j'en suis content !
  12. Depuis cette super mise a jour Beta, nos HC2 sont désormais capable de contrôler les activités du Hub Harmony grace au plugin Logitech. L’inconvénient du plugin est qu'il créer de multiple device. 2 globaux, et un pour chaque activités. Donc pour d'avantage d'ergonomie j'ai créer un petit module virtuel sans prétention qui pilote les "vrai" module qui eux sont masqués : Le module virtuel permet donc - De connaitre l'activité en-cours, - De lancer une activité - D'éteindre tous les équipements Voici donc le VD : Harmony.vfib Et l'icone qui va bien :
  13. HARD DISK, Raid Logiciel, Raid Matériel, SHR, RaidZFS By Lazer, Kiwi et wikipedia.org Pour les discussions sur DSM, Xpenology, Synology, etc, je préfèrerais que vous utilisiez le topic dédié avec le tuto de Fredo => Nas Synology Dsm 5 Sur Serveur Hp N54L + Vmware Esxi 5.5 Introduction : https://fr.wikipedia.org En informatique, le mot RAID désigne les techniques permettant de répartir des données sur plusieurs disques durs afin d'améliorer soit les performances, soit la sécurité ou la tolérance aux pannes de l'ensemble du ou des systèmes. L'acronyme RAID a été défini en 1987 par l'Université de Berkeley, dans un article nommé A Case for Redundant Arrays of Inexpensive Disks (RAID)1, soit « regroupement redondant de disques peu onéreux ». Aujourd'hui, le mot est devenu l'acronyme de Redundant Array of Independent Disks, ce qui signifie « regroupement redondant de disques indépendants ». Le coà»t au mégaoctet des disques durs ayant diminué d'un facteur 1 300 000 en 29 ans, aujourd'hui le RAID est choisi pour d'autres raisons que le coà»t de l'espace de stockage. Les différents types de systèmes RAID https://fr.wikipedia.org Le système RAID est : soit un système de redondance qui donne au stockage des données une certaine tolérance aux pannes matérielles (ex : RAID1). soit un système de répartition qui améliore ses performances (ex : RAID0). soit les deux à la fois, mais avec une moins bonne efficacité (ex : RAID5). Le système RAID est donc capable de gérer d'une manière ou d'une autre la répartition et la cohérence de ces données. Ce système de contrôle peut être purement logiciel ou utiliser un matériel dédié. Le RAID logiciel En RAID logiciel, le contrôle du RAID est intégralement assuré par une couche logicielle du système d'exploitation. Cette couche s'intercale entre la couche d'abstraction matérielle (pilote) et la couche du système de fichiers. Avantages C'est la méthode la moins onéreuse puisqu'elle ne demande aucun matériel supplémentaire. Cette méthode possède une grande souplesse d'administration (logiciel). Cette méthode présente l'avantage de la compatibilité entre toutes les machines équipées du même logiciel de RAID (c’est-à -dire du même système d'exploitation) Inconvénients L'inconvénient majeur réside dans le fait que cette méthode repose sur la couche d'abstraction matérielle des périphériques qui composent le volume RAID. Pour diverses raisons, cette couche peut être imparfaite et manquer de certaines fonctions importantes comme, par exemple, la détection et le diagnostic des défauts matériels et/ou la prise en charge du remplacement à chaud (Hot-swap) des unités de stockage. La gestion du RAID monopolise des ressources systèmes (légèrement le processeur et surtout le bus système) qui pourraient être employées à d'autres fins. La baisse de performances due à la gestion logicielle du raid est particulièrement sensible dans des configurations où le système doit transférer plusieurs fois les mêmes données comme, par exemple, en RAID1, et, assez faible, dans des configurations sans redondance : exemple, le RAID 0. L'utilisation du RAID sur le disque système n'est pas toujours possible. Diverses implémentations La plupart des systèmes d'exploitation grand public permettent déjà de mettre en Å“uvre le RAID logiciel, qu'il s'agisse de Microsoft Windows, d'une distribution Linux quelle qu'elle soit, ou de Mac OS X. Microsoft Windows XP (et supérieur) gère le RAID 0 et 1 par le logiciel, et peut gérer le RAID 5 moyennant une petite adaptation5 Microsoft Windows 2003 Server gère logiciellement le RAID 0, 1, et 5. Mac OS X gère logiciellement le RAID 0, 1 et la concaténation. Le noyau Linux (>=2.6) gère logiciellement le RAID 0, 1, 4, 5, 6, et 10 ainsi que les combinaisons de ces modes. Les RAID logiciels de Microsoft Windows et de Linux sont incompatibles [réf. nécessaire] entre eux 6. Le RAID pseudo-matériel L'extrême majorité des contrôleurs RAID bon marché intégrés à de nombreuses cartes mères récentes en 2004/2005 gèrent souvent le RAID 0 et 1 sur des disques IDE ou SATA. Malgré le discours marketing qui tend systématiquement à induire en erreur sur ce point, il ne s'agit pas de RAID matériel à proprement parler, mais plutôt d'un contrôleur de disque doté de quelques fonctions avancées. D'un point de vue strictement matériel, cette solution hybride n'est pas différente d'un RAID logiciel. Elle diffère cependant sur l'emplacement des routines logicielles de gestion du RAID. Avantages L'intérêt principal de ce type de RAID est d'apporter une solution au troisième problème du RAID logiciel, à savoir qu'il ne peut pas toujours servir à héberger les fichiers du système d'exploitation puisque c'est justement ce dernier qui permet d'y accéder. Dans ce type de RAID, la présence d'un BIOS intégrant les routines logicielles basiques de gestion du RAID permet de charger en mémoire les fichiers essentiels du système d'exploitation (le noyau et les pilotes essentiels). Puis, le pilote du contrôleur intègre les mêmes routines logicielles de gestion du RAID et fournit alors aux couches supérieures de l'OS non pas un accès aux périphériques, mais un accès au volume RAID qu'il émule. Inconvénients En dehors de cet avantage important, ce type de RAID cumule les défauts des deux autres approches : Les limitations de performances sont les mêmes que pour le raid logiciel, car il s'agit effectivement d'un RAID logiciel camouflé. Un problème important posé par ces contrôleurs hybrides est leur piètre gestion des défauts matériels et leurs fonctionnalités BIOS généralement limitées. L'interopérabilité est très mauvaise surtout si l'on considère qu'il s'agit généralement de matériel intégré aux cartes mères des ordinateurs. Pire, le changement de carte-mère (voire simplement de version de bios), si la nouvelle utilise des jeux de puces différents, peut imposer de reconstruire le RAID entièrement. De manière générale, une reconstruction est possible si l'on reste dans des contrôleurs RAID de même marque, mais de modèles différents, mais il n'existe pas de règle définie de compatibilité. La fiabilité annoncée de ces dispositifs est assez controversée[citation nécessaire]. Le RAID matériel Dans le cas du RAID matériel, une carte ou un composant est dédié à la gestion des opérations. Le contrôleur RAID peut être interne à l'unité centrale (carte d'extension) ou déporté dans une baie de stockage. Un contrôleur raid est en général doté d'un processeur spécifique, de mémoire, éventuellement d'une batterie de secours, et est capable de gérer tous les aspects du système de stockage RAID grâce au microcode embarqué (firmware). Du point de vue du système d'exploitation, le contrôleur RAID matériel offre une virtualisation complète du système de stockage. Le système d'exploitation considère chaque volume RAID comme un disque et n'a pas connaissance de ses constituants physiques. Avantages Les contrôleurs RAID matériels permettent la détection des défauts, le remplacement à chaud des unités défectueuses et offrent la possibilité de reconstruire de manière transparente les disques défaillants. Mais les systèmes d'exploitation évolués permettent également cela si le matériel le permet. La charge système (principalement l'occupation du bus) est allégée. (surtout dans des configurations avec beaucoup de disques et une forte redondance) Les vérifications de cohérence, les diagnostics et les maintenances sont effectués en arrière-plan par le contrôleur sans solliciter de ressources système. Inconvénients Les contrôleurs RAID matériels utilisent chacun leur propre système pour gérer les unités de stockage. En conséquence, au contraire d'un RAID logiciel, des disques transférés d'un système à un autre ne pourront pas être récupérés si le contrôleur RAID n'est pas exactement le même (firmware compris). Il est donc conseillé de posséder une deuxième carte en cas de panne de la première. Les cartes d'entrée de gamme possèdent des processeurs de puissance bien inférieure à celle des ordinateurs actuels. On peut donc avoir de bien moins bonnes performances pour le même prix qu'un RAID logiciel. Le coà»t : l'entrée de gamme se situe aux alentours de 200 € mais les cartes plus performantes peuvent souvent dépasser les 1 000 €. Le contrôleur RAID est lui-même un composant matériel, qui peut tomber en panne. Son logiciel (firmware) peut contenir des erreurs, ce qui constitue un autre risque de panne (un nouveau "single-point-of-failure"). Il est peu probable qu'un RAID actuel contienne des erreurs de programmation (bugs) car il est garanti en moyenne une dizaine d'années. Les différents fabricants de contrôleurs RAID fournissent des outils de gestion logicielle très différents les uns des autres (et de qualité parfois inégale). À l'opposé, les outils de gestion du RAID logiciel fournis avec un système d'exploitation sont généralement bien intégrés dans ce système. La durée du support d'un contrôleur RAID par son constructeur (correction de bugs dans le firmware, par exemple), parfois liée à l'arrivée de nouveaux produits rendant les anciens obsolètes, peut-être moins longue ou plus volatile que le support du RAID logiciel par le fournisseur du système d'exploitation. Le constructeur peut même disparaitre (ce qui est assez rare parmi les fabricants de systèmes d'exploitation). Une moindre souplesse par rapport au RAID logiciel, qui dispose d'une couche d'abstraction permettant de gérer du RAID au-dessus de tous types de périphériques blocs supportés par le système d'exploitation, locaux ou distants (ATA, SCSI, ATA over Ethernet, iSCSI… et toutes les combinaisons possibles entre eux). Les contrôleurs RAID sont spécialisés pour un seul type de périphérique bloc. Pour les niveaux de RAID, il y en a plein, mais les plus courants sont : - RAID 0 : stripping pour augmenter la volumétrie et les performances, aucune sécurité, minimum 2 disques - RAID 1 : mirroir (donc sécurité), minimum 2 disques - RAID 5 : stripping avec parité répartie, donc performance + sécurité, minimum 3 disques - RAID 6 : comment RAID 5 mais avec double parité - RAID 10 association de RAID 0 et 1, donc stripping + mise en mirroir de toutes les données, donc performance + sécurité, le plus luxueux, minimum 4 disques Au sujet du RAID hardware : De base, un disque dur, ce n'est pas fiable. Donc si tu mets plusieurs disques durs dans une même grappe RAID, les probabilités mathématiques font que tu augmentes les chances de perdre les données !!! On a tendance à croire que le RAID sert à protéger les données, ce qui est partiellement faux. Le RAID sert à 2 choses : - continuité de service => suite à la perte d'un disque, on peut continuer à travailler.... indispensable en entreprise, un peu moins à la maison - performance => plus on ajoute d'axe (bras mécanique de disque dur), plus on augmente les perfs.... phénomène entre amplifié par les controleurs RAID qui ont beaucoup de mémoire cache. Pour la sécurité des données, comme je l'ai déjà répété de nombreuses fois, il faut des sauvegardes sur support externe (ou au minimum une réplication via le réseau sur un 2nd serveur.... attention toutefois aux réplication, car un fichier supprimé ou corrompu est également répliqué la nuit suivante.... donc rien ne remplace une vraie sauvegarde effectuée ponctuellement) Comme dis précédemment, de mauvais disques ne font qu'augmenter les risques de pertes de données. Il y a de nombreux risques d'erreurs sur les disques.... évidemment si il y a la panne franche, le disque est HS, là on ne discute plus. Mais ce cas est de plus en plus rare quand même, les disques d'aujourd'hui sont beaucoup plus fiables que ceux qu'il y a 20 ans. Ceci dit, si on prend un disque bas de gamme, et qu'on l'utilise de façon soutenue, on va l'user prématurément. Dans les datasheet des disques, il est indiqué son utilisation : 24/7, quantité de données échangées sur une période de temps, etc. Entre un disque bas de gamme et un disque haut de gamme, l'électronique, et la mécanique ne sont pas du tout les mêmes. J'ai croisé un expert en stockage qui avait créé un profil I/O permettant de détruire un disque SATA en moins de 24h, là où un disque pro accepte la même charge pendant plusieurs mois !!! A coté de ces pannes mécaniques et électronique, il existe un problème primordial et totalement méconnu : l'état de surface du disque. Quand un disque n'arrive pas à lire un secteur, il réessaye de nombreuses fois avant d'y arriver. Ce qui peut prendre trop de temps. Si ce temps est raisonnable, le système d'exploitation va attendre que la donnée finisse par arriver. Si la donnée n'arrive jamais, sous Windows on peut avoir aux choix : un popup qui signale l'erreur de lecture, ou le célèbre BSOD dans le pire des cas. Si ce disque est intégré dans une grappe RAID logicielles, le comportement sera plus ou moins le même, car le driver RAID logiciel est dépendant du driver de l'OS. Ensuite, la couche qui gère le RAID (mdadm sous Linux par exemple, utilisé dans les Synology), va décider si l'erreur est récupérable, ou marquer la donnée comme perdue, voire de décider de marquer le disque complet comme défectueux, ce qui nécessitera un rebuild. Maintenant, si ce même disque est branché sur une carte RAID hardware, là y'a pas 36 solutions, la réaction est systématiquement la même, la carte dégage le disque. Donc RAID complet dégradé, alors que le disque a juste mis quelques millisecondes de trop à lire la donnée !!! Là où c'est drôle (ou pas....), c'est que le disque n'est pas mort, donc on force le rebuild sur le même disque.... oui sauf que le temps de ça reconstruise, on lit à fond les données sur les autres disques, donc on a de très grande chance que l'un des autres disques mette trop de temps à lire un secteur... donc celui-ci est dégagé du RAID à son tour.... et si on est en RAID 5, alors 2 disques de perdus impliquent une perte totale des données !!!! Gnarf Et je peux vous assurer que cette situation se produit très souvent avec les disques SATA non prévus pour fonctionner en RAID hardware. Alors en entreprise, on n'a pas trop de problème, car les disques SAS sont tous prévus pour fonctionner en RAID. Alors c'est quoi la différence ? On a dis plus haut que l'électronique et la mécanique des disques SAS est renforcée. Mais pas que. Il y a aussi l'état de surface (meilleure qualité des plateaux magnétiques). Regardez les datasheet, on passe d'une erreur pour 10^14 à une erreur pour 10^15 octets. Ce qui permet à ces disques d'avoir un firmware différent, qui réagira différemment aux secteurs difficiles à lire. On ne s'autorise qu'un temps très faible pour lire la donnée, afin de ne pas se faire dégager de la grappe RAID par le contrôleur RAID. Si on est vraiment pas capable de lire la données, alors on en informe rapidement la carte, qui prend la bonne décision (on dégage le disque....). Chez Western Digital, ce phénomène est bien documenté, et la paramètre permettant de régler le temps de recovery de la donnée se nomme le TLER (time-limited error recovery). Le nom est différent chez les concurrents. Par chance, en disques SATA, on trouve des disques avec le TLER réglé comme il faut... chez WD, c'est la gamme RE4. Regardez la datasheet, ça n'a rien à voir avec un disque Green ou Red. C'est plus cher qu'un disque SATA classique, sans être au prix d'un disque SAS. En résumé, le RAID logiciel est beaucoup plus tolérant aux défaillance des disques que le RAID matériel. Et en plus le RAID logiciel est plus souple (il existe des outils de récupération de données, on peut facilement étendre un volume (surtout chez Syno), etc) Par contre le RAID matériel garde pour lui ses performances (contrôleur dédié au calcul de parité, mémoire cache), et sa fiabilité (il résiste mieux aux pertes de courant). Si je ne veux pas du RAID logiciel de chez Syno (le SHR, pour rappel basé les couches Linux mdadm et ext4), c'est que je ne trouve pas cela fiable. Il n’apprécie pas du tout les pertes de courant, sur le forum Syno officiel c'est bourré de gens qui ont perdu leur grappe RAID SHR suite aux coupures de courant. Alors bien sur l'onduleur est une solution, mais malgré cela, le format de filesystem sous Linux, ext4, n'est pas très fiable. Au risque de me faire taper dessus par les Linux fanboys, par expérience personnelle je trouve NTFS plus fiable. Et c'est sans compter JFS2 sous AIX, mais là on n'est plus vraiment dans le domaine de l'informatique personnelle. A propos du ZFS par KIWI Qu'est-ce que le ZFS par (Lazer) Pour le ZFS, il faut avant tout noter qu'il s'agit d'une techno proche de Btrfs qu'on trouve sous Linux. ZFS a été développé par Sun (avant que Oracle l'achète) et a laissé ce système de fichier se balader sur d'autre OS. ZFS inclu deux choses principales : un gestionnaire de disques et système de fichiers. Donc on le trouve sur : - Solaris (et les forks : Nexenta, IllumOS, ...) - FreeBSD (un des premier Unix libre a le supporter) - Linux (avec 2 methodes : FUSE ou dans le noyau) Je ne développerais pas la version Linux car à mon goà»t un peu trop instable et pas encore finie. On trouve ZFS sur deux "distributions" de serveurs de fichiers : FreeNAS et NAS4Free (fork de FreeNAS). Fonctionnalités de ZFS : - Raid : mirror / raid5 (raidz1) / raid6 (raidz2) / raid7 (raidz3) - Scrubbing : le système peux faire une vérification complète de l'ensemble du FS pour vérifier que les checksum n'ont pas changés car sur les gros HD, la corruption des données arrive plus souvent qu'on ne le pense - Deduping : ne garder qu'une copie des données sur le HD (par exemple des VM ou des backup... il y a souvent les même datas) - Compression transparente : les block de données sont compressés sur le FS, ce qui permet de gagner de la place ET de la BP en lecture - Snapshotting - Mirroring distante grâce aux snapshot qu'on peux envoyer via SSH ou netcat par exemple (utile pour des backup à distance...). - Possibilité d'augmenter les disques en taille sans que ca n'affecte le file system. - Sur certain OS : export iSCSI et/ou NFS - Possibilité d'indiquer le nombre de copies de fichiers en plus du sous système raid (eg : etre capable que tous les fichiers soient copiés completement sur au moins "n" disques). - Cache lecture / écriture sur SSD - Quasi illimité en nombre de fichier et taille du file system. - Quota - Portabilité des pool ZFS entre OS, c'est a dire que vous pouvez effectuer un pool ZFS sur un Solaris, l'exporter et mettre les HD sur un FreeBSD ou autre. - Pas d'importance dans l'ordre des HD, vous pouvez faire un zpool export d'un pool et mélanger les HD, le zpool import se débrouillera a trouver ses petits. ====> https://fr.wikipedia.org/wiki/ZFS Par KIWI Qu'est-ce qu'à besoin ZFS : - des disques peut importe les tailles de disques, on peux se débrouiller avec - de CPU (si possible des CPU qui sont capables de faire des calculs AES, type core i3/i5/i7, Atom Avoton, ...) - de RAM (beaucoup si vous utilisez le deduping et/ou compression) - de processeur 64bits (oubliez les processeurs 32bits) Le minimun pour commencer c'est 2 disques et 4Go de RAM, plus ZFS a de ram plus il est content. Sur des serveurs du travail j'ai du bi Xeon E5 et 32Go de ram. Vous pouvez utiliser ZFS sur FreeNAS ou Nas4Free, par contre ces distribution ajoutent une surcouche spécifique à FreeBSD (et qui n'est pas obligatoire) qui peux chiffrer les données mais vous obligera a rester soit sur FreeNAS ou Nas4Free, et donc impossible de migrer sur d'autre distributions supportant ZFS. En général je fais ça à la main. Sur FreeBSD vous avez les disques nommés : ada0 / ada1 / ada2 / ada3, Exemple : zpool create file raidz ada0 ada2 raidz ada1 ada3 Permet de créer 2 raid5 (sur 2 hd, oui je sais), dans le même espace de fichiers. Pourquoi je mets du raid5 sur 2 hd ? Sur ZFS si on fait ça, automatiquement ça ajoute les checksum lors des écritures et donc le système de fichiers est donc sécurisé. Pourquoi 2 raid5 ? Juste que ceci permet de changer 1 à 1 les disques et passer par ex du 3To au 4To tranquillement sans devoir acheter 4 disques d'un coup. Une fois fait vous avez donc : zpool status pool: filer state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM filer ONLINE 0 0 0 raidz1-0 ONLINE 0 0 0 ada0 ONLINE 0 0 0 ada2 ONLINE 0 0 0 raidz1-1 ONLINE 0 0 0 ada1 ONLINE 0 0 0 ada3 ONLINE 0 0 0 errors: No known data errors On trouve donc monté en /filer le zpool. Qu'on peux facilement "segmenter" avec les concepts d'héritage des paramètres : zfs get all filer NAME PROPERTY VALUE SOURCE filer type filesystem - filer creation Wed Jan 8 19:44 2014 - filer used 4.47T - filer available 815G - filer referenced 27K - filer compressratio 1.00x - filer mounted yes - filer quota none default ... Exemple pour faire un sous FS "compta" avec une taille d'un 1G: zfs create filer/compta zfs set quota=1G filer/compta zfs set atime=no filer/compta Après ca vous donne : df -kh (...) filer 815G 27K 815G 0% /filer filer/applications 1.1T 270G 815G 25% /filer/applications filer/archives 1.2T 415G 815G 34% /filer/archives filer/compta 1.0G 47M 977M 5% /filer/compta Après pour le partage en CIFS ou AFP, le fonctionnement est identique à toute méthode de partage type : samba, netatalk Si vous avez d'autres questions... n'hésitez pas Kiwi vous répondra....
  14. AIRSONOS Ce tuto est dédié est pour une debian/ubuntu. Il a pour but d'expliquer comment installer l'application Airsonos. Mon script fonctionne sur un machine virtuelle. Il sera basé sur 4 points: 1- Installation de Nodejs 2- Installation AirSonos 3- Customisation du script 4- Démarrage automatique au boot Je fais le tuto avec le compte root, si vous utilisez un compte utilisateur ajouter sudo. 1- Installation de Node js Donc on commence par mettre le système àjour: apt-get update && apt-get upgrade L'application AirSonos nécessite la version node.js >= 0.10.33. On va donc installer sa: apt-get install build-essential python Maintenant on va dans le répertoire opt: cd /opt Ensuite on va télécharger les sources et compiler le tous ( la compilation peut prendre un peu de temps): wget http://nodejs.org/dist/v0.10.33/node-v0.10.33.tar.gz && tar xfz node-v0.10.33.tar.gz && cd node-v0.10.33 && ./configure && make && make install Voilàpour vérifier que c'est bien installer: node -v Sa doit vous afficher "0.10.33". Maintenant on passe àl'installation de AirSonos. 2- Installation d'AirSonos On doit commencer par installer les paquets suivant: apt-get install git libavahi-compat-libdnssd-dev libasound2-dev mc sudo On passe àl'installation de Airsonos npm install airsonos -g Il faut savoir que sur cette version il y a un problème, il affiche plusieurs fois les mêmes enceinte. Vous pouvez essayer pour voir en lançant simplement l'application par: airsonos Pour stopper l'application faite "ctrl + c". 3- Customisation du script Donc on va maintenant passer au modification des fichiers. mcedit /usr/local/lib/node_modules/airsonos/lib/main.js En dessous de la ligne 28 on ajoute: console.log('Searching for Sonos devices on network...'); var deviceList = []; Ligne 36 var deviceName = zoneAttrs.CurrentZoneName; if(deviceList.indexOf(device.host + ':' + device.port) >= 0) { if (flags.get('verbose')) { console.log('Skipping duplicate device found at',deviceName, '{' + device.host + ':' device.port + '}'); } return; } deviceList.push(device.host + ':' + device.port) Maintenant l'application est fonctionnelle. 4- Démarrage automatique au boot On va maintenant regarder pour le lancer au démarrage. npm install forever -g nano /etc/rc.local Et ajoutez avant "exit 0". sudo -u root -i /usr/local/bin/forever start /usr/local/bin/airsonos Et voila vos enceintes on maintenant la fonction Airplay. Il également possible d'installer l'application sur un synology. Source: https://github.com/stephen/airsonos
  15. Bonjour, Je vais vous parler de la domotisation d’une sonnette skybell: D’abord une petit intro: Pour ceux qui ne connaissent pas la skybell, c ‘est une sonnette connecté issue d’un projet de crowdfunding qui a largement remporté son objectif financier. La skybell commercialisée aujourd’hui en est à la version 2, ça vaut dans les 200$ sur amazon us ou via un revendeur europee ( cf site officiel http://www.skybell.com). Le principe de cette sonnette est de remplacer le "bouton" des sonnettes traditionnelles des maisons americaines, qui ferment un circuit 12V alternatif ce qui vient agiter un dong mécanique, une espèce de marteau qui tape sur un résonateur. La skybell dispose d’une camera , d’un micro, d’un haut parleur et d’un capteur de présence, elle communique exclusivement en wifi, les deux cables reliés au « bouton » de sonnette qu’elle est censée remplacer ne servent qu’à l’alimenter. Une fois calée, la skybell permet de continuer à faire sonner la sonnette mécanique, mais elle établit aussi un push vers les téléphones des comptes configurés (qu’ils soient en réseau local ou à extérieure) , ce qui invite à lancer l’application, qui permet d’établir la connexion vidéo et de communiquer dans les deux sens avec son visiteur ( à la manière d’un talkie walkie, chacun parle à son tour). On peut aussi configurer en mode silencieux ( pour ne pas faire sonner le ring mécanique), et aussi pré-détecter la présence de visiteurs (à éviter dans une rue passante). La dernière MAJ permet d'avoir des enregistrements vidéo on the cloud des derniers échanges, s'il y a eu communication. Mais alors pourquoi la domotiser ? D’abord, parce que l’on attend une api depuis plus d’un an, qui ouvrirait des perspectives, et qu’elle ne vient pas, du coup l'écosystème est limité à ce joujou. Ensuite, parce que l’on peut avoir envie de déclencher des actions domotiques liées à la sonnette ( faire clignoter des lumières, allumer la lumière du perron, déclencher un son, lancer un enregistrement sur une camera de façade, allumer un projecteur, mettre le café en route… bref une action)( oui quand on sonne, je me fais un petit café ) qu’est ce que l’on peut récupérer ? -uniquement l’impulsion liée à la pression du bouton par le visiteur, pas de possibilité de récupérer le flux vidéo de la sonnette ou autre ( et peu d’interêt, on les reçoit déjà direct sur sur portable). En quoi cela est compliqué ou nécessité un circuit spécifique ? De par son design prévu pour remplacer le bouton d’une sonnette 12v alternatif, la skybell a un fonctionnement électronique assez particulier: Elle s’alimente constamment sur l’alim 12V Ac du circuit de la sonnette avec un amperage très faible, qui en régime normal traverse la sonnette mais ne suffit pas à la faire « dring'er ». Lorsqu’on sonne, la skybell ferme le circuit (donc elle ne peut plus s’alimenter) et auto subsiste pendant quelques secondes grace à une batterie interne rechargeable de courte autonomie, ensuite elle rouvre le circuit et reprend son alimentation sur le 12vac, et recharge sa petite batterie. Un autre point important, il est IMPERATIF que le circuit comporte une « charge » ( dans le cas normal la sonnette mécanique qui va absorber la majeure partie de la puissance lorsque le circuit va être fermé, manifestement s’il n’y a q’une alimentation, la skybell viendrait la court circuiter et prendrait toute l'intensité dans la figure et cramerait ( et cramerait sa garantie par la même). Skybell propose donc une parade pour ceux qui veulent utiliser la skybell sans sonnette mécanique, il faut ajouter sur le circuit une resistance de 10 Ohm 10Watts, et pas de sonnette, on peut alors passer sur une alim 12V continu (DC) qui devra délivrer entre 500mA et 1A ( au delà , on risque à nouveau au moment de fermer le circuit de faire circuler trop de courant dans la skybell et crac la garantie...) Bon ok, et maintenant on fait quoi ? Je pars du principe qu'on a pas de sonnette mécanique en 12VAC et qu'on part sur une alim' de type 12VDC avec la resistance 10ohm/10watts Et bien on va, en parallèle de la fameuse resistance 10Ohm/10watt positionner un petit circuit qui va être capable d’activer un relais, et qui ne réagira que lorsque un gros ampérage passe dans le circuit principal (le malin qui branche juste un relais en parallèle de la résistance sera déçu de voir que son relais passe sa vie a osciller ( clic clac) car la skybell tire sur la ligne, on a alors un déclenchement imprévisible. Voici le schéma de ce qu’il faut faire (je ne suis pas le concepteur ce circuit, je remercie les contributeurs Allemands de ce forum :http://www.mikrocontroller.net/topic/341210) il faut donc réaliser ce petit circuit, il y en a pour quelques euros de composants, et bien sà»r on va l'adapter à la sauce fibaro afin d'ajouter un capteur universel fibaro. Comme on a déjà une alim 12V DC, on peut la repiquer pour alimenter l'universal sensor, et le contact sec normalement ouvert du relais 5V piloté va nous permettre de fermer le circuit entre masse et capteur ( fil bleu et fil jaune) du module universel. A titre perso, j'ai fait ce petit circuit sur une plaque sans soudure, et j'ai scellé tout ça dans la colle liquide, on peut évidemment faire plus propre avec un vrai circuit imprimé pour ceux qui n'auraient pas oublié tout de leurs cours de techno de 3eme. Et dans le contexte, en mode de test, ça donne ça: Une fois le tout remonté dans un boitier et la skybell fixée au mur, on a donc désormais une remontée d'info via le capteur universel à chaque pression du bouton skybell, pour le reste, je laisse place à votre imagination .
  16. Bonjour, Alors je ne sais pas si ce tuto pourra servir tel quel à quelqu'un mais il a pour but de regrouper plusieurs VD fais par des membres de ce forum et de voir comment nous pouvons faire interagir tout cela ensemble. Pour mon cas j'ai pris l'exemple d'allumer ma télévision quand nous rentrons du travail car nous aimons bien avoir un fond musical quand nous rentrons du travail même si nous regardons pas la télévision (oui je sais, ce n'est pas très écolo mais bon ) Pour commencer, j'ai une multiprise GreenWave PowerNode 6 qui contrôle : - La télévision - Le téléphone fixe - L'amplificateur - La playstation 4 - Une lampe Philips LivinColor J'a également un Wallplug FGWPE-101 qui gère le subwoofer qui est planqué (et donc inaccessible) derrière le canapé. Pour commercer j'ai un VD qui allume ou éteint tout d'un seul coup (et un bouton qui éteint la télévision du salon et allume celle de la chambre mais vous pouvez supprimer ce dernier). Voici le VD (Pensez à changer les ID de vos différents modules) : - Multiprise.vfib Et les icônes du module : - - - Ensuite il faut créer deux variables globales : - Etat_Multiprise : Qui permet de savoir si elle est déjà allumé ou pas, pour ne pas que l’allumage ne se refasse à chaque fois que l’on passe devant le détecteur. - TV_Auto : Permet que si on éteint la multiprise celle-ci ne se rallume quand on repasse devant le détecteur. Pour ceux qui utilisent le décodeur d'Orange, j'utilise le VD de Gazous pour faire directement le "OK" sur l'interface générale qui s'affiche par défaut quand on allume le décodeur. - Le Virtual Device de la télécommande Livebox play de Gazous Ensuite pour les personnes qui ont une télévision Samsung, j'envoi également directement le "OK" de la télcommande pour sélectionner la la source dans le menu de démarrage de la télévision. Je ne sais pas s'il est possible de déclencher le bouton du plugin Samsung de Fibaro, j'ai donc créé un simple VD avec juste le bouton "OK" pour pouvoir le lancer en GEA : - OK_Salon.vfib L'icône qui va avec : - J'utilise égelement le VD Jour Chômé de HANSOLO pour que cela se déclenche que les jours travaillés. - Le Virtual Device Jour Chômé de HANSOLO Toute la suite est réalisé grâce au GEA de Steven. - Lien vers GEA de Steven Voici les lignes à ajouter pour que cela fonctionne : - Dans les "properties" il faut ajouter l'ID de votre module de détection pour que le script se déclenche quand celui-ci détecte une présence. %% properties 27 value - Puis mettre les lignes GEA suivantes : -- Allumage de la multirpise + sub en rentrant du travail GEA.add({id["DETECTEUR_SAM"] , {"Global", "JourChome", "NON"}, {"Global", "Etat_Multiprise", "0"}, {"Global", "TV_Auto", "0"}}, -1, "", {{"Days", "Weekday"}, {"Time", "16:00", "19:00"}, {"VirtualDevice", id["MULTIPRISE"], 1}, {"Global", "TV_Auto", "1"}}) -- Appuie automatique sur le bouton "OK" du VD samsung GEA.add({"Sensor+", id["TELEVISION_SALON"], 10}, 30, "OK Salon", {{"VirtualDevice", id["OK_SALON"], 1}}) -- Appuie automatique sur le bouton "OK" du VD Livebox GEA.add({"Sensor+", id["TELEVISION_SALON"], 10}, 60, "OK ", {{"VirtualDevice", id["LIVEBOX_SALON"], 9}}) -- Remise à 0 de la variable TV_Auto, si la tele est éteinte depuis une heure. GEA.add({"Global", "Etat_Multiprise", "0"}, 60*60, "", {{"Global", "TV_Auto", "0"}}) Pour ceux qui n'ont pas de télévision qui allume automatiquement le décodeur d'Orange en même temps que l'allumage de la télévision, il est possible d'ajouter une option GEA pour allumer le décodeur. Remplacer la 1ère ligne GEA que j'ai écrite par celle-ci : GEA.add({id["DETECTEUR_SAM"] , {"Global", "JourChome", "NON"}, {"Global", "Etat_Multiprise", "0"}, {"Global", "TV_Auto", "0"}}, -1, "", {{"Days", "Weekday"}, {"Time", "16:00", "19:00"}, {"VirtualDevice", id["MULTIPRISE"], 1}, {"Global", "TV_Auto", "1"}, {"VirtualDevice", id["LIVEBOX_SALON"], 2}}) . Comme dit plus haut je sais que personne n’utilisera le tuto comme cela, mais il peut donner des idées et des solutions à certaines personnes et également de montrer plusieurs interaction avec des super tutos fais par les membres.
  17. Voila j'ai décidé de mettre a jour mon NAS en DSM 5.2 (Le KING du HARD Lazer a fait cette mise a jour) cela veut dire que c'est stable. Tous c'est très bien passé aucun soucis en particulier. J'ai donc voulu installer le WOL (Démarrage a distance du NAS) 1 - Il faut activer le WOL dans le bios de son serveur, pour les HP Gen7 je conseil un bios modifier (pas obligatoire pour le WOL) bios Modifier : http://forum.hardware.fr/hfr/OverclockingCoolingModding/Modding/worklog-bios-modifications-sujet_280958_1.htm Activé le WOL dans le bios : h20564.www2.hp.com/hpsc/doc/public/display?docId=emr_na-c03445526 2 - Il va falloir allez modifier des fichiers dans dsm il faut télécharger WinSCP : http://winscp.net/eng/docs/lang:fr pour ce connecté a votre nas : User=root - Mot de passe="celui que vous utilisé pour vous connectez a admin" Puis suivre ce tuto en Hollandais mais tres facile car illustré : http://xpenology.me/how-to-activate-wol/ Pour modifier le fichier syslinux.cfg il faut allé dans usbshare1 l'éditer avec notepad++ puis ajouter mac:xx:xx:xx:xx:xx:xx (remplacer les XX par votre adresse MAC) Pour une adresse mac sous linux c'est ":"alors que sous Windows c'est "-" Cela corrige le probléme de changement d'adresse MAC a chaque redémarrage UI menu.c32 PROMPT 0 TIMEOUT 50 DEFAULT xpenology MENU TITLE XPEnoboot 5.1-5022.1 LABEL xpenology MENU LABEL XPEnology DSM 5.1-5022 KERNEL /zImage APPEND root=/dev/md0 ihd_num=0 netif_num=4 syno_hw_version=DS3615xs sn=B3J4N01003 mac:xx:xx:xx:xx:xx:xx vid=0x0EA0 pid=0x2168 loglevel=0 vga=0x305 LABEL debug MENU LABEL XPEnology DSM 5.1-5022 Debug KERNEL /zImage APPEND root=/dev/md0 ihd_num=0 netif_num=4 syno_hw_version=DS3615xs sn=B3J4N01003 vid=0x0EA0 pid=0x2168 loglevel=0 vga=0x305 debug=1 LABEL install MENU LABEL XPEnology DSM 5.1-5022 Install/Upgrade KERNEL /zImage APPEND root=/dev/md0 ihd_num=0 netif_num=4 syno_hw_version=DS3615xs sn=B3J4N01003 vid=0x0EA0 pid=0x2168 loglevel=0 vga=0x305 upgrade=5.1-5022 Votre Wol est maintenant Activé Pour utiliser le WOL il existe un grand nombre d'application sous android, on peut aussi utilisé un module virtuel qui ce trouve sur le forum Un petit cadeau pour les abonnées FreeMobile comment recevoir des SMS sur la santé de votre NAS. http://www.universfreebox.com/article/26340/Tutoriel-Utiliser-la-notification-SMS-Free-Mobile-avec-un-NAS-Synology URL a copier sur le NAS https://smsapi.free-mobile.fr/sendmsg?user=ID_ESPACE_ABONNE_FREEMOBILE&pass=CLE_IDENTIFICATION_AU_SERVICE&api_id=CLE_IDENTIFICATION_AU_SERVICE&to=+33NUMERO_PORTABLE_A_JOINDRE&msg=Hello%20World%20!
  18. Une nouvelle petite contribution : Virtual device pour amplificateur audio video Yamaha RX-A1030 Cette version normalement compatible avec un certain nombre d'ampli yamaha est plus complète que ce que j'ai pu trouver sur le forum. Gestion des input / ouput / party mode / zone 2 / pure direct (pour les audioplhiles) Je n'ai mis que l'essentiel mais il est bien sà»r possible de compléter par l'une des 8000 commandes disponibles pour l'ampli... Le main loop permet de récupérer beaucoup plus d'informations que ce qui est affiché, n'hésitez pas à compléter. Bon amusement le fichier du virtual device YAMAHA_RX-A1030_Bat_v1.3.vfib un petit apercu en exemple la liste des commandes disponibles pour le RX-A2020 YNC_RX-A2020_PUT_B.txt YAMAHA_RX-A1030_Bat_v1.3.vfib YNC_RX-A2020_PUT_B.txt
  19. Et encore un petit tuto, Un ! :-) Cette fois-ci ce sera sur une télécommande pour un Ampli Marantz SR6008. Voici à quoi ça ressemble: Il y a donc moyen de sélectionner 3 sources et d'ajuster leur volume Les boutons Favori 1 à 3 sont les mêmes que ceux de la télécomande physique, donc accès aux stations radio numériques. Un appui sur ce bouton va allumer l'ampli et mettre la sélection Night mode active la compression sonore à fond (chez moi cela s'active dès que la maison est en mode "dodo enfants" c'est TRES pratique ! Les boutons Amplis activent et désactivent la sortie trigger de l'ampli ce qui permet d'allumer et d'éteindre les autres appareils (TV, ampli additionnel, caisson de basse, lecteur CD etc.) Pour avoir tout cela, rien de plus simple: installer le virtual device: Connectez votre Marantz au réseau Configurer l'adresse IP et le port: Et ça devrait marcher. Enjoy ! p.s; les versions 6007 etc devraient fonctionner aussi. Marantz_Remote.vfib
  20. Salut à tous et bonne année 2015. Plein de réussite dans vos projets domotiques Je viens vous présenter mon VD pour vérifier la connexion internet. J'ai repris le code PING de Jean-christophe Vermandé que j'ai adapté à mes besoins. Le VD lance des requête ping toutes les 5mins vers des sites internet. On peut mettre autant de site que l'on souhaite. Mon avis étant un minimum de 2. En effet si le serveur WEB en question est HS, on fait un test sur un autre. J'ai inclus la remonté de l'adresse public. Pour ce faire j'utilise l'api suivante : http://www.realip.info/api/p/realip.php INSTALLATION : - Le VD est téléchargeable ci-dessous. - Créer une variable global "internet" (valeur 1: ok / valeur 2 : nok) ou avec un autre nom étant donné qu'il est possible de changer facilement le nom dans la déclaration des variables du VD. La variable servant à créer des scenes. Par exemple on envoit une notification SMS en cas de panne internet... - Mettre les icônes. Je vous en propose 2 ci-dessous. Voila j'espère que ça servira à certains et si vous avez des remarques, je suis preneur!!! Check_Internet.vfib
  21. Un petit tuto et un petit module pour cet Ampli Yamaha, qui est un peu différent de ce que j'ai déjà vu ici. Soyez indulgents, c'est mon premier "vrai" tuto... Ce module fonctionne sur les Ampli RX-V677, RX-V481, RX-V581, RX-V681, RX-V781, RX-V773, RX-V675 Tout d'abord, merci a Krikroff, Tomzebest et à lolomail et i-magin pour leur travail en amont qui m'a grandement facilité le mien. Pour commencer, il vous faut rentrer une adresse IP fixe dans l'ampli a l'aide de la télécommande (sur le téléviseur). Ensuite, dans un navigateur web, il faut entrer dans les paramètres de l'ampli afin de modifier un petit paramètre bien utile pour la suite. Pour ouvrir la page de l'ampli, il suffit de taper l'adresse fraîchement entrée dans la barre d'adresse. Page d'acceuil de l'ampli, il faut cliquer sur settings : pour arriver a cette page et aller dans l'onglet network settings et passer l'option à ON: Maintenant, on peut revenir sur notre Home Center. V1.0 : Implémentation V1.1 : Récupération de l'IPadress et du TCPPort du module pour faciliter l'intégration V1.2 : Implémentation de la zone 2 RX-V675 (V1.1).vfib RX-V675(V1.2).vfib Visuel du module 1.1 : Visuel du module 1.2 : Et des icônes que j'utilise : <- Merci Couillerot <- Merci moi <- Merci moi aussi ^^ Je bosse encore actuellement sur les visuels pour switcher entre les icônes ET sur les icônes elles-mêmes Pour faire fonctionner le module, vous devez renseigner l'adresse ip et le port de l'ampli dans le module puis, renseigner le numéro de module en début de main loop (ligne 4). Grosse mise à jour en cours : - Ajout de l'intégralité des ambiances sonores de la zone 1 - Ajout de l'intégralité des entrées de la zone 1 et de la 2 - Ajout d'un slider pour le réglage du volume de la zone 1 - Ajout des boutons de mémoire pour les net radios - Nettoyage du code pour le rendre plus facile et lisible (plus besoin de renseigner le numéro du VD entre autre)
  22. Je vous propose un module virtuel pour les amplificateurs audio/video de la marque DENON, en attendant la v4 et des bons plugins. Comme j'ai eu du mal à le créer, à trouver la façon de communiquer par IP (DENON ne dit rien nulle part à propos de ça) et qu'ici on aime partager... Basé sur le sujet suivant, du forum officiel de Fibaro (merci à boerremk pour la création du sujet et à ROBBshop pour le code plus léger): http://forum.fibaro.com/viewtopic.php?t=1755&postdays=0&postorder=asc&start=0 Les fonctions peuvent être utilisées pour d'autres modèles d'ampli. Les commandes spécifiques par modèles au lien suivant: http://www.denon.fr/fr/pages/home.aspx Chercher l'ampli par son nom, puis onglet telechargement et notice, puis protocole RS232. Consignes: Avant tout il faut permettre à l'ampli d'être contrôlé par IP (voir vos paramètres) 1) Importer le module virtuel au format vfib 2) Le nommer, lui assigner une pièce, indiquer son adresse IP sur votre réseau (ex 192.168.1.10) et le port d'ouverture de votre routeur (ex 80 pour la freebox v6) 3) Changer l'icône principale 4) Le port d'ouverture par défaut de l'ampli est 23, si le votre est différent il faudra le changer ligne 3 de chaque bouton 5) Vous pouvez renommer les labels ZONE1, ZONE2, Source ZONE 1 et Source ZONE 2 mais ne modifiez pas les ID des labels 6) Vous pouvez modifier les noms des boutons ⎋ ZONE 1 et ⎋ ZONE 2 ainsi que dans les lignes 23 et 31 du code correspondant Ces boutons sont pour mettre ON ou OFF chaque ZONE en fonction de l'état en cours. Cependant il n'est pas nécessaire d'allumer l'ampli avant de choisir une source, la sélection de la source d'entrée met automatiquement l'ampli en marche 7) Vous pouvez modifier les noms des boutons des sources sous les labels Source ZONE 1 et Source ZONE 2, pour indiquer ce que vous avez branché sur les entrées correspondantes ainsi que dans les lignes 22 et 23 du code correspondant 8) Vous pouvez modifier les noms des boutons 1 à 3 sous le label des stations favorites pour indiquer le nom de vos stations enregistrées ainsi que dans les lignes 22 et 23 du code correspondant 9) Vous pouvez modifier dans le code suivant, le nom des sources pour indiquer ce que vous avez branché sur les entrées correspondantes, aux lignes 73,75,77,79,87,95 et 97. Vous pouvez évidemment ajouter ou retirer des boutons. Attention toutefois si vous en retirez à modifier le main loop en conséquence. Par exemple il peut être intéressant d'enregistrer les réglages en cours (source d'entrée, volume, mode son...) quand vous regardez/écoutez la source branchée sur l'entrée MEDIA PLAYER de votre ampli, via le bouton QUICKMEMORY1, puis de remplacer dans les codes du boutons de sélection de la source MEDIA PLAYER, la commande SIMPLAY ligne 20, par la commande MSQUICK1. Quand vous appuierez sur ce bouton plus tard, vous retrouverez les réglages que vous aviez lorsque vous avez enregistré. --Virtual Device --v0.1 du 02/11/2014 --v0.2 du 05/11/2014 Erreur modifiée dans les boutons quickmemory DENON_AVR-X3000.v0.2.vfib
  23. jompa68

    Dd-Wrt Lan Checker

    Si vous avez un routeur avec DD-WRT installé, vous pouvez rechercher facilement smartphones, PC ou tout autre appareil avec une adresse MAC . If you have a router with DD-WRT installed, you can search for assets easally smartphones, PC or other device with a MAC address of the virtual device. --- DD-WRT LAN CHECKER - - By Jonny Larsson (jompa68) - The version 0.1 09/12/2014 - It is tested and works with Firmware: DD-WRT v24-sp2 - Another version might work, but it depends on what name - The status pages have that we check for active clients and - The state of the Internet. - The work of pawn on all types of smartphones (iOS, Android, Windows ..) - Any type of equipment with a MAC address should work. - Have fun! Importer le module virtuel. Aller à la page avancée, remplissez l'adresse IP et le port du routeur dans le champ "Adresse IP" et le "Port TCP". Faites défiler jusqu'à la première clé (Device 1) Changer l'utilisateur et mot de passe de votre routeur. Saisissez l'adresse MAC que vous souhaitez rechercher. Changer "globalVar" (créer une variable prédéfinie avec la valeur 1 et la valeur 2) TxtOnline et txtOffline (doit être l'info que vous définissez la valeur 1 et 2 dans la variable) Faites de même pour le bouton 2. Vous pouvez ajouter plus de boutons sur le module si vous voulez, il suffit de copier le code et changer les choses qui doivent être modifiées. Device import. Go to Advanced page, fill in the router's IP address and port in the "IP Address" and the "TCP Port". Scroll to the first key (Device 1) Change user and password for your router's user and password. Enter the MAC address you want to search. Change globalVar (you create a predefined variable with the value 1 and value 2) TxtOnline change and txtOffline (must be the info you set the value 1 and 2 in the variable) Do the same for the device 2 button. You can add more device button if you want, just copy the code and change the things that should be changed. - Startup Settings - User - DD-WRT user and password for the connection - Change user and password below (login to the router) user = "root"; - Default is root pwd = "password"; - MAC Address looking for deviceMAC = "04:f7:e4:4f:21:82"; - Name of the predefined variable globalVar = "wifiJonny"; - Value 1 and Value 2 of the predefined variable txtOnline = "Online"; txtOffline = "Offline"; - END USER SETTINGS - Descendre jusqu'à "mainLoop" Remplacer user et password Scroll to MainLoop Change user and password - Startup Settings - User - DD-WRT user and password for the connection user = "root"; - Failure is root pwd = "password"; - END USER SETTINGS - DD-WRT_LAN_Checker.vfib
  24. Bonjour à tous, J'ai créé un module virtuel pour accéder à mon squeezebox. Je n'ai pas réinventé la roue. Je me suis basé sur le travail déjà fait par d'autres. Dans mon cas, j'ai juste besoin de quelques boutons: On, Off, Volume et TTS car j'utilise le squeezebox uniquement pour m'alerter d'événements. Je ne gère pas la musique à travers ce module virtuel. Je vous propose un "Main Loop" qui récupère toutes les minutes l'état du squeezebox (On ou Off) en mettant à jour l'icône du module virtuel et aussi le niveau du volume pour ajuster le slider correspondant. Ainsi, si vous touchez au volume du squeezebox à partir d'une application ("iPeng" par exemple), le slider du module virtuel se mettra à jour. Si vous allumez ou éteignez le squeezebox à partir d'une application, l'icône du module virtuel se mettra à jour. Voici donc ce code qu'il faudra adapter à votre module virtuel squeezebox. -- the LMS serverlocal ipadd = fibaro:get(fibaro:getSelfId(), "IPAddress") -- the cli plugin port local portno = fibaro:get(fibaro:getSelfId(), "TCPPort") -- the MAC of the player local player = "00:04:20:xx:xx:xx " local playername = "Squeezebox Radio " local refresh = 60 local SliderVolumeID = 1 local poweronIcon = 1000 local poweroffIcon = 1002 -- Main object if (not Check) then Check = {} -- System variables Check.debug = false -- Main code Check.get = function(cmnd) -- construct the sting to send local stringtosend = player .. cmnd .. string.char(10) --open the socket local tcpSocket = Net.FTcpSocket(ipadd, portno) --set the read timeout tcpSocket:setReadTimeout(2*1000) --send the command local bytes, errorCode = tcpSocket:write(stringtosend) -- Transforme "result" en chaine de caractere return tcpSocket:read() or string.char() end Check.main = function(self) local data = Check.get("mixer volume ? ") -- Recupere le volume... local cmd = data:match("mixer volume %d+") local cmd_value = cmd:match("%d+") or "NaN" if (Check.debug) then fibaro:debug("Volume: " .. cmd_value) end -- On ajuste le slider au volume if (cmd_value ~= "NaN") then if (fibaro:getValue(fibaro:getSelfId(), "ui.SliderVolume.value") ~= cmd_value) then fibaro:call(fibaro:getSelfId(), "setSlider", SliderVolumeID, cmd_value) end end local data = Check.get("power ? ") -- On ou Off local cmd = data:match("power %d") local cmd_value = cmd:match("%d") or "NaN" if (Check.debug) then fibaro:debug("Power: " .. cmd_value) end if (cmd_value ~= "NaN") then local currentIcon = fibaro:getValue(fibaro:getSelfId(), "currentIcon") if (cmd_value == "1") then -- Power On if tonumber(currentIcon) ~= poweronIcon then if (Check.debug) then fibaro:debug(playername .. "is power on") end fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", poweronIcon) end else -- Power Off if tonumber(currentIcon) ~= poweroffIcon then if (Check.debug) then fibaro:debug(playername .. "is power off") end fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", poweroffIcon) end end end -- Wait fibaro:sleep(refresh*1000) end fibaro:debug("Function successfully loaded in memory") end -- Start Check.debug = true Check:main();
  25. byackee

    Reveil Douceur

    Bonjour a tous, Je ne suis surement pas le seul mais la box HC2, bien qu'asser complete manque cruellement d'une fonction reveil, ce device virtuel vient combler ce manque, il offre les fonctiones suivantes: 1) selection du jour de declenchement ( lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche, all, weekend, weekday) 2) selection de l'heure ( et oui ca peut etre utile ) 3) ON/OFF Installation: 1) créer les variables globales suivantes: alarmClockDay, alarmClockScenes, alarmClockStatus, alarmClockTime 2) importer le périphérique virtuel 3) définir les actions a mener dans le main loop ------------------Liste de actions sur activation de l'alarme----------------------- if string.format("%02d",startscenes) == string.format("%02d",0) then fibaro:startScene(28) fibaro:setGlobal("alarmClockScenes", 1) end ------------------------------------------------------------------------------------ end end else ------------------------------------------------------------------------------------ ------------------Liste de actions sur desactivation de l'alarme----------------------- fibaro:killScenes(28) fibaro:call(28, "turnOff") fibaro:setGlobal("alarmClockScenes", 0) ------------------------------------------------------------------------------------ Vous pourrez dans le main loop de ce peripherique virtuel, définir les actions a lancer sur declenchement du reveil ou sur l'arret ( OFF) Pour ma pars je lance la scene "simulateur d'aube" puis ouverture des volets avec lancement des sonos. mon travail s'inspire de celui de robmac que vous pouvez voir la: http://forum.fibaro.com/viewtopic.php?t=3200 Alarm_Clock (2).vfib
×