User Tools

Site Tools


You are not allowed to perform this action
commands:rbmode

Command:RBMODE (RM)

MS2000 or RM2000 syntax
Shortcut RM
Format RBMODE [X=control] [Y=axis_byte] [Z=buffer_pointer] [F=mode_byte]
Remembered Using SS Z
Firmware Module Required RING BUFFER
Tiger syntax
Shortcut RM
Format [addr#]RBMODE [X=control] [Y=axis_byte] [Z=buffer_pointer] [F=mode_byte]
Type Card-Addressed
Remembered Using [addr#]SS Z
Firmware Module Required RING BUFFER

Provides control of movement and save operations involving the controller’s internal 50-position ring-buffer (optionally to 250 positions, contact ASI). The LOAD command is used to fill the ring buffer.

The command, without any arguments, sets the TTL input interrupt flag and performs the same operation that a TTL IN0 input pulse would control as determined by the current IN0_mode. See TTL command.

A move to the Next Position may be initiated by:

  • a TTL pulse when the appropriate IN0_mode is selected (See TTL command, IN0_INT Firmware Module Required).
  • a short press and release of the @ button (as long as other special functions are not utilizing the @ button).
  • by the RM command without arguments.

RM X? returns the number of positions defined in the ring buffer (Tiger firmware v2.89+ or MS2000 firmware v9.2g+).

The argument variables are defined as follows

control

0 – Clears the ring buffer (RING_BUFFER firmware required)
1 – Starts array scan (ARRAY_MODULE firmware required)

axis_byte

1-7: Binary value determines which axes are commanded to move; the same axes’ positions are reported using IN0_mode=5. The ordering of axes is generally the order on the card/controller, with the first axis getting the LSB. The axis ordering can also be ascertained using the Z2B command; axis number 0 gets the LSB, axis 1 gets the 2s position in the binary value, and so on. The axis_byte setting also applies to the SERVOLOCK_TTL module and TTL-triggered moves.

buffer_pointer

sets or reads the pointer to the buffer position for the next move. The buffer pointer is zero-indexed, so its maximum value is the one less than the number of positions in the ring buffer.

mode_byte

On Tiger v2.81-2.88 these were on X pseudoaxis instead of F

Lowest two bits are used to specify the mode:

0 – reserved.
1 – TTL triggered mode (default). A TTL pulse or RM command without arguments moves to the next position.
2 – One-shot autoplay mode. A TTL pulse or RM command without arguments plays the ring buffer from the current position to end with a delay between points set by RT Z (make sure delay is set appropriately; e.g. setting 1ms won’t work with motorized stage).
3 – Repeat autoplay mode. Upon a TTL pulse or RM command without arguments, plays from current position continuously in a loop with delay set by RT Z (make sure delay is set appropriately; e.g. setting 1ms won’t work with motorized stage). While running, another trigger causes autoplay to stop. Also enables repeat mode for ARRAY module. Starting v3.24, this mode works on TGLED card too. When TTL X=21, TGLED cycles thru all LED channels without waiting for a TTL trigger.
Bits 3-7 are reserved.
MSB – read-only, set to 1 if ring buffer is auto playing and 0 otherwise

CAUTION: If you are using TTL mode 12 (see the TTL command), the values entered into the ring buffer using the LOAD command represent RELATIVE coordinates, not ABSOLUTE coordinates. You must drive the stage to the appropriate starting position before triggering a ring buffer sequence.
Address: 29391 W Enid Rd. Eugene, OR 97402, USA | Phone: +1 (541) 461-8181
commands/rbmode.txt · Last modified: 2019/05/25 21:14 by jon