STRUCTURE Firmware

Here is the latest STRUCTURE firmware, followed by the previously released versions. Instructions listed below.

structure_v4.4.fw

This release is for bug fixes only
* GUI drawing code had memory overwrite problem in two different sections of code, now fixed
* NODE had default values not being set on initialization, causing random problems
* Assignments in MODMATRIX for key/gate/MIDI were not displaying properly, especially for PRESET selection, now fixed
* Images of wrong size were not displaying error properly to know what was wrong, now fixed to give more information
* CLIP loading state was not working properly under certain system settings and has now been updated to work properly

structure v4.3

* New NODESET : IMG->EFX1->EFX2
* New NODESET : IMG->EFX1->EFX2->EFX3
* 7 new EFX shaders: colorQuantize, crtLines, pixelArtFilter, rainbowWarpAI, someGlitch, tile, tsunTangent
* 19 new GEN shaders: basicBlocks, busyBarcodes, chomp, chromaticSpin, com64, dropBarMorph, frets, glowEgg, hueWobble, hypnoRights, laceCandyAI, modPetals, pixelKalied, quadBlooms, ribbonDance, swatches, triangleTwiser, twirl, vortexRings
* 2 new VXY shaders: cautiontape, staticlines
* FIXED: crash when automating EFX bypass every once in awhile
* FIXED: random and NODESET change were causing a crash
* FIXED: cued shader was breaking main page functions
* FIXED : Auto rotate reset on performance was not working properly


structure v4.2

New v4.2 Features/Updates:
* Image folders! At root or in a performance, selectable in IMG node and saved to presets
* Added an undo for random, use next on main display page to get to button
* Live text can be changed with encoder, with some other functions like delete, insert, left, right for when you do not have a keyboard with you
* Note modulator added with system setting to select channel, modulo 12 of notes (support 4)
* Scrolling IMG shaders added; tileAngle, tileDrift, tileHoriz, tileOffset, tileVert
* New NODESET:VID->EFX->FBK1
* New NODESET:VID->EFX->FBK1->MIX1
* New NODESET:VID->EFX1->FBK1->EFX2
* “rps” 2D program added (Rock Paper Scissors)
* Clips in performance were not loading, fixed
* ALL/FILTERED fixed on NODE filtering page
* Better messaging when CLIP files are not the right format

