Skip to content

Releases: arisona/nova

Nova 3.0.0

Choose a tag to compare

@arisona arisona released this 11 Oct 07:39

Nova 3.0.0

Nova 3.0.0 replaces the Java server with a new server written in Rust. It brings new content, one shared set of artistic controls, display calibration and a redesigned web app.

Highlights

  • New Rust server. A single binary replaces the Java/Maven server, with the web app built in. Hardware syncs keep a fixed 20 ms schedule; a sync the server misses is skipped rather than sent late.
  • New content. Six modules: Orion's Belt, a noise field that moves from horizontal layers to per-voxel grain, plus Andromeda, Betelgeuse, Oort Cloud, Pleiades and Tannhäuser Gate, which merge the 27 Java content classes into five.
  • Artistic controls. Every module uses the same controls: Brightness, Palette, Heat, Flow, Form and Void. Slow "tides" add subtle variation over time. Flow 0 freezes the display completely.
  • Curated palettes. Twelve palettes, tuned on the physical display.
  • Display calibration. Gamma and white balance per channel, adjusted against test patterns on the display. The defaults were measured on Nova hardware.
  • Redesigned web app. Icon-only sliders, palettes and content chosen by tapping, a settings page and a calibration page.
  • Desktop simulator for developing without the hardware.
  • Experimental audio. A small synthesizer on the server, shaped by the same controls. Off by default.

Reliability and security

  • Modules are reset automatically when they power up, restart or change address.
  • The display goes dark when Nova stops: Ctrl+C, systemctl stop, or Reload server in the web app.
  • A settings file that cannot be read is set aside, and Nova starts with defaults.
  • The control API rejects requests from other websites and DNS rebinding. There is still no authentication, so never expose Nova's port to the internet.

Upgrading from 2.1

  • Java is no longer needed. Set up the Raspberry Pi again by following doc/raspberry_pi_setup.md: build with Rust 1.94 or newer, then run in place or as a systemd service.
  • Settings move from settings.conf to nova_settings.json, which is created on first start and not migrated. Set the module address in the web app; enter a layout of several modules under modules in the settings file.

Full Changelog

release_2_1_0...release_3_0_0

Nova Control 2.1.0

Choose a tag to compare

@arisona arisona released this 12 Jan 12:41

Update to JDK 23 and a couple of UI adjustments.

Nova Control 2.0.0

Choose a tag to compare

@arisona arisona released this 13 Jun 06:23

This is a complete refresh of the original Nova control app, including a new Web UI for control and configuration.