Skip to content

v0.2.0

Latest

Choose a tag to compare

@mikesmitty mikesmitty released this 29 Oct 01:09
eb4175f

0.2.0 (2026-10-28)

Features

  • api: serve decoder definitions, identify decoders and read or write CVs by name (fe05057)
  • decoder: lay out ESU decoders' own function mapping (0eb896c)
  • decoder: load a family as a whole and read a decoder's address (c1d3e1a)
  • decoder: read JMRI's decoder definitions from a folder, GitHub or the archive (fa25659)
  • decoder: resolve decoder definitions, identify decoders and address their CVs (63d9be0)
  • driving: drive trains to a stop at a stop marker (2265087)
  • interlocking: set routes, lock their turnouts and release them behind trains (4ddfe25)
  • programmer: read CVs on the main over RailCom (0b7e67a)
  • release: ship a Windows build and sign macOS and Windows builds (2fe8df8)
  • replace: move what names a node over to its replacement (cc893d2)
  • roster: cars and trains made up of locomotives and cars (9a52fd3)
  • roster: check the decoder on the programming track before work on it (79f813f)
  • roster: keep changes not written yet with a decoder's CV values (1d5e252)
  • roster: keep each locomotive's decoders with their CV values and import a JMRI roster (95c9fee)
  • roster: keep imported CV values apart until the decoder is read (3d8c1dd)
  • roster: keep named setups of a decoder's values to load again (69e72a7)
  • roster: track a session of work on each decoder (641939c)
  • run on Windows (771befb)
  • sim: a simulated layout with trains running on the track plan (94b050c)
  • sim: simulate an ESU decoder with paged CVs on the programming track (a537348)
  • tracking: follow trains on the track plan from RailCom reports (d4edc16)
  • tracking: measure a train's speed at each step it holds (748e0c5)
  • trackplan: correct a stray in a line without starting over (2c62e35)
  • trackplan: draw the track plan and work out its topology (2b74186)
  • trackplan: draw the track plan to scale and import RailModeller layouts (23427dd)
  • trackplan: rotate the background image (cdcd4fb)
  • trackplan: select many, then move, turn or delete them together (1b527a9)
  • trackplan: trace a background image from planning software (fae3435)
  • trackplan: zoom and move the plan in its canvas (f08f2fe)
  • train: make up LCC consists on the command station (7872ce6)
  • train: show track power as the command stations report it (8efbcc2)
  • transport: list Linux serial ports by their by-id names (d05f461)
  • web: a Roster page with each locomotive's decoders and the JMRI import (d9dafd0)
  • web: ask before Write page writes values not read from the decoder (270d91f)
  • web: change a decoder's settings by name (0ee87ef)
  • web: name train nodes for their locomotives (382a6bf)
  • web: read imported values on Write page instead of writing them (7f572eb)
  • web: say how many values a decoder profile load takes as they are (c12e4fa)
  • web: show ESU function maps and keep changes not written yet (5559650)
  • web: show imported CV values as not read yet (4f47052)
  • web: show the roster entry on a train node's page (f8b4a5a)
  • web: show where each decoder setting's value came from (e0d2593)
  • web: trust only values read or written in this session for writes (302d5eb)
  • withrottle: serve throttle apps over WiThrottle (8cae230)

Bug Fixes

  • decoder: say plainly when the definitions folder does not exist (6714d4d)
  • entity: ask detectors which locomotives they see (7a15c9a)
  • memconfig: reply to a requester known only by its alias (5b83cae)
  • nodeconfig: show a node's new name as soon as it is written (86884fd)
  • release: stop release binaries reporting a modified tree (8c7ddbb)
  • tracking: list only trains a detector has seen (1556460)
  • trackplan: draw diagonals freehand without a staircase (f7515a9)
  • trackplan: keep Look Up off the drawing grid (8275dd1)
  • trackplan: place Kato's 248 mm single crossovers, one double crossover (12864eb)
  • traction: count only 06.01.00.00 node IDs as train nodes (5a36583)
  • web: pad the Decoder settings panel and line up the Programming page (a9756e9)
  • web: widen the navigation rail so Programming and Automations fit (2fbd8db)

Miscellaneous

  • docs: set up Prettier (a7835b5)
  • have git blame skip the docs formatting commit (9fd0f3d)
  • have git blame skip the Prettier formatting commit (091794b)
  • remove a binary committed by mistake (60b2b3e)
  • web: set up Prettier (1cbed1b)

Documentation

  • describe decoder settings and their sources (dcdabaf)
  • describe imported CV values waiting for a read (a9f0b24)
  • describe the ESU function map and changes kept until written (415a269)
  • describe the roster, its decoders and the JMRI import (c7fd2c0)
  • design: describe the goals without comparing Interlock to JMRI (704d8ba)
  • design: list consist support under Later (04aeff9)
  • design: plan decoder programming as Phase 7 (a0edaf2)
  • explain the setting lamps and decoder sessions (9fcd0c0)
  • readme: describe Interlock without comparing it to JMRI (9d4be24)

Performance

  • decoder: fetch a definition's files several at a time (61a5d6b)

Refactoring

  • roster: rename decoder setups to decoder profiles (0d79545)

Tests

  • train: change the simulated decoder under the station's lock (f77bf13)