Page 1 sur 1

1- WIRE sur windows

Publié : 15 avr. 2020, 21:04
par Dids
Bonjour
J'ai réussi à faire marcher owfs, owserver et owhttpd sur windows et suis capable de lire mes sondes de température via mon navigateur ou bien l'utilitaire owread.exe en ligne de commande - exemple

c:\owfs\bin\owread -s 3000 /10.2D29C0010800/temperature me renvoie 21.75

J'aimerais créer un time-script qui me rentre cette valeur dans un capteur virtuel. Ma tentative inspirée de recherche sur différents forums ne fonctionne pas (j'avoue ne pas y connaitre grand chose en lua sript!). Je pense que ca pêche au niveau de la façon de rentrer la commande windows.

Si vous pouvez aider


Code : Tout sélectionner

-- script_time_ temp from owserver -s 3000 avec owread

function os.capture(cmd)
  local f = assert(io.popen(cmd, 'r'))
  local s = assert(f:read('*a'))
  f:close()
  return s
  
end

commandArray = {}

  local cmd = 'c:\owfs\bin\owread -s 3000 /10.2D29C0010800/temperature'
  local tempcuisine = os.capture(cmd);


  -- Update device idx with nValue and sValue
 commandArray ['UpdateDevice'] = '146'..'|0|'.. tempcuisine 



return commandArray

Re: 1- WIRE sur windows

Publié : 15 avr. 2020, 21:09
par vil1driver
Salut,

Pas mal
Les anti slash sont juste à échapper

Code : Tout sélectionner

local cmd = 'c:\\owfs\\bin\\owread -s 3000 /10.2D29C0010800/temperature'
Et pour être tatillon ceci est meilleur

Code : Tout sélectionner

commandArray ['UpdateDevice'] = '146|0|'.. tempcuisine

Re: 1- WIRE sur windows

Publié : 18 avr. 2020, 08:47
par Dids
Nickel
cela fonctionne pico bello !
merci
je suis assez content d'avoir pu faire fonctionner one wire sous windows (grâce principalement à un tuto russe et un week de pâques confiné!)
Si ça intéresse quelqu'un je peux détailler la manip