G120 OneWire issue

@ GHI, please advice. Using the following code i see 2 small 83nSec pulses which result in wrong data at the receiver…



        private static readonly OneWire OneWire = new OneWire(new OutputPort(G120.Pin.P0_25, false));

        public static void Main()
        {
                OneWire.WriteByte(3); 
        }

Is it the same using other pins?

Yes, same with P2_4

@ RobvanSchelven -
This was fixed and will be coming soon.
And is it still working with your one wire devices?

@ Dat - I’m not sure about your question… My one wire device does not work properly because of the glitch.

I meant some one-wire devices can work even if there are 2 small 83nSec pulses exist.

Ok, wil try to improve my OneWire client. But still hope that your update will arrive soon :slight_smile:

Onewire is fixed. Try it now: http://www.tinyclr.com/forum/topic?id=10651

@ Dat - Writing from G120 to my device works fine, reading stills seams to be a problem. EMX is OK

I always receive 0xFF although using a logic analyzer i can see a proper response of the byte that my device returns on a request from G120
I was wondering if you could tell me after how many microseconds G120 samples the pin for being a 1 or a 0… To implement my client I assumed that the maxim/dallas specs are used on G120. Is that right? see http://pdfserv.maximintegrated.com/en/an/AN126.pdf

UPDATE.

By now i can confirm that Onewire also works on G120. Timing on my client device was to tight.

@ RobvanSchelven -
I told to my Leader that there will be no more issue with onewire, and I thought I was a loser yesterday, but now I can be happy … thanks for all your feedbacks.

2 Likes

@ Dat - Although i set the dataline low (for a zero bit) within 9uSec after the rising edge of the read pulse its seems to be to late on G120 and Hydra. for EMX it works. I changed my code to set the dataline right after the falling edge of the read pulse instead of the rising edge :slight_smile: