Skip to main content

What's New

Release notes and updates for the Branch AutoCAD plugin.

v1.1.3Latest

Friday, August 21, 2026 at 2:43 PM
Download

Notes

  • Signed Leaf Solar Design updater release for Branch2025 PR #165. Includes the sibling LeafPlatformBridge.bundle in the real in-app update artifact and prevents stale bridge reuse on SkipBridge. Release source includes Branch2025 merges b966a373, 5ab8837b, and b8ffc156. Rollback: reinstall or update to v1.1.2.1.

v1.1.2(2 patches)

Monday, July 27, 2026 at 7:18 AM
Download

Fixed

  • The reader only recognised PVcase-written blocks. Branch-written blocks
  • `LEAFSAT` assigned each row's layer by name, which failed against any
  • **Command outcome reporting across the palette**: dozens of operations (add/assign strings, inverter add/move/balance/position, homeruns, feeder routing, cable/yield/PVsyst exports, terrain promotion, mesh diff, pile mapping, shadow curtains) now report what happened — success, counts, or the specific reason they didn't run — instead of finishing silently.
  • **Live progress on long operations**: solves, string emission, shade simulation, pile drawing, site map fetches, mesh diffs, and palette auto-processing stream progress and keep the UI responsive instead of appearing frozen.
  • **Crash fixes**: hardened `LEAFLOGIN` against a frame crash, guarded tracker-to-panel-group conversion against a hard AutoCAD crash, fixed divide-by-zero in inverter/equipment placement, clamped the flow selector to prevent a palette crash, fixed a combiner-insertion document lock, and added global exception handlers so background faults surface as messages instead of killing AutoCAD.
  • **Drawing recognition robustness**: strings stored as legacy polylines, lines, curved paths, or XData are all detected and counted consistently; L2 equipment (inverters, PCS, electrical skids) is recognized by more block-name aliases, and unrecognized hardware is disclosed with a warning instead of silently dropped.
  • **Drawing units respected everywhere**: piling, layout metrics, and terrain shadow scaling all resolve the active drawing's units consistently.
  • **Step readiness accuracy**: electrical status counts are unified, yield export validates readiness (including feeder cabling and complete electrical data) before running, and the project summary gates on actual completion.
  • **Site imports behave**: the satellite raster underlay stays below your linework, re-runs after drawing changes, and lidar failures fall back gracefully with clamped grid sizes.
  • **GPU shading stability**: shade kernel launches are chunked, dependencies preload correctly, heatmap ray data persists, the panel shade datum auto-binds to the topo surface, and CPU worker counts are capped so the machine stays usable.
  • **String sizer results**: the hero voltage number paints red on a cold-Voc failure with a suggestion to try a different design standard, and racking defaults follow the project type.
  • **Sign-in flow**: the "Sign in required" prompt now includes a Sign in now button, auth expiry surfaces as a visible message, and login no longer risks a progress-palette crash.
  • **`LEAFTOPO`**: emits to ModelSpace (not the current viewport space) and reads the drawing's LATITUDE/LONGITUDE system variables first.
  • **Dialog polish**: Cancel buttons and sensible defaults added where missing, honest MPPT labels, inline guidance instead of focus-stealing modals, and Meters spelling corrected in the terrain units prompt.
  • **SolarEdge PDF import**: selection filters to panel groups so unrelated geometry can't be picked up.
  • **CEC database import**: bundled CEC CSV header variations parse correctly.
  • **Auto-updater**: cleans stale ProgramData bundles during the elevated update phase.

Added

  • **Ground-mount (PVCase parity) flow in the palette**: a new flow selectable in Project Setup that recognizes PVCase tracker blocks and civil linework (roads, fences, vegetation) directly, walks the ground-mount steps end-to-end, and adds string sizing options at the final step. `LEAFSETFLOW` switches the active flow from the command line.
  • **Lightweight cabling engine (`LEAFLITE` commands)**: a fast C# cabling path with a native `LEAFCABLEVIEW` renderer palette and ribbon button. Simulate before you commit — preview geometry matches the committed result exactly — then write the full cable set to the drawing in one replace. Includes a Direct-feeders toggle (straight combiner-to-inverter runs instead of the nearest-lane comb) and a "Feeders → drawing" button that erases and re-draws feeder routes. Adopt mode is the default: `LEAFLITEPLACE` works with your existing inverter positions and never moves them.
  • **Combiner and skid tools**: `LEAFSKIDRECONCILE` reconciles skid assignments, `LEAFPVCASESOLVE` runs a headless string/inverter solve, and homerun routing can now run through the cloud solver end-to-end.
  • **Terrain shading**: shadow curtains are drawn and stored in the drawing with streamed progress and diagnostics, a shade-compare launcher, and per-blocker explanations of what is casting shade on a selected area. Fence linework drapes to terrain and vegetation canopy heights interpolate so shading inputs reflect the real site.
  • **Site import from map**: fit a satellite/lidar site import to selected geometry, with auto-sized satellite requests, tiled large lidar fetches, vegetation height-mass import, and a mesh-diff viewer (with palette action) to compare terrain surfaces. 3DFACE terrain can be promoted straight to `LEAFTOPO`.
  • **Pile mapping**: piles map by racking block and tracker blocks seat on generated piles, with pre-scan and save progress shown throughout.
  • **PVsyst scene export**: export controls wired into the palette, with clear outcome reporting and a shade-fallback marker when full shade data isn't available.
  • **REopt integration re-enabled**: energy-model calls now pull location from the drawing's geolocation, and a profile comparison view lets you review scenarios side by side.
  • **Per-tracker-type string lengths**: `SOLVE` can assign different string lengths per tracker type, and stringing now addresses individual modules inside panel blocks (in-block panel references).
  • **Panel layer auto-detect**: the palette's Panel Groups step suggests candidate panel layers automatically, with a stricter detector that skips detail/legend/key layers.
  • **Frame group commands**: `LEAFFRAMEGROUPLIST`, `LEAFFRAMEGROUPRENAME`, and `LEAFFRAMEGROUPDELETE` manage tracker frame groups from the command line.
  • **Hardware catalog additions**: TMEIC NINJA-840 inverter and First Solar FS-Series 7 535W module.
  • **Palette accessibility**: tooltips and help text across the rooftop palette steps.