New v4.1 Features/Updates:
* Added other modes to RAST; H, V and Both
* Reworked RAST rotation/translation code, used quarterions now, much better control
* Added Z position to RAST
* Added auto rotation to RAST (pick X, Y or Z)
* Motion control recording visual added
* REL mode removed with Motion Control
* Slew added for Motion control
* Motion control actions added (swap 1/2, invert 1 or 2, reverse 1 or 2
* Transport action controls for Motion Control ( pause, stop, start, restart)
* Increased coarseness of Time Adjust parameter (less encoder rotations needed now)
* Action added, Reset Time Adjust back to 1.0
* FFT algorithm reworked so bar ballistics match expectations
* 4 corner mapping added to SYSTEM menu, and reset to go back to full screen
* Fix: Reworked audio thread so now no intermittent slowdown happens during render
* Fix: LEM should not restore when overridden
* New NODESET: VID->EFX1->GEN->3D
* New NODESET: VID->FBK1->GEN->3D
* New NODESET: IMG->CLIP->VID->WIPE
* New NODESET: IMG->VID->CLIP->WIPE
* New NODESET: IMG->EFX1->CLIP->MIX
* New Shaders, FBK: moveLum, hueLuminer
* New Programs, 2D: chillCity, fallingBoxes
* New Shader, AUD: colorTest
* New Shader, GEN: c64style
* New Program, TXT: xysCenter

structure v4.1

New v3.9 Features/Updates:
* LMH Visuals on the modulation page now, show over end of CV1X. Can be turned on/off in the systems settings
* Fixed LMH code that wasn’t working properly, now those modulators, based of audio coming in CV1X, work properly
* Changed sort algorithm for MOD MATRIX add page, now the order makes more sense
* Fixed bug with changing node sets while also using random, that would crash the system
* Changed message to say CLIPS OFF if the clip system is turned off in the system settings
* On the filter page, you can push the encoder to back out of the menu (instead of having to hit exit)
* Added system menu option “Save/Recall Nodeset filter in PERF” which will allow you to save your current filter settings into a performance and recall them when a performance is loaded.
* 13 New EFX shaders: crt, desaturate, rp_ba_color, rp_retro-v2, rp_vba-color, skew, crosshatch, downSample, edgy, lightbright, numbers, sinhash, staircase
* 8 New GEN shaders: blobTunnel, stereoish, bluemod, quadtcircles, quadtree, redbluescan, scansines, snow
* 11 New AUD shaders: 2dpyramid, distortcircles, flame, hue radar, quantbar, spiral, starflame, trineon, vumeter, watercolor, wireye

structure v3.9

New v3.8 Features:
* Mod Matrix includes MIDI, Gate and KB assignment list so you can see layout of actions/states in one place
* Mod Matrix monitor for MIDI, Gate and KB on first Mod Matrix page
* Second page of main Mod Matrix page “WRITE SHEET” that will write out a file on the Front SD card labeled Mods_<performance>_reference.txt so you can see all your actions/states mappings in one file
* Added LCD backlight control in the system settings DISPLAY section

structure v3.8

New v3.7 Features :
* Added ability to load every nth frame with clip loading
* Added “Truchet” 2d program
* Bug fixes for Random, Clip loading,
* LFO math changed to double precision

structure v3.7

New v3.6 Features (replaces v3.5 that had a bug):
* Added Slew system for all CV inputs, set in performance settings on PARAMS page
* Fade added for NODE and NODESET random, set in SYSTEM settings
* Gate Out can be decoupled from frame time and send every so many seconds, set in SYSTEM settings
* Next/Previous Preset ACTION, can be set to BANK, WRAP BANK, ALL BANK, WRAP ALL, set in SYSTEM settings (skips empty presets)
* New modulator C LUM added, this looks at center pixel of OUTPUT and calculates LUMA and outputs as a modulator value. In the parameters settings, you can change the slew for this modulator.
* USER screen can be pulled up on PARAMS page as well to watch modulators
* Time Control in MACRO settings now shows -1 to 1 for range on GUI display
* Next/Previous Bank, can set to wrap or not, set in SYSTEM settings
* Performance settings always shown in PARAMS page

structure v3.6

New v3.4 Features:
* Parameter value mapping (1:1, Invert, UpDown, DownUp)
* LFO, Envelope and Math modulation system (relative frequencies)
* Key names and MIDI note names instead of just numbers in various displays
* All text boxes/message boxes rewritten to be clearer
* Added “Prev +1” to CC assignment page for quick consecutive assignments
* Mod Macro saving
* NTE/KEY on modulators page so you can monitor both types of input (for making sure you are seeing input)
* Close/Exit from menus mapped to knob push where appropriate for consistency
* System settings loop backwards so you can quickly get to items near the end faster as well
* New NODESET: VID+GEN+MIX+EFX
* New EFX shaders: downsample + edgy

structure v3.4

New v3.3 Features/Fixes (replaces v3.2):
* New Swap EFX feature (under Actions menu)
* New Nodesets (VXY+EFX1+EFX2,VXY+VID+MIX+FX,VXY+FKB+VID+MIX,TXT+FX+VID+MIX)
* New EFX Shaders: revFisheye, rot90mirror, slantOut, flakey, goodMorning, madeOnWebcam, ngMir5, ngMir6
* New GEN Shaders: angler, cKB-spin, diamondLines, glowBall, greenSquares, groovy, letters, manicMaze, neonStainedGlass, pause, plaid, quads, redBlockUp, shadesLeft, simpleScene, smoothPaints, starBallFabric, trafficLines, vaporFloor, vaporST, vertWaves, zoomingX
* Swap Enter/Encoder button feature (System menu)
*In/outpipes 2D programs respond to time now
* Bug Fix: Loading new performance with clips memory hole

New v3.2 Features/Fixes:
* G2D NODE + G2D NODESETS added
* Support 2 MIDI channels now, one for 2D, one for ACTIONS/STATES
* Fixed variety of other issues

structure v3.3

It is recommended you backup your front SDCard before installing and running 3.2/3.1/3.0 in case a problem occurs with the preset system translation, in case you need to go back to 2.8 for any reason.

INSTRUCTION ON LOADING FIRMWARE

  1. Place the *.fw file dowloaded above to the front “performance” SDCARD. Place in the root directory of the card, this is the only spot that the firmware loader will look.
  2. Put STRUCTURE into firmware mode in one of two ways. If STRUCTURE is OFF, hold the SYSTEM button in while starting structure. If STRUCTURE is already on, go into the SYSTEM menu and select “Open Firmware Menu”.
  3. If you held SYSTEM down as you started STRUCTURE, select the first option “Firmware Menu” and select the RUN button. If you started from the SYSTEM menu, you will already be in the “Firmware Menu”.
  4. If FIRMWARE is found on the front SDCARD, you’ll see “Structure Firmware found on SD card” You can select INSTALL NEW FIRMWARE . A list of FIRMWARE on the card will be listed, and you can select the one you want to install and select INSTALL NEW VERSION.
  5. Once the firmware is installed, exiting out of the FIRMWARE utility will bring you into the new version of the STRUCTURE FIRMWARE.

Previous Versions

structure v3.1

New v3.1 Features/Fixes:
* Added crawler, secBottomLeft text programs
* Fixed bugs in text program loading
* Fixed UI issues

New v3.0 Features/Fixes:
* PRESET SAVE system rewritten, graph at top showing where you are, ability to move, insert, replace, delete into specific positions. Left buttons move through 4 banks on save page.
* Ability to have more than one PERF on card.
* PERF can have their own clip, image, font and text directories inside them.
*Implemented HIDE NODE FILE ability
* Implemented STEP mode for clips
* VXY->TXT->MIX->FBK nodeset added
* Moved MODSET controls to MOD SRC button
*Added UNSAVED for PERF or OVERRIDES visual to main screen
* Added Note/CC detect to MODULATORS page
* Added MIDI/CC reset (panic) action. (Based on current mappings)
* Change location for performance based settings to be within the performance directory structure.
* Added PERF default load to SYSTEM settings
* Fixed problem with font system with fonts missing ‘A’ character
* Fixed problem with SD Card removed detection when fonts loaded from front card

structure v2.8

New v2.8 Features/Fixes:
* New FX Shaders: slowStrobe, sundrench, toon, toonMash
* Added LIVE Text capability
* Added Rand/Walk control VID
* MIDI crash issue fixed with swapping devices
* Fixed TXT loading empty files

structure v2.7

NOTE: V2.7 replaces V2.6, bug fixes.
New v2.7 Features:
* New FX Shaders: domeSphere, grayScaleBands, someHueShifts
* Fixed FX Shader: frameRandPos
* Fixed broken FX shader and shader missing “.” in the name
* Fixed CLIP loading, was skipping every other frame

New v2.7 Features:
* Added GATE OUT signal, pulses at each change of the integer value of time. (ie going from 0.99 to 1.00 in time triggers pulse. Lots of animations use time with 2*PI in sin/cos functions)
* Rewrote MIDI system to be more efficient, tested 16 simultaneously with no performance hit
* Fixed nodeset menus
* Removed node filtering entries if nodes hidden
* NODE hide implemented
* NODESET hide implemented
* Overrides state saves on any override call
* Fixed saving “None” modulator on presets
* VID->RAST->DLY nodeset added
* Fixed slitscan and slitscanA so they work with negative time
* New FB shaders: rolling, sorting,  colorShift, colorWalk
* New FX shaders: badCathode, blankOut, blownOutScreen, edgeCanny, heatFinder, hexEyes, lightTunnel, ngMir2, ohno, rgbThermal, tileCamBoy, toonish, wavy, bgSubtract, hsvSlow, mpegArtifact, frames, framesRandPos
* New DLY shader: t1_drift

New v2.6 Features
* Added GATE OUT signal, pulses at each change of the integer value of time. (ie going from 0.99 to 1.00 in time triggers pulse. Lots of animations use time with 2*PI in sin/cos functions)
* Rewrote MIDI system to be more efficient, tested 16 simultaneously with no performance hit
* Fixed nodeset menus
* Removed node filtering entries if nodes hidden
* NODE hide implemented
* NODESET hide implemented
* Overrides state saves on any override call
* Fixed saving “None” modulator on presets
* VID->RAST->DLY nodeset added
* Fixed slitscan and slitscanA so they work with negative time
* New FB shaders: rolling, sorting,  colorShift, colorWalk
* New FX shaders: badCathode, blankOut, blownOutScreen, edgeCanny, heatFinder, hexEyes, lightTunnel, ngMir2, ohno, rgbThermal, tileCamBoy, toonish, wavy, bgSubtract, hsvSlow, mpegArtifact, frames, framesRandPos
* New DLY shader: t1_drift

structure v2.5

New v2.5 Features:
* Fix for all DLY nodes for program GL pipeline (especially a problem with video)
* New nodeset TXT->RAST
* New RAST shader ‘hueDepth’

NOTE: V2.5 replaces V2.4, bug fix with DLY node.
New v2.4 Features:
* IMG Node redesign, supported shaders that allow for all kinds of image manipulation.
* IMG Node now allows for up to 1024×768 sized images (PNG 24-bit RGB)
* New DLY node, supports dual tap delay, 20 frames of delay. Shaders offer variety of compositing modes with delayed frames.
* New WIPE node, using 3rd input to wipe between both frames.
* New RAST node, similar to Rutt-Etra scan lines. Many parameters included to adjust it.
* USER button now can bring up CV or CPU overlay from anywhere. Select whether they are visible using the SYSTEM menu.
* GPU bug addressed with 3D pipeline and vertex displacements.
* Next/Prev buttons added to parameter “settings” section for quicker changing of enumerated or integer based settings.
* Joystick recording fixed when using SLEW settings.
* Program in TXT, and IMG/FRAG in IMG now support selecting which things are randomized, controlled from the parameters (WALK/RND settings).
* OVERRIDE system fixed for enumerated/indexed settings.
* 2 new GEN shaders added.

structure v2.3

New v2.3 Features (Fixed bug in v2.2):
* New 8 EFX & 10 GEN shaders
* Added 7 FB shader version with no image wrap
* Added visual indicator to macro page to show CV values applied to current macro setting
* VID->TXT->MIX1 added
* Added letters to preset page for CLIP, IMG, TXT
* Selectable AND/OR from SYSTEM menu for NODESET filtering
* Joystick slew and scaling added to SYSTEM menu
* TXT programs added; rndGrid, wordSearch, bwTypeCursCV
* Fixed speed direction of most TXT programs
* Fixed divide-by-zero in TXT program (rgbGraffiti)
* Fixed TXT node bugs, made system more robust
* Fixed audio codec to be more robust
* Override settings fix for recall

New v2.2 Features:
* New Node: TXT (+ NODESETS that use them!)
* New FBK shaders; hueDrift, jitter, jitterFold, logCircle, moveHue, overayHue, overlayLum, overlaySat, randDirFold, tube, tubeWrap
* New EFX shaders; SlitScanA + others
* New GEN shaders
* Added EFX clear back action
* New NODESETS; VID->FBK1-EFX1->EFX2, IMG->FBK1->EFX1->EFX2, CLIP->FBK1->EFX1->EFX2, GEN->EFX->MIX, VID->IMG->3D, CLIP->IMG->MIX->EFX, FBK1->EFX->FBK2 (+ TXT specific sets)
* Ability to delete presets (using NODESET button) from PRESETS page
* CV control of the macro settings BETA

NOTE: V2.3 renamed FBK to FBK1, once you save a PRESET with FBK1, DO NOT go back to an earlier firmware and try to load a newer PRESET, it will not work. (or use a different FRONT card that has no presets instead which will work fine).  This also occurs if you have TXT presets since that node did not exist earlier.

NOTE: V2.3 replaces V2.1, V2.2, bug fix with Macro Time Control.

Bug Fixes:
* Fixed memory leak on Shader loading
* Fixed Save/Recall of Overrides
* Fixed Preset save #

structure v2.0

New v2.0 Features:
* New Macro: Contrast
* New Macro: Colorizer
* 32 MIDI CC Slots now available
* New FBK Shader: angular
* System Menu Setting: Recall Overrides on Startup
* 240p Video Input now supported
* Timing Decouple ability on individual nodes (in Parameters)
* New EFX Shader: strips
* New GEN Shaders: 20 new shaders
* New Node: FREQ (Spectrum analyzer CV1X)
* New Node Sets: CLIP -> AUD and AUFX variants
* Node Set Filtering System now available on NODE SET button.

Bug Fixes:
* Cleaned up VXY, ADC processing and LCD sequencing
* Random fixed on exiting file list with node locks used

structure v1.9

(v1.9 fixed bug in v1.8 with preset recall and time adj values less than 1.0) 

New v1.9 Features:
* VXY NODE added, vector based XY (XY node plots points)
* IMG2 NODE added, allows 2 images to be used together
* handful of SHADERS and NODESETS added for VXY
* New seeding system for random
* NODESET Added: VID+FBK->EFX into MIX added
* NODESET Added: IMG1+IMG2 into MIX1->EFX
* Added card format to system menu (for cards that are not correct)
* New MIX shaders; glitch, glitchScanX, glitchScanY

Bug Fixes:
* 3D System fixed, multiple problems
* Clip load changed to pop up sooner
* Fixed reboot STRUCTURE deadlock
* Adjusted I2C system for low speed ADC

structure v1.7

New v1.7 Features:
* CLIP NODE added (See STRUCTURE page for more details)
* QUICK adjustment added for NODE local time scaling
* VID->EFX12->MIX added
* VID->FBK->EFX added
* XY->FB added
* ‘arotscale’ added to EFX for auto rotation (uses accumulator)
* ‘fold’ added to FBK node, folds feedback back down
* ‘wrap’ added to FBK node, feedback wraps back around (modulus)
* CUE added to main FILE LIST, allows cueing up file changes (action)

Bug Fixes:
* Settings were not restored properly from presets
* VID zoom algorithm fixed
* XY node rewritten, removes discontinuity and plus pixels
* VIDEO in for PAL rewritten, runs at full PAL resolution now
* Black lines of CLIPS removed, part of memory overrun
* CLIP load fixed
* VID->3D fixed
* Depth mode fixed in 3D Node
* Blend mode fixed in 3D Node

structure v1.3

New v1.3 Features:
*Emboss and Frosted added to EFX node shaders
*chromaKey,lumaKey,satKey added to MIX node shaders

New Features:
* New FEEDBACK (FBK) node with additional NODESETS
* BYPASS mode for EFX# nodes (with state/action/params)
* SWAP mode for MIX# node inputs (with state/action/params)
* SDCard directory creation option in system menu added
* Added Input2 to Background mode for 3D params
* Added end bar to CV345 display (turn on in settings)
* Parameter page CV value color changed to CYAN
* Parameter page CV color selectable (system settings)
* Shaders with same name on SDCard override internal shaders
* Preview (selected shader/out) added to main File selection
* Fade in/out on Preset load (selectable in system settings)

Bug Fixes:
* SDCard proper detection for non-proper FAT32 partitions
* Fixed REL mode for motion control/joystick
* Calibrated NTSC/PAL video input rendering
* Fixed FX shaders to all be oriented properly
* Reworked zoomRotate for VID for higher quality

structure v1.0