Fixed, thank you. This was a corner case where the "temperature" was a link
to temperature12 and thus not normally stored. Should be fixed in the next
release.

2011/7/19 Станислав Макарчук <sp...@win-force.com.ua>

> **
> Hi All
>
> I can't write temperature to DS18B20 in Mock adapter.
>
> Below is step's to reproduce
>
> Ubuntu 10.10, owfs-2.8p11
>
>
> 1. Start owserver in mock mode
>
> /opt/owfs/bin/owserver --debug --Mock=28.000028D70100 --port
> 127.0.0.1:4304
>
> Debug output from owserver:
>
> DEBUG: ow_daemon.c:EnterBackground(166) main thread id = 3079517888
> CONNECT: ow_avahi_link.c:OW_Load_avahi_library(72) No Avahi support.
> Library libavahi-client couldn't be loaded
> CONNECT: ow_dnssd.c:OW_Load_dnssd_library(136) Zeroconf/Bonjour is disabled
> since dnssd library isn't found
>    CALL: ow_parsename.c:FS_ParsedName_anywhere(95) path=[]
>   DEBUG: owlib.c:SetupTemperatureLimits(79) Globals temp limits 0C 100C
> (for simulated adapters)
> CONNECT: ow_fake.c:SetConninData(166) Setting up Simulated-Mock Bus Master
> (0)
>
>
> 2. write temp to DS18B20
> /opt/owfs/bin/owwrite -s 127.0.0.1:4304 /28.000028D70100/temperature
> "10.0000"
>
> Debug output from owserver:
>
>   DEBUG: ow_tcp_read.c:tcp_read(64) attempt 24 bytes Time: 10.000000
> seconds
>   DEBUG: ow_tcp_read.c:tcp_read(114) read: 24 - 0 = 24
>   DEBUG: from_client.c:FromClient(67) FromClient payload=36 size=7 type=3
> sg=0x10A offset=0
>   DEBUG: from_client.c:FromClient(75) FromClient (no servermessage)
> payload=36 size=7 type=3 controlflags=0x10A offset=0
>   DEBUG: ow_tcp_read.c:tcp_read(64) attempt 36 bytes Time: 10.000000
> seconds
>   DEBUG: ow_tcp_read.c:tcp_read(114) read: 36 - 0 = 36
>   DEBUG: handler.c:SingleHandler(155) START handler
> /28.000028D70100/temperature
>    CALL: data.c:DataHandler(106) DataHandler: parse
> path=/28.000028D70100/temperature
>   DEBUG: ow_parseobject.c:OWQ_create(164) /28.000028D70100/temperature
>    CALL: ow_parsename.c:FS_ParsedName_anywhere(95)
> path=[/28.000028D70100/temperature]
>   DEBUG: ow_cache.c:Cache_Get_Device(908) Looking for device 28 00 00 28 D7
> 01 00 D5
>   DEBUG: ow_cache.c:Cache_Get_Common(1064) Search in cache sn 28 00 00 28
> D7 01 00 D5 pointer=0x1b99dc index=0 size=4
>   DEBUG: ow_cache.c:Cache_Get_Common(1100) Value not found in cache
>  DETAIL: ow_presence.c:CheckPresence(80) Checking presence of
> /28.000028D70100/temperature
>   DEBUG: ow_presence.c:CheckThisConnection(247) Presence of 28 00 00 28 D7
> 01 00 D5 FOUND on bus mock.0
>   DEBUG: ow_cache.c:Cache_Add_Device(550) Adding device location 28 00 00
> 28 D7 01 00 D5 bus=0
>   DEBUG: ow_cache.c:Cache_Add_Common(639) Add to cache sn 28 00 00 28 D7 01
> 00 D5 pointer=0x1b99dc index=0 size=4
>   DEBUG: ow_cache.c:Cache_Add_Device(550) Adding device location 28 00 00
> 28 D7 01 00 D5 bus=0
>   DEBUG: ow_cache.c:Cache_Add_Common(639) Add to cache sn 28 00 00 28 D7 01
> 00 D5 pointer=0x1b99dc index=0 size=4
>    CALL: data.c:DataHandler(152) Write message
>   DEBUG: write.c:WriteHandler(52) WriteHandler: hd->sm.payload=36
> hd->sm.size=7 hd->sm.offset=0 OWQ_size=7 OWQ_offset=0
> OWQ OneWireQuery structure of /28.000028D70100/temperature
>     OneWireQuery size=7 offset=0, extension=0
> Byte buffer OneWireQuery buffer, length=7
> --000: 31 30 2E 30 30 30 30
>    <10.0000>
>     Cleanup = 0002    OneWireQuery I=0 U=0 F=10 Y=0 D=Thu Jan  1 03:00:00
> 1970
>
> --- OneWireQuery done
>   DEBUG: ow_cache.c:OWQ_Cache_Add(386) Adding data for
> /28.000028D70100/temperature
>   DEBUG: ow_presence.c:CheckThisConnection(247) Presence of 28 00 00 28 D7
> 01 00 D5 FOUND on bus mock.0
>   DEBUG: ow_cache.c:Cache_Add_Device(550) Adding device location 28 00 00
> 28 D7 01 00 D5 bus=0
>   DEBUG: ow_cache.c:Cache_Add_Common(639) Add to cache sn 28 00 00 28 D7 01
> 00 D5 pointer=0x1b99dc index=0 size=4
>   DEBUG: ow_cache.c:OWQ_Cache_Add(386) Adding data for
> /28.000028D70100/temperature
>   DEBUG: ow_cache.c:OWQ_Cache_Add(386) Adding data for
> /28.000028D70100/temperature
> *  DEBUG: ow_write.c:FS_write_postparse(189) Error writing to
> /28.000028D70100/temperature*
>   DEBUG: ow_parsename.c:FS_ParsedName_destroy(59)
> /28.000028D70100/temperature
>   DEBUG: data.c:DataHandler(197) DataHandler: FS_ParsedName_destroy done
>   DEBUG: data.c:DataHandler(211) DataHandler: cm.ret=-95
>   DEBUG: to_client.c:ToClient(56) payload=0 size=0, ret=-95, sg=0x10A
> offset=0
>   DEBUG: data.c:DataHandler(231) Finished with client request
>   DEBUG: handler.c:Handler(137) OWSERVER handler done
>   DEBUG: ow_net_server.c:ProcessAcceptSocket(236) Normal exit.
>
> 3. Read temp from DS18B20
>
> /opt/owfs/bin/owget -s 127.0.0.1:4304 /28.000028D70100/temperature
> *     15.6679*
>
> So, question is: why I have *Error writing to /28.000028D70100/temperature
> * and how i can set custom temperature
>
> WBR -
> Stanislav.
>
>
> ------------------------------------------------------------------------------
> Magic Quadrant for Content-Aware Data Loss Prevention
> Research study explores the data loss prevention market. Includes in-depth
> analysis on the changes within the DLP market, and the criteria used to
> evaluate the strengths and weaknesses of these DLP solutions.
> http://www.accelacomm.com/jaw/sfnl/114/51385063/
> _______________________________________________
> Owfs-developers mailing list
> Owfs-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/owfs-developers
>
>
------------------------------------------------------------------------------
Got Input?   Slashdot Needs You.
Take our quick survey online.  Come on, we don't ask for help often.
Plus, you'll get a chance to win $100 to spend on ThinkGeek.
http://p.sf.net/sfu/slashdot-survey
_______________________________________________
Owfs-developers mailing list
Owfs-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/owfs-developers

Reply via email to