@tscircuit/schematic-trace-solver 0.0.160 → 0.0.161

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/index.d.ts +3 -0
  2. package/dist/index.js +171 -8
  3. package/lib/solvers/AvailableNetOrientationSolver/AvailableNetOrientationSolver.ts +210 -6
  4. package/lib/solvers/TraceCleanupSolver/sameNetRailAlignment/getFixedLabelCoordinate.ts +44 -13
  5. package/package.json +1 -1
  6. package/tests/bug-reports/bug-report-20260706T220324Z/__snapshots__/bug-report-20260706T220324Z.snap.svg +1 -1
  7. package/tests/bug-reports/bug-report-20260728T144234Z/__snapshots__/bug-report-20260728T144234Z.snap.svg +1 -1
  8. package/tests/bug-reports/bug-report-20260728T225606Z/__snapshots__/bug-report-20260728T225606Z.snap.svg +79 -79
  9. package/tests/bug-reports/bug-report-20260730T061837Z/__snapshots__/bug-report-20260730T061837Z.snap.svg +85 -85
  10. package/tests/bug-reports/bug-report-20260731T052229Z/__snapshots__/bug-report-20260731T052229Z.snap.svg +1 -1
  11. package/tests/bug-reports/bug-report-20260804T095800Z/__snapshots__/bug-report-20260804T095800Z.snap.svg +163 -163
  12. package/tests/bug-reports/bug-report-20260804T171919Z/__snapshots__/bug-report-20260804T171919Z.snap.svg +547 -547
  13. package/tests/bug-reports/bug-report-20260804T225912Z/__snapshots__/bug-report-20260804T225912Z.snap.svg +13 -13
  14. package/tests/bug-reports/bug-report-20260805T061316Z/__snapshots__/bug-report-20260805T061316Z.snap.svg +267 -267
  15. package/tests/bug-reports/bug-report-20260806T061548Z/__snapshots__/bug-report-20260806T061548Z.snap.svg +267 -267
  16. package/tests/bug-reports/bug-report-20260806T093501Z/__snapshots__/bug-report-20260806T093501Z.snap.svg +109 -109
  17. package/tests/bug-reports/bug-report-20260811T075142Z/__snapshots__/bug-report-20260811T075142Z.snap.svg +1 -1
  18. package/tests/bug-reports/bug-report-20260815T073240Z/__snapshots__/bug-report-20260815T073240Z.snap.svg +49 -49
  19. package/tests/bug-reports/bug-report-20260819T091818Z/__snapshots__/bug-report-20260819T091818Z.snap.svg +1 -1
  20. package/tests/bug-reports/bug-report-20260825T045913Z/__snapshots__/bug-report-20260825T045913Z.snap.svg +103 -103
  21. package/tests/bug-reports/bug-report-20260825T103621Z/__snapshots__/bug-report-20260825T103621Z.snap.svg +103 -103
  22. package/tests/bug-reports/bug-report-20260826T072956Z/__snapshots__/bug-report-20260826T072956Z.snap.svg +163 -163
  23. package/tests/examples/__snapshots__/example51.snap.svg +568 -568
  24. package/tests/fixtures/convertSolverOutputToCircuitJson.test.ts +16 -1
  25. package/tests/fixtures/convertSolverOutputToCircuitJson.ts +23 -12
  26. package/tests/repros/__snapshots__/board-1273-trace-overlap-cycle.snap.svg +736 -736
  27. package/tests/repros/__snapshots__/board-15984-same-net-junction.snap.svg +79 -79
  28. package/tests/repros/__snapshots__/board1096-usb-label-overlap-iteration.snap.svg +127 -127
  29. package/tests/repros/__snapshots__/repro-bluetooth-controller-ground-decoupling-groups.snap.svg +106 -0
  30. package/tests/repros/__snapshots__/repro-board-589-regulator-section.snap.svg +31 -31
  31. package/tests/repros/__snapshots__/repro-board-648-esp12f-section.snap.svg +121 -121
  32. package/tests/repros/__snapshots__/repro-bq25895-cross-net-trace-overlap.snap.svg +43 -43
  33. package/tests/repros/__snapshots__/repro-core-555-power-cross-net-overlap.snap.svg +19 -19
  34. package/tests/repros/__snapshots__/repro-core-ground-inline-label-fallback.snap.svg +277 -0
  35. package/tests/repros/__snapshots__/repro-core-subcircuit-missing-ground.snap.svg +19 -19
  36. package/tests/repros/__snapshots__/repro-core-tb67s579ftg-inline-label-routing.snap.svg +7 -7
  37. package/tests/repros/__snapshots__/repro-dc-power-isolated-routing.snap.svg +37 -37
  38. package/tests/repros/__snapshots__/repro-hdc2080-ground-label-alignment.snap.svg +137 -0
  39. package/tests/repros/__snapshots__/repro-nrf52810-clock-routing.snap.svg +61 -61
  40. package/tests/repros/__snapshots__/repro-pga300-redundant-ground-traces.snap.svg +115 -115
  41. package/tests/repros/__snapshots__/repro-pmp11282-isolated-dcdc.snap.svg +743 -743
  42. package/tests/repros/__snapshots__/repro-rp2040-usb-cc2-ground-overlap.snap.svg +43 -43
  43. package/tests/repros/__snapshots__/repro-ti-power-output-section.snap.svg +1 -1
  44. package/tests/repros/__snapshots__/repro-tida010076-j4-ground-bus.snap.svg +17 -17
  45. package/tests/repros/__snapshots__/repro-tida010076-page02.snap.svg +1131 -1131
  46. package/tests/repros/__snapshots__/repro-type-c-16pin-self-connection.snap.svg +7 -7
  47. package/tests/repros/__snapshots__/repro-type-c-16pin-to-resistor.snap.svg +7 -7
  48. package/tests/repros/__snapshots__/repro-usb-power-vbus-label-detour.snap.svg +666 -666
  49. package/tests/repros/__snapshots__/repro161-power-section-autolayout.snap.svg +73 -73
  50. package/tests/repros/__snapshots__/repro48-555-timer-vcc-rail-label.snap.svg +73 -73
  51. package/tests/repros/assets/repro-bluetooth-controller-ground-decoupling-groups.input.json +214 -0
  52. package/tests/repros/assets/repro-core-ground-inline-label-fallback.input.json +863 -0
  53. package/tests/repros/repro-bluetooth-controller-ground-decoupling-groups.test.ts +18 -0
  54. package/tests/repros/repro-core-ground-inline-label-fallback.test.ts +34 -0
  55. package/tests/repros/repro-hdc2080-ground-label-alignment.test.ts +239 -0
  56. package/tests/repros/repro-tida010076-j4-ground-bus.test.ts +14 -10
  57. package/tests/repros/repro-tida010076-page02.test.ts +2 -2
  58. package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label02.snap.svg +1 -1
