← Commit history

altium-lane: reference/altium-0.2.76.json updated (216 verbs: the 14 batch-1 sch_* wiring verbs added to the still-unreleased 0.2.76). Not regenerated: standard-lane regenerates

Colby Knox ·d007880169 ·14d ago ·parent 826d7ae
1 file changed +550
reference/altium-0.2.76.json+550
@@ -3345,6 +3345,556 @@    "summary": "Place a component from a .SchLib onto an EXISTING sheet at a position, with its library parameters (MPN, Manufacturer, distributor numbers) and its footprint link.",    "timeoutSeconds": 120   },+  {+   "example": {+    "kinds": [+     "wires",+     "labels"+    ],+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "The ids feed sch_delete_wire, sch_edit_label, sch_junction and sch_edit. Parts are in schematic_data.",+   "input": {+    "kinds": "[wires, buses, busEntries, labels, powerPorts, junctions, noConnects, texts, sheets] (default all)",+    "sheet": "path to the schematic sheet file (required)"+   },+   "longRunning": false,+   "name": "altium_sch_items",+   "output": {+    "busEntries": "[{id, at, end}]",+    "buses": "[{id, from, to}]",+    "counts": "{kind: int}",+    "junctions": "[{id, at}]",+    "labels": "[{id, text, kind: local|global|hierarchical, at, rotation}]",+    "noConnects": "[{id, at}]",+    "powerPorts": "[{id, net, at}]",+    "sheets": "[{id, name, file, at, sizeMm}]",+    "texts": "[{id, text, at}]",+    "wires": "[{id, from, to}]"+   },+   "pitfalls": [+    "A wire is one straight segment: a polyline drawn in the editor is several wires sharing ends.",+    "Altium items have no stable id: an id is the item's kind plus a hash of its geometry, valid until the item changes; every edit answers the new ids."+   ],+   "related": [+    "altium_schematic_data",+    "altium_sch_pins",+    "altium_sch_delete_wire",+    "altium_sch_edit_label"+   ],+   "statusVerb": null,+   "summary": "List a sheet's wiring items with ids and coordinates: wires, buses, bus entries, net labels (local, global, hierarchical), power ports, junctions, no-connect markers, texts and sheet symbols. Read only. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "references": [+     "U1",+     "R5"+    ],+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "at is where a wire or label must land on the pin. connectedPins lists the other pins on the same copper on this sheet.",+   "input": {+    "connections": "bool, default true: add what touches each pin",+    "references": "[\"U1\", \"R5\"] (default every part)",+    "sheet": "path to the schematic sheet file (required)"+   },+   "longRunning": false,+   "name": "altium_sch_pins",+   "output": {+    "pins": "[{ref, number, name, type, at: [x, y], direction: right|left|up|down as seen, hidden, touching: [{kind, id}], nets: [string], connectedPins: [Ref.Pin]}]"+   },+   "pitfalls": [+    "Nets here come from this sheet's wires and labels only: netlist gives the project-wide nets.",+    "Hidden power pins (hidden:true) connect by name, not by wire."+   ],+   "related": [+    "altium_sch_connect_pins",+    "altium_sch_connect",+    "altium_schematic_data",+    "altium_netlist"+   ],+   "statusVerb": null,+   "summary": "Every pin of the named parts on a sheet: its absolute position (rotation and mirror applied), number, name, electrical type, the side it leaves the body, and the wires, labels and nets touching it. Read only. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "at": [+     109.22,+     73.66+    ],+    "sheet": "C:/proj/Power.SchDoc"+   },+   "hint": "Read with the tool's own rules: wire ends join wires and wire middles (a T), labels and junction dots join a wire anywhere along it, pins join wire ends.",+   "input": {+    "at": "[x, y] mm on the sheet (the tool's sheet origin, y up) (required)",+    "sheet": "path to the schematic sheet file (required)",+    "toleranceMm": "number, default 0.05"+   },+   "longRunning": false,+   "name": "altium_sch_trace_point",+   "output": {+    "crossingWithoutJunction": "bool: two wires cross here without connecting",+    "items": "[{kind, id, at}]",+    "nearest": "[x, y]: the nearest connectable point, when nothing is within tolerance",+    "nets": "[{name, pins: [Ref.Pin], labels, powerPorts, wires, leavesSheet: bool}]"+   },+   "pitfalls": [+    "One sheet only: a net that leaves through a global, hierarchical or power label (leavesSheet:true) continues on other sheets. netlist gives the compiled net."+   ],+   "related": [+    "altium_sch_pins",+    "altium_netlist"+   ],+   "statusVerb": null,+   "summary": "Everything electrically connected at a point on a sheet: the wires, labels, pins, junctions, sheet pins and no-connect markers there, and for each net they belong to the whole net with its name. Read only. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "points": [+     [+      110.49,+      60.96+     ]+    ],+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "The wiring verbs add the dots they need on their own; use this for a T made by hand, or to clean up.",+   "input": {+    "dryRun": "bool, default false: answer the plan and change nothing",+    "points": "[[x, y], ...] mm: where to add dots",+    "remove": "[id or [x, y], ...]: dots to remove",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)"+   },+   "longRunning": false,+   "name": "altium_sch_junction",+   "output": {+    "added": "[{id, at}]",+    "notNeeded": "[[x, y]]: added dots where fewer than three items meet (legal, but they join nothing extra)",+    "removed": "[id]",+    "saved": "bool",+    "skipped": "[[x, y]]: points that already had a dot"+   },+   "pitfalls": [+    "Items join only where their coordinates match exactly: use pin ends from sch_pins, or points on the sheet's grid."+   ],+   "related": [+    "altium_sch_items",+    "altium_sch_split_wire",+    "altium_sch_delete_wire"+   ],+   "statusVerb": null,+   "summary": "Add junction dots at points, or remove dots by id or point. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "label": "D[0..7]",+    "points": [+     [+      203.2,+      50.8+     ],+     [+      203.2,+      101.6+     ]+    ],+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "A bus carries the nets its label names, and each member wire needs its own label. sch_connect_to_bus does the member wires, entries and labels for a set of pins.",+   "input": {+    "dryRun": "bool, default false: answer the plan and change nothing",+    "label": "\"D[0..7]\" or \"{SDA SCL}\": the nets the bus carries",+    "points": "[[x, y], [x, y], ...] mm (required)",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)"+   },+   "longRunning": false,+   "name": "altium_sch_bus",+   "output": {+    "ids": "[bus segment id]",+    "label": "{id, text} or null",+    "saved": "bool"+   },+   "pitfalls": [+    "A bus with no label carries nothing: ERC reports its members as unconnected."+   ],+   "related": [+    "altium_sch_bus_entry",+    "altium_sch_connect_to_bus",+    "altium_sch_delete_wire",+    "altium_sch_items"+   ],+   "statusVerb": null,+   "summary": "Draw a bus as a polyline (one bus segment per pair of points), optionally with a bus label such as D[0..7] or a group {SDA SCL} at its first point. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "entries": [+     {+      "at": [+       200.66,+       63.5+      ],+      "direction": "up-right"+     }+    ],+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "end is the bus side of each entry; onBus says whether it lands on a bus segment.",+   "input": {+    "dryRun": "bool, default false: answer the plan and change nothing",+    "entries": "[{at: [x, y] mm (the wire end), direction: up-right|down-right|up-left|down-left as seen (default down-right)}] (required)",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)"+   },+   "longRunning": false,+   "name": "altium_sch_bus_entry",+   "output": {+    "added": "[{id, at, end: [x, y] (the bus side), onBus: bool}]",+    "saved": "bool"+   },+   "pitfalls": [+    "The bus side must touch a bus and the other end a wire end, exactly, or ERC reports the entry as unconnected."+   ],+   "related": [+    "altium_sch_bus",+    "altium_sch_connect_to_bus",+    "altium_sch_items"+   ],+   "statusVerb": null,+   "summary": "Add 45-degree bus entries: the short diagonal that joins a member wire's end to a bus. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "at": [+     110.49,+     60.96+    ],+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "Split a wire where a new branch should join it, then wire to the cut.",+   "input": {+    "at": "[x, y] mm on the sheet (the tool's sheet origin, y up) (required)",+    "dryRun": "bool, default false: answer the plan and change nothing",+    "id": "the wire's id, when several wires pass through the point",+    "junction": "bool, default true",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)"+   },+   "longRunning": false,+   "name": "altium_sch_split_wire",+   "output": {+    "ids": "[first half (keeps the wire's id), second half (new id)]",+    "junction": "{id, at} or null",+    "saved": "bool"+   },+   "pitfalls": [+    "The point must lie on the wire and not at either end (not_on_wire otherwise).",+    "Both halves get new ids: Altium ids follow geometry."+   ],+   "related": [+    "altium_sch_delete_wire",+    "altium_sch_junction",+    "altium_sch_items"+   ],+   "statusVerb": null,+   "summary": "Split the wire through a point into two wires there, with a junction dot at the cut, so a new branch can end on a wire end. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "from": [+     100.33,+     60.96+    ],+    "sheet": "C:/proj/Main.SchDoc",+    "to": [+     120.65,+     60.96+    ]+   },+   "hint": "Read ids with sch_items. from/to matches one segment, not a whole route.",+   "input": {+    "at": "[x, y] mm: every wire passing through the point",+    "dryRun": "bool, default false: answer the plan and change nothing",+    "from": "[x, y] mm, with to: the wire with exactly these ends (either order)",+    "ids": "[wire id, ...]",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)",+    "to": "[x, y] mm"+   },+   "longRunning": false,+   "name": "altium_sch_delete_wire",+   "output": {+    "deleted": "[{id, from, to}]",+    "junctionsRemoved": "[[x, y]]",+    "saved": "bool"+   },+   "pitfalls": [+    "A polyline drawn in the editor is several wires sharing ends: from/to names one segment of it.",+    "An Altium wire is one polyline: deleting it removes all its segments; split it first to cut one out."+   ],+   "related": [+    "altium_sch_items",+    "altium_sch_split_wire",+    "altium_sch_junction",+    "altium_sch_connect_pins"+   ],+   "statusVerb": null,+   "summary": "Delete wires or bus segments by id, by their two ends, or every wire through a point, and remove junction dots that no longer join three or more items. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "edits": [+     {+      "by": [+       0,+       2.54+      ],+      "net": "VOUT"+     }+    ],+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "text picks every label with that text (or the one at at); net picks every label of the net. Read ids with sch_items.",+   "input": {+    "dryRun": "bool, default false: answer the plan and change nothing",+    "edits": "[{id | text (with at?: [x, y] to pick one) | net (every label of the net), rotation?: 0|90|180|270, to?: [x, y] mm (one label only), by?: [dx, dy] mm, rename?: string}] (required)",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)"+   },+   "longRunning": false,+   "name": "altium_sch_edit_label",+   "output": {+    "edited": "[{id, text, at, rotation}]",+    "failed": "[{edit, error}]",+    "saved": "bool"+   },+   "pitfalls": [+    "A label joins a net only where it sits on a wire or a pin end: moving it off disconnects it.",+    "rename changes only the labels picked: other labels with the old name stay on the old net."+   ],+   "related": [+    "altium_sch_items",+    "altium_sch_connect",+    "altium_sch_edit"+   ],+   "statusVerb": null,+   "summary": "Edit net labels: rotate, move to a point or by a delta, rename, or move every label of a net at once. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "sheet": "C:/proj/Main.SchDoc",+    "texts": [+     {+      "at": [+       50.8,+       30.48+      ],+      "bold": true,+      "sizeMm": 2.54,+      "text": "USB input stage"+     }+    ]+   },+   "hint": "Net names are labels, not text: use sch_connect for them. Newlines in text become line breaks.",+   "input": {+    "dryRun": "bool, default false: answer the plan and change nothing",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)",+    "texts": "[{text, at: [x, y] mm, rotation?: 0|90|180|270, sizeMm?: 1.27, justify?: \"left bottom\", bold?: false, italic?: false}] (required)"+   },+   "longRunning": false,+   "name": "altium_sch_text",+   "output": {+    "added": "[{id, text, at}]",+    "saved": "bool"+   },+   "pitfalls": [+    "Altium sizes text in points; sizeMm is converted (10 pt is about 2.54 mm). Text is one line."+   ],+   "related": [+    "altium_sch_items",+    "altium_sch_edit_label"+   ],+   "statusVerb": null,+   "summary": "Add free text to a sheet (a note, a title, a design comment) with size, angle, justification, bold and italic. Text has no electrical meaning. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "pairs": [+     {+      "from": "U1.1",+      "to": "R2.1"+     },+     {+      "first": "v",+      "from": "U1.2",+      "to": "C3.1"+     }+    ],+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "Pins are matched by number, then by name. Aligned pins get one straight wire; otherwise the route turns once. Check the result with sch_pins (connectedPins) or run_erc.",+   "input": {+    "dryRun": "bool, default false: answer the plan and change nothing",+    "pairs": "[{from: \"U1.1\", to: \"R5.2\", first?: h|v (the leg to draw first; default along the axis the from pin points), via?: [[x, y], ...] mm waypoints}] (required)",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)"+   },+   "longRunning": false,+   "name": "altium_sch_connect_pins",+   "output": {+    "failed": "[{from, to, error}]",+    "junctionsAdded": "[[x, y]]",+    "routes": "[{from, to, points: [[x, y]], ids: [wire id]}]",+    "saved": "bool",+    "wired": "int"+   },+   "pitfalls": [+    "The route does not avoid part bodies or other wires: a leg running along another wire merges the two nets. Steer with first or via, and check with sch_pins."+   ],+   "related": [+    "altium_sch_pins",+    "altium_sch_connect",+    "altium_sch_delete_wire",+    "altium_run_erc"+   ],+   "statusVerb": null,+   "summary": "Wire pins to pins on a sheet by Ref.Pin: an L-shaped route (one horizontal and one vertical leg) for each pair, with a junction dot wherever a route meets an existing wire in a T. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "busLabel": "D[0..1]",+    "pins": [+     "U1.1",+     "U1.7"+    ],+    "prefix": "D",+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "Members name the nets: members lists them in pin order, or prefix plus start counts up. Refused with entry_off_bus when an entry would miss the bus: extend the bus with sch_bus first.",+   "input": {+    "bus": "id of the bus segment (default the only bus on the sheet)",+    "busLabel": "\"D[0..7]\": also label the bus",+    "dryRun": "bool, default false: answer the plan and change nothing",+    "entry": "up|down (a vertical bus) or left|right (a horizontal bus): the way the entries lean",+    "members": "[\"D0\", \"D1\"]: the member names in pin order",+    "pins": "[\"U1.1\", \"U1.2\"] Ref.Pin, in member order (required)",+    "prefix": "\"D\": or name members prefix + number",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)",+    "start": "int, default 0: the first number with prefix"+   },+   "longRunning": false,+   "name": "altium_sch_connect_to_bus",+   "output": {+    "busLabel": "string or null",+    "connected": "[{pin, member, wireId, entryId}]",+    "failed": "[{pin, error}]",+    "saved": "bool"+   },+   "pitfalls": [+    "Pins should face the bus; a pin facing away gets a wire across its own part.",+    "Two pins at the same height on a vertical bus share an entry point and collide: offset them or lean the entries differently."+   ],+   "related": [+    "altium_sch_bus",+    "altium_sch_bus_entry",+    "altium_sch_pins"+   ],+   "statusVerb": null,+   "summary": "Fan pins onto a bus: for each pin a wire running to the bus, a 45-degree bus entry onto it and a member label (D0, D1 ...) on the wire. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "box": [+     90,+     40,+     160,+     120+    ],+    "by": [+     25.4,+     0+    ],+    "sheet": "C:/proj/Main.SchDoc"+   },+   "hint": "Parts move by their anchor point. Move by a pure dx or a pure dy to keep stretched wires straight.",+   "input": {+    "box": "[x1, y1, x2, y2] mm (required)",+    "by": "[dx, dy] mm (required)",+    "dryRun": "bool, default false: answer the plan and change nothing",+    "junctions": "bool, default true: move junctions and no-connect markers",+    "labels": "bool, default true: move labels and texts",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)",+    "wires": "bool, default true: move wires, buses and bus entries"+   },+   "longRunning": false,+   "name": "altium_sch_move_region",+   "output": {+    "moved": "{parts, wires, buses, busEntries, labels, texts, junctions, noConnects, sheets: [id]}",+    "saved": "bool"+   },+   "pitfalls": [+    "A wire with one end in the box stretches diagonally when dx and dy are both non-zero.",+    "Keep the move on the sheet's grid, or pins and wires stop meeting.",+    "A multi-part component whose parts sit on both sides of the edge splits up."+   ],+   "related": [+    "altium_sch_edit",+    "altium_sch_items"+   ],+   "statusVerb": null,+   "summary": "Move everything inside a box by (dx, dy): parts, wire ends inside the box (wires crossing its edge stretch), labels, junctions, no-connect markers, texts, bus entries and sheet symbols. One undo step. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },+  {+   "example": {+    "dryRun": false,+    "sheet": "C:/proj/Power.SchDoc",+    "toleranceMm": 0.5+   },+   "hint": "Only dangling wire ends move. Read the moves before applying them: diagonal:true means the snapped wire is no longer horizontal or vertical. Check with run_erc after.",+   "input": {+    "dryRun": "bool, default TRUE",+    "save": "bool, default true: save the sheet after the edit",+    "sheet": "path to the schematic sheet file (required)",+    "toleranceMm": "number, default 0.5"+   },+   "longRunning": false,+   "name": "altium_sch_fix_connectivity",+   "output": {+    "moves": "[{wireId, from, to, onto: {kind, id}, diagonal: bool}]",+    "saved": "bool",+    "unresolved": "[[x, y]]: dangling ends with nothing close"+   },+   "pitfalls": [+    "dryRun defaults to true: nothing changes until dryRun:false.",+    "A wide tolerance can snap onto the wrong pin: keep it under half the sheet's grid."+   ],+   "related": [+    "altium_sch_trace_point",+    "altium_run_erc"+   ],+   "statusVerb": null,+   "summary": "Snap near-miss wire ends onto the pin, label, sheet pin or wire end they almost touch, within a tolerance. dryRun (the default) lists the moves; dryRun:false makes them. Coordinates are mm in the sheet's frame (Altium's own, y up), the EDA Bridge Standard's schematic frame.",+   "timeoutSeconds": 120+  },   {    "example": {     "connections": [