Changed

  • **REopt calls route through the Leaf proxy** — no local API key setup required for the default path.
  • **Ground-mount electrical steps** now share the same panel sequence as the Rooftop flow, so the two flows feel consistent.
  • **Command rename**: `PostionInv` is now `PositionInv`; the old misspelled name still works as a deprecated alias.

v1.1.1(3 patches)

Tuesday, April 28, 2026 at 8:49 PM
Download

Fixed

  • **Auto-updater signing**: artifacts inside the update ZIP (`LeafUpdate.exe` + all plugin DLLs) are now properly code-signed. v1.1.1.1 shipped with unsigned files in the ZIP because the signing script hardcoded the project root path — when the release was built from a worktree, signing happened against the wrong directory while packaging used the worktree's never-signed bundle. End-users on v1.1.1.1 saw "Unknown publisher" UAC prompts and the update silently failed (AutoCAD fell back to the prior signed version on restart).
  • Deep search status flow stabilized after removing the legacy progress form.

Changed

  • No functional plugin changes vs v1.1.1.0 / v1.1.1.1. This is still a verification build for the auto-update path. End-users updating from v1.1.1.0 (or stuck on v1.1.1.1) should now see `LEAFVERSION` report `1.1.1.2` after the updater runs and AutoCAD restarts.
  • Build-digit bump for verifying the in-plugin auto-updater. Source code is byte-identical to v1.1.1.0 — no functional, UI, or behavioral changes. The only difference end-users will see is the version string ticking from `1.1.1.0` → `1.1.1.1` after the updater hot-swaps DLLs.
  • Palette steps refreshed across Zones, PanelGroups, Solve, Inverter, Homeruns, Export, ReOpt, Settings, and StringSizer to integrate combiner placement and cable sizing.
  • StringHomerun export and options forms reworked; OptimizerResultForm and StringSizer input/popup/result forms updated for the new pipeline.
  • TrunkRouter, HomerunSolution, AutoFillSimulator, CableTransferEngine, Inverter, and StringPlacement updated to feed the combiner + cable-sizing engines.

Added

  • **Combiner auto-placement** — new `LEAFCOMBINERAUTO` workflow places L1 combiner boxes from string layout: detects alleys between panel groups, partitions strings, picks centroid + snap positions, validates NEC voltage drop, and writes L1↔L2 assignments. Includes new combiner step panel and placement guide card in the palette.
  • **Cable sizing post-processor** — NEC-driven cable + conduit sizing applied automatically after routing: NEC OCPD sizing, conduit fill engine, project-level cable defaults, and pluggable wire gauge provider.
  • **Schedule tables** — new `LEAFINSERTSCHEDULES` command inserts equipment / string / combiner schedule tables directly into the drawing via a registry-driven table builder.
  • **Deep search history** — persistent history of deep-search runs with a status form and on-demand recall (replaces the old progress dialog).
  • **Equipment + assignment dialogs** — new `EquipmentTypeDialog` and `AssignModeDialog` for clearer per-step decisions.

v1.1.0

Wednesday, April 8, 2026 at 12:46 PM
Download

Security Hardening Release

    Changed

    • **Telemetry privacy controls** — new registry-based opt-out at `HKCU\Software\AEC BIM Tools Ltd\Branch\TelemetryMode`. Three modes:
    • **Full** (default) — all events with full payloads
    • **Errors** — only command execution, exceptions, and lifecycle events
    • **Off** — minimal anonymized billing pings only (no PII, no drawings, no stack traces)
    • **Bug report drawing attachment** now defaults to unchecked — attaching your DWG is always an explicit opt-in

    Removed

    • Removed hardcoded Google Geocoding API key from shipped binary (zip-code lookup now returns gracefully with no network call; server-side proxy planned)
    • Removed hardcoded NREL API keys from shipped binary
    • Disabled REOPT command pending server-side API proxy (command was also using incorrect hardcoded coordinates)

    Notes

      Start free trial — 14 days free