Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.arch.embedded > #26490

Re: Serial protocol with physical decoding

From Don Y <blockedofcourse@foo.invalid>
Newsgroups comp.arch.embedded
Subject Re: Serial protocol with physical decoding
Date 2017-05-04 10:52 -0700
Organization A noiseless patient Spider
Message-ID <oefpid$sum$1@dont-email.me> (permalink)
References <oeegko$e86$1@dont-email.me> <u_idnUIHweEy3ZbEnZ2dnUU7-IWdnZ2d@giganews.com>

Show all headers | View raw


On 5/4/2017 7:54 AM, Tim Wescott wrote:
>> Any problems with this sort of kludged encapsulation?
>
> I've done this, it worked -- the customer went through some personnel
> changes and the project died before it could get shipped, but cest la vie.

I used the first format with cheap single-chip MCU's many years
ago -- using a LONG SPACE to signal the start of the packet (to
"resynchronize" any drifted clock; a VERY LONG BREAK would
cause a one-shot in the device to trigger and hardware reset the
device)

But, the data rates were very low and the line interfaces
had plenty of noise margin (EIA232).

I'd like to come up with a scheme that I could apply to a variety of
similarly "open ended" network configurations -- that have very
different physical characteristics (e.g., a 10 ft long chain
and a 300 ft long chain -- trading data rate for network size)

> I wouldn't overthink things vis-a-vis the composite message -- just send
> lots of little messages and be happy.  Complexity leads to bugs.

The problem with lots of messages comes from having to update many
devices (nodes?) continuously.  You incur the message overhead
for every individual message.  With the "composite" format,
the master can just push an endless stream of data out and each
node picks off what's important.

> Use all ones in the address field as a 'broadcast' address.
>
> Or do the address decrementing by shifting down one bit, and consider the
> message "yours" if the least significant bit is zero.  That only allows
> eight devices, but if you foresee a lot of traffic with identical
> messages for selected sets of devices, this would move you on down the
> road.

I have to look at the different applications that I have in mind to see
whether I want a "bit oriented" protocol or a byte-oriented.  I.e.,
I don't want to get coerced (subconsciously) into letting a UART make
me think in terms of "characters" when something more like a self-clocking
JTAG might make more sense.

The big downside that I see is handling transmission "problems".
E.g., if node X detects a CRC error, it has no way of knowing
if it's data is intact *or* if the error is part of the data
that it will be propagating.  If it *corrects* the CRC that
it passes along (to coincide with that data content), then it
has "blessed" that data (by hiding the CRC error from those
downstream from it!).

This suggests the node has EFFECTIVELY decided the error was
in its portion of the data packet (if so, it definitely
shouldn't be USING that data!)

Repeat for cases where one or more nodes loses clock
recovery or message synchronization (thus, *misinterprets*
the serialized data stream)

[Reinhardt's suggestion of "closing the loop" bears some merit!
But, it alone doesn't ensure that everything handled the
packet correctly]

Back to comp.arch.embedded | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-03 23:14 -0700
  Re: Serial protocol with physical decoding Clifford Heath <no.spam@please.net> - 2017-05-04 16:40 +1000
    Re: Serial protocol with physical decoding Mark Storkamp <mstorkamp@yahoo.com> - 2017-05-04 12:26 -0500
      Re: Serial protocol with physical decoding rickman <gnuarm@gmail.com> - 2017-05-04 15:46 -0400
  Re: Serial protocol with physical decoding Jack <jack4747@gmail.com> - 2017-05-04 00:28 -0700
    Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-04 00:48 -0700
      Re: Serial protocol with physical decoding rickman <gnuarm@gmail.com> - 2017-05-04 10:29 -0400
  Re: Serial protocol with physical decoding Reinhardt Behm <rbehm@hushmail.com> - 2017-05-04 16:44 +0800
    Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-04 07:09 -0700
  Re: Serial protocol with physical decoding Tim Wescott <tim@seemywebsite.really> - 2017-05-04 09:54 -0500
    Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-04 10:52 -0700
      Re: Serial protocol with physical decoding Robert Wessel <robertwessel2@yahoo.com> - 2017-05-04 14:53 -0500
        Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-04 13:17 -0700
          Re: Serial protocol with physical decoding Robert Wessel <robertwessel2@yahoo.com> - 2017-05-05 00:30 -0500
            Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-04 23:57 -0700
    Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-13 21:58 -0700
  Re: Serial protocol with physical decoding Hans-Bernhard Bröker <HBBroeker@t-online.de> - 2017-05-05 00:50 +0200
  Re: Serial protocol with physical decoding Les Cargill <lcargill99@comcast.com> - 2017-05-04 18:47 -0500
    Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-04 20:07 -0700
      Re: Serial protocol with physical decoding Les Cargill <lcargill99@comcast.com> - 2017-05-07 09:21 -0500
        Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-07 10:22 -0700
        Re: Serial protocol with physical decoding Jack <jack4747@gmail.com> - 2017-05-08 00:04 -0700
  Re: Serial protocol with physical decoding Martin Riddle <martin_ridd@verizon.net> - 2017-05-06 12:14 -0400
    Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-06 12:29 -0700
      Re: Serial protocol with physical decoding Martin Riddle <martin_ridd@verizon.net> - 2017-05-08 18:53 -0400
        Re: Serial protocol with physical decoding Don Y <blockedofcourse@foo.invalid> - 2017-05-08 18:50 -0700

csiph-web