mirror of
https://github.com/Architeuthis-Flux/Jumperless.git
synced 2024-11-27 17:00:55 +01:00
Merge branch 'main' of https://github.com/Architeuthis-Flux/Jumperless
This commit is contained in:
commit
8f5e2a5e93
355
JumperlessNano/README.md
Normal file
355
JumperlessNano/README.md
Normal file
@ -0,0 +1,355 @@
|
||||
The code is still a work in progress, but you can upload it to a Raspberry Pi Pico and mess with it.
|
||||
|
||||
Currently the part that's nearly finished is the logic for loading nets from a file, combining, deleting, adding nodes and bridges while respecting the Do Not Intersect rules (so you can't connect power to gnd and stuff)
|
||||
|
||||
If you don't feel like loading this onto a Pico to see the output, here is what it currently outputs with a tester nodeFile.txt
|
||||
|
||||
```
|
||||
|
||||
opened nodeFile.txt
|
||||
|
||||
loading bridges from file
|
||||
|
||||
|
||||
raw input file
|
||||
|
||||
bridges
|
||||
{
|
||||
1-2,
|
||||
3-4,
|
||||
5-6,
|
||||
7-8,
|
||||
9-10,
|
||||
11-12,
|
||||
12-13,
|
||||
2-3,
|
||||
10-11,
|
||||
1-11,
|
||||
0-7,
|
||||
}
|
||||
|
||||
special functions
|
||||
{
|
||||
1-GND,
|
||||
11-SUPPLY_5V,
|
||||
6-I_P,
|
||||
I_P-I_N,
|
||||
}
|
||||
|
||||
|
||||
splitting and cleaning up string
|
||||
|
||||
_
|
||||
1-2,
|
||||
3-4,
|
||||
5-6,
|
||||
7-8,
|
||||
9-10,
|
||||
11-12,
|
||||
12-13,
|
||||
2-3,
|
||||
10-11,
|
||||
1-11,
|
||||
0-7,
|
||||
^
|
||||
|
||||
_
|
||||
1-GND,
|
||||
11-SUPPLY_5V,
|
||||
6-I_P,
|
||||
I_P-I_N,
|
||||
^
|
||||
|
||||
replacing special function names with defined ints
|
||||
|
||||
1-100,
|
||||
11-105,
|
||||
6-108,
|
||||
108-109,
|
||||
|
||||
|
||||
|
||||
parsing bridges into array
|
||||
|
||||
[1-100],[11-105],[6-108],[108-109],[1-2],[3-4],[5-6],[7-8],[9-10],[11-12],[12-13],[2-3],[10-11],[1-11],[0-7],
|
||||
bridge pairs = 15
|
||||
|
||||
|
||||
connecting nodes into nets
|
||||
|
||||
1-GND
|
||||
adding Node 1 to Net 1
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1 {1-GND} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V {0-0} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS {0-0} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
|
||||
|
||||
11-5V
|
||||
adding Node 11 to Net 2
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1 {1-GND} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11 {11-5V} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS {0-0} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
|
||||
|
||||
6-I_POS
|
||||
adding Node 6 to Net 6
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1 {1-GND} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11 {11-5V} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6 {6-I_POS} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
|
||||
|
||||
I_POS-I_NEG
|
||||
Net 7 can't be combined with Net 6 due to Do Not Intersect rules, skipping (first net DNI to second net nodes)
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1 {1-GND} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11 {11-5V} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6 {6-I_POS} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
|
||||
|
||||
1-2
|
||||
adding Node 2 to Net 1
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2 {1-GND,1-2} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11 {11-5V} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6 {6-I_POS} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
|
||||
|
||||
3-4
|
||||
found unused Net 8
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2 {1-GND,1-2} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11 {11-5V} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6 {6-I_POS} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 3,4 {3-4} 0
|
||||
|
||||
|
||||
5-6
|
||||
adding Node 5 to Net 6
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2 {1-GND,1-2} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11 {11-5V} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 3,4 {3-4} 0
|
||||
|
||||
|
||||
7-8
|
||||
found unused Net 9
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2 {1-GND,1-2} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11 {11-5V} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 3,4 {3-4} 0
|
||||
9 Net 9 9 7,8 {7-8} 0
|
||||
|
||||
|
||||
9-10
|
||||
found unused Net 10
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2 {1-GND,1-2} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11 {11-5V} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 3,4 {3-4} 0
|
||||
9 Net 9 9 7,8 {7-8} 0
|
||||
10 Net 10 10 9,10 {9-10} 0
|
||||
|
||||
|
||||
11-12
|
||||
adding Node 12 to Net 2
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2 {1-GND,1-2} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11,12 {11-5V,11-12} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 3,4 {3-4} 0
|
||||
9 Net 9 9 7,8 {7-8} 0
|
||||
10 Net 10 10 9,10 {9-10} 0
|
||||
|
||||
|
||||
12-13
|
||||
adding Node 13 to Net 2
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2 {1-GND,1-2} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11,12,13 {11-5V,11-12,12-13} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 3,4 {3-4} 0
|
||||
9 Net 9 9 7,8 {7-8} 0
|
||||
10 Net 10 10 9,10 {9-10} 0
|
||||
|
||||
|
||||
2-3
|
||||
found Node 3 in Net 8
|
||||
combining Nets 1 and 8
|
||||
deleted Net 8
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2,3,4 {1-GND,1-2,3-4} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11,12,13 {11-5V,11-12,12-13} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 7,8 {7-8} 0
|
||||
9 Net 9 9 9,10 {9-10} 0
|
||||
|
||||
|
||||
10-11
|
||||
found Node 10 in Net 9
|
||||
combining Nets 2 and 9
|
||||
deleted Net 9
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2,3,4 {1-GND,1-2,3-4} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11,12,13,9,10 {11-5V,11-12,12-13,9-10} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 7,8 {7-8} 0
|
||||
|
||||
|
||||
1-11
|
||||
Net 2 can't be combined with Net 1 due to Do Not Intersect rules, skipping (first net DNI to second net nodes)
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2,3,4 {1-GND,1-2,3-4} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11,12,13,9,10 {11-5V,11-12,12-13,9-10} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 7,8 {7-8} 0
|
||||
|
||||
|
||||
0-7
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2,3,4 {1-GND,1-2,3-4} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11,12,13,9,10 {11-5V,11-12,12-13,9-10} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 7,8 {7-8} 0
|
||||
|
||||
|
||||
done
|
||||
|
||||
|
||||
final netlist
|
||||
|
||||
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
0 Empty Net 127 EMPTY_NET {0-0} EMPTY_NET
|
||||
1 GND 1 GND,1,2,3,4 {1-GND,1-2,3-4} 3V3,5V,DAC_0,DAC_1
|
||||
2 +5V 2 5V,11,12,13,9,10 {11-5V,11-12,12-13,9-10} GND,3V3,DAC_0,DAC_1
|
||||
3 +3.3V 3 3V3 {0-0} GND,5V,DAC_0,DAC_1
|
||||
4 DAC 0 4 DAC_0 {0-0} GND,5V,3V3,DAC_1
|
||||
5 DAC 1 5 DAC_1 {0-0} GND,5V,3V3,DAC_0
|
||||
6 I Sense + 6 I_POS,6,5 {6-I_POS,5-6} I_NEG
|
||||
7 I Sense - 7 I_NEG {0-0} I_POS
|
||||
|
||||
Index Name Number Nodes Bridges Do Not Intersects
|
||||
8 Net 8 8 7,8 {7-8} 0
|
||||
```
|
Loading…
Reference in New Issue
Block a user