Skip to content

Adding Effects

Milan edited this page Feb 5, 2021 · 5 revisions

Effects in FreeRGB as displayed to the user as clickable buttons in the effects menu. Clicking on an effect button will send the underlying data of that effect to the currently selected device, and optionally to the currently selected strip on this device if applicable.

Initial Startup

Upon first startup of the application, the effects menu will be void of any effects.

Adding Effects

Effects can be added using the add effects button, which will always be present below all effect buttons in the effects menu. Clicking this button will provide the user a popup dialogue where the effect can be setup.

Effect Name

This is simply a user-readable name for the effect that will appear on the effect's button in the effects screen.

Effect Payload

This is the data that will be sent to the device upon the effect being selected. How this data is formatted is governed by the input type selected.

Input Types

  • Integer: The payload will be split into integers, separated by commas.
  • Integer-Char: This is similar to the integer input however if on of the comma-separated inputs cannot be converted to an integer, it will instead be converted to a string literal.
  • ArduRGB: This input type is recommended for most users using the ArduRGB framework. It is an extension of the integer-char input type, however it additional message formatting is added to create a valid ArduRGB message.
  • String: This input type does not separate inputs by commas, and instead treats the whole input as the entire string literal payload.

Keep in mind that formatting rules may slightly differ between communication types. For example, when using serial communication, integers will be converted to bytes, and strings encoded into a bytearray. For more information, please consult the wiki page for the particular message type.

Effect Type

This controls what the user sees when clicking the button and how data is formatted.

For example, a Direct Message effect will simply send the effect's payload to the selected device based on the payload input type, without displaying anything to the user. A Solid Colour effect, however, will ignore anything in the effect's payload field and instead display a colour picker to the user, after which the data from the colour picker is formatted according to the user-selected input type then sent to the selected device.

Effect types can easily be created using the addon system.

Clone this wiki locally