Memory Palace User Guide

memorypalace

#1

This post is the prototype User Guide for Memory Palace and will be heavily edited and expanded as we move through the product launch and into post release development.

Video Inputs/Outputs

  • Alpha + RGB Inputs. Suitable for LZX format 1V DC signals. Video sources must already be synchronous to Memory Palace, and can be converted from external sources using Visual Cortex or TBC2 modules.
  • Luma + RGB Outputs. LZX format 1V DC signals for patching to other LZX compatible video synth modules or devices.
  • Aux Input + Slider. This input responds to LZX format 1V DC signals up to full video bandwidths, and its function can be defined via Menu Page #1.
  • CVBS & S-Video Outputs. These outputs are the same signal as present on the Luma + RGB outputs.
  • DVI-D Output. Uncompressed digital video output in RGB 8:8:8 colorspace. You can use the included DVI-D to HDMI adapter if HDMI connection is needed, or a DVI-D to HDMI cable. Currently supported are weave interlaced 480p60 (while in NTSC/480i mode) and 576p50 (while in PAL/576i mode.) Output resolution and deinterlacing options will be expanded in future updates.

Linear Parameters (Slider + CV + MIDI CC)

These 12 parameters operate internally at 12-bits resolution (4096 values). Some of them are unipolar (0% to 100%) and some of them are bipolar (-100% to 100%). The slider position, control voltage and MIDI CC (if received) are summed together to determine the resulting value. CV inputs are sampled and updated at the beginning of each video frame, and suitable for low frequency control voltages like LFOs, controllers like the Escher Sketch module, and sequencer outputs.

  • HUE. Color control #1. Controls hue rotation +/-360 degrees.
  • SATURATION. Color control #2. Controls saturation from 0% to 200%.
  • CONTRAST. Color control #3. Controls contrast from 0% to 200%.
  • WIDTH. Keyer control #1. Controls the width between upper and lower key thresholds from 0% to 100%.
  • CENTER. Keyer control #2. Controls the center offset of upper and lower key thresholds from 0% to 100%.
  • SOFTNESS. Keyer control #3. Controls key edge softness from 0% (hard) to 100% (soft.)
  • DELAY. Memory control. Controls frame delay from 0 to 60 frames.
  • ZOOM. Warp control #1. Controls image size from 50% to 200%.
  • ASPECT. Warp control #2. Controls image aspect ratio from +/-100%.
  • ROTATION. Warp control #3. Controls image rotation +/-180 degrees.
  • X POSITION. Warp control #4. Controls image offset +/-360 pixels.
  • Y POSITION. Warp control #5. Controls image offset +/-240 (or +/-288 for PAL) pixels.

Boolean Parameters (Illuminated Pushbutton + Trigger Input + MIDI Notes)

