Software / Logic editor

Wire logic instead of programming

Instead of programming a function, you draw it. Blocks go onto a canvas and are connected with wires. The finished logic graph runs in the device, without a PC.

For the CORE F1 Display steering wheel

Logic editor

What a logic graph is

A logic graph defines what a device does: what a button triggers, when a message appears on the display, which value goes onto the CAN bus. Every block has inputs on the left, outputs on the right and its own settings.

The graph is transferred to the device and executed there. The PC is only needed for drawing, checking and transferring.

Logic editor: What a logic graph is

The blocks

A graph starts with sources: buttons, rotary switches and paddles of the wheel, signals of the device and CAN messages. It ends with targets: a value is set, a message is sent, a notice is shown on the display or an LED is switched.

In between are gates such as AND, OR and set/reset, plus comparisons, calculators, curves, counters and a PID controller. For timing there are timers, blinkers, clocks and ramps.

Logic editor: The blocks

Example: warning light

Three blocks are enough: button 1 of the wheel feeds a blink block, and its output switches the first status LED.

While the button is on, the LED blinks at the set rate. On and off time are shown right on the block.

Logic editor: Example: warning light

Example: message on the display

A Read Variable reads the supply voltage, and a comparator compares it with 11.5 V. If the voltage drops below that, the overlay block shows a message on the display.

Text, size, colour and duration of the message are settings of the block.

Logic editor: Example: message on the display

Signals and variables

Every value of a device is a signal: inputs, outputs, sensors, vehicle values, display and CAN. The selection is the same everywhere in the software, sorted into groups and with a search field.

Your own variables from the logic graph and the signals of a CAN input are in the same list. They can be selected on the whole control unit: in the logic graph, on the display pages and in the signal plot.

Logic editor: Signals and variables

Receive CAN messages

A CAN input reads a message from the bus and splits it into signals. After that these signals can be selected on the whole control unit.

ID, bus, byte order and scaling can be set freely, or they come from a DBC file. A timeout reports when the message stops arriving.

Logic editor: Receive CAN messages

Create a message

A CAN output builds a message of your own. You set ID, bus and send rate, then add one row per signal with start bit, length and scaling. Every row becomes an input of the block.

Every row is tied to a variable or a signal, in the picture to the position of two rotary switches. This connects the device to control units of other manufacturers without changing anything there.

Logic editor: Create a message

Simulate on the PC

The play button starts the simulation. The graph then runs on the PC. What the simulation shows is what the device does later.

Inputs are set by hand directly in the graph, every block shows its values at the output. Time can be paused, stepped one cycle at a time or run faster and slower.

Logic editor: Simulate on the PC

Check before it goes to the device

The check looks for errors in the graph: missing signals and variables, invalid sources, duplicate names. Every finding is listed, a click jumps to the block concerned.

After the transfer the device runs the new graph at once, no restart is needed.

Logic editor: Check before it goes to the device

Settings from signals

Many numbers of a block do not have to be fixed. The time of a timer or a limit can come from a signal.

In the picture the on time of the blink block comes from outside: it is tied to the value of the centre rotary switch. The field then shows the name of the source instead of a number.

The time can then be changed on the wheel while driving, without any change to the graph.

Logic editor: Settings from signals

How it works

  1. Create blocksDrag them from the list or search with a double click.
  2. ConnectDrag an output onto an input and the wire is there.
  3. Simulate and checkRun it on the PC and check for errors.
  4. TransferThe graph goes to the device with the settings.

At a glance

  • The graph runs in the device, without a PC
  • Simulation on the PC, without a device
  • Live values at the outputs as soon as the device is connected
  • The graph can be read back from the device

Trying it costs nothing

The software is free and runs without a connected device. Every device can be opened and viewed offline.

Download