I agree, it would make much more sense to fork your implementation of ds1wm.
Could you estimate how long would it take you? I'm quite in a hurry with my
project. Or could you perhaps answer the question how OWFS handles updates on
that master structures. I suppose this will be essential to extend you DS1WM
implementation to match my bus master (which is basically DS1WM with output
multiplexer supporting multiple channels/buses).
Is there any preliminary codebase I could start working on?
Thank you for your support.
Best regards,
Martin
________________________________
From: Paul Alfille [paul.alfi...@gmail.com]
Sent: Monday, February 23, 2015 7:18 PM
To: owfs-developers
Subject: Re: [Owfs-developers] Add support for additional hardware bus master
I'm working on the ds1wm support. Just got example code from Maxim. How about
basing you modifications from that.
Paul
On Feb 23, 2015 10:46 AM, "Martin Rapavy"
<martin.rap...@kistler.com<mailto:martin.rap...@kistler.com>> wrote:
Hello Paul,
so far I came to following conclusions about the parts of owlib which need to
be extended in order to support new bus master type:
• Write new module (.c file) which exports a detect function
(K1WM_detect in my case)
o I suppose this is the configuration/connection function you mentioned
earlier
o it creates mmap for the bus master device
o it sets following pointers to functions inside interface_routines
structure
• Add new “master structure“ (master_uio) into ow_master.h which holds
context of my bus master (active channel, base address of mentioned 6
registers, pointer to mmap) and add that structure into master_union
• Add some command line / configuration file parameters (up to now not
sure where exactly, but I also didn’t pay much attention to it yet)
As for the funtions which are pointed from interface_routines structure I
implemented following:
• detect (K1WM_detect)
• reset – this resets the 1wire bus identified by channel stored in my
master_uio structure
• next_both – hardware assisted search rom (do you call this function
repeatedly untill it returns search_done? So one execution of the function
should set return one ROM in the device_search structure?)
• sendback_data – transmit/receive of data pointed by its parameters
• close – destroys memory mapping to the bus master
Is that enough or should I implement more functions from that interface? What
exactly is redetect supposed to do (I guess it’s different from close/detect
combo)?
I’m also not sure how to setup the flags attribute of interface_routines and
bundling_length.
As I said I expect the context of each call (like active channel, pointer to
device memory map, etc.) to be stored in my master_uio structure. I suppose
OWFS needs to know how to setup the context before calling functions from my
module – could you please explain me how this should be done?
Thanks in advance,
Martin
From: Paul Alfille
[mailto:paul.alfi...@gmail.com<mailto:paul.alfi...@gmail.com>]
Sent: Friday, February 20, 2015 3:32 PM
To: OWFS (One-wire file system) discussion and help
Subject: Re: [Owfs-developers] Add support for additional hardware bus master
Optimally the number of channels should be auto-discovered. I like to make the
configuration as automatic as possible.
So if the hardware can be safely probed for the number of channels, or
announces the number of channels, that would be best.
Otherwise a command line option would work.Perhaps:
--rapavybus=0xf0000000:6
The syntax i fairly arbitrary, but it should be relatively intuitive or
consistent.
Paul
On Fri, Feb 20, 2015 at 7:47 AM, Martin Rapavy
<martin.rap...@kistler.com<mailto:martin.rap...@kistler.com>> wrote:
Yes, 6 registers in consecutive memory locations (offests 0 .. 5). I suppose we
need to pass the base address as command line / configuration file parameter.
How does owfs treat channels? Do we need to pass number of channels as command
line / configuration file parameter as well?
Thanks,
Martin
From: Paul Alfille
[mailto:paul.alfi...@gmail.com<mailto:paul.alfi...@gmail.com>]
Sent: Friday, February 20, 2015 1:43 PM
To: owfs-developers
Subject: Re: [Owfs-developers] Add support for additional hardware bus master
Do you map the 6 control registers to consecutive memory locations? Would we
pass that location in a command line option?
On Feb 19, 2015 12:16 PM, "Jan Kandziora" <j...@gmx.de<mailto:j...@gmx.de>>
wrote:
Am 19.02.2015 um 08:59 schrieb Martin Rapavy:
> Hi Paul,
>
> thanks for briefing me on the architecture of OWFS. My master chip
> has almost exactly the same register interface as Dallas DS1WM
> (http://datasheets.maximintegrated.com/en/ds/DS1WM.pdf). It only
> differs in one register: Clock divisor register (0x04) is missing and
> instead there’s Output Channel Multiplexer register on the same
> address (0x04). This register is used to enable handling of multiple
> channels (1wire busses) by single chip.
>
Ohh, maybe we get native support for DS1WM? Sweeeet!
Kind regards
Jan
------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk
_______________________________________________
Owfs-developers mailing list
Owfs-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/owfs-developers