<< Click to Display Table of Contents >> Navigation: CAN > CANFreestyle |
CANFreestyle is a simple proprietary protocol, without e.g. the complexity of a transport protocol. So this protocol is very easy to use. Anyway you can modify CAN values that you want to send on the bus as well as the CAN values that you received from the CAN bus. The modifiers are the same as for J1939. Actually CANFreestyle provides a way to emulate other CAN protocols that are not supported natively. To prevent confusion, CANFreestyle will be treated as a protocol in the manual. Additionally you can create a sequence of several CAN messages which can be sent periodically. |
Before you can use the CANFreestyle protocol, it has to be activated. Before activating it the Port Configuration has to be set.
|
Once the port is configured the protocol itself has to be assigned to it.
1.Open "Communication" menu and choose "Terminal and Owner ECU(s) Configuration ...". The "Terminal and Owner ECU(s) Configuration" dialog will appear 2.Press on the arrow and select CANFreestyle protocol for the CAN port you want it to run on 3.Press "Add" to use this protocol with your GUI on the display Properties of Terminal ECU
Properties of Owner ECU(s)
|
||
As mentioned above we mainly configured the CANFreestyle ECUs because they own some variables whose values we want to show and/or modify on the display. Before we can use these variables we have to do two things: 1.Create the variables and use one of the CANFreestyle ECUs as owner. 2.Define the Mappings we want to use to send and receive the variables. Creating dedicated variable groups for variables owned by CANFreestyle ECUs
|
||
If you only want to evaluate specific bits of the CAN Identifier you can use "CAN ID Masks..." to create our own mask. This can be used for example if several ECUs are connected to the bus whose use same kind of identifier.
1.If you want to edit CAN ID Masks you can find it in the main menu like shown above. A new dialog CAN ID Mask will be open. 2.For performance reasons you can only define 6 CAN ID Masks 3.Two masks are predefined."Full 11 bit ID 1" and "Full 29 bit ID 2". So if you don't need to filter the CAN ID you can use the predefined ones. 4.If you want to add your own proprietary mask you have to press the "Add" button If the "Add" button is pressed a new line will be added at the table which is editable.
5.Here you can specify a name for the newly created mask. 6.You have to specify if the mask should be used for 11 or 29 bit CAN Identifiers. 7.In the field ID Masks you can specify the bits which should be evaluated for the CAN Identifier in hexadecimal format. 8.Deletes the currently selected mask. NOTE: The predefined mask can not be deleted. 9.To save the settings you have to press the "OK" button The created Masks can be used here. |
After having defined an ECU as variable owner and the variable itself we finally have to define the connection between the two. In other words: We need a definition about how to exchange the variable's value with the ECU. These definitions are called "variable mappings" within this tool. In order to define a variable mapping you can either use the shortcut button of the variable manager shown in the image above or open the respective dialog from the menu as follows: 1.Open the menu "communication". Select "Protocols". Choose "CANFreestyle". Select "Configure Mappings ...". 2.The "CANFreestyle Configure Mappings" dialog will pop up. 3.Type the name of your mapping 4.Select the type "Receive" if the display shall fetch values from CAN bus and "Transmit" if the display shall send out values. 5.Press "Add" to create the new mapping. Setting Mapping PropertiesThe dialog will populate with the default settings for the new mapping object which have to be modified according to your intentions: Defining Variable Mappings
CANFreestyle mapping variable properties
|
|||||||
Sequences can be used to send several transmit mappings periodically. For example it can be used as a simple kind of transport protocol. Create SequencesBefore you can create Sequences you have to define transmit mappings. For more information please have a look at chapter Defining Variable Mappings If transmit mappings are already defined please select in the main menu "Transmit Sequences..." as shown below:
1.Open Menu "Transmit Sequence..." 2.Enter a Sequence Name in the new dialog named CANFreestyle Transmit Sequence which appears. 3.Press "Add" button Afterwards following should be visible
4.Combo box where you can select the sequence you want to edit. 5.Deletes the current selected sequence. 6.Name of the transmit sequence which is currently selected 7.Here you can add a description for the sequence 8.Target owner which should receive the sequence. 9.The "Sequence ID" is a unique internal ID, which is not editable. 10.The "Period" (in ms) defines the cycle for sending the sequence. NOTE: This is the only way to trigger the sequence.
11.Select the mapping you want to add to the sequence. 12.Press "Add >>" to add the message to the sequence After adding of mapping objects the dialog should look like this: 13.If a mapping was mapped by mistake you can select the mapping and remove it again with the "<< Remove" button 14.The list box contains the transmit mapping which should be transmitted via the sequence 15.With the help of the buttons "Move Up" and "Move Down" you can change the order of the transmit mapping at the sequence Finally the dialog should be confirmed with "OK" to save the sequences. |