Skip to content
Rebecca G. Bettencourt edited this page Aug 27, 2014 · 1 revision

RainbowDashboard has 48 commands, listed below in both short and long formats.

All commands that set pixels operate on a temporary buffer to eliminate flicker. SHOW_IMAGE, SHOW_CHARACTER, SHOW_COLOR, and SHOW_PIXEL will immediately switch buffers, so their effects will be immediately visible. Other commands, however, will not switch buffers, so their effects will not be visible until you send the SWAP_BUFFER command.

Short Format Long Format Command Name Description
52 00 00 00 00 72 00 00 00 00 00 00 00 NO_OP Does nothing. (Command number 0 is guaranteed to be ignored.)
52 01 x0 00 ii 72 01 xx yy ii 00 00 00 SHOW_IMAGE Displays a hard-coded image, with wrap-around. See Pictures.
52 02 xr gb ii 72 02 xx yy ii rr gg bb SHOW_CHARACTER Displays an 8x8 ASCII character (erasing any existing image). See Fonts.
52 03 0r gb 00 72 03 00 00 cc rr gg bb SHOW_COLOR Displays a solid color or pixel value. See Pixel Format.
52 04 xr gb yy 72 04 xx yy cc rr gg bb SHOW_PIXEL Sets an individual pixel on the display. See Pixel Format.
52 05 x0 00 ii 72 05 xx yy ii 00 00 00 DRAW_IMAGE Draws a hard-coded image, without wrap-around. See Pictures.
52 06 xr gb ii 72 06 xx yy ii rr gg bb DRAW_CHAR_8x8 Draws an 8x8 ASCII character (on top of an existing image). See Fonts.
52 07 xr gb ii 72 07 xx yy ii rr gg bb DRAW_CHAR_4x4 Draws a 4x4 ASCII character (on top of an existing image). See Fonts.
52 08 0r gb 00 72 08 00 00 cc rr gg bb SET_ALL_COLOR Sets the pixel values of all pixels. See Pixel Format.
52 09 0r gb yy 72 09 00 yy cc rr gg bb SET_ROW_COLOR Sets the pixel values of all pixels in a row. See Pixel Format.
52 0A xr gb 00 72 0A xx 00 cc rr gg bb SET_COLUMN_COLOR Sets the pixel values of all pixels in a column. See Pixel Format.
52 0B xr gb yy 72 0B xx yy cc rr gg bb SET_PIXEL_COLOR Sets the pixel value of a single pixel. See Pixel Format.
52 0C 0r gb 00 72 0C 00 00 cc rr gg bb SET_ALL_BITMAP Sets the colors of all pixels according to a one-bit-per-channel bitmap.
52 0D 0r gb yy 72 0D 00 yy cc rr gg bb SET_ROW_BITMAP Sets the colors of a row according to a one-bit-per-channel bitmap.
52 0E xr gb 00 72 0E xx 00 cc rr gg bb SET_COLUMN_BITMAP Sets the colors of a column according to a one-bit-per-channel bitmap.
52 0F xr gb yy 72 0F xx yy cc rr gg bb SET_PIXEL_BITMAP Sets the color of one pixel according to a one-bit-per-channel bitmap.
(no short ver) 72 10 00 00 vv vv vv vv SET_CLOCK_ADJUST Adjusts the speed of the software clock to compensate for an inaccurate timer. See clocktest.
(no short ver) 72 11 00 00 vv vv vv vv SET_CLOCK_DATE_D Sets the date (in days since January 1, 1970, UTC) and resets the time.
(no short ver) 72 12 00 00 vv vv vv vv SET_CLOCK_DATE_P Sets the date (in days since January 1, 1970, UTC) without resetting the time.
(no short ver) 72 13 00 00 vv vv vv vv SET_CLOCK_TIME Sets the time (in milliseconds since midnight, UTC).
(no short ver) 72 14 00 00 vv vv vv vv SET_CLOCK_ZONE Sets the time zone (in milliseconds added to UTC).
(no short ver) 72 15 00 00 vv vv vv vv SET_CLOCK_DST Sets daylight saving time (in milliseconds added to standard time).
(no short ver) 72 16 00 ii vv vv vv vv SET_REGISTER Sets a user-defined register value. See Pixel Format.
(no short ver) 72 17 00 ss aa ll oo dd SET_ANIM_INFO Sets up an animation slot. See Animation.
(no short ver) 72 18 00 aa v1 00 00 00 SET_ANIM_DATA_1 Sets 1 byte of animation data. See Animation.
(no short ver) 72 19 00 aa v1 v2 00 00 SET_ANIM_DATA_2 Sets 2 bytes of animation data. See Animation.
(no short ver) 72 1A 00 aa v1 v2 v3 00 SET_ANIM_DATA_3 Sets 3 bytes of animation data. See Animation.
(no short ver) 72 1B 00 aa v1 v2 v3 v4 SET_ANIM_DATA_4 Sets 4 bytes of animation data. See Animation.
(no short ver) 72 1C 00 ll gg 00 00 00 SET_GAMMA Sets the gamma for a particular brightness level. (Rainbowduino 2.0 only. This command is ignored on Rainbowduino 3.0.)
(no short ver) 72 1D 00 ff dd ww 00 00 SET_BUFFER If ff is 1 or 3, sets buffer number dd to be the display buffer. If ff is 2 or 3, sets buffer number ww to be the working buffer.
52 1E 00 00 00 72 1E 00 00 00 00 00 00 COPY_BUFFER Copies the display buffer into the working buffer.
52 1F 00 00 00 72 1F 00 00 00 00 00 00 SWAP_BUFFER Swaps the display and working buffers.
52 20 xr gb yy 72 20 xx yy cc rr gg bb SCROLL_BUFFER Scrolls the display x pixels horizontally and y pixels vertically, filling empty pixels with a color.
52 21 xr gb yy 72 21 xx yy cc rr gg bb SCROLL_ROW Scrolls a row (row y) x pixels horizontally, filling empty pixels with a color.
52 22 xr gb yy 72 22 xx yy cc rr gg bb SCROLL_COLUMN Scrolls a column (column x) y pixels vertically, filling empty pixels with a color.
52 23 x0 00 yy 72 23 xx yy 00 00 00 00 ROLL_BUFFER Scrolls the display x pixels horizontally and y pixels vertically with wraparound.
52 24 x0 00 yy 72 24 xx yy 00 00 00 00 ROLL_ROW Scrolls a row (row y) x pixels horizontally with wraparound.
52 25 x0 00 yy 72 25 xx yy 00 00 00 00 ROLL_COLUMN Scrolls a column (column x) y pixels vertically with wraparound.
52 26 x0 00 yy 72 26 xx yy 00 00 00 00 FLIP_BUFFER Flips the entire display horizontally (if x is nonzero) and/or vertically (if y is nonzero).
52 27 00 00 yy 72 27 00 yy 00 00 00 00 FLIP_ROW Flips a row horizontally.
52 28 x0 00 00 72 28 xx 00 00 00 00 00 FLIP_COLUMN Flips a column vertically.
52 29 00 00 00 72 29 00 00 00 00 00 00 INVERT_BUFFER Inverts the display (black becomes white and vice versa).
52 2A 00 00 yy 72 2A 00 yy 00 00 00 00 INVERT_ROW Inverts a row (black becomes white and vice versa).
52 2B x0 00 00 72 2B xx 00 00 00 00 00 INVERT_COLUMN Inverts a column (black becomes white and vice versa).
(no short ver) 72 2C dd ss ii 00 00 00 DRAW_IMAGE_ROW Draws a single row of a hard-coded image. See Pictures. Row s of the image is drawn on row d.
(no short ver) 72 2D dd ss ii 00 00 00 DRAW_IMAGE_COLUMN Draws a single column of a hard-coded image. See Pictures. Column s of the image is drawn on column d.
(no short ver) 72 2E dd ss ii rr gg bb DRAW_CHAR_ROW Draws a single row of an 8x8 ASCII character. See Fonts. Row s of the character is drawn on row d.
(no short ver) 72 2F dd ss ii rr gg bb DRAW_CHAR_COLUMN Draws a single column of an 8x8 ASCII character. See Fonts. Column s of the character is drawn on column d.

RainbowDashboard includes a complete Windows ANSI (CP1252) character set (technically Kreative SuperLatin, a superset) in both 4x4 and 8x8 font sizes, displayed using the SHOW_CHARACTER, DRAW_CHAR_8x8, and DRAW_CHAR_4x4 commands. See Fonts.

It also includes eight built-in images displayed using the SHOW_IMAGE and DRAW_IMAGE commands, the first five of which are identical to the built-in images provided by the standard firmware. See Pictures. Image number 6 is particularly useful when determining desired gamma levels to be set with the SET_GAMMA command.

Clone this wiki locally