@@ -0,0 +1,863 @@
1
+ {
2
+ "chips": [
3
+ {
4
+ "chipId": "schematic_component_0",
5
+ "center": {
6
+ "x": -4,
7
+ "y": 0
8
+ },
9
+ "width": 2.4749999999999996,
10
+ "height": 1.6,
11
+ "pins": [
12
+ {
13
+ "pinId": "schematic_port_0",
14
+ "displayName": "5V",
15
+ "x": -2.7625,
16
+ "y": 0.6
17
+ },
18
+ {
19
+ "pinId": "schematic_port_1",
20
+ "displayName": "D0",
21
+ "x": -5.2375,
22
+ "y": 0.6
23
+ },
24
+ {
25
+ "pinId": "schematic_port_2",
26
+ "displayName": "D1",
27
+ "x": -5.2375,
28
+ "y": 0.39999999999999997
29
+ },
30
+ {
31
+ "pinId": "schematic_port_3",
32
+ "displayName": "D2",
33
+ "x": -5.2375,
34
+ "y": 0.19999999999999996
35
+ },
36
+ {
37
+ "pinId": "schematic_port_4",
38
+ "displayName": "D3",
39
+ "x": -5.2375,
40
+ "y": -1.1102230246251565e-16
41
+ },
42
+ {
43
+ "pinId": "schematic_port_5",
44
+ "displayName": "D4",
45
+ "x": -5.2375,
46
+ "y": -0.20000000000000007
47
+ },
48
+ {
49
+ "pinId": "schematic_port_6",
50
+ "displayName": "D5",
51
+ "x": -5.2375,
52
+ "y": -0.4
53
+ },
54
+ {
55
+ "pinId": "schematic_port_7",
56
+ "displayName": "D6",
57
+ "x": -5.2375,
58
+ "y": -0.6
59
+ },
60
+ {
61
+ "pinId": "schematic_port_8",
62
+ "displayName": "D7",
63
+ "x": -2.7625,
64
+ "y": -0.6
65
+ },
66
+ {
67
+ "pinId": "schematic_port_9",
68
+ "displayName": "D8",
69
+ "x": -2.7625,
70
+ "y": -0.39999999999999997
71
+ },
72
+ {
73
+ "pinId": "schematic_port_10",
74
+ "displayName": "D9",
75
+ "x": -2.7625,
76
+ "y": -0.19999999999999996
77
+ },
78
+ {
79
+ "pinId": "schematic_port_11",
80
+ "displayName": "D10",
81
+ "x": -2.7625,
82
+ "y": 1.1102230246251565e-16
83
+ },
84
+ {
85
+ "pinId": "schematic_port_12",
86
+ "displayName": "3V3",
87
+ "x": -2.7625,
88
+ "y": 0.20000000000000007
89
+ },
90
+ {
91
+ "pinId": "schematic_port_13",
92
+ "displayName": "GND",
93
+ "x": -2.7625,
94
+ "y": 0.4
95
+ }
96
+ ]
97
+ },
98
+ {
99
+ "chipId": "schematic_component_1",
100
+ "center": {
101
+ "x": 1,
102
+ "y": 0
103
+ },
104
+ "width": 2.8,
105
+ "height": 1.8,
106
+ "pins": [
107
+ {
108
+ "pinId": "schematic_port_14",
109
+ "displayName": "ENABLE",
110
+ "x": -0.3999999999999999,
111
+ "y": 0.7
112
+ },
113
+ {
114
+ "pinId": "schematic_port_15",
115
+ "displayName": "VMOT",
116
+ "x": 2.4,
117
+ "y": 0.7
118
+ },
119
+ {
120
+ "pinId": "schematic_port_16",
121
+ "displayName": "GND_MOTOR",
122
+ "x": 2.4,
123
+ "y": 0.5
124
+ },
125
+ {
126
+ "pinId": "schematic_port_17",
127
+ "displayName": "2B",
128
+ "x": 2.4,
129
+ "y": 0.30000000000000004
130
+ },
131
+ {
132
+ "pinId": "schematic_port_18",
133
+ "displayName": "2A",
134
+ "x": 2.4,
135
+ "y": 0.10000000000000009
136
+ },
137
+ {
138
+ "pinId": "schematic_port_19",
139
+ "displayName": "1A",
140
+ "x": 2.4,
141
+ "y": -0.09999999999999987
142
+ },
143
+ {
144
+ "pinId": "schematic_port_20",
145
+ "displayName": "1B",
146
+ "x": 2.4,
147
+ "y": -0.29999999999999993
148
+ },
149
+ {
150
+ "pinId": "schematic_port_21",
151
+ "displayName": "VDD",
152
+ "x": 2.4,
153
+ "y": -0.49999999999999994
154
+ },
155
+ {
156
+ "pinId": "schematic_port_22",
157
+ "displayName": "GND_LOGIC",
158
+ "x": 2.4,
159
+ "y": -0.7
160
+ },
161
+ {
162
+ "pinId": "schematic_port_23",
163
+ "displayName": "DIR",
164
+ "x": -0.3999999999999999,
165
+ "y": -0.7
166
+ },
167
+ {
168
+ "pinId": "schematic_port_24",
169
+ "displayName": "STEP",
170
+ "x": -0.3999999999999999,
171
+ "y": -0.5
172
+ },
173
+ {
174
+ "pinId": "schematic_port_25",
175
+ "displayName": "SLEEP",
176
+ "x": -0.3999999999999999,
177
+ "y": -0.30000000000000004
178
+ },
179
+ {
180
+ "pinId": "schematic_port_26",
181
+ "displayName": "RESET",
182
+ "x": -0.3999999999999999,
183
+ "y": -0.10000000000000009
184
+ },
185
+ {
186
+ "pinId": "schematic_port_27",
187
+ "displayName": "MS3",
188
+ "x": -0.3999999999999999,
189
+ "y": 0.09999999999999987
190
+ },
191
+ {
192
+ "pinId": "schematic_port_28",
193
+ "displayName": "MS2",
194
+ "x": -0.3999999999999999,
195
+ "y": 0.29999999999999993
196
+ },
197
+ {
198
+ "pinId": "schematic_port_29",
199
+ "displayName": "MS1",
200
+ "x": -0.3999999999999999,
201
+ "y": 0.49999999999999994
202
+ }
203
+ ]
204
+ },
205
+ {
206
+ "chipId": "schematic_component_2",
207
+ "center": {
208
+ "x": 5,
209
+ "y": -2
210
+ },
211
+ "width": 2.3000000000000007,
212
+ "height": 0.5999999999999999,
213
+ "pins": [
214
+ {
215
+ "pinId": "schematic_port_30",
216
+ "displayName": "VMOT",
217
+ "x": 6.15,
218
+ "y": -1.9
219
+ },
220
+ {
221
+ "pinId": "schematic_port_31",
222
+ "displayName": "GND",
223
+ "x": 6.15,
224
+ "y": -2.1
225
+ }
226
+ ]
227
+ },
228
+ {
229
+ "chipId": "schematic_component_3",
230
+ "center": {
231
+ "x": 5,
232
+ "y": 1
233
+ },
234
+ "width": 1.1899999999999995,
235
+ "height": 1,
236
+ "pins": [
237
+ {
238
+ "pinId": "schematic_port_32",
239
+ "displayName": "1A",
240
+ "x": 5.595,
241
+ "y": 1.3
242
+ },
243
+ {
244
+ "pinId": "schematic_port_33",
245
+ "displayName": "1B",
246
+ "x": 5.595,
247
+ "y": 1.1
248
+ },
249
+ {
250
+ "pinId": "schematic_port_34",
251
+ "displayName": "2A",
252
+ "x": 5.595,
253
+ "y": 0.8999999999999999
254
+ },
255
+ {
256
+ "pinId": "schematic_port_35",
257
+ "displayName": "2B",
258
+ "x": 5.595,
259
+ "y": 0.7
260
+ }
261
+ ]
262
+ },
263
+ {
264
+ "chipId": "schematic_component_4",
265
+ "center": {
266
+ "x": 2.5,
267
+ "y": -2.5
268
+ },
269
+ "width": 0.7199999999999998,
270
+ "height": 0.8400000000000007,
271
+ "pins": [
272
+ {
273
+ "pinId": "schematic_port_36",
274
+ "displayName": "pos",
275
+ "x": 2.14,
276
+ "y": -2.5,
277
+ "_facingDirection": "x-"
278
+ },
279
+ {
280
+ "pinId": "schematic_port_37",
281
+ "displayName": "neg",
282
+ "x": 2.86,
283
+ "y": -2.5,
284
+ "_facingDirection": "x+"
285
+ }
286
+ ]
287
+ }
288
+ ],
289
+ "directConnections": [
290
+ {
291
+ "netId": "step",
292
+ "netLabelWidth": 0.6,
293
+ "anchoredNetLabelWidth": 0.6,
294
+ "allowInlineNetLabel": true,
295
+ "inlineNetLabelHeight": 0.12,
296
+ "inlineNetLabelWidth": 0.4,
297
+ "pinIds": [
298
+ "schematic_port_1",
299
+ "schematic_port_24"
300
+ ]
301
+ },
302
+ {
303
+ "netId": "direction",
304
+ "netLabelWidth": 1.2,
305
+ "anchoredNetLabelWidth": 1.2,
306
+ "allowInlineNetLabel": true,
307
+ "inlineNetLabelHeight": 0.12,
308
+ "inlineNetLabelWidth": 0.8,
309
+ "pinIds": [
310
+ "schematic_port_2",
311
+ "schematic_port_23"
312
+ ]
313
+ },
314
+ {
315
+ "netId": "enable",
316
+ "netLabelWidth": 0.84,
317
+ "anchoredNetLabelWidth": 0.84,
318
+ "allowInlineNetLabel": true,
319
+ "inlineNetLabelHeight": 0.12,
320
+ "inlineNetLabelWidth": 0.56,
321
+ "pinIds": [
322
+ "schematic_port_3",
323
+ "schematic_port_14"
324
+ ]
325
+ },
326
+ {
327
+ "netId": "motor_1a",
328
+ "netLabelWidth": 1.08,
329
+ "anchoredNetLabelWidth": 1.08,
330
+ "allowInlineNetLabel": true,
331
+ "inlineNetLabelHeight": 0.12,
332
+ "inlineNetLabelWidth": 0.72,
333
+ "pinIds": [
334
+ "schematic_port_19",
335
+ "schematic_port_32"
336
+ ]
337
+ },
338
+ {
339
+ "netId": "motor_1b",
340
+ "netLabelWidth": 1.08,
341
+ "anchoredNetLabelWidth": 1.08,
342
+ "allowInlineNetLabel": true,
343
+ "inlineNetLabelHeight": 0.12,
344
+ "inlineNetLabelWidth": 0.72,
345
+ "pinIds": [
346
+ "schematic_port_20",
347
+ "schematic_port_33"
348
+ ]
349
+ },
350
+ {
351
+ "netId": "motor_2a",
352
+ "netLabelWidth": 1.08,
353
+ "anchoredNetLabelWidth": 1.08,
354
+ "allowInlineNetLabel": true,
355
+ "inlineNetLabelHeight": 0.12,
356
+ "inlineNetLabelWidth": 0.72,
357
+ "pinIds": [
358
+ "schematic_port_18",
359
+ "schematic_port_34"
360
+ ]
361
+ },
362
+ {
363
+ "netId": "motor_2b",
364
+ "netLabelWidth": 1.08,
365
+ "anchoredNetLabelWidth": 1.08,
366
+ "allowInlineNetLabel": true,
367
+ "inlineNetLabelHeight": 0.12,
368
+ "inlineNetLabelWidth": 0.72,
369
+ "pinIds": [
370
+ "schematic_port_17",
371
+ "schematic_port_35"
372
+ ]
373
+ }
374
+ ],
375
+ "netConnections": [
376
+ {
377
+ "netId": "USB_5V",
378
+ "isGround": false,
379
+ "netLabelWidth": 0.42,
380
+ "netLabelHeight": 0.84,
381
+ "pinIds": [
382
+ "schematic_port_0"
383
+ ]
384
+ },
385
+ {
386
+ "netId": "LOGIC_3V3",
387
+ "isGround": false,
388
+ "netLabelWidth": 0.42,
389
+ "netLabelHeight": 1.2,
390
+ "pinIds": [
391
+ "schematic_port_12",
392
+ "schematic_port_21",
393
+ "schematic_port_25",
394
+ "schematic_port_26"
395
+ ]
396
+ },
397
+ {
398
+ "netId": "GND",
399
+ "isGround": true,
400
+ "netLabelWidth": 0.42,
401
+ "netLabelHeight": 0.48,
402
+ "pinIds": [
403
+ "schematic_port_13",
404
+ "schematic_port_16",
405
+ "schematic_port_22",
406
+ "schematic_port_27",
407
+ "schematic_port_28",
408
+ "schematic_port_29",
409
+ "schematic_port_31",
410
+ "schematic_port_37"
411
+ ]
412
+ },
413
+ {
414
+ "netId": "VMOT",
415
+ "isGround": false,
416
+ "netLabelWidth": 0.42,
417
+ "netLabelHeight": 0.6,
418
+ "pinIds": [
419
+ "schematic_port_15",
420
+ "schematic_port_30",
421
+ "schematic_port_36"
422
+ ]
423
+ }
424
+ ],
425
+ "textBoxes": [
426
+ {
427
+ "chipId": "schematic_component_0",
428
+ "center": {
429
+ "x": -4.5375000000000005,
430
+ "y": 0.915
431
+ },
432
+ "width": 0.7199999999999989,
433
+ "height": 0.25,
434
+ "text": "U_MCU"
435
+ },
436
+ {
437
+ "chipId": "schematic_component_1",
438
+ "center": {
439
+ "x": 0.48,
440
+ "y": 1.0150000000000001
441
+ },
442
+ "width": 1.08,
443
+ "height": 0.2500000000000001,
444
+ "text": "U_DRIVER"
445
+ },
446
+ {
447
+ "chipId": "schematic_component_2",
448
+ "center": {
449
+ "x": 4.91,
450
+ "y": -1.585
451
+ },
452
+ "width": 1.4399999999999995,
453
+ "height": 0.2500000000000002,
454
+ "text": "MOTOR_POWER"
455
+ },
456
+ {
457
+ "chipId": "schematic_component_3",
458
+ "center": {
459
+ "x": 5.585,
460
+ "y": 1.6150000000000002
461
+ },
462
+ "width": 1.6799999999999997,
463
+ "height": 0.2500000000000002,
464
+ "text": "STEPPER_MOTOR"
465
+ }
466
+ ],
467
+ "availableNetLabelOrientations": {
468
+ "GND": [
469
+ "y-"
470
+ ],
471
+ "USB_5V": [
472
+ "y+"
473
+ ],
474
+ "LOGIC_3V3": [
475
+ "y+"
476
+ ],
477
+ "VMOT": [
478
+ "y+"
479
+ ]
480
+ },
481
+ "maxMspPairDistance": 2.4,
482
+ "_chipObstacleSpatialIndex": {
483
+ "chips": [
484
+ {
485
+ "chipId": "schematic_component_0",
486
+ "center": {
487
+ "x": -4,
488
+ "y": 0
489
+ },
490
+ "width": 2.4749999999999996,
491
+ "height": 1.6,
492
+ "pins": [
493
+ {
494
+ "pinId": "schematic_port_0",
495
+ "displayName": "5V",
496
+ "x": -2.7625,
497
+ "y": 0.6
498
+ },
499
+ {
500
+ "pinId": "schematic_port_1",
501
+ "displayName": "D0",
502
+ "x": -5.2375,
503
+ "y": 0.6
504
+ },
505
+ {
506
+ "pinId": "schematic_port_2",
507
+ "displayName": "D1",
508
+ "x": -5.2375,
509
+ "y": 0.39999999999999997
510
+ },
511
+ {
512
+ "pinId": "schematic_port_3",
513
+ "displayName": "D2",
514
+ "x": -5.2375,
515
+ "y": 0.19999999999999996
516
+ },
517
+ {
518
+ "pinId": "schematic_port_4",
519
+ "displayName": "D3",
520
+ "x": -5.2375,
521
+ "y": -1.1102230246251565e-16
522
+ },
523
+ {
524
+ "pinId": "schematic_port_5",
525
+ "displayName": "D4",
526
+ "x": -5.2375,
527
+ "y": -0.20000000000000007
528
+ },
529
+ {
530
+ "pinId": "schematic_port_6",
531
+ "displayName": "D5",
532
+ "x": -5.2375,
533
+ "y": -0.4
534
+ },
535
+ {
536
+ "pinId": "schematic_port_7",
537
+ "displayName": "D6",
538
+ "x": -5.2375,
539
+ "y": -0.6
540
+ },
541
+ {
542
+ "pinId": "schematic_port_8",
543
+ "displayName": "D7",
544
+ "x": -2.7625,
545
+ "y": -0.6
546
+ },
547
+ {
548
+ "pinId": "schematic_port_9",
549
+ "displayName": "D8",
550
+ "x": -2.7625,
551
+ "y": -0.39999999999999997
552
+ },
553
+ {
554
+ "pinId": "schematic_port_10",
555
+ "displayName": "D9",
556
+ "x": -2.7625,
557
+ "y": -0.19999999999999996
558
+ },
559
+ {
560
+ "pinId": "schematic_port_11",
561
+ "displayName": "D10",
562
+ "x": -2.7625,
563
+ "y": 1.1102230246251565e-16
564
+ },
565
+ {
566
+ "pinId": "schematic_port_12",
567
+ "displayName": "3V3",
568
+ "x": -2.7625,
569
+ "y": 0.20000000000000007
570
+ },
571
+ {
572
+ "pinId": "schematic_port_13",
573
+ "displayName": "GND",
574
+ "x": -2.7625,
575
+ "y": 0.4
576
+ }
577
+ ],
578
+ "bounds": {
579
+ "minX": -5.2375,
580
+ "maxX": -2.7625,
581
+ "minY": -0.8,
582
+ "maxY": 0.8
583
+ },
584
+ "spatialIndexId": 0
585
+ },
586
+ {
587
+ "chipId": "schematic_component_1",
588
+ "center": {
589
+ "x": 1,
590
+ "y": 0
591
+ },
592
+ "width": 2.8,
593
+ "height": 1.8,
594
+ "pins": [
595
+ {
596
+ "pinId": "schematic_port_14",
597
+ "displayName": "ENABLE",
598
+ "x": -0.3999999999999999,
599
+ "y": 0.7
600
+ },
601
+ {
602
+ "pinId": "schematic_port_15",
603
+ "displayName": "VMOT",
604
+ "x": 2.4,
605
+ "y": 0.7
606
+ },
607
+ {
608
+ "pinId": "schematic_port_16",
609
+ "displayName": "GND_MOTOR",
610
+ "x": 2.4,
611
+ "y": 0.5
612
+ },
613
+ {
614
+ "pinId": "schematic_port_17",
615
+ "displayName": "2B",
616
+ "x": 2.4,
617
+ "y": 0.30000000000000004
618
+ },
619
+ {
620
+ "pinId": "schematic_port_18",
621
+ "displayName": "2A",
622
+ "x": 2.4,
623
+ "y": 0.10000000000000009
624
+ },
625
+ {
626
+ "pinId": "schematic_port_19",
627
+ "displayName": "1A",
628
+ "x": 2.4,
629
+ "y": -0.09999999999999987
630
+ },
631
+ {
632
+ "pinId": "schematic_port_20",
633
+ "displayName": "1B",
634
+ "x": 2.4,
635
+ "y": -0.29999999999999993
636
+ },
637
+ {
638
+ "pinId": "schematic_port_21",
639
+ "displayName": "VDD",
640
+ "x": 2.4,
641
+ "y": -0.49999999999999994
642
+ },
643
+ {
644
+ "pinId": "schematic_port_22",
645
+ "displayName": "GND_LOGIC",
646
+ "x": 2.4,
647
+ "y": -0.7
648
+ },
649
+ {
650
+ "pinId": "schematic_port_23",
651
+ "displayName": "DIR",
652
+ "x": -0.3999999999999999,
653
+ "y": -0.7
654
+ },
655
+ {
656
+ "pinId": "schematic_port_24",
657
+ "displayName": "STEP",
658
+ "x": -0.3999999999999999,
659
+ "y": -0.5
660
+ },
661
+ {
662
+ "pinId": "schematic_port_25",
663
+ "displayName": "SLEEP",
664
+ "x": -0.3999999999999999,
665
+ "y": -0.30000000000000004
666
+ },
667
+ {
668
+ "pinId": "schematic_port_26",
669
+ "displayName": "RESET",
670
+ "x": -0.3999999999999999,
671
+ "y": -0.10000000000000009
672
+ },
673
+ {
674
+ "pinId": "schematic_port_27",
675
+ "displayName": "MS3",
676
+ "x": -0.3999999999999999,
677
+ "y": 0.09999999999999987
678
+ },
679
+ {
680
+ "pinId": "schematic_port_28",
681
+ "displayName": "MS2",
682
+ "x": -0.3999999999999999,
683
+ "y": 0.29999999999999993
684
+ },
685
+ {
686
+ "pinId": "schematic_port_29",
687
+ "displayName": "MS1",
688
+ "x": -0.3999999999999999,
689
+ "y": 0.49999999999999994
690
+ }
691
+ ],
692
+ "bounds": {
693
+ "minX": -0.3999999999999999,
694
+ "maxX": 2.4,
695
+ "minY": -0.9,
696
+ "maxY": 0.9
697
+ },
698
+ "spatialIndexId": 1
699
+ },
700
+ {
701
+ "chipId": "schematic_component_2",
702
+ "center": {
703
+ "x": 5,
704
+ "y": -2
705
+ },
706
+ "width": 2.3000000000000007,
707
+ "height": 0.5999999999999999,
708
+ "pins": [
709
+ {
710
+ "pinId": "schematic_port_30",
711
+ "displayName": "VMOT",
712
+ "x": 6.15,
713
+ "y": -1.9
714
+ },
715
+ {
716
+ "pinId": "schematic_port_31",
717
+ "displayName": "GND",
718
+ "x": 6.15,
719
+ "y": -2.1
720
+ }
721
+ ],
722
+ "bounds": {
723
+ "minX": 3.8499999999999996,
724
+ "maxX": 6.15,
725
+ "minY": -2.3,
726
+ "maxY": -1.7000000000000002
727
+ },
728
+ "spatialIndexId": 2
729
+ },
730
+ {
731
+ "chipId": "schematic_component_3",
732
+ "center": {
733
+ "x": 5,
734
+ "y": 1
735
+ },
736
+ "width": 1.1899999999999995,
737
+ "height": 1,
738
+ "pins": [
739
+ {
740
+ "pinId": "schematic_port_32",
741
+ "displayName": "1A",
742
+ "x": 5.595,
743
+ "y": 1.3
744
+ },
745
+ {
746
+ "pinId": "schematic_port_33",
747
+ "displayName": "1B",
748
+ "x": 5.595,
749
+ "y": 1.1
750
+ },
751
+ {
752
+ "pinId": "schematic_port_34",
753
+ "displayName": "2A",
754
+ "x": 5.595,
755
+ "y": 0.8999999999999999
756
+ },
757
+ {
758
+ "pinId": "schematic_port_35",
759
+ "displayName": "2B",
760
+ "x": 5.595,
761
+ "y": 0.7
762
+ }
763
+ ],
764
+ "bounds": {
765
+ "minX": 4.405,
766
+ "maxX": 5.595,
767
+ "minY": 0.5,
768
+ "maxY": 1.5
769
+ },
770
+ "spatialIndexId": 3
771
+ },
772
+ {
773
+ "chipId": "schematic_component_4",
774
+ "center": {
775
+ "x": 2.5,
776
+ "y": -2.5
777
+ },
778
+ "width": 0.7199999999999998,
779
+ "height": 0.8400000000000007,
780
+ "pins": [
781
+ {
782
+ "pinId": "schematic_port_36",
783
+ "displayName": "pos",
784
+ "x": 2.14,
785
+ "y": -2.5,
786
+ "_facingDirection": "x-"
787
+ },
788
+ {
789
+ "pinId": "schematic_port_37",
790
+ "displayName": "neg",
791
+ "x": 2.86,
792
+ "y": -2.5,
793
+ "_facingDirection": "x+"
794
+ }
795
+ ],
796
+ "bounds": {
797
+ "minX": 2.14,
798
+ "maxX": 2.86,
799
+ "minY": -2.9200000000000004,
800
+ "maxY": -2.0799999999999996
801
+ },
802
+ "spatialIndexId": 4
803
+ }
804
+ ],
805
+ "spatialIndex": {
806
+ "numItems": 5,
807
+ "nodeSize": 16,
808
+ "byteOffset": 0,
809
+ "_levelBounds": [
810
+ 20,
811
+ 24
812
+ ],
813
+ "data": {},
814
+ "_boxes": {
815
+ "0": -5.2375,
816
+ "1": -0.8,
817
+ "2": -2.7625,
818
+ "3": 0.8,
819
+ "4": -0.3999999999999999,
820
+ "5": -0.9,
821
+ "6": 2.4,
822
+ "7": 0.9,
823
+ "8": 3.8499999999999996,
824
+ "9": -2.3,
825
+ "10": 6.15,
826
+ "11": -1.7000000000000002,
827
+ "12": 4.405,
828
+ "13": 0.5,
829
+ "14": 5.595,
830
+ "15": 1.5,
831
+ "16": 2.14,
832
+ "17": -2.9200000000000004,
833
+ "18": 2.86,
834
+ "19": -2.0799999999999996,
835
+ "20": -5.2375,
836
+ "21": -2.9200000000000004,
837
+ "22": 6.15,
838
+ "23": 1.5
839
+ },
840
+ "_indices": {
841
+ "0": 0,
842
+ "1": 1,
843
+ "2": 2,
844
+ "3": 3,
845
+ "4": 4,
846
+ "5": 0
847
+ },
848
+ "_pos": 24,
849
+ "minX": -5.2375,
850
+ "minY": -2.9200000000000004,
851
+ "maxX": 6.15,
852
+ "maxY": 1.5,
853
+ "_queue": {
854
+ "ids": [],
855
+ "values": [],
856
+ "capacity": null,
857
+ "length": 0
858
+ }
859
+ },
860
+ "spatialIndexIdToChip": {}
861
+ },
862
+ "_hideRatsNet": false
863
+ }