<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://w.electrodragon.com/w/index.php?action=history&amp;feed=atom&amp;title=CAN_SDK</id>
	<title>CAN SDK - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://w.electrodragon.com/w/index.php?action=history&amp;feed=atom&amp;title=CAN_SDK"/>
	<link rel="alternate" type="text/html" href="https://w.electrodragon.com/w/index.php?title=CAN_SDK&amp;action=history"/>
	<updated>2026-06-04T09:31:20Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.37.2</generator>
	<entry>
		<id>https://w.electrodragon.com/w/index.php?title=CAN_SDK&amp;diff=33059&amp;oldid=prev</id>
		<title>Chao: /* EDCAN Test */</title>
		<link rel="alternate" type="text/html" href="https://w.electrodragon.com/w/index.php?title=CAN_SDK&amp;diff=33059&amp;oldid=prev"/>
		<updated>2024-10-28T08:54:15Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;EDCAN Test&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:54, 28 October 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l2&quot;&gt;Line 2:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Arduino + MCP2551 CAN Module &amp;lt;-&amp;gt; Raspberry CAN RS485 Shield &amp;lt;-&amp;gt; USB-CAN sLCAN Board&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Arduino + MCP2551 CAN Module &amp;lt;-&amp;gt; Raspberry CAN RS485 Shield &amp;lt;-&amp;gt; USB-CAN sLCAN Board&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Any of these two will work.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Any of these two will work.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== EDCAN Test ==&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;gallery&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;File:Cantact.gif | Use contact software,  communicate with Raspberry PI CAN (SN65HVD230DR)&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/gallery&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Monitor List ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Monitor List ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Chao</name></author>
	</entry>
	<entry>
		<id>https://w.electrodragon.com/w/index.php?title=CAN_SDK&amp;diff=25864&amp;oldid=prev</id>
		<title>Chao at 09:12, 28 March 2020</title>
		<link rel="alternate" type="text/html" href="https://w.electrodragon.com/w/index.php?title=CAN_SDK&amp;diff=25864&amp;oldid=prev"/>
		<updated>2020-03-28T09:12:45Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Our Boards Test Link ==&lt;br /&gt;
* Arduino + MCP2551 CAN Module &amp;lt;-&amp;gt; Raspberry CAN RS485 Shield &amp;lt;-&amp;gt; USB-CAN sLCAN Board&lt;br /&gt;
* Any of these two will work.&lt;br /&gt;
&lt;br /&gt;
== EDCAN Test ==&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
File:Cantact.gif | Use contact software,  communicate with Raspberry PI CAN (SN65HVD230DR)&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitor List ==&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Header text !! Protocol !! Header text&lt;br /&gt;
|-&lt;br /&gt;
| USBtin || SLCAN || https://www.fischl.de/usbtin/&lt;br /&gt;
|-&lt;br /&gt;
| cantact-app || SLCAN || https://github.com/linklayer/cantact-app/releases&lt;br /&gt;
|-&lt;br /&gt;
| UCCBviewer  || SLCAN || https://github.com/UsbCANConverter-UCCbasic/uCCBViewer/releases&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Cangaroo || CandleLight || https://canable.io/utilities/cangaroo-win32-0363ce7.zip&lt;br /&gt;
|-&lt;br /&gt;
| Linux CAN / CAN utilis ||- || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Firmware ==&lt;br /&gt;
=== SLCAN ===&lt;br /&gt;
[[File:2018-09-25 153651.png|thumbnail| CAN UCCB Commands]]&lt;br /&gt;
==== UCCB examples ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
000005: C  (send close command) &lt;br /&gt;
000006: v  (ask for firmware version)&lt;br /&gt;
000007: v0102 (get version number from device)&lt;br /&gt;
000008: V   (ask for hardware version)&lt;br /&gt;
000009: V0101&lt;br /&gt;
000010: N   &lt;br /&gt;
000011: N16000000&lt;br /&gt;
000012: W2D00&lt;br /&gt;
000013:&lt;br /&gt;
000014: S8  (set speed to 1000000 b/s)&lt;br /&gt;
000015: &lt;br /&gt;
000016: O   (open CAN for frame transmission and reception)&lt;br /&gt;
000017: &lt;br /&gt;
000018: t00181122334455667788 (transmit frame type standard id = 1 length 8 bytes)&lt;br /&gt;
000019: z&lt;br /&gt;
000020: t0890&lt;br /&gt;
000021: M00007000000010000000010    (set id filter for ID=1 and ID=1)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
data command: t00181122334455667788 = t / 001 / 8 / 11 22 33 44 55 66 77 88&lt;br /&gt;
* 001 is identifier, length = 8bytes&lt;br /&gt;
&lt;br /&gt;
=== CandleLight w/GS_USB ===&lt;br /&gt;
* https://github.com/candle-usb/candleLight_fw&lt;br /&gt;
* https://github.com/normaldotcom/candleLight_fw&lt;br /&gt;
&lt;br /&gt;
== Linux | RPI ==&lt;br /&gt;
config SPI CAN: edit in file /boot/config.txt, and add following line&lt;br /&gt;
 dtparam=spi=on&lt;br /&gt;
 dtoverlay=mcp2515-can0,oscillator=12000000,interrupt=25,spimaxfrequency=2000000&lt;br /&gt;
Reboot and check if installed: dmesg | grep -i '\(can\|spi\)'&lt;br /&gt;
 [    3.443582] CAN device driver interface&lt;br /&gt;
 [    3.469391] mcp251x spi0.0 can0: MCP2515 successfully initialized.&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
* first install library sudo pip install python-can&lt;br /&gt;
 msg = bus.recv(10.0) #timeout 10 seconds&lt;br /&gt;
* Test send from USB CAN C = close port, S3 = set to 100K speed, O = open port, t00181122334455667788 = send data&lt;br /&gt;
&lt;br /&gt;
* Test receive: root@work:/home/pi/rpi/interface/CAN/python# python receive.py&lt;br /&gt;
 Timestamp: 1576078751.049400        ID: 0001    S                DLC:  8    11 22 33 44 55 66 77 88     Channel: can0&lt;br /&gt;
&lt;br /&gt;
* Bitrate - 100000 (100K S3), 1000 000(1M S8)&lt;br /&gt;
&lt;br /&gt;
== Documents ==&lt;br /&gt;
arduino MCP2515 library demo&lt;br /&gt;
* [[:File:CAN.zip|Arduino Demo Code]]&lt;br /&gt;
* [https://github.com/Edragon/CAN_BUS_Shield Compatible with arduino library this one.]&lt;br /&gt;
&lt;br /&gt;
Arduino SLCAN&lt;br /&gt;
* https://github.com/latonita/arduino-canbus-monitor&lt;br /&gt;
USB serial SLCAN&lt;br /&gt;
* cantact link - https://github.com/linklayer/cantact-hw&lt;br /&gt;
* Canable link - https://canable.io/getting-started.html&lt;br /&gt;
* UCCB link - https://ucandevices.github.io/uccb.html&lt;br /&gt;
firmware&lt;br /&gt;
* github UCCB - https://github.com/UsbCANConverter-UCCbasic/UCCBEmbedded&lt;br /&gt;
&lt;br /&gt;
== Reference Tutorial ==&lt;br /&gt;
* [https://www.youtube.com/watch?v=4SgW64d_fbE CAN control by arduino video]&lt;br /&gt;
[[category: CAN]]&lt;/div&gt;</summary>
		<author><name>Chao</name></author>
	</entry>
</feed>