Skip to content

Scheduler Commands

Mark Grebe edited this page Aug 19, 2015 · 2 revisions

Scheduler Commands

Create Task

Cmd TaskID Size LSB Size MSB
0xA0 0xXX 0xXX 0xXX

Fields
TaskID - Task ID of task to create.
Size - Number of bytes to read from I2C slave.

Delete Task

Cmd TaskID
0xA1 0xXX

Fields
TaskID - Task ID of task to delete.

Add To Task

Cmd TaskID Prog Byte 0 ... Prog Byte n
0xA2 0xXX 0xXX ... 0xXX

Fields
TaskID - Task ID of task to schedule to run.
Prog - Program data to add to the program (up to Max Frame size - 3)

Schedule Task

Cmd TaskID Millis Byte 0 LSB Millis Byte 1 Millis Byte 2 Millis Byte 3 MSB
0xA3 0xXX 0xXX 0xXX 0xXX 0xXX

Fields
TaskID - Task ID of task to schedule to run.
Millis - Number of milliseconds in the future to start the task execution.

Query Task

Cmd TaskID
0xA4 0xXX

Fields
TaskID - Task ID of task to query status.

Query All Task

Cmd
0xA5

Fields
None

Scheduler Reset

Cmd
0xA6

Fields
None

Scheduler Responses

Response Query Task

Cmd Size LSB Size MSB Length LSB Length MSB
0xA8 0xXX 0xXX 0xXX 0xXX
Pos LSB Pos MSB Millis Byte 0 LSB Millis Byte 1 Millis Byte 2 Millis Byte 3 MSB
0xXX 0xXX 0xXX 0xXX 0xXX 0xXX

Fields
Size - Allocated size in bytes of storage for task
Length - Current length in bytes of program data for task
Pos - Current execution position of task in bytes from start program data
Millis - Number of milliseconds, in board time, to start the task execution.

Response Query All Tasks

Cmd Task IDs Byte 0 ... Task IDs Byte n
0xA9 0xXX ... 0xXX

Fields
Task IDs - n bytes that list all of the created Task ID's