Skip to content

Coming from Codesys

Codesys and its many vendor builds are close to the IEC standard, so nautilus will read like a smaller version of what you know. The rows below say what carries over, what is pursued, and what is declined. Planned means pursued in the parity batch and not available yet.

CodesysnautilusStatus
POU (PROGRAM, FUNCTION_BLOCK, FUNCTION)the same, in .st, .ld, .fbd or .sfcToday
Case-insensitive identifiers (MyVar = MYVAR)the same: any casing names the one declaration, shown as declaredToday, #197
Task configurationtasks: in nautilus.yamlToday
GVL (global variable list)tags in nautilus.yaml or tags/*.yaml, in scope in every program without a declaration (VAR_EXTERNAL stays legal); a function block names the ones it uses in its own VAR_EXTERNALToday, #177
A GVL file of only VAR_GLOBALthe same: a gvl.st with a file-level VAR_GLOBAL block declares globals for every program; one the manifest does not declare is a state tag starting at zero. An initial value goes in the manifest’s init:Today, #175
VAR_GLOBAL CONSTANT shared by the projectthe same, in a lib/ file: every POU sees the constants, folded at compile time; they are not tagsToday, #176
Enumerations (TYPE E : (A, B, C), (A := 1, …))the same: E#A or plain A, CASE labels, comparisons, TO_INT / TO_E; live values show the member nameToday, #238
VAR_TEMPthe same: reset on every callToday, #203
CASE on named constantsthe sameToday, #196
STRUCT, arrays, FUNCTION_BLOCK instancesthe sameToday
VAR_IN_OUTthe sameToday
Library manager, .library filesnot available. A project’s reusable blocks live in lib/; share them between projects by copying files or vendoring with gitDeclined for now, #193
Online forceno force table in the IDE yetPlanned, #192

nautilus SFC is the IEC textual form (STEP, TRANSITION, ACTION), and the editor draws it as a chart.

Codesys SFCnautilusStatus
Step.X, Step.TStep.X, Step.T, an elapsed TIME: ChargeA.T >= T#5MToday
Qualifiers N, S, R, Pthe same, plus P1 and P0Today
Qualifiers L, D, SD, DS, SLthe same, as timed associations: D XV201A_Cmd(T#3S);. Each association has its own timer; see timed qualifiersToday
The IEC textual association Detergent(D, T#3S);read as the same association as D Detergent(T#3S);Today
SFCError and step supervision (maximum step time)STEP Fill (MAXTIME := T#60S, ERROR := FillOverrun): sets a retained Fill.ERR flag when the step stays active longer than the limit. It raises no alarm by itself; a transition or ACTION reads the flag. See step supervisionToday
Alternative branch prioritydeclaration order, first highest. Reordering gestures are plannedToday; gestures #181
Numeric transition prioritynot supported; declaration order is the only ruleDeclined
Transition conditions in LD, FBD or ILnot supported; a transition is an ST expressionDeclined
Action bodies in LD, FBD or ILnot supported; action bodies are STDeclined
Force a step or transition onlinenoPlanned, #192
Step names in the editor, new action, new POUgestures to create an ACTION (#182) and a new empty POU (#179)Planned

See the SFC page for the semantics: one transition per scan from a snapshot, divergence and convergence, and how associations and action bodies interact.