These 13 parameters are either in an ON or OFF state. They can be controlled from the illuminated pushbuttons on the frontpanel at all times, by MIDI note commands (when received) and by the external trigger input (when selected on Menu Page #5.) In the case of multiple competing sources, the incoming events are XORed together (they invert each other’s states.)

  • A/B. Toggles between two different presets for menu options on Menu Page #1, so it can be used to program in a toggle between two different option configurations. For example, if you want to swap between Warp + Chroma Key and Paint + Luma Key with an external trigger, you could do it with the A/B function.
  • FREEZE. Freeze frames the ARGB input source. If triggered after the first Freeze event, 1 single new frame is captured and then frozen. To unfreeze, use the CLEAR button.
  • CLEAR. Unfreezes the ARGB input source when frozen.
  • COLORIZE. Motion control enable for HUE slider. When enabled, HUE slider will set the motion speed and direction.
  • INVERT. Inverts the keyer (has the effect of swapping the FG/BG layers.)
  • SCAN. Motion control enable for CENTER slider. When enabled, CENTER slider will set the motion speed and direction.
  • TILE. Enables buffer tiling for the warp processor (zoom out to see the effect.)
  • REFLECT. Extends the edges of the warp processor transformation to the extents of the buffer. (zoom out to see the effect.)
  • X MIRROR. Mirrors the warp transformation across the horizontal axis.
  • Y MIRROR. Mirrors the warp transformation across the vertical axis.
  • SPIN. Motion control enable for ROTATION slider. When enabled, ROTATION slider will set the motion speed and direction.
  • X SCROLL. Motion control enable for X POSITION slider. When enabled, X POSITION slider will set the motion speed and direction.
  • Y SCROLL. Motion control enable for Y POSITION slider. When enabled, Y POSITION slider will set the motion speed and direction.

Firmware Update Procedure

Memory Palace is a complex and powerful platform. We will likely be releasing firmware updates regularly for several months. It’s a good idea to keep backups of your SD card contents (the json files and any still images you’ve added) and to keep your system updated regularly.

  • Download the latest firmware release zip file from our GitHub repository located at https://github.com/lzxindustries/firmware/tree/master/memorypalace
  • On the second menu page, select Enable USB Access and connect Memory Palace to your computer via the supplied USB cable or any USB-A to USB-MiniB cable. Memory Palace’s rear mounted MicroSD card should appear as a USB Mass Storage Device.
  • Copy the contents of the downloaded zip file onto the MicroSD card, taking care especially to write over the existing BOOT.bin file.
  • Unplug your USB cable and then select Disable USB Access on Memory Palace. Your system will reboot.
  • On the second menu page, select Update Firmware. After firmware has been updated, your system will reboot again.
  • Verify successful firmware update by checking the version number on the second menu page.

System Recovery Procedure

On the event that your Memory Palace will not boot up at all, you can perform system recovery by booting directly from a BOOT.bin file placed in the root directory of your MicroSD card.

  • Power off your EuroRack case entirely and remove your module.
  • On the rear of Memory Palace, remove the MicroSD card from its hinged connector. To do this, push gently upward on the hinged connector (away from the power connector), and then lift it upwards to access the MicroSD card. The MicroSD card can now be removed.
  • Mount the MicroSD card on your computer. It’s good practice to do a fresh reformat in FAT32 file system to ensure no corrupted data.
  • Follow the firmware update instructions above to copy the latest firmware onto your formatted MicroSD card.
  • Remount the MicroSD card on the rear of Memory Palace. To lock the hinged connector, place the MicroSD card in place, close the lid over it, and gently push downward (towards the power connector.)
  • Hold down the “BOOT FROM SD” button located on the rear of Memory Palace. While holding, power on your EuroRack case and wait for the system to boot up.
  • Once the system has booted, follow the normal firmware update procedure by going to the second menu page and selecting Update Firmware.
  • In the event that system recovery fails, please contact LZX Industries support at support@lzxindustries.net.

Recommended Internal/External Sync Configurations

Syncing With Visual Cortex

  • Memory Palace External Sync Mode with Visual Cortex as master sync generator (preferred)
  • Memory Palace Internal Sync Mode with Visual Cortex as slaved device (supported)

Syncing With Vidiot & Cadet I Sync Generator

  • Memory Palace Internal Sync Mode, Vidiot/C1 as slaved device (preferred)
  • Memory Palace External Sync Mode, Vidiot/C1 as master sync generator (unsupported, unless Vidiot/C1 are synchronized to a separate external source)

Still Image Loading

Still images are stored on the MicroSD card included with Memory Palace, as subfolders under /stills directory. For example, /stills/animals may contain several photographs of animals. To transfer files, you can access the SD card storage via the frontpanel USB port as described in the firmware update procedure. Currently still image loading is slow and features are minimal. We will continue to expand these features as we are able.

Current Limitations & Recommendations

  • Supported file formats include BMP, JPG/JPEG, PNG and GIF (non animated.)
  • PNG and GIF may include alpha layers (currently experimental) for full motion graphics capability.
  • Up to 32 subfolders and 32 images per subfolder are allowed (others are ignored)
  • Up to 2MB filesize (larger files are ignored) and
  • 32-bit ARGB 8:8:8:8 colorspace support
  • We recommend you resize all images to your native resolution. This is 720x480 pixels for NTSC/480i modes and 720x576 pixels for PAL/576i modes.

MIDI CC & Note Control

The current MIDI implementation is basic. MIDI channel can be selected from menu page 2. Select pinout for the TRS MIDI in/thru connectors on the rear of the module.

  • MIDI CC controls all slider positions, starting with the HUE parameter at CC#0 and ending with the Y POSITION parameter at CC#11. All parameters respond to 14-bit MIDI commands, with LSB on CC#32-43.
  • MIDI Notes starting with middle C control illuminated pushbuttons, with the AB button controlled by MIDI Note #60 thru the Scroll Y responding to MIDI Note #72.

Trigger Input Control

The trigger input can be assigned to any of the illuminated pushbuttons on menu page #4. A positive trigger will invoke a change on the relevant parameter.

Menu Page 1: Routing & Options

This is the menu page that displays on bootup. There are 6 user adjustable options as well as graphics for the current routing block diagram and a live preview of all slider setting values.

  • PATH. This option defines the overall signal routing of the instrument, and provides a context for the INS and OUTS parameters. The two options available are:
    • Warp. This path places the transform parameters inside a keyer feedback loop, for feedback trails and fractal generation
    • Paint. This path is geared towards video painting into a frame buffer. The transform parameters effect the incoming video feed before the keyer feedback.
  • KEY. This option defines the keyer mode for transparency between foregrand and background layers.
    • Luma. The keyer source is the luma (Y/grayscale value) of the RGB input colors.
    • Chroma. The keyer source is the chroma (UV/color components) of the RGB input colors.
    • Alpha. The keyer source is the alpha (A) channel input.
  • INS. This option defines the input sources fed into the routing of the currently selected PATH.
    • ARGB. Alpha+RGB video 1V DC inputs on frontpanel.
    • Still. Internally stored still image (selected from menu page 3.)
    • Split. ARGB is sent to the first input point in the currently selected PATH, and Still image is sent to the second input point.
    • Swap. Still image is sent to the first input point in the currently selected PATH, and ARGB is sent to the second input point.
  • OUTS. This option defines the input sources fed into the routing of the currently selected PATH.
    • Pre. Analog outs and DVI are both taken from the first output node of the currently selected PATH.
    • Post. Analog outs and DVI are both taken from the second output node of the currently selected PATH.
    • Split. Analog out is taken from the first output node of the currently selected path, and DVI out is taken from the second.
    • Swap. Analog out is taken from the second output node of the currently selected path, and DVI out is taken from the first.
  • AUX. This option defines the function of the aux input channel, which includes the Aux CV input, slider, and MIDI CC value.
    • Alpha. The aux channel is summed with the alpha input, providing a secondary alpha input and opacity control
  • CSC. This option defines the functionality of the color parameters (Hue, Saturation, and Contrast.)
    • HSV. Hue, Saturation, and Contrast mode.
    • RGB. Red, Green and Blue mode.
  • THRS. This option defines the functionality of the keyer threshold parameters (Width & Center.)
    • Wndw. Window key mode. Width controls key width, Center controls center of the two threshold values.
    • Split. Window key mode. Width controls lower threshold, Center controls upper threshold.
    • Sngle. Single key mode. Width is disabled and Center controls keyer threshold.
  • SCAL. This option defines the functionality the warp scaling controls, Zoom & Aspect.
    • Cam. Camera mode. Zoom controls image size and Aspect controls its aspect ratio.
    • Gfx. Graphics mode. Zoom controls image width and Aspect controls image height.

Menu Page 2: Global Settings

This page is for selection of various global settings, as well as actions for firmware update and settings restoration.

  • ROT ASPECT. This option relates to the geometry of the rotation control in the warp processor and does not otherwise effect the video resolution. Input and output on Memory Palace are anamorphic and aspect ratio are defined by the display.
    • 4:3. Rotation control is accurate for 4:3 display aspect ratios.
    • 16:9. Rotation control is accurate for 16:9 display aspect ratios.
  • CV SCALE. This option selects the scale of the CV inputs.
    • 1V. CV inputs respond to 0% = 0V, and 1V = 100%.
    • +/-1V. CV inputs respond to -100% = -1V, 0V = 0%, and 1V = 100%.
    • 5V. CV inputs respond to 0% = 0V, and 5V = 100%.
  • MIDI. This option selects the MIDI channel for MIDI CC/Note receiving.
    • Omni. MIDI input responds to all channels.
    • Ch1 - 16. MIDI input only responds to selected channel.
  • FORMAT. Note, in external sync mode the video format is auto-detected based on the sync signal present on the rear RCA sync in/thru jacks. In internal sync mode, a format may be selected.
    • NTSC/480i. 720x480 internal buffer resolution, 29.97 frames per second, interlaced video.
    • PAL/576i. 720x576 internal buffer resolution, 25 frames per second, interlaced video.
  • Enable USB Access. Enables the frontpanel USB port, for accessing the MicroSD card as USB Mass Storage Device.
  • Restore Defaults. Restores default settings for all parameters across the entire instrument. Any changes that have been made will be overwritten.
  • Update Firmware. See firmware update instructions above.
  • Reset Firmware. Restore firmware to the factory default version your unit shipped with.
  • Hardware/Firmware Versions. At the bottom of the screen are displayed the hardware and firmware revision numbers. These may be useful when reporting any issues or verifying your version.

Menu Page 3: Still Image Selection

This page is for selection of still images and still image folders. Images are stored on the MicroSD card and can be accessed via frontpanel USB port. Still image folder names and image names are scanned and populated on bootup. See Still Image Loading section above for more details.

  • FOLDER. Select subfolder located in the /stills/ directory of your MicroSD card.
  • STILL. Select an image file located in the selected subfolder.

Menu Page 4: Slider/CV Parameter Tuning Options

This page offers fine tune parameters for the slider and CV input parameters.

  • S-CURVE. Adjusts the response of the slider, either expanding the fine tune range of values near the center of the range (positive S-Curve values) or expanding the fine tune range of values near the outer edges of the range (negative S-Curve values.)
  • SLEW. Adjusts the slider’s slew reponsiveness.
  • CV POLARITY. Adjusts the CV input’s summing mode, either adding (+) or subtracting (-) from the slider position.
  • DEADBAND. Adjusts the deadband region of the slider, for null position. Smaller values will narrow the deadband range, and larger values will make it easier to zero out the selected parameter using the slider.

Menu Page 5: Button Control Options

This page offers settings for control of the illuminated pushbutton parameters.

  • TRIGGER. On/off control that determines if the selected parameter responds to the external trigger input.

WORK IN PROGRESS. We will continue adding more FAQs and other general usage notes you will need to make full use of the Memory Palace firmware at launch over the next few days. Now is a great time to address any of your installation concerns or questions by posting in this thread.


MIDI (or OSC!) to CV?