Glow IDE

visual studio code + glow-ide extension

Microsoft’s free cross-platform open-source Visual Studio Code editor with the Glow IDE extension provides an all-in-one editor, compiler, and simulator to create and view animations.

No external hardware is needed to get started, and sample animations will get you up to speed quickly. For you makers out there, the Elektra LED development board is available.

Refer to the Prerequisites, Install, & Usage sections below to get started.


IntelliSense features

  • Syntax coloring to provide at-a-glance syntax validation.
  • Auto-closing brackets & quotes.
  • Code snippets to rapidly insert commands.



Compiler features

  • Generates binary output interpretable by devices running Glow OS.
  • Line-specific warning/error messages.
  • Checks the rom/ram/thread usage of your animation.

Starting build...
Device threads usage: 19.5% (50 of 256 threads).
Device RAM usage: 2.4% (608 of 25,000 bytes).
Device ROM usage: 1.3% (2,624 of 200,000 bytes).
Build completed successfully.


Simulator features



Cross-platform

Glow IDE extension is a cross-platform project for Linux, Windows 7, Windows 8.1, Windows 10.


Prerequisites

  1. If you haven’t already, download and install Microsoft Visual Studio Code.


Install

  1. Install Prerequisites (see above).
  2. Follow install instructions at the Microsoft Visual Studio Code Marketplace.


Usage

  1. Open Visual Studio Code
  2. Type Ctrl+Alt+S to open the glowscript samples folder.
  3. Select test.glows glowscript file. A Build button will appear in the status bar.
  4. Click the Build button to compile the glowscript file. Build status and any compilation warnings/errors will be displayed in the panel. On successful build, Play, Stop and Resume buttons appear in the status bar.
  5. Click the Play button to run the glowscript code in the simulator.


Known issues

  • Depending on the animation complexity and your computer’s performance/workload, the simulator may stutter/delay/not-render. Troubleshoot by running test.glows to confirm whether a basic animation will render. For more complex animations, glowscript’s tickIntervalMillisecs value can be increased to reduce CPU load. however, the time values in your animation code will probably need to be adjusted since they must be a multiple of the tickIntervalMillisecs value.
  • LED color gamma correction is not yet supported.
  • Animation code stepping is not yet supported.
  • Only 64-bit OS architectures are supported.
  • On Linux only: compiler & simulator executables will by default not have execute permission. To grant execute permissions, run the following commands in a linux terminal:
    chmod +x ~/.vscode/extensions/ledartstudio.glow-ide-0.1.0/lib/compiler/linux/x64/glow-compiler
    chmod +x ~/.vscode/extensions/ledartstudio.glow-ide-0.1.0/lib/simulator/linux/x64/simulator-elektra-20
    chmod +x ~/.vscode/extensions/ledartstudio.glow-ide-0.1.0/lib/simulator/linux/x64/simulator-matrix-10x10


Telemetry

No telemetry data is collected/transmitted by the Glow IDE extension.