Hi Matthias! Nice to see continued work on the original (smurfix/)owslave code. I've got some similar code, forked from the taliesin fork originally form your code (according to githubs network view). Your code (today) is definitely smaller than what I've got now. I think I've tried yours way back, but didn't get it to work when taliesin did work, so that's what I based my stuff on..
Is your 8Mhz operation working perfectly fine? I've had some issues with 8Mhz in my code-base, where the pull-low does not respond fast enough after a 60us master-write-1 slot; the high edge followed by the low edge of next slot (+3us) is just too short time for the interrupt to execute (or at least I *think* that is the case). It results in noticable CRC problems on the bus. (Some notes: https://github.com/stromnet/owslave/blob/master/onewire.c#L613) I've done some experimental work to rewrite the pinchange ISR into ASM, and it works fine in most cases.. however with more complex writes, every other call fails.. i suspect that some bug is to blame rather than timing issues though. Anyway, regarding communications, my approach was to extend the DS2406 code, and add special directives via the memory pages. In my case I've added PWM support to the output pins. This means I do not need to do any owfs modifications at all, I can just write a series of (checksummed) bytes to the /pages/page.0 node, and once the checksum is verified, it is transferred to an "active configuration" register and put into action. Not as neat as distinct OWFS features, but for experimental use it was alot less work.. :) It's available at https://github.com/stromnet/owslave/blob/master/ds2406.c if you are interested. Regards Johan On 2/21/15 08:08 , Matthias Urlichs wrote: > Jan Kandziora writes: > >> I strongly recommend to use Pascal Baerten's BAE0911 device instead of >> developing a slave on your own. > I already _have_ a slave of my own. (AVR-based; writing code that talks to > 1wire is as simple as it gets with this codebase.) > > My main problem with the BAE0911 right now is that brain4home.eu is "down > for maintenance". :-P > > The other is that I want to the devices on the other end of that slave to > have distinctive entries in OWFS. Like "temperature.0" (through N-1) for the > N thermometers that are attached to the slave's I²C bus. Ditto for the I/O > ports. Or the capacitive sensors I want to use (can the BAE0911 even do > that? an atmega supports them without any additional hardware). > > -- Matthias > ------------------------------------------------------------------------------ > 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 > [email protected] > https://lists.sourceforge.net/lists/listinfo/owfs-developers ------------------------------------------------------------------------------ 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 [email protected] https://lists.sourceforge.net/lists/listinfo/owfs-developers
