Skip to main content

Messages

This section allows you to view all Messages made by this member. Note that you can only see Messages made in areas you currently have access to.

Messages - Niklas

2
Project development, ideas, and suggestions / Re: uCAN: A protocol stack for microcontroller networking
The PESD1CAN is probably a good choice as a replacement for the antiparallel diodes in series with varistors. Common mode chokes are found in a majority of the ECUs in cars. In small volumes, their price might scare of many hobbyists but for robust applications they are a must. You can also add a buffering cap with a couple of uFs close to the transceiver in the next revision of the board.

Other important things are:
- A stable crystal oscillator to get the bit timing correct
- Proper setup in the CAN controller of the different bit timing parts
3
Project development, ideas, and suggestions / Re: uCAN: A protocol stack for microcontroller networking
I have used the MCP2551 in various automotive test tools since it was released about 10 years ago. So far only one circuit out of 200 has been replaced, which is acceptable as most of the cars the units are used in are early prototypes. However, there is one big difference between my schematics and the one posted for this shield and that is the filtering section.

Low capacitance transient suppressors were not available back in 2004 so I used anti-parallelled diodes, BAV199, in series with varistors (11 Vrms SIOV in 0603 package). One diode+varistor combination each on CANL and CANH to GND. The SIOVs seems to be discontinued now but they can be replaced with some low capacitance TVS.

Between the over voltage filter and the MCP2551 a common mode choke and Y-capacitors (22pF, >= 100 V, C0G/NP0) are fitted. One cap one each side of the choke and down to GND, configured just like a standard line filter for 115V or 230 V mains. The choke is made for CAN bus filtering and must be able to handle some current, 200-300 mA or so. Try not to use vias between the connectors and the CAN tranceiver. If you must, then use at least two to handle the current.

Bus termination was often done with a 120 ohms resistor between CANL and CANH, just as in the posted schematics. In many newer designs you will find two resistors in series with a capacitor decoupling from the midpoint down to GND. Sometimes you can not use 120 ohms when the unit is placed on a stub and not on the end. 2x1k in 1206 packages and 4.7 nF was on a board I checked some time ago. The higher resistance will not affect the main termination resistance much but still give some effect. The capacitor will drain high frequency noise.

Edit: I tried to add a few links to app notes about filtering but that failed as I am a new user. Google "can bus common mode filter" (TI slla271.pdf and Microchip en528477.pdf) and "can bus common mode filter nxp" (AH1014, section 8 about EMC)

( ! ) Fatal error: Uncaught exception 'Elk_Exception' with message 'Please try again. If you come back to this error screen, report the error to an administrator.' in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
( ! ) Elk_Exception: Please try again. If you come back to this error screen, report the error to an administrator. in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
Call Stack
#TimeMemoryFunctionLocation
10.01222288864session_write_close ( )...(null):0
20.01252420464ElkArte\sources\subs\SessionHandler\DatabaseHandler->write( )...(null):0
30.01252421240Database_MySQL->query( ).../DatabaseHandler.php:119
40.05552559984Database_MySQL->error( ).../Db-mysql.class.php:273