# System - OSC
[OSC]

System controls many of the logistics of the Controller Board via OSC. More...

System controls many of the logistics of the Controller Board via OSC.

## Devices

There's only one System, so a device index is not used in OSC messages to it.

## Properties

System has eight properties:

- name
- freememory
- samba
- reset
- serialnumber
- version
- stack-audit
- task-report
- active

Name
  The name property allows you to give a board its own name. The name can only contain alphabetic characters and numbers. To set your board's name, send the message

      /system/name "My Board"

  To read the board's name, send the message

      /system/name

  The board will respond by sending back an OSC message with the board's name.

Free Memory
  The freememory property corresponds to the amount of free memory on the Controller Board. This value is read-only. To get the amount of free memory, send the message

      /system/freememory

  The board will respond by sending back an OSC message with the amount of free memory.

Samba
  The samba property is a write-only value that returns the board to a state in which it's ready to receive new firmware via SAM-BA or mchelper. Once you've set the board to SAM-BA state, unplug and replug the power on the board before uploading new firmware.

  To set the board in SAM-BA state, send the message

      /system/samba 1

  and don't forget to power cycle the board. Remember the board won't be able to send/receive OSC messages until a new program is uploaded to it.

Reset
  The reset property is a write-only value that reboots the board. To reset the board, send the message

      /system/reset 1

Serial Number
  The serialnumber property corresponds to the unique serial number on each Controller Board. This value can be used in situations where a unique value needs to be used to identify a board. The serial number can be both read and written.

  To read the board's serial number, send the message

      /system/serialnumber

Version
  The version property corresponds to the of the firmware currently running on the board. This is read-only.

  To read the board's version, send the message

      /system/version

Stack Audit
  The stack-audit property can fire up a task that will monitor the stack usage of all tasks running on the board. If the remaining stack of any of the tasks drops below 50 bytes, the board will attempt to send an OSC message back via the OSC Debug system to let you know.

  This uses up quite a lot of processor time, so it's really only designed to be used in a debug context.

  To start up the stack audit, send the message

      /system/stack-audit 1

  and turn it off by sending

      /system/stack-audit 0

Task Report
  The task-report property is a read-only property that will generate a list of all the tasks running on your Make Controller, first giving the name of the task followed by the task's remaining stack.

  To see the tasks running on your board, send the message

      /system/task-report

Active
  The active property corresponds to the active state of System. If System is set to be inactive, it will not respond to any other OSC messages. If you're not seeing appropriate responses to your messages to System, check the whether it's active by sending a message like

      /system/active

  You can set the active flag by sending

      /system/active 1