Re: question about can bus

"Lacassaigne Jean-Francois" <[email protected]>
Newsgroups gmane.comp.hardware.bus.can
Message-ID <944752380F3E4846AF5F5D6B314C33E9@JFLPC>
Hi,

thanks for your reply.
while reading it, i realize that i was not really clear in my question.

I'm using only the physical layer of the can bus (not the protocol).
the protocol is a custom made protocol.
so there is no ack message (right now) when a command is received.

All work fine as long as i've only the PC sending command like "Device XX 
put your Output #YY to ON"
Device XX could even reply to the PC without trouble as no one else is going 
to talk

Problem is that now, i need to add some devices who need to send messages to 
the PC like "I'm device ZZ, my Input #WW just changed to On state"

I know that one solution would be to use a can controller between my 
microcontroller and the can transceiver, but it's not an option as i've 
already hundreds of Output device produced and in service.

Jean-Francois




-----Message d'origine----- 
From: Kees Zagers
Sent: Monday, April 08, 2013 11:44 AM
To: [email protected]
Subject: Re: [CANLIST] question about can bus

Hello Jean-Francois,

Greetings from the Netherlands.

First of all it should be clear what you understand with "Listen only".

If you mean: a node which has a standard CAN controller, but it is listening 
only to what other nodes are doing, it is still an active CAN node. This 
means it gives an Acknowledge when it receives a correct message and sends 
an Errorframe when it is not correct.

If you mean: a node which has a CAN controller which can be switched to a 
"Listen Only" or "Passive" state (e.g. SJA1000),  you can only read out the 
messages with such a node. This is not active on the bus and will not send 
Acknowledges nor Errorframes.

Rule 1: You should have at least two active nodes on a CANbus to let it work 
anyway. The transmitting node is expecting an ACK at the end of the message 
and if it does not see this, it sends the same information continously. The 
second node can be an "active listen-only" node, not a passive one.

Rule 2: The ACK and errorframes are generated by the CAN controller; not the 
CAN transceiver. So a CAN node with just a CAN transceiver is not a CAN node 
at all; it is just a physical interface to the bus, converting the dominant 
and recessive levels of the CANbus to logical levels for the receive input 
of the CAN controller and on the other side it converts the logical levels 
of the transmit output of the CAN controller to dominant/recessive levels on 
the CANbus.

So your statement: "* listen only devices having only can bus transceiver." 
is NOT TRUE.

Hope to have clarified the situation by this.

Kees Zagers
SI-Kwadraat B.V.

[email protected]


--
Archives and useful links: http://groups.yahoo.com/group/CANbus
Subscribe and unsubscribe at www.vector.com/canlist/
Report any problems to <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.