Obsolete repository, replaced by CANopenDemo and CANopenLinux
THIS REPOSITORY IS OBSOLETE, ITS CONTENTS HAS BEEN MOVED TO: - https://github.com/CANopenNode/CANopenDemo - https://github.com/CANopenNode/CANopenLinux
CANopenSocket is a collection of CANopen tools and examples.
It is based on CANopenNode, which is free and open source CANopen Stack and is included as a git submodule.
CANopen is the internationally standardized (EN 50325-4) (CiA301) CAN-based higher-layer protocol for embedded control system. For more information on CANopen see http://www.can-cia.org/
Clone the project from git repository and get submodules:
git clone https://github.com/CANopenNode/CANopenSocket.git cd CANopenSocket git submodule init git submodule update
Update the project:
cd CANopenSocket # make sure, project is clean (git status); changes should be committed (git gui) git pull # or: git fetch -> gitk --all (inspect the changes) -> git merge # git submodule init # if new git modules git submodule update
Get/update other tools (EDSeditor):
cd tools ./get_tools.sh
First information is in CANopenNode/README.
Basic getting started guide is available in
CANopenNode/doc/gettingStarted.md. If everything works there as expected, with virtual or real CAN, then CANopen network is established. With at least basic operation of: CAN reception, transmission, NMT, Heartbeat, Service Communication Objects (SDO).
Next is Basic CANopen Device example program with source code, custom Object Dictionary access functions and advanced CANopen gateway communication. See basicDevice/README.md.
nctool available in Linux.
makethe executable and type
./cocomm --helpor see basicDevice/README.md for example usage.
canopendwith gateway interface on it.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.