diff --git a/Pcb-1-lan9252/CubeMX-files/EtherCAT-PCB-v1.ioc b/CubeMX-files/EtherCAT-PCB-v1.ioc similarity index 100% rename from Pcb-1-lan9252/CubeMX-files/EtherCAT-PCB-v1.ioc rename to CubeMX-files/EtherCAT-PCB-v1.ioc diff --git a/Pcb-1-lan9252/Dig_8IN_8OUT.xml b/Dig_8IN_8OUT.xml similarity index 100% rename from Pcb-1-lan9252/Dig_8IN_8OUT.xml rename to Dig_8IN_8OUT.xml diff --git a/Pcb-1-lan9252/EEPROM_generator/.gitignore b/EEPROM_generator/.gitignore similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/.gitignore rename to EEPROM_generator/.gitignore diff --git a/Pcb-1-lan9252/EEPROM_generator/LICENSE b/EEPROM_generator/LICENSE similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/LICENSE rename to EEPROM_generator/LICENSE diff --git a/Pcb-1-lan9252/EEPROM_generator/README.md b/EEPROM_generator/README.md similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/README.md rename to EEPROM_generator/README.md diff --git a/Pcb-1-lan9252/EEPROM_generator/img/banner.JPG b/EEPROM_generator/img/banner.JPG similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/img/banner.JPG rename to EEPROM_generator/img/banner.JPG diff --git a/Pcb-1-lan9252/EEPROM_generator/img/logo.JPG b/EEPROM_generator/img/logo.JPG similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/img/logo.JPG rename to EEPROM_generator/img/logo.JPG diff --git a/Pcb-1-lan9252/EEPROM_generator/index.html b/EEPROM_generator/index.html similarity index 99% rename from Pcb-1-lan9252/EEPROM_generator/index.html rename to EEPROM_generator/index.html index 847285d..abe93a0 100644 --- a/Pcb-1-lan9252/EEPROM_generator/index.html +++ b/EEPROM_generator/index.html @@ -52,10 +52,12 @@ + - + + @@ -412,4 +414,4 @@ - \ No newline at end of file + diff --git a/Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/boot.js b/EEPROM_generator/lib/jasmine-3.8.0/boot.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/boot.js rename to EEPROM_generator/lib/jasmine-3.8.0/boot.js diff --git a/Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/jasmine-html.js b/EEPROM_generator/lib/jasmine-3.8.0/jasmine-html.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/jasmine-html.js rename to EEPROM_generator/lib/jasmine-3.8.0/jasmine-html.js diff --git a/Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/jasmine.css b/EEPROM_generator/lib/jasmine-3.8.0/jasmine.css similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/jasmine.css rename to EEPROM_generator/lib/jasmine-3.8.0/jasmine.css diff --git a/Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/jasmine.js b/EEPROM_generator/lib/jasmine-3.8.0/jasmine.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/jasmine.js rename to EEPROM_generator/lib/jasmine-3.8.0/jasmine.js diff --git a/Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/jasmine_favicon.png b/EEPROM_generator/lib/jasmine-3.8.0/jasmine_favicon.png similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/lib/jasmine-3.8.0/jasmine_favicon.png rename to EEPROM_generator/lib/jasmine-3.8.0/jasmine_favicon.png diff --git a/Pcb-1-lan9252/EEPROM_generator/lib/jszip.min.js b/EEPROM_generator/lib/jszip.min.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/lib/jszip.min.js rename to EEPROM_generator/lib/jszip.min.js diff --git a/Pcb-1-lan9252/EEPROM_generator/ref/gen.xml b/EEPROM_generator/ref/gen.xml similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/ref/gen.xml rename to EEPROM_generator/ref/gen.xml diff --git a/Pcb-1-lan9252/EEPROM_generator/ref/start.xml b/EEPROM_generator/ref/start.xml similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/ref/start.xml rename to EEPROM_generator/ref/start.xml diff --git a/Pcb-1-lan9252/EEPROM_generator/spec/backupSpec.js b/EEPROM_generator/spec/backupSpec.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/spec/backupSpec.js rename to EEPROM_generator/spec/backupSpec.js diff --git a/Pcb-1-lan9252/EEPROM_generator/spec/generatorsSpec.js b/EEPROM_generator/spec/generatorsSpec.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/spec/generatorsSpec.js rename to EEPROM_generator/spec/generatorsSpec.js diff --git a/Pcb-1-lan9252/EEPROM_generator/spec/helpers/formMockHelper.js b/EEPROM_generator/spec/helpers/formMockHelper.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/spec/helpers/formMockHelper.js rename to EEPROM_generator/spec/helpers/formMockHelper.js diff --git a/Pcb-1-lan9252/EEPROM_generator/src/backup.js b/EEPROM_generator/src/backup.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/src/backup.js rename to EEPROM_generator/src/backup.js diff --git a/Pcb-1-lan9252/EEPROM_generator/src/constants.js b/EEPROM_generator/src/constants.js similarity index 92% rename from Pcb-1-lan9252/EEPROM_generator/src/constants.js rename to EEPROM_generator/src/constants.js index 109f357..a7f3793 100644 --- a/Pcb-1-lan9252/EEPROM_generator/src/constants.js +++ b/EEPROM_generator/src/constants.js @@ -28,10 +28,13 @@ const DTYPE = { INTEGER8 : 'INTEGER8', INTEGER16 : 'INTEGER16', INTEGER32 : 'INTEGER32', + INTEGER32 : 'INTEGER64', UNSIGNED8 : 'UNSIGNED8', UNSIGNED16 : 'UNSIGNED16', UNSIGNED32 : 'UNSIGNED32', + UNSIGNED32 : 'UNSIGNED64', REAL32 : 'REAL32', + REAL64 : 'REAL64', VISIBLE_STRING : 'VISIBLE_STRING', /* TODO implement missing less common types */ // OCTET_STRING : 'OCTET_STRING', @@ -49,10 +52,13 @@ const dtype_bitsize = { 'INTEGER8' : 8, 'INTEGER16' : 16, 'INTEGER32' : 32, + 'INTEGER64' : 64, 'UNSIGNED8' : 8, 'UNSIGNED16' : 16, 'UNSIGNED32' : 32, + 'UNSIGNED64' : 64, 'REAL32' : 32, + 'REAL64' : 64, 'VISIBLE_STRING' : 8, }; const booleanPaddingBitsize = 7; @@ -62,10 +68,13 @@ const ESI_DT = { 'INTEGER8': { name: 'SINT', bitsize: 8, ctype: 'int8_t' }, 'INTEGER16': { name: 'INT', bitsize: 16, ctype: 'int16_t' }, 'INTEGER32': { name: 'DINT', bitsize: 32, ctype: 'int32_t' }, + 'INTEGER64': { name: 'LINT', bitsize: 64, ctype: 'int64_t' }, 'UNSIGNED8': { name: 'USINT', bitsize: 8, ctype: 'uint8_t' }, 'UNSIGNED16': { name: 'UINT', bitsize: 16, ctype: 'uint16_t' }, 'UNSIGNED32': { name: 'UDINT', bitsize: 32, ctype: 'uint32_t' }, - 'REAL32': { name: 'REAL', bitsize: 32, ctype: 'float' }, // TODO check C type name + 'UNSIGNED64': { name: 'ULINT', bitsize: 64, ctype: 'uint64_t' }, + 'REAL32': { name: 'REAL', bitsize: 32, ctype: 'float' }, + 'REAL64': { name: 'LREAL', bitsize: 64, ctype: 'double' }, 'VISIBLE_STRING': { name: 'STRING', bitsize: 8, ctype: 'char *' }, // TODO check C type name }; diff --git a/Pcb-1-lan9252/EEPROM_generator/src/file_io.js b/EEPROM_generator/src/file_io.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/src/file_io.js rename to EEPROM_generator/src/file_io.js diff --git a/Pcb-1-lan9252/EEPROM_generator/src/generators/EEPROM.js b/EEPROM_generator/src/generators/EEPROM.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/src/generators/EEPROM.js rename to EEPROM_generator/src/generators/EEPROM.js diff --git a/Pcb-1-lan9252/EEPROM_generator/src/generators/ecat_options.js b/EEPROM_generator/src/generators/ecat_options.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/src/generators/ecat_options.js rename to EEPROM_generator/src/generators/ecat_options.js diff --git a/Pcb-1-lan9252/EEPROM_generator/src/generators/esi_xml.js b/EEPROM_generator/src/generators/esi_xml.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/src/generators/esi_xml.js rename to EEPROM_generator/src/generators/esi_xml.js diff --git a/Pcb-1-lan9252/EEPROM_generator/src/generators/objectlist.js b/EEPROM_generator/src/generators/objectlist.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/src/generators/objectlist.js rename to EEPROM_generator/src/generators/objectlist.js diff --git a/Pcb-1-lan9252/EEPROM_generator/src/generators/utypes.js b/EEPROM_generator/src/generators/utypes.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/src/generators/utypes.js rename to EEPROM_generator/src/generators/utypes.js diff --git a/Pcb-1-lan9252/EEPROM_generator/src/od.js b/EEPROM_generator/src/od.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/src/od.js rename to EEPROM_generator/src/od.js diff --git a/Pcb-1-lan9252/EEPROM_generator/src/ui.js b/EEPROM_generator/src/ui.js similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/src/ui.js rename to EEPROM_generator/src/ui.js diff --git a/Pcb-1-lan9252/EEPROM_generator/styles/styles.css b/EEPROM_generator/styles/styles.css similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/styles/styles.css rename to EEPROM_generator/styles/styles.css diff --git a/Pcb-1-lan9252/EEPROM_generator/tests.html b/EEPROM_generator/tests.html similarity index 100% rename from Pcb-1-lan9252/EEPROM_generator/tests.html rename to EEPROM_generator/tests.html diff --git a/Pcb-1-lan9252/Firmware/.gitignore b/Firmware/.gitignore similarity index 100% rename from Pcb-1-lan9252/Firmware/.gitignore rename to Firmware/.gitignore diff --git a/Pcb-1-lan9252/Firmware/.vscode/extensions.json b/Firmware/.vscode/extensions.json similarity index 100% rename from Pcb-1-lan9252/Firmware/.vscode/extensions.json rename to Firmware/.vscode/extensions.json diff --git a/Pcb-1-lan9252/Firmware/.vscode/settings.json b/Firmware/.vscode/settings.json similarity index 81% rename from Pcb-1-lan9252/Firmware/.vscode/settings.json rename to Firmware/.vscode/settings.json index 71016da..c98ec41 100755 --- a/Pcb-1-lan9252/Firmware/.vscode/settings.json +++ b/Firmware/.vscode/settings.json @@ -9,5 +9,6 @@ "unordered_map": "cpp", "vector": "cpp", "system_error": "cpp" - } + }, + "C_Cpp.errorSquiggles": "disabled" } \ No newline at end of file diff --git a/Pcb-1-lan9252/Firmware/include/README b/Firmware/include/README similarity index 100% rename from Pcb-1-lan9252/Firmware/include/README rename to Firmware/include/README diff --git a/Pcb-1-lan9252/Firmware/include/Stepper.h b/Firmware/include/Stepper.h similarity index 100% rename from Pcb-1-lan9252/Firmware/include/Stepper.h rename to Firmware/include/Stepper.h diff --git a/Pcb-1-lan9252/Firmware/include/Stm32F4_Encoder.h b/Firmware/include/Stm32F4_Encoder.h similarity index 100% rename from Pcb-1-lan9252/Firmware/include/Stm32F4_Encoder.h rename to Firmware/include/Stm32F4_Encoder.h diff --git a/Pcb-1-lan9252/Firmware/lib/README b/Firmware/lib/README similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/README rename to Firmware/lib/README diff --git a/Pcb-1-lan9252/Firmware/lib/soes/CMakeLists.txt b/Firmware/lib/soes/CMakeLists.txt similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/CMakeLists.txt rename to Firmware/lib/soes/CMakeLists.txt diff --git a/Pcb-1-lan9252/Firmware/lib/soes/Doxyfile b/Firmware/lib/soes/Doxyfile similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/Doxyfile rename to Firmware/lib/soes/Doxyfile diff --git a/Pcb-1-lan9252/Firmware/lib/soes/MetalMusings_EaserCAT_2000.xml b/Firmware/lib/soes/MetalMusings_EaserCAT_2000.xml similarity index 71% rename from Pcb-1-lan9252/Firmware/lib/soes/MetalMusings_EaserCAT_2000.xml rename to Firmware/lib/soes/MetalMusings_EaserCAT_2000.xml index aa46cd5..f3e06b9 100755 --- a/Pcb-1-lan9252/Firmware/lib/soes/MetalMusings_EaserCAT_2000.xml +++ b/Firmware/lib/soes/MetalMusings_EaserCAT_2000.xml @@ -23,7 +23,7 @@ DT1018 - 144 + 272 0 Max SubIndex @@ -37,8 +37,8 @@ 1 Vendor ID - UDINT - 32 + ULINT + 64 16 ro @@ -47,9 +47,9 @@ 2 Product Code - UDINT - 32 - 48 + ULINT + 64 + 80 ro @@ -57,9 +57,9 @@ 3 Revision Number - UDINT - 32 - 80 + ULINT + 64 + 144 ro @@ -67,9 +67,9 @@ 4 Serial Number - UDINT - 32 - 112 + ULINT + 64 + 208 ro @@ -77,7 +77,7 @@ DT1600 - 48 + 80 0 Max SubIndex @@ -91,8 +91,8 @@ 1 EncPosScale - UDINT - 32 + ULINT + 64 16 ro @@ -101,7 +101,7 @@ DT1601 - 48 + 80 0 Max SubIndex @@ -115,17 +115,51 @@ 1 IndexLatchEnable - UDINT - 32 + ULINT + 64 16 ro + + DT1602 + 144 + + 0 + Max SubIndex + USINT + 8 + 0 + + ro + + + + 1 + CommandedPosition + ULINT + 64 + 16 + + ro + + + + 2 + CommandedVelocity + ULINT + 64 + 80 + + ro + + + DT1A00 - 48 + 80 0 Max SubIndex @@ -139,8 +173,8 @@ 1 EncPos - UDINT - 32 + ULINT + 64 16 ro @@ -149,7 +183,7 @@ DT1A01 - 48 + 80 0 Max SubIndex @@ -163,8 +197,8 @@ 1 EncFrequency - UDINT - 32 + ULINT + 64 16 ro @@ -173,7 +207,7 @@ DT1A02 - 48 + 80 0 Max SubIndex @@ -187,8 +221,8 @@ 1 DiffT - UDINT - 32 + ULINT + 64 16 ro @@ -197,7 +231,7 @@ DT1A03 - 48 + 80 0 Max SubIndex @@ -211,8 +245,8 @@ 1 IndexByte - UDINT - 32 + ULINT + 64 16 ro @@ -221,7 +255,7 @@ DT1A04 - 48 + 80 0 Max SubIndex @@ -235,8 +269,32 @@ 1 IndexStatus - UDINT - 32 + ULINT + 64 + 16 + + ro + + + + + DT1A05 + 80 + + 0 + Max SubIndex + USINT + 8 + 0 + + ro + + + + 1 + ActualPosition + ULINT + 64 16 ro @@ -278,15 +336,15 @@ DT1C12ARR UINT - 32 + 48 1 - 2 + 3 DT1C12 - 48 + 64 0 Max SubIndex @@ -300,7 +358,7 @@ Elements DT1C12ARR - 32 + 48 16 ro @@ -310,15 +368,15 @@ DT1C13ARR UINT - 80 + 96 1 - 5 + 6 DT1C13 - 96 + 112 0 Max SubIndex @@ -332,7 +390,7 @@ Elements DT1C13ARR - 80 + 96 16 ro @@ -340,8 +398,69 @@ - UDINT - 32 + DT6005 + 80 + + 0 + Max SubIndex + USINT + 8 + 0 + + ro + + + + 1 + ActualPosition + LREAL + 64 + 16 + + ro + T + + + + + DT7002 + 144 + + 0 + Max SubIndex + USINT + 8 + 0 + + ro + + + + 1 + CommandedPosition + LREAL + 64 + 16 + + ro + R + + + + 2 + CommandedVelocity + LREAL + 64 + 80 + + ro + R + + + + + ULINT + 64 STRING(26) @@ -360,7 +479,11 @@ 16 - REAL + LREAL + 64 + + + UDINT 32 @@ -372,8 +495,8 @@ #x1000 Device Type - UDINT - 32 + ULINT + 64 5001 @@ -423,7 +546,7 @@ #x1018 Identity Object DT1018 - 144 + 272 Max SubIndex @@ -464,7 +587,7 @@ #x1600 EncPosScale DT1600 - 48 + 80 Max SubIndex @@ -487,7 +610,7 @@ #x1601 IndexLatchEnable DT1601 - 48 + 80 Max SubIndex @@ -506,11 +629,40 @@ ro + + #x1602 + StepGenIn1 + DT1602 + 144 + + + Max SubIndex + + 2 + + + + CommandedPosition + + #x70020140 + + + + CommandedVelocity + + #x70020240 + + + + + ro + + #x1A00 EncPos DT1A00 - 48 + 80 Max SubIndex @@ -521,7 +673,7 @@ EncPos - #x60000020 + #x60000040 @@ -533,7 +685,7 @@ #x1A01 EncFrequency DT1A01 - 48 + 80 Max SubIndex @@ -544,7 +696,7 @@ EncFrequency - #x60010020 + #x60010040 @@ -556,7 +708,7 @@ #x1A02 DiffT DT1A02 - 48 + 80 Max SubIndex @@ -579,7 +731,7 @@ #x1A03 IndexByte DT1A03 - 48 + 80 Max SubIndex @@ -602,7 +754,7 @@ #x1A04 IndexStatus DT1A04 - 48 + 80 Max SubIndex @@ -621,6 +773,29 @@ ro + + #x1A05 + StepGenOut1 + DT1A05 + 80 + + + Max SubIndex + + 1 + + + + ActualPosition + + #x60050140 + + + + + ro + + #x1C00 Sync Manager Communication Type @@ -666,12 +841,12 @@ #x1C12 Sync Manager 2 PDO Assignment DT1C12 - 48 + 64 Max SubIndex - 2 + 3 @@ -686,6 +861,12 @@ #x1601 + + PDO Mapping + + #x1602 + + ro @@ -695,12 +876,12 @@ #x1C13 Sync Manager 3 PDO Assignment DT1C13 - 96 + 112 Max SubIndex - 5 + 6 @@ -733,6 +914,12 @@ #x1A04 + + PDO Mapping + + #x1A05 + + ro @@ -741,8 +928,8 @@ #x6000 EncPos - REAL - 32 + LREAL + 64 0 @@ -754,8 +941,8 @@ #x6001 EncFrequency - REAL - 32 + LREAL + 64 0 @@ -803,6 +990,29 @@ T + + #x6005 + StepGenOut1 + DT6005 + 80 + + + Max SubIndex + + 1 + + + + ActualPosition + + 0 + + + + + ro + + #x7000 EncPosScale @@ -829,6 +1039,35 @@ R + + #x7002 + StepGenIn1 + DT7002 + 144 + + + Max SubIndex + + 2 + + + + CommandedPosition + + 0 + + + + CommandedVelocity + + 0 + + + + + ro + + @@ -861,15 +1100,33 @@ UDINT + + #x1602 + StepGenIn1 + + #x7002 + #x1 + 64 + CommandedPosition + LREAL + + + #x7002 + #x2 + 64 + CommandedVelocity + LREAL + + #x1A00 EncPos #x6000 #x0 - 32 + 64 EncPos - REAL + LREAL @@ -878,9 +1135,9 @@ #x6001 #x0 - 32 + 64 EncFrequency - REAL + LREAL @@ -916,6 +1173,17 @@ UDINT + + #x1A05 + StepGenOut1 + + #x6005 + #x1 + 64 + ActualPosition + LREAL + + diff --git a/Pcb-1-lan9252/Firmware/lib/soes/cc.h b/Firmware/lib/soes/cc.h similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/cc.h rename to Firmware/lib/soes/cc.h diff --git a/Pcb-1-lan9252/Firmware/lib/soes/doc/images/esi_pdo.png b/Firmware/lib/soes/doc/images/esi_pdo.png similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/doc/images/esi_pdo.png rename to Firmware/lib/soes/doc/images/esi_pdo.png diff --git a/Pcb-1-lan9252/Firmware/lib/soes/doc/images/sii_pdo.png b/Firmware/lib/soes/doc/images/sii_pdo.png similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/doc/images/sii_pdo.png rename to Firmware/lib/soes/doc/images/sii_pdo.png diff --git a/Pcb-1-lan9252/Firmware/lib/soes/doc/soes.dox b/Firmware/lib/soes/doc/soes.dox similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/doc/soes.dox rename to Firmware/lib/soes/doc/soes.dox diff --git a/Pcb-1-lan9252/Firmware/lib/soes/doc/tutorial.txt b/Firmware/lib/soes/doc/tutorial.txt similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/doc/tutorial.txt rename to Firmware/lib/soes/doc/tutorial.txt diff --git a/Pcb-1-lan9252/Firmware/lib/soes/ecat_options.h b/Firmware/lib/soes/ecat_options.h similarity index 95% rename from Pcb-1-lan9252/Firmware/lib/soes/ecat_options.h rename to Firmware/lib/soes/ecat_options.h index e9ec844..29f42a8 100755 --- a/Pcb-1-lan9252/Firmware/lib/soes/ecat_options.h +++ b/Firmware/lib/soes/ecat_options.h @@ -33,8 +33,8 @@ #define SM3_smc 0x20 #define SM3_act 1 -#define MAX_MAPPINGS_SM2 2 -#define MAX_MAPPINGS_SM3 5 +#define MAX_MAPPINGS_SM2 4 +#define MAX_MAPPINGS_SM3 6 #define MAX_RXPDO_SIZE 512 #define MAX_TXPDO_SIZE 512 diff --git a/Pcb-1-lan9252/Firmware/lib/soes/ecat_slv.c b/Firmware/lib/soes/ecat_slv.c similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/ecat_slv.c rename to Firmware/lib/soes/ecat_slv.c diff --git a/Pcb-1-lan9252/Firmware/lib/soes/ecat_slv.h b/Firmware/lib/soes/ecat_slv.h similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/ecat_slv.h rename to Firmware/lib/soes/ecat_slv.h diff --git a/Pcb-1-lan9252/Firmware/lib/soes/eeprom.bin b/Firmware/lib/soes/eeprom.bin similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/eeprom.bin rename to Firmware/lib/soes/eeprom.bin diff --git a/Pcb-1-lan9252/Firmware/lib/soes/eeprom.hex b/Firmware/lib/soes/eeprom.hex similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/eeprom.hex rename to Firmware/lib/soes/eeprom.hex diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc.c b/Firmware/lib/soes/esc.c similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc.c rename to Firmware/lib/soes/esc.c diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc.h b/Firmware/lib/soes/esc.h similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc.h rename to Firmware/lib/soes/esc.h diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc_coe.c b/Firmware/lib/soes/esc_coe.c similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc_coe.c rename to Firmware/lib/soes/esc_coe.c diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc_coe.h b/Firmware/lib/soes/esc_coe.h similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc_coe.h rename to Firmware/lib/soes/esc_coe.h diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc_eep.c b/Firmware/lib/soes/esc_eep.c similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc_eep.c rename to Firmware/lib/soes/esc_eep.c diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc_eep.h b/Firmware/lib/soes/esc_eep.h similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc_eep.h rename to Firmware/lib/soes/esc_eep.h diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc_eoe.c b/Firmware/lib/soes/esc_eoe.c similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc_eoe.c rename to Firmware/lib/soes/esc_eoe.c diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc_eoe.h b/Firmware/lib/soes/esc_eoe.h similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc_eoe.h rename to Firmware/lib/soes/esc_eoe.h diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc_foe.c b/Firmware/lib/soes/esc_foe.c similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc_foe.c rename to Firmware/lib/soes/esc_foe.c diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esc_foe.h b/Firmware/lib/soes/esc_foe.h similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/esc_foe.h rename to Firmware/lib/soes/esc_foe.h diff --git a/Pcb-1-lan9252/Firmware/lib/soes/esi.json b/Firmware/lib/soes/esi.json similarity index 76% rename from Pcb-1-lan9252/Firmware/lib/soes/esi.json rename to Firmware/lib/soes/esi.json index aac4565..1bb3c75 100755 --- a/Pcb-1-lan9252/Firmware/lib/soes/esi.json +++ b/Firmware/lib/soes/esi.json @@ -57,7 +57,7 @@ "pdo_mappings": [ "txpdo" ], - "dtype": "REAL32", + "dtype": "REAL64", "value": "0", "data": "&Obj.EncPos" }, @@ -68,7 +68,7 @@ "pdo_mappings": [ "txpdo" ], - "dtype": "REAL32", + "dtype": "REAL64", "value": "0", "data": "&Obj.EncFrequency" }, @@ -104,6 +104,26 @@ "dtype": "UNSIGNED32", "value": "0", "data": "&Obj.IndexStatus" + }, + "6005": { + "otype": "RECORD", + "name": "StepGenOut1", + "access": "RO", + "items": [ + { + "name": "Max SubIndex" + }, + { + "name": "ActualPosition", + "dtype": "REAL64", + "data": "&Obj.StepGenOut1.ActualPosition", + "value": "0", + "access": "RO" + } + ], + "pdo_mappings": [ + "txpdo" + ] } }, "rxpdo": { @@ -129,6 +149,33 @@ "value": "0", "data": "&Obj.IndexLatchEnable" }, + "7002": { + "otype": "RECORD", + "name": "StepGenIn1", + "access": "RO", + "items": [ + { + "name": "Max SubIndex" + }, + { + "name": "CommandedPosition", + "dtype": "REAL64", + "data": "&Obj.StepGenIn1.CommandedPosition", + "value": "0", + "access": "RO" + }, + { + "name": "CommandedVelocity", + "dtype": "REAL64", + "value": "0", + "access": "RO", + "data": "&Obj.StepGenIn1.CommandedVelocity" + } + ], + "pdo_mappings": [ + "rxpdo" + ] + }, "60664": { "otype": "VAR", "name": "ActualPosition", diff --git a/Pcb-1-lan9252/Firmware/lib/soes/hal/arduino-lan9252/esc_hw.c b/Firmware/lib/soes/hal/arduino-lan9252/esc_hw.c similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/hal/arduino-lan9252/esc_hw.c rename to Firmware/lib/soes/hal/arduino-lan9252/esc_hw.c diff --git a/Pcb-1-lan9252/Firmware/lib/soes/hal/arduino-lan9252/spi.cpp b/Firmware/lib/soes/hal/arduino-lan9252/spi.cpp similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/hal/arduino-lan9252/spi.cpp rename to Firmware/lib/soes/hal/arduino-lan9252/spi.cpp diff --git a/Pcb-1-lan9252/Firmware/lib/soes/hal/arduino-lan9252/spi.h b/Firmware/lib/soes/hal/arduino-lan9252/spi.h similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/hal/arduino-lan9252/spi.h rename to Firmware/lib/soes/hal/arduino-lan9252/spi.h diff --git a/Pcb-1-lan9252/Firmware/lib/soes/hal/arduino-lan9252/spi.hpp b/Firmware/lib/soes/hal/arduino-lan9252/spi.hpp similarity index 100% rename from Pcb-1-lan9252/Firmware/lib/soes/hal/arduino-lan9252/spi.hpp rename to Firmware/lib/soes/hal/arduino-lan9252/spi.hpp diff --git a/Pcb-1-lan9252/Firmware/lib/soes/objectlist.c b/Firmware/lib/soes/objectlist.c similarity index 67% rename from Pcb-1-lan9252/Firmware/lib/soes/objectlist.c rename to Firmware/lib/soes/objectlist.c index 7c71c3c..d3e0869 100755 --- a/Pcb-1-lan9252/Firmware/lib/soes/objectlist.c +++ b/Firmware/lib/soes/objectlist.c @@ -19,6 +19,10 @@ static const char acName1600_01[] = "EncPosScale"; static const char acName1601[] = "IndexLatchEnable"; static const char acName1601_00[] = "Max SubIndex"; static const char acName1601_01[] = "IndexLatchEnable"; +static const char acName1602[] = "StepGenIn1"; +static const char acName1602_00[] = "Max SubIndex"; +static const char acName1602_01[] = "CommandedPosition"; +static const char acName1602_02[] = "CommandedVelocity"; static const char acName1A00[] = "EncPos"; static const char acName1A00_00[] = "Max SubIndex"; static const char acName1A00_01[] = "EncPos"; @@ -34,6 +38,9 @@ static const char acName1A03_01[] = "IndexByte"; static const char acName1A04[] = "IndexStatus"; static const char acName1A04_00[] = "Max SubIndex"; static const char acName1A04_01[] = "IndexStatus"; +static const char acName1A05[] = "StepGenOut1"; +static const char acName1A05_00[] = "Max SubIndex"; +static const char acName1A05_01[] = "ActualPosition"; static const char acName1C00[] = "Sync Manager Communication Type"; static const char acName1C00_00[] = "Max SubIndex"; static const char acName1C00_01[] = "Communications Type SM0"; @@ -44,6 +51,7 @@ static const char acName1C12[] = "Sync Manager 2 PDO Assignment"; static const char acName1C12_00[] = "Max SubIndex"; static const char acName1C12_01[] = "PDO Mapping"; static const char acName1C12_02[] = "PDO Mapping"; +static const char acName1C12_03[] = "PDO Mapping"; static const char acName1C13[] = "Sync Manager 3 PDO Assignment"; static const char acName1C13_00[] = "Max SubIndex"; static const char acName1C13_01[] = "PDO Mapping"; @@ -51,17 +59,25 @@ static const char acName1C13_02[] = "PDO Mapping"; static const char acName1C13_03[] = "PDO Mapping"; static const char acName1C13_04[] = "PDO Mapping"; static const char acName1C13_05[] = "PDO Mapping"; +static const char acName1C13_06[] = "PDO Mapping"; static const char acName6000[] = "EncPos"; static const char acName6001[] = "EncFrequency"; static const char acName6002[] = "DiffT"; static const char acName6003[] = "IndexByte"; static const char acName6004[] = "IndexStatus"; +static const char acName6005[] = "StepGenOut1"; +static const char acName6005_00[] = "Max SubIndex"; +static const char acName6005_01[] = "ActualPosition"; static const char acName7000[] = "EncPosScale"; static const char acName7001[] = "IndexLatchEnable"; +static const char acName7002[] = "StepGenIn1"; +static const char acName7002_00[] = "Max SubIndex"; +static const char acName7002_01[] = "CommandedPosition"; +static const char acName7002_02[] = "CommandedVelocity"; const _objd SDO1000[] = { - {0x0, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1000, 5001, NULL}, + {0x0, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1000, 5001, NULL}, }; const _objd SDO1008[] = { @@ -78,45 +94,56 @@ const _objd SDO100A[] = const _objd SDO1018[] = { {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1018_00, 4, NULL}, - {0x01, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1018_01, 2730, NULL}, - {0x02, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1018_02, 12303564, NULL}, - {0x03, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1018_03, 2, NULL}, - {0x04, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1018_04, 1, &Obj.serial}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1018_01, 2730, NULL}, + {0x02, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1018_02, 12303564, NULL}, + {0x03, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1018_03, 2, NULL}, + {0x04, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1018_04, 1, &Obj.serial}, }; const _objd SDO1600[] = { {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1600_00, 1, NULL}, - {0x01, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1600_01, 0x70000020, NULL}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1600_01, 0x70000020, NULL}, }; const _objd SDO1601[] = { {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1601_00, 1, NULL}, - {0x01, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1601_01, 0x70010020, NULL}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1601_01, 0x70010020, NULL}, +}; +const _objd SDO1602[] = +{ + {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1602_00, 2, NULL}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1602_01, 0x70020140, NULL}, + {0x02, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1602_02, 0x70020240, NULL}, }; const _objd SDO1A00[] = { {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1A00_00, 1, NULL}, - {0x01, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1A00_01, 0x60000020, NULL}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1A00_01, 0x60000040, NULL}, }; const _objd SDO1A01[] = { {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1A01_00, 1, NULL}, - {0x01, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1A01_01, 0x60010020, NULL}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1A01_01, 0x60010040, NULL}, }; const _objd SDO1A02[] = { {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1A02_00, 1, NULL}, - {0x01, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1A02_01, 0x60020020, NULL}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1A02_01, 0x60020020, NULL}, }; const _objd SDO1A03[] = { {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1A03_00, 1, NULL}, - {0x01, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1A03_01, 0x60030020, NULL}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1A03_01, 0x60030020, NULL}, }; const _objd SDO1A04[] = { {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1A04_00, 1, NULL}, - {0x01, DTYPE_UNSIGNED32, 32, ATYPE_RO, acName1A04_01, 0x60040020, NULL}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1A04_01, 0x60040020, NULL}, +}; +const _objd SDO1A05[] = +{ + {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1A05_00, 1, NULL}, + {0x01, DTYPE_UNSIGNED64, 64, ATYPE_RO, acName1A05_01, 0x60050140, NULL}, }; const _objd SDO1C00[] = { @@ -128,26 +155,28 @@ const _objd SDO1C00[] = }; const _objd SDO1C12[] = { - {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1C12_00, 2, NULL}, + {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1C12_00, 3, NULL}, {0x01, DTYPE_UNSIGNED16, 16, ATYPE_RO, acName1C12_01, 0x1600, NULL}, {0x02, DTYPE_UNSIGNED16, 16, ATYPE_RO, acName1C12_02, 0x1601, NULL}, + {0x03, DTYPE_UNSIGNED16, 16, ATYPE_RO, acName1C12_03, 0x1602, NULL}, }; const _objd SDO1C13[] = { - {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1C13_00, 5, NULL}, + {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName1C13_00, 6, NULL}, {0x01, DTYPE_UNSIGNED16, 16, ATYPE_RO, acName1C13_01, 0x1A00, NULL}, {0x02, DTYPE_UNSIGNED16, 16, ATYPE_RO, acName1C13_02, 0x1A01, NULL}, {0x03, DTYPE_UNSIGNED16, 16, ATYPE_RO, acName1C13_03, 0x1A02, NULL}, {0x04, DTYPE_UNSIGNED16, 16, ATYPE_RO, acName1C13_04, 0x1A03, NULL}, {0x05, DTYPE_UNSIGNED16, 16, ATYPE_RO, acName1C13_05, 0x1A04, NULL}, + {0x06, DTYPE_UNSIGNED16, 16, ATYPE_RO, acName1C13_06, 0x1A05, NULL}, }; const _objd SDO6000[] = { - {0x0, DTYPE_REAL32, 32, ATYPE_RO | ATYPE_TXPDO, acName6000, 0x00000000, &Obj.EncPos}, + {0x0, DTYPE_REAL64, 64, ATYPE_RO | ATYPE_TXPDO, acName6000, 0, &Obj.EncPos}, }; const _objd SDO6001[] = { - {0x0, DTYPE_REAL32, 32, ATYPE_RO | ATYPE_TXPDO, acName6001, 0x00000000, &Obj.EncFrequency}, + {0x0, DTYPE_REAL64, 64, ATYPE_RO | ATYPE_TXPDO, acName6001, 0, &Obj.EncFrequency}, }; const _objd SDO6002[] = { @@ -161,6 +190,11 @@ const _objd SDO6004[] = { {0x0, DTYPE_UNSIGNED32, 32, ATYPE_RO | ATYPE_TXPDO, acName6004, 0, &Obj.IndexStatus}, }; +const _objd SDO6005[] = +{ + {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName6005_00, 1, NULL}, + {0x01, DTYPE_REAL64, 64, ATYPE_RO, acName6005_01, 0, &Obj.StepGenOut1.ActualPosition}, +}; const _objd SDO7000[] = { {0x0, DTYPE_INTEGER32, 32, ATYPE_RO | ATYPE_RXPDO, acName7000, 0, &Obj.EncPosScale}, @@ -169,6 +203,12 @@ const _objd SDO7001[] = { {0x0, DTYPE_UNSIGNED32, 32, ATYPE_RO | ATYPE_RXPDO, acName7001, 0, &Obj.IndexLatchEnable}, }; +const _objd SDO7002[] = +{ + {0x00, DTYPE_UNSIGNED8, 8, ATYPE_RO, acName7002_00, 2, NULL}, + {0x01, DTYPE_REAL64, 64, ATYPE_RO, acName7002_01, 0, &Obj.StepGenIn1.CommandedPosition}, + {0x02, DTYPE_REAL64, 64, ATYPE_RO, acName7002_02, 0, &Obj.StepGenIn1.CommandedVelocity}, +}; const _objectlist SDOobjects[] = { @@ -179,20 +219,24 @@ const _objectlist SDOobjects[] = {0x1018, OTYPE_RECORD, 4, 0, acName1018, SDO1018}, {0x1600, OTYPE_RECORD, 1, 0, acName1600, SDO1600}, {0x1601, OTYPE_RECORD, 1, 0, acName1601, SDO1601}, + {0x1602, OTYPE_RECORD, 2, 0, acName1602, SDO1602}, {0x1A00, OTYPE_RECORD, 1, 0, acName1A00, SDO1A00}, {0x1A01, OTYPE_RECORD, 1, 0, acName1A01, SDO1A01}, {0x1A02, OTYPE_RECORD, 1, 0, acName1A02, SDO1A02}, {0x1A03, OTYPE_RECORD, 1, 0, acName1A03, SDO1A03}, {0x1A04, OTYPE_RECORD, 1, 0, acName1A04, SDO1A04}, + {0x1A05, OTYPE_RECORD, 1, 0, acName1A05, SDO1A05}, {0x1C00, OTYPE_ARRAY, 4, 0, acName1C00, SDO1C00}, - {0x1C12, OTYPE_ARRAY, 2, 0, acName1C12, SDO1C12}, - {0x1C13, OTYPE_ARRAY, 5, 0, acName1C13, SDO1C13}, + {0x1C12, OTYPE_ARRAY, 3, 0, acName1C12, SDO1C12}, + {0x1C13, OTYPE_ARRAY, 6, 0, acName1C13, SDO1C13}, {0x6000, OTYPE_VAR, 0, 0, acName6000, SDO6000}, {0x6001, OTYPE_VAR, 0, 0, acName6001, SDO6001}, {0x6002, OTYPE_VAR, 0, 0, acName6002, SDO6002}, {0x6003, OTYPE_VAR, 0, 0, acName6003, SDO6003}, {0x6004, OTYPE_VAR, 0, 0, acName6004, SDO6004}, + {0x6005, OTYPE_RECORD, 1, 0, acName6005, SDO6005}, {0x7000, OTYPE_VAR, 0, 0, acName7000, SDO7000}, {0x7001, OTYPE_VAR, 0, 0, acName7001, SDO7001}, + {0x7002, OTYPE_RECORD, 2, 0, acName7002, SDO7002}, {0xffff, 0xff, 0xff, 0xff, NULL, NULL} }; diff --git a/Pcb-1-lan9252/Firmware/lib/soes/utypes.h b/Firmware/lib/soes/utypes.h similarity index 64% rename from Pcb-1-lan9252/Firmware/lib/soes/utypes.h rename to Firmware/lib/soes/utypes.h index aef373d..09b8193 100755 --- a/Pcb-1-lan9252/Firmware/lib/soes/utypes.h +++ b/Firmware/lib/soes/utypes.h @@ -13,16 +13,25 @@ typedef struct /* Inputs */ - float EncPos; - float EncFrequency; + double EncPos; + double EncFrequency; uint32_t DiffT; uint32_t IndexByte; uint32_t IndexStatus; + struct + { + double ActualPosition; + } StepGenOut1; /* Outputs */ int32_t EncPosScale; uint32_t IndexLatchEnable; + struct + { + double CommandedPosition; + double CommandedVelocity; + } StepGenIn1; } _Objects; diff --git a/Pcb-1-lan9252/Firmware/platformio.ini b/Firmware/platformio.ini similarity index 100% rename from Pcb-1-lan9252/Firmware/platformio.ini rename to Firmware/platformio.ini diff --git a/Pcb-1-lan9252/Firmware/src/Stm32F4_Encoder.cpp b/Firmware/src/Stm32F4_Encoder.cpp similarity index 100% rename from Pcb-1-lan9252/Firmware/src/Stm32F4_Encoder.cpp rename to Firmware/src/Stm32F4_Encoder.cpp diff --git a/Pcb-1-lan9252/Firmware/src/main.cpp b/Firmware/src/main.cpp similarity index 50% rename from Pcb-1-lan9252/Firmware/src/main.cpp rename to Firmware/src/main.cpp index 1c05fd9..e2edede 100755 --- a/Pcb-1-lan9252/Firmware/src/main.cpp +++ b/Firmware/src/main.cpp @@ -1,4 +1,5 @@ #include +#include #include extern "C" @@ -11,13 +12,12 @@ extern "C" CircularBuffer Pos; CircularBuffer TDelta; +#include int64_t PreviousEncoderCounterValue = 0; int64_t unwrap_encoder(uint16_t in, int64_t *prev); -#include Encoder EncoderInit; Encoder *encP = &EncoderInit; -// #include "Stepper.h" #define INDEX_PIN PA2 HardwareSerial Serial1(PA10, PA9); _Objects Obj; @@ -29,7 +29,18 @@ uint8_t OldLatchCEnable = 0; volatile uint8_t indexPulseFired = 0; uint32_t nFires = 0; volatile uint8_t pleaseZeroTheCounter = 0; -uint32_t PrevTime = 0, Prev2Time = 0; + +#define STEPPER_DIR_PIN PA12 +#define STEPPER_STEP_PIN PA11 +HardwareTimer *MyTim; +volatile uint32_t stepCount = 0, stepPulses = 0; +volatile double_t actualPosition = 0; +volatile double_t requestedPosition, requestedVelocity; + +uint32_t sync0CycleTime = 0; + +void handleStepper(void); +void makePulses(uint32_t period /* in usecs */, int32_t pulses /* nr of pulses to do*/); void cb_set_outputs(void) // Master outputs gets here, slave inputs, first operation { @@ -44,6 +55,8 @@ void cb_set_outputs(void) // Master outputs gets here, slave inputs, first opera CurPosScale = Obj.EncPosScale; PosScaleRes = 1.0 / double(CurPosScale); } + requestedPosition = Obj.StepGenIn1.CommandedPosition; + requestedVelocity = Obj.StepGenIn1.CommandedVelocity; } void cb_get_inputs(void) // Set Master inputs, slave outputs, last operation @@ -56,10 +69,7 @@ void cb_get_inputs(void) // Set Master inputs, slave outputs, last operation nFires++; PreviousEncoderCounterValue = 0; } - uint64_t now = micros(); // Exploring the cycle times - Obj.DiffT = now - Prev2Time; - Prev2Time = PrevTime; - PrevTime = now; + // Obj.DiffT = sync0CycleTime; int64_t pos = unwrap_encoder(TIM2->CNT, &PreviousEncoderCounterValue); double CurPos = pos * PosScaleRes; @@ -79,47 +89,88 @@ void cb_get_inputs(void) // Set Master inputs, slave outputs, last operation Obj.IndexByte = digitalRead(INDEX_PIN); if (Obj.IndexByte) Serial1.printf("IS 1\n"); + + Obj.StepGenOut1.ActualPosition = actualPosition; + Obj.DiffT = 10000 * requestedPosition; // deltaT; } +void ESC_interrupt_enable(uint32_t mask); +void ESC_interrupt_disable(uint32_t mask); +uint16_t dc_checker(void); + static esc_cfg_t config = { .user_arg = NULL, - .use_interrupt = 0, + .use_interrupt = 1, .watchdog_cnt = 150, .set_defaults_hook = NULL, .pre_state_change_hook = NULL, .post_state_change_hook = NULL, - .application_hook = NULL, // StepGen, + .application_hook = handleStepper, // StepGen, .safeoutput_override = NULL, .pre_object_download_hook = NULL, .post_object_download_hook = NULL, .rxpdo_override = NULL, .txpdo_override = NULL, - .esc_hw_interrupt_enable = NULL, - .esc_hw_interrupt_disable = NULL, + .esc_hw_interrupt_enable = ESC_interrupt_enable, + .esc_hw_interrupt_disable = ESC_interrupt_disable, .esc_hw_eep_handler = NULL, - .esc_check_dc_handler = NULL, + .esc_check_dc_handler = dc_checker, }; +void TimerStep_CB(void) +{ + stepCount++; + if (stepCount == stepPulses) + { + MyTim->pause(); + } +} + +void makePulses(uint32_t period /* in usecs */, int32_t pulses /* nr of pulses to do*/) +{ + byte sgn = pulses > 0 ? HIGH : LOW; + digitalWrite(STEPPER_DIR_PIN, sgn); // I think one should really wait a bit when changed + uint32_t puls = abs(pulses); + MyTim->setOverflow(abs(pulses) * 1000000 / period, HERTZ_FORMAT); + MyTim->setCaptureCompare(4, 50, PERCENT_COMPARE_FORMAT); // 50 % + stepCount = 0; + stepPulses = abs(pulses); + MyTim->resume(); +} + +void sync0Handler(void); void setup(void) { Serial1.begin(115200); rcc_config(); + TIM_TypeDef *Instance = TIM1; + MyTim = new HardwareTimer(Instance); + MyTim->setMode(4, TIMER_OUTPUT_COMPARE_PWM2, STEPPER_STEP_PIN); + MyTim->attachInterrupt(TimerStep_CB); + pinMode(STEPPER_DIR_PIN, OUTPUT); + // Set starting count value EncoderInit.SetCount(Tim2, 0); + attachInterrupt(digitalPinToInterrupt(INDEX_PIN), indexPulse, RISING); // Always when Index triggered // EncoderInit.SetCount(Tim3, 0); // EncoderInit.SetCount(Tim4, 0); // EncoderInit.SetCount(Tim8, 0); ecat_slv_init(&config); - attachInterrupt(digitalPinToInterrupt(INDEX_PIN), indexPulse, RISING); // Always when Index triggered } - +volatile byte serveIRQ = 0; void loop(void) { ESCvar.PrevTime = ESCvar.Time; - ecat_slv(); + if (serveIRQ) + { + DIG_process(DIG_PROCESS_WD_FLAG | DIG_PROCESS_OUTPUTS_FLAG | + DIG_PROCESS_APP_HOOK_FLAG | DIG_PROCESS_INPUTS_FLAG); + serveIRQ = 0; + } + ecat_slv_poll(); } #define ONE_PERIOD 65536 @@ -151,4 +202,67 @@ void indexPulse(void) TDelta.clear(); pleaseZeroTheCounter = 0; } -} \ No newline at end of file +} + +void sync0Handler(void) +{ + serveIRQ = 1; +} + +void handleStepper(void) +{ + byte forwardDirection = 0; // 1 if going forward + int32_t pulsesToGo = 100 * (requestedPosition - actualPosition); + if (pulsesToGo != 0) + makePulses(900, pulsesToGo); // Make the pulses using hardware timer + + actualPosition = requestedPosition; +} +void ESC_interrupt_enable(uint32_t mask) +{ + // Enable interrupt for SYNC0 or SM2 or SM3 + uint32_t user_int_mask = ESCREG_ALEVENT_DC_SYNC0 | + ESCREG_ALEVENT_SM2 | + ESCREG_ALEVENT_SM3; + if (mask & user_int_mask) + { + ESC_ALeventmaskwrite(ESC_ALeventmaskread() | (mask & user_int_mask)); + attachInterrupt(digitalPinToInterrupt(PC3), sync0Handler, RISING); + + // Set LAN9252 interrupt pin driver as push-pull active high + uint32_t bits = 0x00000111; + ESC_write(0x54, &bits, 4); + + // Enable LAN9252 interrupt + bits = 0x00000001; + ESC_write(0x5c, &bits, 4); + } +} + +void ESC_interrupt_disable(uint32_t mask) +{ + // Enable interrupt for SYNC0 or SM2 or SM3 + uint32_t user_int_mask = ESCREG_ALEVENT_DC_SYNC0 | + ESCREG_ALEVENT_SM2 | + ESCREG_ALEVENT_SM3; + + if (mask & user_int_mask) + { + // Disable interrupt from SYNC0 + ESC_ALeventmaskwrite(ESC_ALeventmaskread() & ~(mask & user_int_mask)); + detachInterrupt(digitalPinToInterrupt(PC3)); + // Disable LAN9252 interrupt + uint32_t bits = 0x00000000; + ESC_write(0x5c, &bits, 4); + } +} + +extern "C" uint32_t ESC_SYNC0cycletime(void); +// Setup of DC +uint16_t dc_checker(void) +{ + // Indicate we run DC + ESCvar.dcsync = 0; + sync0CycleTime = ESC_SYNC0cycletime(); + return 0; +} diff --git a/Pcb-1-lan9252/Firmware/test/README b/Firmware/test/README similarity index 100% rename from Pcb-1-lan9252/Firmware/test/README rename to Firmware/test/README diff --git a/Pcb-1-lan9252/Kicad/.gitignore b/Kicad/.gitignore similarity index 100% rename from Pcb-1-lan9252/Kicad/.gitignore rename to Kicad/.gitignore diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/.gitignore b/Kicad/Ax58100-stm32-ethercat/.gitignore similarity index 100% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/.gitignore rename to Kicad/Ax58100-stm32-ethercat/.gitignore diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/AX48100.kicad_sch b/Kicad/Ax58100-stm32-ethercat/AX48100.kicad_sch similarity index 93% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/AX48100.kicad_sch rename to Kicad/Ax58100-stm32-ethercat/AX48100.kicad_sch index 5e5be73..bb2a96c 100755 --- a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/AX48100.kicad_sch +++ b/Kicad/Ax58100-stm32-ethercat/AX48100.kicad_sch @@ -1741,7 +1741,7 @@ ) (pin "1" (uuid fb15a621-267f-4a84-811a-ce0a4f84f2da)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR026") (unit 1) ) @@ -1766,7 +1766,7 @@ ) (pin "1" (uuid 0f59e530-d281-44f0-8b56-6d8b1873bdcf)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR017") (unit 1) ) @@ -1777,7 +1777,7 @@ (symbol (lib_id "Device:C") (at 87.63 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 103155a9-e700-4183-b756-a6fc8ca57bcd) - (property "Reference" "C7" (at 87.63 162.56 0) + (property "Reference" "C17" (at 87.63 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 87.63 167.64 0) @@ -1792,9 +1792,9 @@ (pin "1" (uuid 7ad1d6ec-d31e-43cc-96d9-48bf5eecee4f)) (pin "2" (uuid c250fbab-f5d1-4d40-b772-d14ab332b0c7)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C7") (unit 1) + (reference "C17") (unit 1) ) ) ) @@ -1820,7 +1820,7 @@ (pin "3" (uuid 547ae47d-ecde-4a59-8eff-f931770339d7)) (pin "1" (uuid 883ea244-d5fa-4e22-95a4-0623dbc2c40c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "Y1") (unit 1) ) @@ -1831,7 +1831,7 @@ (symbol (lib_id "Device:C") (at 237.49 39.37 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid 11d5ea8f-3a28-42fa-b01d-beb1a86a57de) - (property "Reference" "C17" (at 240.411 38.1579 0) + (property "Reference" "C12" (at 240.411 38.1579 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "18pF" (at 240.411 40.5821 0) @@ -1846,9 +1846,9 @@ (pin "1" (uuid 3a63d80d-31e2-4a10-8578-1e6dac2941a6)) (pin "2" (uuid ea1ca053-aa8d-4d15-8946-0ba4e2e46b0f)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C17") (unit 1) + (reference "C12") (unit 1) ) ) ) @@ -1871,7 +1871,7 @@ ) (pin "1" (uuid 841beac6-d388-4f18-a376-adb89f0f6776)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1885,7 +1885,7 @@ (symbol (lib_id "HakansLibrary:AX58100") (at 139.7 134.62 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 151decbc-1b66-4082-88a8-6da1bb3d9015) - (property "Reference" "U1" (at 91.44 83.82 0) + (property "Reference" "U2" (at 91.44 83.82 0) (effects (font (size 1.27 1.27))) ) (property "Value" "AX58100" (at 139.7 134.62 0) @@ -1979,9 +1979,9 @@ (pin "73" (uuid 806ce680-917d-43c0-9441-07ebfb72d3b0)) (pin "78" (uuid 347c6823-6f1c-4095-a476-7f314d48e804)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "U1") (unit 1) + (reference "U2") (unit 1) ) ) ) @@ -2004,7 +2004,7 @@ ) (pin "1" (uuid 87929de3-50de-4923-ba4a-68117c7182f5)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2032,7 +2032,7 @@ ) (pin "1" (uuid 4c1e0cd1-5e7b-4db3-bcff-7da4440d68bd)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2060,7 +2060,7 @@ ) (pin "1" (uuid 8f547c0f-886f-4dd0-be6f-d7f92d135e46)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR019") (unit 1) ) @@ -2085,7 +2085,7 @@ ) (pin "1" (uuid 2823a797-c9a1-46e1-a9d3-236cf6ee016c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR033") (unit 1) ) @@ -2110,7 +2110,7 @@ ) (pin "1" (uuid 1c726c76-904e-4b2a-bd13-f0cf038e2273)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR01") (unit 1) ) @@ -2121,7 +2121,7 @@ (symbol (lib_id "Device:C") (at 132.08 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 28999b48-7a3f-4a2d-8295-808981bd0f46) - (property "Reference" "C11" (at 132.08 162.56 0) + (property "Reference" "C30" (at 132.08 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 132.08 167.64 0) @@ -2136,9 +2136,9 @@ (pin "1" (uuid 0f6d79d6-c65f-41ac-803d-10bbaeb2552d)) (pin "2" (uuid d2569f20-b577-4ada-99f9-6d234aba09cc)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C11") (unit 1) + (reference "C30") (unit 1) ) ) ) @@ -2161,7 +2161,7 @@ ) (pin "1" (uuid 2d7eb0d2-1b0b-4f05-82b0-146ccec21531)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2175,7 +2175,7 @@ (symbol (lib_id "Device:R") (at 80.01 127 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 32075a8b-69da-4a9b-bc51-4abd88b43499) - (property "Reference" "R3" (at 80.01 127 90) + (property "Reference" "R30" (at 80.01 127 90) (effects (font (size 1.27 1.27))) ) (property "Value" "22" (at 78.74 124.46 90) @@ -2190,9 +2190,9 @@ (pin "1" (uuid ad6923a0-6b7d-489a-a9dd-8f7afd4ae372)) (pin "2" (uuid 66b077c4-6592-4f14-aebe-098aa0b621a9)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R3") (unit 1) + (reference "R30") (unit 1) ) ) ) @@ -2215,7 +2215,7 @@ ) (pin "1" (uuid 1feb0024-dcf9-4a52-b90b-523142fa1a38)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR041") (unit 1) ) @@ -2240,7 +2240,7 @@ ) (pin "1" (uuid b9ad7e18-2207-48f9-b14c-bc7f3b4ebfda)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2268,7 +2268,7 @@ ) (pin "1" (uuid 51b8e8dc-ebdc-4c46-8273-4e50f1175f36)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2296,7 +2296,7 @@ ) (pin "1" (uuid 6ce616c0-e184-45b3-beb0-cf49e9083ffa)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR035") (unit 1) ) @@ -2321,7 +2321,7 @@ ) (pin "1" (uuid 02874ab1-292a-4ad2-9607-cf7c93c7f6b3)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR011") (unit 1) ) @@ -2332,7 +2332,7 @@ (symbol (lib_id "Device:R") (at 52.07 60.96 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 45a449d5-9134-41f8-aaba-983731aca91e) - (property "Reference" "R1" (at 52.07 60.96 90) + (property "Reference" "R40" (at 52.07 60.96 90) (effects (font (size 1.27 1.27))) ) (property "Value" "22" (at 54.61 59.69 90) @@ -2347,9 +2347,9 @@ (pin "1" (uuid 236f6bf4-db44-48d8-a0c5-89925784c26c)) (pin "2" (uuid f4321da1-878f-42ff-83c8-1c7713080248)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R1") (unit 1) + (reference "R40") (unit 1) ) ) ) @@ -2358,7 +2358,7 @@ (symbol (lib_id "Device:C") (at 154.94 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 4693cf1a-5c81-4dfd-8a56-8dd30b07179a) - (property "Reference" "C14" (at 154.94 162.56 0) + (property "Reference" "C16" (at 154.94 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 154.94 167.64 0) @@ -2373,9 +2373,9 @@ (pin "1" (uuid 73ff28b1-0d61-4f91-9a41-d3d568a374c6)) (pin "2" (uuid 5046e027-03d2-4154-b8ec-12f9b03e6f88)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C14") (unit 1) + (reference "C16") (unit 1) ) ) ) @@ -2398,7 +2398,7 @@ ) (pin "1" (uuid cfce4a97-75ac-448b-9279-1930e411f951)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR034") (unit 1) ) @@ -2423,7 +2423,7 @@ ) (pin "1" (uuid 2d0720ff-4bc1-499c-b169-fc9c501b1796)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2451,7 +2451,7 @@ ) (pin "1" (uuid 7caa537c-9eac-47ec-89ff-663295d44a92)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2465,7 +2465,7 @@ (symbol (lib_id "Device:R") (at 236.22 78.74 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 57d23afb-3e89-43f3-b8ac-d446fddb5c78) - (property "Reference" "R8" (at 236.22 78.74 90) + (property "Reference" "R24" (at 236.22 78.74 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 234.95 76.2 90) @@ -2480,9 +2480,9 @@ (pin "1" (uuid b8a6fa5a-6917-4de0-9a2f-55bbe7286131)) (pin "2" (uuid 879ee302-c855-4a9a-8277-4e7a66bd5c06)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R8") (unit 1) + (reference "R24") (unit 1) ) ) ) @@ -2505,7 +2505,7 @@ ) (pin "1" (uuid 1700bac3-30e8-43a0-a7fd-bb52097b0266)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR038") (unit 1) ) @@ -2530,7 +2530,7 @@ ) (pin "1" (uuid ee37e8a1-f3c9-4f25-b188-fb4a3e7c660c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2558,7 +2558,7 @@ ) (pin "1" (uuid b4a0003a-930d-48ac-868d-7866d567e535)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2572,7 +2572,7 @@ (symbol (lib_id "Device:R") (at 142.24 73.66 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 64094713-7d76-4b8b-9bf9-b7f64f75c920) - (property "Reference" "R5" (at 142.24 73.66 90) + (property "Reference" "R21" (at 142.24 73.66 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 144.78 72.39 90) @@ -2587,9 +2587,9 @@ (pin "1" (uuid 056f5fc4-6608-455a-ba13-f9c9cc02598d)) (pin "2" (uuid c03a103d-c131-4a70-b34b-00f17e448dd3)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R5") (unit 1) + (reference "R21") (unit 1) ) ) ) @@ -2598,7 +2598,7 @@ (symbol (lib_id "Device:R") (at 142.24 91.44 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 6624d943-f8e6-4441-982c-3de575b1dc6e) - (property "Reference" "R7" (at 142.24 91.44 90) + (property "Reference" "R26" (at 142.24 91.44 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 144.78 90.17 90) @@ -2613,9 +2613,9 @@ (pin "1" (uuid e7d3e20f-a591-4edd-9625-183475b96045)) (pin "2" (uuid c4a76bdf-7d34-49ef-b043-9611e41040bc)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R7") (unit 1) + (reference "R26") (unit 1) ) ) ) @@ -2624,7 +2624,7 @@ (symbol (lib_id "Device:C") (at 35.56 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 67ac6176-2471-48a9-ab9f-52beec89a1b4) - (property "Reference" "C2" (at 35.56 162.56 0) + (property "Reference" "C31" (at 35.56 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 35.56 167.64 0) @@ -2639,9 +2639,9 @@ (pin "1" (uuid 6c5a9bce-9601-4678-8465-2a35f96270cb)) (pin "2" (uuid 5f2c48e1-b131-47c8-ad69-901da9c5806b)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C2") (unit 1) + (reference "C31") (unit 1) ) ) ) @@ -2650,7 +2650,7 @@ (symbol (lib_id "Device:R") (at 236.22 133.35 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 687437c4-7aa9-4046-9f4a-5ed469d0a577) - (property "Reference" "R10" (at 236.22 133.35 90) + (property "Reference" "R39" (at 236.22 133.35 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 234.95 128.27 90) @@ -2665,9 +2665,9 @@ (pin "1" (uuid 52539b3d-34d2-4f48-a868-29210a2d7583)) (pin "2" (uuid 5459e9c9-a6e9-4a70-818d-7ed23b273569)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R10") (unit 1) + (reference "R39") (unit 1) ) ) ) @@ -2676,7 +2676,7 @@ (symbol (lib_id "Device:R") (at 236.22 154.94 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 69038310-08d8-4fd8-baf2-714dff3fe0fa) - (property "Reference" "R11" (at 236.22 154.94 90) + (property "Reference" "R37" (at 236.22 154.94 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 234.95 149.86 90) @@ -2691,9 +2691,9 @@ (pin "1" (uuid 7957d354-662a-4815-9a9f-7f27734bc1bf)) (pin "2" (uuid 1d1da38e-302c-4dfe-a6a4-7bd690de3d21)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R11") (unit 1) + (reference "R37") (unit 1) ) ) ) @@ -2716,7 +2716,7 @@ ) (pin "1" (uuid 302265fe-248d-4ad5-a89a-70f415aa521c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2744,7 +2744,7 @@ ) (pin "1" (uuid c8e33b02-9732-4d29-8d5e-06cb0a08616c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2772,7 +2772,7 @@ ) (pin "1" (uuid 70784863-5bdf-4ea0-9c78-8600ff66f4cc)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2800,7 +2800,7 @@ ) (pin "1" (uuid 6555e525-f37b-4c3b-ad6b-bfa10342a0b6)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR018") (unit 1) ) @@ -2826,7 +2826,7 @@ (pin "1" (uuid 226f293c-9402-42be-95c1-c4dadace4b8f)) (pin "2" (uuid 30f8b6d0-b2a3-48b2-a473-03d6e08eee2b)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "SW?") (unit 1) ) @@ -2854,7 +2854,7 @@ ) (pin "1" (uuid d5ee6d64-b22a-4471-8a0d-813fd56d76b0)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR025") (unit 1) ) @@ -2879,7 +2879,7 @@ ) (pin "1" (uuid 6c97afc5-a4c3-408b-8faf-512ecc2e9805)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2907,7 +2907,7 @@ ) (pin "1" (uuid 7f88e022-6d00-4e66-961f-c54985fc5404)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR021") (unit 1) ) @@ -2918,7 +2918,7 @@ (symbol (lib_id "Device:C") (at 147.32 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 7c830bcb-695d-41b3-8002-7f2c5e88ee96) - (property "Reference" "C13" (at 147.32 162.56 0) + (property "Reference" "C24" (at 147.32 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 147.32 167.64 0) @@ -2933,9 +2933,9 @@ (pin "1" (uuid b591e0df-cdca-4d34-8f4b-356f0d5b2764)) (pin "2" (uuid 4999f47f-ac2c-4d22-a24e-a2559bed8d6e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C13") (unit 1) + (reference "C24") (unit 1) ) ) ) @@ -2944,7 +2944,7 @@ (symbol (lib_id "Device:C") (at 80.01 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 80b396e6-1879-4eac-b0a4-6cc056dcdbd4) - (property "Reference" "C6" (at 80.01 162.56 0) + (property "Reference" "C15" (at 80.01 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 80.01 167.64 0) @@ -2959,9 +2959,9 @@ (pin "1" (uuid 1b55953a-e6c1-462f-9e95-2f27438678c4)) (pin "2" (uuid 0c2a244d-0fd3-459b-8ba4-558a9f01535c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C6") (unit 1) + (reference "C15") (unit 1) ) ) ) @@ -2984,7 +2984,7 @@ ) (pin "1" (uuid ec610547-e6ed-480c-bb24-2203b3773bed)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -2998,7 +2998,7 @@ (symbol (lib_id "Memory_EEPROM:AT24CS32-SSHM") (at 223.52 143.51 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 8408a666-ef40-4b48-8c8c-2ec840ed8567) - (property "Reference" "U2" (at 215.9 137.16 0) + (property "Reference" "U3" (at 215.9 137.16 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "24LC32A" (at 215.9 152.4 0) @@ -3019,9 +3019,9 @@ (pin "7" (uuid 3f6fca00-54b4-4de0-9881-e1a693d3ea6d)) (pin "8" (uuid 2e94bcae-8617-4ff6-b570-f7067140a9f5)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "U2") (unit 1) + (reference "U3") (unit 1) ) ) ) @@ -3044,7 +3044,7 @@ ) (pin "1" (uuid 0c704ba6-3023-4f1f-90ab-038dccbcbcc2)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR032") (unit 1) ) @@ -3069,7 +3069,7 @@ ) (pin "1" (uuid a2ea4874-2b72-4311-b60f-6080e3e2ed98)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR06") (unit 1) ) @@ -3080,7 +3080,7 @@ (symbol (lib_id "Device:C") (at 217.17 39.37 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid 8c1a0b38-bcc5-4658-8a69-f4a9c64b4a45) - (property "Reference" "C15" (at 220.091 38.1579 0) + (property "Reference" "C11" (at 220.091 38.1579 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "18pF" (at 220.091 40.5821 0) @@ -3095,9 +3095,9 @@ (pin "1" (uuid 0cd37f3c-2438-49dd-92ae-8dd9143c4898)) (pin "2" (uuid 8ea53af6-33e2-40ba-a820-d3d1e9b025f9)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C15") (unit 1) + (reference "C11") (unit 1) ) ) ) @@ -3120,7 +3120,7 @@ ) (pin "1" (uuid 6e2c22d9-037d-4324-b76a-eb1efbeb1188)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR015") (unit 1) ) @@ -3145,7 +3145,7 @@ ) (pin "1" (uuid 2f5b8381-6909-4468-8509-0fff456be86c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR037") (unit 1) ) @@ -3156,7 +3156,7 @@ (symbol (lib_id "Device:R") (at 142.24 76.2 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 95dffa01-7efa-4524-83d7-dd663891f3a6) - (property "Reference" "R6" (at 142.24 76.2 90) + (property "Reference" "R25" (at 142.24 76.2 90) (effects (font (size 1.27 1.27))) ) (property "Value" "12k 1%" (at 144.78 74.93 90) @@ -3171,9 +3171,9 @@ (pin "1" (uuid 0052bf0d-2e64-46a1-8a88-c2da60bcca88)) (pin "2" (uuid 5028629d-a2f3-4af4-b526-0050ecec7300)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R6") (unit 1) + (reference "R25") (unit 1) ) ) ) @@ -3196,7 +3196,7 @@ ) (pin "1" (uuid 097fad5a-aef3-48af-a362-5df2a47905e9)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR040") (unit 1) ) @@ -3207,7 +3207,7 @@ (symbol (lib_id "Device:C") (at 251.46 125.73 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid a3b06323-b5c8-4051-b0b4-69c7a4fc48db) - (property "Reference" "C18" (at 255.27 127 90) + (property "Reference" "C33" (at 255.27 127 90) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 255.27 124.46 90) @@ -3222,9 +3222,9 @@ (pin "1" (uuid 7290f5e8-8378-414b-8ecf-4167daeea159)) (pin "2" (uuid 60168926-d283-4a67-91c2-3743a72ac38a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C18") (unit 1) + (reference "C33") (unit 1) ) ) ) @@ -3233,7 +3233,7 @@ (symbol (lib_id "Device:C") (at 139.7 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid ad6de67e-4fd5-4374-8c26-533464ecb640) - (property "Reference" "C12" (at 139.7 162.56 0) + (property "Reference" "C28" (at 139.7 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 139.7 167.64 0) @@ -3248,9 +3248,9 @@ (pin "1" (uuid 9cc77a5a-8f7b-4d79-8e5f-a4809c31f988)) (pin "2" (uuid 98d01511-3b5e-4bbc-b1a7-3fdb4a621b8a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C12") (unit 1) + (reference "C28") (unit 1) ) ) ) @@ -3259,7 +3259,7 @@ (symbol (lib_id "Device:C") (at 72.39 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid afc04acb-541e-4783-aa5d-3ce559901854) - (property "Reference" "C5" (at 72.39 162.56 0) + (property "Reference" "C14" (at 72.39 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 72.39 167.64 0) @@ -3274,9 +3274,9 @@ (pin "1" (uuid cd42e7f7-0bbd-4782-aae8-f09020f22949)) (pin "2" (uuid f0a40c23-30fb-4b23-a2e6-342b7dd220f5)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C5") (unit 1) + (reference "C14") (unit 1) ) ) ) @@ -3299,7 +3299,7 @@ ) (pin "1" (uuid b5ba0a3d-3ffb-4599-b825-94926ff8134f)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR030") (unit 1) ) @@ -3310,7 +3310,7 @@ (symbol (lib_id "Device:R") (at 69.85 36.83 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid b162f748-c4c9-4222-9aec-552919872ce9) - (property "Reference" "R2" (at 69.85 36.83 90) + (property "Reference" "R31" (at 69.85 36.83 90) (effects (font (size 1.27 1.27))) ) (property "Value" "22" (at 68.58 34.29 90) @@ -3325,9 +3325,9 @@ (pin "1" (uuid ee761e98-5034-40a0-8250-32e729a88369)) (pin "2" (uuid a2288664-e76b-437b-a96a-49b9a4311334)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R2") (unit 1) + (reference "R31") (unit 1) ) ) ) @@ -3350,7 +3350,7 @@ ) (pin "1" (uuid f05387ef-9178-4aa7-a0dd-5daa8aa3a70a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3378,7 +3378,7 @@ ) (pin "1" (uuid 2e647997-83e2-484d-894d-c658aea538fe)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3392,7 +3392,7 @@ (symbol (lib_id "Device:C") (at 236.22 96.52 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid c01f9f04-3e14-4fe2-bfff-c83b3128fbfe) - (property "Reference" "C16" (at 239.141 95.3079 0) + (property "Reference" "C13" (at 239.141 95.3079 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "1uF" (at 239.141 97.7321 0) @@ -3407,9 +3407,9 @@ (pin "1" (uuid 23bf6ecb-467f-46d0-83fe-414a590b05ae)) (pin "2" (uuid e4b69de0-7ee0-4081-8dae-e65c33ae011c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C16") (unit 1) + (reference "C13") (unit 1) ) ) ) @@ -3418,7 +3418,7 @@ (symbol (lib_id "Device:C") (at 27.94 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid c46518db-79b6-4045-8dfc-08fea70463ae) - (property "Reference" "C1" (at 27.94 162.56 0) + (property "Reference" "C23" (at 27.94 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 27.94 167.64 0) @@ -3433,9 +3433,9 @@ (pin "1" (uuid 40da488f-f8be-47d7-a20d-04a201c7bb87)) (pin "2" (uuid e9d2dd5d-1427-4d73-ac59-b24b66653ee4)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C1") (unit 1) + (reference "C23") (unit 1) ) ) ) @@ -3458,7 +3458,7 @@ ) (pin "1" (uuid 96bf5cfe-bf3d-418d-a99b-47ff77ddb264)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR09") (unit 1) ) @@ -3483,7 +3483,7 @@ ) (pin "1" (uuid ceb85ca0-207e-4ccd-a318-d37ae0b72d29)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR016") (unit 1) ) @@ -3508,7 +3508,7 @@ ) (pin "1" (uuid e2834e50-c14f-463c-98f4-57518f14ad3f)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR023") (unit 1) ) @@ -3519,7 +3519,7 @@ (symbol (lib_id "Device:C") (at 95.25 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid ca3b83df-34a4-4261-8b7d-4450fdcf7ea0) - (property "Reference" "C8" (at 95.25 162.56 0) + (property "Reference" "C18" (at 95.25 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 95.25 167.64 0) @@ -3534,9 +3534,9 @@ (pin "1" (uuid 34d7f403-db87-453f-901f-509ab387a69c)) (pin "2" (uuid f6e5a1d9-1312-4a9d-80a3-71ce4a3c6ef1)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C8") (unit 1) + (reference "C18") (unit 1) ) ) ) @@ -3559,7 +3559,7 @@ ) (pin "1" (uuid d4ae5c69-f7e9-41df-bedd-396160c42655)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3573,7 +3573,7 @@ (symbol (lib_id "Device:C") (at 43.18 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid cd4007e2-5a66-41a7-ba64-1fe909a22a11) - (property "Reference" "C3" (at 43.18 162.56 0) + (property "Reference" "C29" (at 43.18 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 43.18 167.64 0) @@ -3588,9 +3588,9 @@ (pin "1" (uuid 54bd42a4-c318-4639-b675-150095335a51)) (pin "2" (uuid 7b5eaa08-235f-470f-b2c9-2f943ffe5caa)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C3") (unit 1) + (reference "C29") (unit 1) ) ) ) @@ -3613,7 +3613,7 @@ ) (pin "1" (uuid 66e7ae45-c9a4-4d90-9743-3c4b8d38e52e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR010") (unit 1) ) @@ -3624,7 +3624,7 @@ (symbol (lib_id "Device:R") (at 241.3 133.35 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid dbb53c1f-a3e9-40f7-9c26-4cfbc7e7faea) - (property "Reference" "R13" (at 241.3 133.35 90) + (property "Reference" "R38" (at 241.3 133.35 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 240.03 128.27 90) @@ -3639,9 +3639,9 @@ (pin "1" (uuid 01ac10da-e82e-4b9d-a683-6da6984a4139)) (pin "2" (uuid 2ce36c07-4fd2-4a46-a1ee-049bd9011586)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R13") (unit 1) + (reference "R38") (unit 1) ) ) ) @@ -3664,7 +3664,7 @@ ) (pin "1" (uuid 6af597ca-e632-47fa-b965-8e5783c04941)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3692,7 +3692,7 @@ ) (pin "1" (uuid 896330c2-c360-4a47-92f1-fae6344d5687)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR031") (unit 1) ) @@ -3717,7 +3717,7 @@ ) (pin "1" (uuid 3ce7ad1e-9a63-4019-8721-a5d9d474cf94)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3731,7 +3731,7 @@ (symbol (lib_id "Device:R") (at 223.52 99.06 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid e42bfe7f-7ca3-4fd5-a029-2fee492bb34b) - (property "Reference" "R12" (at 223.52 99.06 90) + (property "Reference" "R23" (at 223.52 99.06 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 222.25 96.52 90) @@ -3746,9 +3746,9 @@ (pin "1" (uuid 82a14ca4-80bb-408c-a6d9-9999f8024e92)) (pin "2" (uuid 2504cd27-ae4f-4706-a651-e05dd6b885cc)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "R12") (unit 1) + (reference "R23") (unit 1) ) ) ) @@ -3757,7 +3757,7 @@ (symbol (lib_id "Device:C") (at 116.84 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid e6ad3dc1-0e47-43aa-b5b8-965b1e4f4e9d) - (property "Reference" "C9" (at 116.84 162.56 0) + (property "Reference" "C27" (at 116.84 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 116.84 167.64 0) @@ -3772,9 +3772,9 @@ (pin "1" (uuid 09dc23d9-c1fe-4ac9-9981-210411d84a5e)) (pin "2" (uuid b2198e4f-d611-469a-a5c5-04b6cff3dfb4)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C9") (unit 1) + (reference "C27") (unit 1) ) ) ) @@ -3797,7 +3797,7 @@ ) (pin "1" (uuid 60b3b554-81c2-4e03-b9ce-5394ffdc575e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" (reference "#PWR044") (unit 1) ) @@ -3808,7 +3808,7 @@ (symbol (lib_id "Device:C") (at 50.8 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid f2ad262e-6efc-4ec5-abc3-f362fad8d615) - (property "Reference" "C4" (at 50.8 162.56 0) + (property "Reference" "C26" (at 50.8 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 50.8 167.64 0) @@ -3823,9 +3823,9 @@ (pin "1" (uuid 1f24ea20-4ca5-4575-a63f-df58cd9d7b95)) (pin "2" (uuid 290dcc3a-6562-4be2-9458-e2f252b9c7d0)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C4") (unit 1) + (reference "C26") (unit 1) ) ) ) @@ -3848,7 +3848,7 @@ ) (pin "1" (uuid 54b60d4d-b92d-42ce-ace8-033daa8e282a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3876,7 +3876,7 @@ ) (pin "1" (uuid a05b2a9a-f492-43ac-9db4-fe5668fa130b)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3890,7 +3890,7 @@ (symbol (lib_id "Device:C") (at 124.46 165.1 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid feb0a5ed-4720-49ab-b7b2-db871d6fd2ee) - (property "Reference" "C10" (at 124.46 162.56 0) + (property "Reference" "C25" (at 124.46 162.56 0) (effects (font (size 1.27 1.27)) (justify left)) ) (property "Value" "0.1uF" (at 124.46 167.64 0) @@ -3905,9 +3905,9 @@ (pin "1" (uuid 4e6077ee-89c2-4212-b423-8eeeaf079dee)) (pin "2" (uuid 99c46de1-756a-4903-b9d1-500fd39a938b)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/9f485422-734f-43d3-94ea-443cbc453d2e" - (reference "C10") (unit 1) + (reference "C25") (unit 1) ) ) ) diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/AX58100_phy_etc.kicad_sch b/Kicad/Ax58100-stm32-ethercat/AX58100_phy_etc.kicad_sch similarity index 95% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/AX58100_phy_etc.kicad_sch rename to Kicad/Ax58100-stm32-ethercat/AX58100_phy_etc.kicad_sch index ac2c723..b02b3d5 100755 --- a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/AX58100_phy_etc.kicad_sch +++ b/Kicad/Ax58100-stm32-ethercat/AX58100_phy_etc.kicad_sch @@ -2937,7 +2937,7 @@ (symbol (lib_id "Device:R") (at 245.11 88.9 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 0156fcd2-2fd8-4277-bfea-a43d1b5d2609) - (property "Reference" "R44" (at 245.11 88.9 90) + (property "Reference" "R43" (at 245.11 88.9 90) (effects (font (size 1.27 1.27))) ) (property "Value" "510" (at 250.19 87.63 90) @@ -2952,9 +2952,9 @@ (pin "1" (uuid 3752539c-2c69-46a2-a3d9-8913b7ee49c7)) (pin "2" (uuid 8f74b202-e220-4289-9977-65720527d874)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R44") (unit 1) + (reference "R43") (unit 1) ) ) ) @@ -2963,7 +2963,7 @@ (symbol (lib_id "Device:FerriteBead_Small") (at 137.16 162.56 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 044bfca2-fe85-424e-89e6-85976fdf3676) - (property "Reference" "B7" (at 137.16 160.02 90) + (property "Reference" "B4" (at 137.16 160.02 90) (effects (font (size 1.27 1.27))) ) (property "Value" "BLM18EG221SN1D" (at 137.16 165.1 90) @@ -2978,9 +2978,9 @@ (pin "1" (uuid ce30afd8-a25d-4870-9efa-022fce854733)) (pin "2" (uuid 85e1ac12-3de6-46da-8cce-3f5869ed6d28)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "B7") (unit 1) + (reference "B4") (unit 1) ) ) ) @@ -3003,7 +3003,7 @@ ) (pin "1" (uuid b4286fda-2783-4812-9fb8-e6104bd26acc)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3017,7 +3017,7 @@ (symbol (lib_id "Device:R") (at 222.25 127 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 137b958d-6c66-4243-b922-13e0d4e0ff22) - (property "Reference" "R40" (at 222.25 127 90) + (property "Reference" "R19" (at 222.25 127 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 227.33 125.73 90) @@ -3032,9 +3032,9 @@ (pin "1" (uuid 8aa0f7bb-c0f5-48e6-b540-08704181c12d)) (pin "2" (uuid 8c988c69-1f95-43c3-9bcb-d12d0b7d82ba)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R40") (unit 1) + (reference "R19") (unit 1) ) ) ) @@ -3057,7 +3057,7 @@ ) (pin "1" (uuid 150b4d57-c89c-479b-bff0-e2310444c77d)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" (reference "#PWR056") (unit 1) ) @@ -3068,7 +3068,7 @@ (symbol (lib_id "Device:FerriteBead_Small") (at 99.06 154.94 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 18c39117-9175-49a5-804f-919c3f463e74) - (property "Reference" "B3" (at 99.06 152.4 90) + (property "Reference" "B7" (at 99.06 152.4 90) (effects (font (size 1.27 1.27))) ) (property "Value" "BLM18EG221SN1D" (at 99.06 157.48 90) @@ -3083,9 +3083,9 @@ (pin "1" (uuid 30443703-171b-4062-a9a8-d4bb1a6cd79f)) (pin "2" (uuid d5abfeb8-19ea-435e-b773-b63d9d82edd8)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "B3") (unit 1) + (reference "B7") (unit 1) ) ) ) @@ -3094,7 +3094,7 @@ (symbol (lib_id "Device:R") (at 46.99 36.83 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 1c4db209-5e6a-4cbe-b133-c6f6909b09dd) - (property "Reference" "R19" (at 46.99 36.83 90) + (property "Reference" "R11" (at 46.99 36.83 90) (effects (font (size 1.27 1.27))) ) (property "Value" "49.9" (at 45.72 31.75 90) @@ -3109,9 +3109,9 @@ (pin "1" (uuid 9c44675f-5941-4a75-acce-cfa5a16cee28)) (pin "2" (uuid 4e2a14c7-60d8-4f96-9157-b88e1863088b)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R19") (unit 1) + (reference "R11") (unit 1) ) ) ) @@ -3135,7 +3135,7 @@ (pin "1" (uuid 27bbe9ee-ab28-4046-b67a-1dc794ae83b4)) (pin "2" (uuid ca5e92c1-46d8-46d6-aee1-4f1bfd6a9595)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "D?") (unit 1) ) @@ -3163,7 +3163,7 @@ ) (pin "1" (uuid ce06647b-866d-40cd-8b9b-dab8c24988c6)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" (reference "#PWR094") (unit 1) ) @@ -3174,7 +3174,7 @@ (symbol (lib_id "Device:C") (at 58.42 128.27 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 252ccc0b-afe2-4cfa-9240-bbd4119b8767) - (property "Reference" "C26" (at 59.69 132.08 90) + (property "Reference" "C9" (at 59.69 132.08 90) (effects (font (size 1.27 1.27))) ) (property "Value" "10pF" (at 59.69 124.46 90) @@ -3189,9 +3189,9 @@ (pin "1" (uuid 1faaa323-05c8-437f-9e53-3fae02ded476)) (pin "2" (uuid 26c28e23-2a0b-49b1-9ccb-5cbe7e37eeeb)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C26") (unit 1) + (reference "C9") (unit 1) ) ) ) @@ -3214,7 +3214,7 @@ ) (pin "1" (uuid 6c4829bb-1b47-4019-a759-39388763f312)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3228,7 +3228,7 @@ (symbol (lib_id "Device:C") (at 63.5 128.27 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 33b95d1b-4180-477e-93fe-daa04b8a21ee) - (property "Reference" "C28" (at 64.77 132.08 90) + (property "Reference" "C10" (at 64.77 132.08 90) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 64.77 124.46 90) @@ -3243,9 +3243,9 @@ (pin "1" (uuid eb1efbba-d916-4c6d-b713-0da6d7f6730e)) (pin "2" (uuid 09af7273-6b3d-4a8b-8d1b-f39f40c2ea31)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C28") (unit 1) + (reference "C10") (unit 1) ) ) ) @@ -3268,7 +3268,7 @@ ) (pin "1" (uuid c6b0d3af-51f1-4de8-adfc-13a2363b3890)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3282,7 +3282,7 @@ (symbol (lib_id "Device:R") (at 52.07 36.83 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 395e4cb0-42d4-43ec-b523-c62753046557) - (property "Reference" "R21" (at 52.07 36.83 90) + (property "Reference" "R12" (at 52.07 36.83 90) (effects (font (size 1.27 1.27))) ) (property "Value" "49.9" (at 50.8 31.75 90) @@ -3297,9 +3297,9 @@ (pin "1" (uuid 0f107702-d4eb-42fe-a9cb-1892d3116999)) (pin "2" (uuid e8d3e7e0-6321-4996-b418-7ec31e2c7dba)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R21") (unit 1) + (reference "R12") (unit 1) ) ) ) @@ -3322,7 +3322,7 @@ ) (pin "1" (uuid aed6da48-6f5d-428b-a155-5e5439155c79)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3350,7 +3350,7 @@ ) (pin "1" (uuid e783af1e-5de5-47a1-86cf-6567c67655d1)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR01") (unit 1) ) @@ -3364,7 +3364,7 @@ (symbol (lib_id "Device:R") (at 135.89 59.69 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 43243964-0602-4452-b782-e18672992d26) - (property "Reference" "R27" (at 135.89 59.69 90) + (property "Reference" "R4" (at 135.89 59.69 90) (effects (font (size 1.27 1.27))) ) (property "Value" "510" (at 134.62 54.61 90) @@ -3379,9 +3379,9 @@ (pin "1" (uuid 6ac90f4b-0815-405b-889b-341829faddb4)) (pin "2" (uuid c6ad70e0-3056-48fa-95b2-d6f063e2b233)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R27") (unit 1) + (reference "R4") (unit 1) ) ) ) @@ -3417,7 +3417,7 @@ (pin "9" (uuid 817cd1e4-9788-4c48-9727-07f09efa1d17)) (pin "SH" (uuid ac135a42-bab5-4c6d-886d-3627a6140526)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" (reference "OUT1") (unit 1) ) @@ -3442,7 +3442,7 @@ ) (pin "1" (uuid 1fae1061-e7aa-445b-994b-f8a9b2e2ec2a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR072") (unit 1) ) @@ -3456,7 +3456,7 @@ (symbol (lib_id "Device:R") (at 245.11 49.53 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 52f49fd2-f073-4f65-b85d-4076ede1e08b) - (property "Reference" "R41" (at 245.11 49.53 90) + (property "Reference" "R35" (at 245.11 49.53 90) (effects (font (size 1.27 1.27))) ) (property "Value" "510" (at 251.46 48.26 90) @@ -3471,9 +3471,9 @@ (pin "1" (uuid 7d906a13-3fe2-447e-831a-59c2497d252f)) (pin "2" (uuid 8222f5da-4ab5-4383-a237-63d36a12d082)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R41") (unit 1) + (reference "R35") (unit 1) ) ) ) @@ -3482,7 +3482,7 @@ (symbol (lib_id "Device:FerriteBead_Small") (at 99.06 162.56 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 5a256e67-effb-487d-986d-5a4e91cc6e7b) - (property "Reference" "B4" (at 99.06 160.02 90) + (property "Reference" "B6" (at 99.06 160.02 90) (effects (font (size 1.27 1.27))) ) (property "Value" "BLM18EG221SN1D" (at 99.06 165.1 90) @@ -3497,9 +3497,9 @@ (pin "1" (uuid aae33058-ad5f-49ab-a3e0-18222db92984)) (pin "2" (uuid 659c955d-3562-4008-adee-2dd41397218c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "B4") (unit 1) + (reference "B6") (unit 1) ) ) ) @@ -3508,7 +3508,7 @@ (symbol (lib_id "Device:R") (at 48.26 96.52 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 5b51c0db-89fb-4b33-acf6-55877b663ddb) - (property "Reference" "R20" (at 48.26 96.52 90) + (property "Reference" "R15" (at 48.26 96.52 90) (effects (font (size 1.27 1.27))) ) (property "Value" "49.9" (at 46.99 91.44 90) @@ -3523,9 +3523,9 @@ (pin "1" (uuid 6c88d2e5-931c-4011-871e-8f1366339240)) (pin "2" (uuid 8d6783e5-4f4f-4b0d-95c5-14e7a72f41dd)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R20") (unit 1) + (reference "R15") (unit 1) ) ) ) @@ -3549,7 +3549,7 @@ (pin "1" (uuid 9b8fae84-700f-46e0-bfe6-c8911c62718b)) (pin "2" (uuid 99a1fb0a-7bed-4961-8684-6ee4ac7d39ab)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" (reference "B2") (unit 1) ) @@ -3560,7 +3560,7 @@ (symbol (lib_id "Device:R") (at 212.09 95.25 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 5d2a3bd4-36a3-4cd5-b2ec-31d44b293cc0) - (property "Reference" "R38" (at 212.09 95.25 90) + (property "Reference" "R28" (at 212.09 95.25 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 217.17 93.98 90) @@ -3575,9 +3575,9 @@ (pin "1" (uuid 0ad90d25-2752-48fc-ba38-83a7363aa081)) (pin "2" (uuid 419d0f25-e998-4d0b-9239-3fb9ce68106d)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R38") (unit 1) + (reference "R28") (unit 1) ) ) ) @@ -3600,7 +3600,7 @@ ) (pin "1" (uuid fff4d499-3879-4e19-b110-0b209a883c13)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3629,7 +3629,7 @@ (pin "1" (uuid 5d890a5b-3d41-4477-b877-182c869c0fba)) (pin "2" (uuid edc1ebdc-fc89-4d82-a46a-f040db1d4923)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" (reference "B1") (unit 1) ) @@ -3640,7 +3640,7 @@ (symbol (lib_id "Device:R") (at 209.55 27.94 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 5ff7eb3b-4022-400e-8b2d-e57549faafb6) - (property "Reference" "R30" (at 209.55 27.94 90) + (property "Reference" "R34" (at 209.55 27.94 90) (effects (font (size 1.27 1.27))) ) (property "Value" "4.7k" (at 214.63 26.67 90) @@ -3655,9 +3655,9 @@ (pin "1" (uuid 19809a18-de41-4f43-8706-aac4fa515646)) (pin "2" (uuid 30a7ba03-945a-4af3-b39e-49710f1d63c4)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R30") (unit 1) + (reference "R34") (unit 1) ) ) ) @@ -3681,12 +3681,12 @@ (pin "1" (uuid f2c74cbb-4905-4703-829d-2e0d89dca501)) (pin "2" (uuid 259684e5-5a66-4626-b173-3d4054a0267c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "C39") (unit 1) ) (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C31") (unit 1) + (reference "C19") (unit 1) ) ) ) @@ -3695,7 +3695,7 @@ (symbol (lib_id "Device:C") (at 46.99 68.58 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 703a5ad5-261f-462a-927b-2f5091816ac1) - (property "Reference" "C21" (at 48.26 72.39 90) + (property "Reference" "C2" (at 48.26 72.39 90) (effects (font (size 1.27 1.27))) ) (property "Value" "10pF" (at 48.26 64.77 90) @@ -3710,9 +3710,9 @@ (pin "1" (uuid b75f8eb4-da60-49f1-a715-e7496c5e1f46)) (pin "2" (uuid 916c3103-8ea2-487f-b358-de3bad1d1c50)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C21") (unit 1) + (reference "C2") (unit 1) ) ) ) @@ -3736,7 +3736,7 @@ (pin "1" (uuid 9a13d0d2-c31d-497e-a30b-639d91db4f78)) (pin "2" (uuid 9cede751-efc2-476c-9f6b-818039dd78c2)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "D?") (unit 1) ) @@ -3750,7 +3750,7 @@ (symbol (lib_id "Device:R") (at 41.91 36.83 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 7e520c4e-ee0b-4ea7-8b18-2be4397e790f) - (property "Reference" "R17" (at 41.91 36.83 90) + (property "Reference" "R10" (at 41.91 36.83 90) (effects (font (size 1.27 1.27))) ) (property "Value" "49.9" (at 40.64 31.75 90) @@ -3765,9 +3765,9 @@ (pin "1" (uuid 2f21ad1e-fffb-48c5-8819-0bcbc46337a2)) (pin "2" (uuid ac75cb01-8359-4122-b309-5ff593eb8dcd)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R17") (unit 1) + (reference "R10") (unit 1) ) ) ) @@ -3776,7 +3776,7 @@ (symbol (lib_id "Device:C") (at 53.34 128.27 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 817571cd-b71b-4f1f-b21a-2340accaf437) - (property "Reference" "C24" (at 54.61 132.08 90) + (property "Reference" "C8" (at 54.61 132.08 90) (effects (font (size 1.27 1.27))) ) (property "Value" "10pF" (at 54.61 124.46 90) @@ -3791,9 +3791,9 @@ (pin "1" (uuid ce9020c7-e569-440f-9b91-36b691be4a7a)) (pin "2" (uuid d17824ba-890a-463a-8055-7485ab2d831c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C24") (unit 1) + (reference "C8") (unit 1) ) ) ) @@ -3816,7 +3816,7 @@ ) (pin "1" (uuid e063590e-34b0-400c-b743-411bea30774d)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3844,7 +3844,7 @@ ) (pin "1" (uuid 529748f6-5d79-49f8-8fda-734244b914ae)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -3872,7 +3872,7 @@ ) (pin "1" (uuid 4d6779f2-5074-4af9-ac64-a6f96cd98b0f)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" (reference "#PWR093") (unit 1) ) @@ -3898,7 +3898,7 @@ (pin "1" (uuid 7e60b41a-43e8-4081-bb73-cca0e017a179)) (pin "2" (uuid 74867d90-11c9-4ba3-88b3-d3aebb6e7cc9)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" (reference "B5") (unit 1) ) @@ -3909,7 +3909,7 @@ (symbol (lib_id "Device:R") (at 57.15 36.83 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 94e7971f-a4d4-466b-8bd1-b0a1da13dc73) - (property "Reference" "R23" (at 57.15 36.83 90) + (property "Reference" "R13" (at 57.15 36.83 90) (effects (font (size 1.27 1.27))) ) (property "Value" "49.9" (at 55.88 31.75 90) @@ -3924,9 +3924,9 @@ (pin "1" (uuid bcdff5ac-2327-4a3f-8517-fe8ed737d70f)) (pin "2" (uuid 501ebfd6-1f99-49e1-9dde-35705321adb8)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R23") (unit 1) + (reference "R13") (unit 1) ) ) ) @@ -3950,12 +3950,12 @@ (pin "1" (uuid dab96c68-1b90-4f99-af80-706cd880d259)) (pin "2" (uuid f083a329-d96b-4b01-a456-9548cf8e7561)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "C30") (unit 1) ) (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C29") (unit 1) + (reference "C20") (unit 1) ) ) ) @@ -3978,7 +3978,7 @@ ) (pin "1" (uuid 436e4c43-9d46-4864-834d-7f41395647f4)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -4006,7 +4006,7 @@ ) (pin "1" (uuid 82bd38b9-f1f3-43a2-a039-c0cf152fc820)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -4020,7 +4020,7 @@ (symbol (lib_id "Device:R") (at 222.25 123.19 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid a8f795da-4f57-4266-9dbc-d4b1ec49a21b) - (property "Reference" "R39" (at 222.25 123.19 90) + (property "Reference" "R20" (at 222.25 123.19 90) (effects (font (size 1.27 1.27))) ) (property "Value" "510" (at 228.6 121.92 90) @@ -4035,9 +4035,9 @@ (pin "1" (uuid 469f189d-fdf4-4f27-8b9d-c5c17032c111)) (pin "2" (uuid 8f0da2c6-dd77-442c-bb69-dea5e953a08e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R39") (unit 1) + (reference "R20") (unit 1) ) ) ) @@ -4060,7 +4060,7 @@ ) (pin "1" (uuid 0a294b22-7110-4a7f-8168-dfa829b9b5ba)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -4088,7 +4088,7 @@ ) (pin "1" (uuid 72620a63-4ea4-434b-ba54-789d0234762d)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -4102,7 +4102,7 @@ (symbol (lib_id "Device:R") (at 53.34 96.52 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid aaa3a6f9-473c-405e-9246-c50f1418c80a) - (property "Reference" "R22" (at 53.34 96.52 90) + (property "Reference" "R16" (at 53.34 96.52 90) (effects (font (size 1.27 1.27))) ) (property "Value" "49.9" (at 52.07 91.44 90) @@ -4117,9 +4117,9 @@ (pin "1" (uuid 4f7fb9b8-83bb-41a8-9a65-765e17b382ac)) (pin "2" (uuid c9fc11bf-5137-4c12-8669-afb9a215a7b3)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R22") (unit 1) + (reference "R16") (unit 1) ) ) ) @@ -4128,7 +4128,7 @@ (symbol (lib_id "Device:C") (at 48.26 128.27 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid acd922bf-b439-49a5-93b9-08d057963a14) - (property "Reference" "C22" (at 49.53 132.08 90) + (property "Reference" "C7" (at 49.53 132.08 90) (effects (font (size 1.27 1.27))) ) (property "Value" "10pF" (at 49.53 124.46 90) @@ -4143,9 +4143,9 @@ (pin "1" (uuid 6ddef0ae-8be0-4cda-923c-74b5196b0441)) (pin "2" (uuid 3bcc60cd-b15b-409f-b0ea-b8e0e4bae10e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C22") (unit 1) + (reference "C7") (unit 1) ) ) ) @@ -4168,7 +4168,7 @@ ) (pin "1" (uuid e5a674e0-57a1-4b6f-8414-07b99cb9dd05)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -4182,7 +4182,7 @@ (symbol (lib_id "Device:C") (at 43.18 128.27 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid b297d9a7-f493-4b05-81ae-f0b3d7b2667f) - (property "Reference" "C20" (at 44.45 132.08 90) + (property "Reference" "C6" (at 44.45 132.08 90) (effects (font (size 1.27 1.27))) ) (property "Value" "10pF" (at 44.45 124.46 90) @@ -4197,9 +4197,9 @@ (pin "1" (uuid c6e1b5a5-eebb-4ef2-b093-5512c6da6af1)) (pin "2" (uuid ba36a1e9-aceb-4cf8-a032-bf9a64429e4d)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C20") (unit 1) + (reference "C6") (unit 1) ) ) ) @@ -4223,7 +4223,7 @@ (pin "1" (uuid 3054861d-03f0-476c-a69d-a4135a07cbf5)) (pin "2" (uuid 22a65f2f-8576-4a5e-982d-59c158caec02)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" (reference "R33") (unit 1) ) @@ -4234,7 +4234,7 @@ (symbol (lib_id "Device:R") (at 43.18 96.52 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid b79bae43-c327-493d-a038-855680f06fe3) - (property "Reference" "R18" (at 43.18 96.52 90) + (property "Reference" "R14" (at 43.18 96.52 90) (effects (font (size 1.27 1.27))) ) (property "Value" "49.9" (at 41.91 91.44 90) @@ -4249,9 +4249,9 @@ (pin "1" (uuid c63aad62-261e-454d-8cde-5d3b9e8e6bee)) (pin "2" (uuid c2657820-6139-48c9-ac60-3056679753ae)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R18") (unit 1) + (reference "R14") (unit 1) ) ) ) @@ -4274,7 +4274,7 @@ ) (pin "1" (uuid e8944e69-8cc5-433d-bd5d-62029af4cc4b)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -4304,12 +4304,12 @@ (pin "2" (uuid d913a363-97ba-4827-b453-8fb0703a3900)) (pin "3" (uuid b273c120-c078-47c2-a767-363253c602b8)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "U3") (unit 1) ) (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "U3") (unit 1) + (reference "U1") (unit 1) ) ) ) @@ -4333,12 +4333,12 @@ (pin "1" (uuid f4bdf53a-1004-4a8d-9aa5-5ce88c32b080)) (pin "2" (uuid 3fefe425-fceb-410e-bcfc-b5145544b90c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "D?") (unit 1) ) (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "D3") (unit 1) + (reference "D4") (unit 1) ) ) ) @@ -4374,7 +4374,7 @@ (pin "9" (uuid 73e32536-95b1-46be-aafb-811b97413aea)) (pin "SH" (uuid 230f9adb-d1fe-4846-9878-30900fa82379)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" (reference "IN1") (unit 1) ) @@ -4385,7 +4385,7 @@ (symbol (lib_id "Device:R") (at 130.81 48.26 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid d135b0c1-00a9-4a15-bf69-2c050be870d3) - (property "Reference" "R25" (at 130.81 48.26 90) + (property "Reference" "R5" (at 130.81 48.26 90) (effects (font (size 1.27 1.27))) ) (property "Value" "510" (at 135.89 46.99 90) @@ -4400,9 +4400,9 @@ (pin "1" (uuid a2883c41-055a-4cfc-8e64-f2e8e7a6ab3a)) (pin "2" (uuid cc7cbf0c-b069-49a4-b4bd-29bedb17cbb9)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R25") (unit 1) + (reference "R5") (unit 1) ) ) ) @@ -4411,7 +4411,7 @@ (symbol (lib_id "Device:C") (at 52.07 68.58 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid d97aea31-efd3-4805-a26e-93bfe540f39c) - (property "Reference" "C23" (at 53.34 72.39 90) + (property "Reference" "C3" (at 53.34 72.39 90) (effects (font (size 1.27 1.27))) ) (property "Value" "10pF" (at 53.34 64.77 90) @@ -4426,9 +4426,9 @@ (pin "1" (uuid a79adf07-4279-47bc-bc99-62376a50cad1)) (pin "2" (uuid 21ae26ea-5e5a-4709-aba6-8ecd8033be5f)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C23") (unit 1) + (reference "C3") (unit 1) ) ) ) @@ -4437,7 +4437,7 @@ (symbol (lib_id "Device:R") (at 58.42 96.52 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid dcb1369b-bcf1-4c3e-bd29-50410ac94349) - (property "Reference" "R24" (at 58.42 96.52 90) + (property "Reference" "R17" (at 58.42 96.52 90) (effects (font (size 1.27 1.27))) ) (property "Value" "49.9" (at 57.15 91.44 90) @@ -4452,9 +4452,9 @@ (pin "1" (uuid af23c4b1-0fe3-4b66-81a4-3e314e24626c)) (pin "2" (uuid a99fcc80-5ada-41b3-acd9-0cc40ce350b9)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R24") (unit 1) + (reference "R17") (unit 1) ) ) ) @@ -4463,7 +4463,7 @@ (symbol (lib_id "Device:C") (at 57.15 68.58 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid e0f26f8b-8985-49e6-8c97-f11bdae1e3a3) - (property "Reference" "C25" (at 58.42 72.39 90) + (property "Reference" "C4" (at 58.42 72.39 90) (effects (font (size 1.27 1.27))) ) (property "Value" "10pF" (at 58.42 64.77 90) @@ -4478,9 +4478,9 @@ (pin "1" (uuid e15952f4-c3e9-4dfd-925c-3bee598dab86)) (pin "2" (uuid 6e42821d-dcb5-4750-8ba7-3aaa59c0ca77)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C25") (unit 1) + (reference "C4") (unit 1) ) ) ) @@ -4503,7 +4503,7 @@ ) (pin "1" (uuid 81caf3f2-0098-48eb-a202-af0f48031eea)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR076") (unit 1) ) @@ -4517,7 +4517,7 @@ (symbol (lib_id "Device:C") (at 62.23 68.58 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid e534b46c-80d1-4c34-8578-50b240333e0c) - (property "Reference" "C27" (at 63.5 72.39 90) + (property "Reference" "C5" (at 63.5 72.39 90) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 63.5 64.77 90) @@ -4532,9 +4532,9 @@ (pin "1" (uuid a494194d-e3e9-4e84-8f25-57021a681151)) (pin "2" (uuid fda7cb74-15e1-4095-86ad-f40f74f32994)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C27") (unit 1) + (reference "C5") (unit 1) ) ) ) @@ -4543,7 +4543,7 @@ (symbol (lib_id "Device:R") (at 133.35 107.95 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid e59e1dd2-d274-40ca-a8b1-cb4b3dd2162e) - (property "Reference" "R26" (at 133.35 107.95 90) + (property "Reference" "R7" (at 133.35 107.95 90) (effects (font (size 1.27 1.27))) ) (property "Value" "510" (at 138.43 106.68 90) @@ -4558,9 +4558,9 @@ (pin "1" (uuid e69298fd-5d70-4531-8e3f-b8874f7ca308)) (pin "2" (uuid 84f1b763-3dd2-4f94-a728-23eb2c7796a1)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R26") (unit 1) + (reference "R7") (unit 1) ) ) ) @@ -4583,7 +4583,7 @@ ) (pin "1" (uuid 74c16fc2-2f7f-4219-a10d-cf4d95b7a13d)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -4612,12 +4612,12 @@ (pin "1" (uuid 29258ff3-4fe0-4432-b3ff-89955c464507)) (pin "2" (uuid fec31ab5-a849-42cc-a850-7ddcfa2a77ff)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "C33") (unit 1) ) (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C30") (unit 1) + (reference "C22") (unit 1) ) ) ) @@ -4640,7 +4640,7 @@ ) (pin "1" (uuid b2972075-1562-47db-afb1-79554c578966)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -4668,7 +4668,7 @@ ) (pin "1" (uuid fcfa09ab-80ac-4dc6-ba9c-88dd0a5125d5)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -4682,7 +4682,7 @@ (symbol (lib_id "Device:C") (at 41.91 68.58 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid f493fbdd-16cf-47a4-8571-5bdeffa77b8e) - (property "Reference" "C19" (at 43.18 72.39 90) + (property "Reference" "C1" (at 43.18 72.39 90) (effects (font (size 1.27 1.27))) ) (property "Value" "10pF" (at 43.18 64.77 90) @@ -4697,9 +4697,9 @@ (pin "1" (uuid e54f216a-ea35-40fd-aa1a-c01d8d1f7d8f)) (pin "2" (uuid c6622106-637b-49de-9814-56476189b207)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C19") (unit 1) + (reference "C1") (unit 1) ) ) ) @@ -4723,12 +4723,12 @@ (pin "1" (uuid 090848c6-f3e5-45eb-98fb-58e65424c4c1)) (pin "2" (uuid 29c609db-ee06-4a19-a4ca-ca0bef5009fe)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "C41") (unit 1) ) (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "C32") (unit 1) + (reference "C21") (unit 1) ) ) ) @@ -4737,7 +4737,7 @@ (symbol (lib_id "Device:FerriteBead_Small") (at 137.16 154.94 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid f76a00b9-0511-4931-90f1-d259b14389f9) - (property "Reference" "B6" (at 137.16 152.4 90) + (property "Reference" "B3" (at 137.16 152.4 90) (effects (font (size 1.27 1.27))) ) (property "Value" "BLM18EG221SN1D" (at 137.16 157.48 90) @@ -4752,9 +4752,9 @@ (pin "1" (uuid 8f7870e9-0ecb-4199-98c4-4167acd78afa)) (pin "2" (uuid 40420d30-3763-4098-9a65-10e3fbe31313)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "B6") (unit 1) + (reference "B3") (unit 1) ) ) ) @@ -4763,7 +4763,7 @@ (symbol (lib_id "Device:R") (at 138.43 119.38 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid f8848c60-f91f-414b-a5b0-c8e97aca000a) - (property "Reference" "R28" (at 138.43 119.38 90) + (property "Reference" "R6" (at 138.43 119.38 90) (effects (font (size 1.27 1.27))) ) (property "Value" "510" (at 137.16 114.3 90) @@ -4778,9 +4778,9 @@ (pin "1" (uuid a6c9a9ea-cdb1-4a0c-aa67-80e3e5544517)) (pin "2" (uuid 313cc12d-9b4d-405e-ba92-c1e1b836e59b)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/5bf93325-f5d9-4344-9bf3-f5fc91bc1622" - (reference "R28") (unit 1) + (reference "R6") (unit 1) ) ) ) diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.csv b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.csv similarity index 100% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.csv rename to Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.csv diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.dsn b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.dsn similarity index 100% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.dsn rename to Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.dsn diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pcb b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pcb similarity index 96% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pcb rename to Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pcb index ca6d80f..a09a6ba 100755 --- a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pcb +++ b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pcb @@ -108,7 +108,7 @@ (net 11 "SPI_MOSI") (net 12 "I2C_SDA") (net 13 "I2C_SCL") - (net 14 "unconnected-(U1-GPIO00-Pad43)") + (net 14 "Net-(U4-VCAP_2)") (net 15 "+5V") (net 16 "Net-(IN1-Pad9)") (net 17 "Net-(OUT1-Pad9)") @@ -171,14 +171,14 @@ (net 74 "EEP_DONE") (net 75 "Net-(D4-A)") (net 76 "Net-(D5-A)") - (net 77 "Net-(U1-I2C_SCL)") - (net 78 "Net-(U1-TEST)") - (net 79 "Net-(U1-SPI_MISO)") - (net 80 "Net-(U1-P0_SD)") - (net 81 "Net-(U1-RESET_BG)") - (net 82 "Net-(U1-P1_SD)") + (net 77 "Net-(U4-PH0)") + (net 78 "Net-(U4-PH1)") + (net 79 "Net-(U4-VCAP_1)") + (net 80 "Net-(U2-P0_SD)") + (net 81 "Net-(U2-RESET_BG)") + (net 82 "Net-(U2-P1_SD)") (net 83 "XSCO") - (net 84 "Net-(U2-WP)") + (net 84 "Net-(U2-SPI_MISO)") (net 85 "RSTO") (net 86 "P0_ACT") (net 87 "P1_ACT") @@ -186,81 +186,81 @@ (net 89 "LED_RUN") (net 90 "LED_ERR") (net 91 "SINT") - (net 92 "unconnected-(U1-GPIO02-Pad4)") - (net 93 "unconnected-(U1-FMISO-Pad7)") - (net 94 "unconnected-(U1-GPIO27-Pad8)") - (net 95 "unconnected-(U1-FSCLK-Pad9)") - (net 96 "unconnected-(U1-GPIO28-Pad11)") - (net 97 "unconnected-(U1-FMOSI-Pad12)") - (net 98 "unconnected-(U1-GPIO29-Pad13)") - (net 99 "unconnected-(U1-GPIO14-Pad14)") - (net 100 "unconnected-(U1-GPIO30-Pad15)") - (net 101 "unconnected-(U1-GPIO15-Pad17)") - (net 102 "unconnected-(U1-GPIO31-Pad18)") - (net 103 "unconnected-(U1-GPIO20-Pad42)") - (net 104 "unconnected-(U1-GPIO16-Pad44)") - (net 105 "unconnected-(U1-GPIO01-Pad47)") - (net 106 "unconnected-(U1-GPIO17-Pad48)") - (net 107 "unconnected-(U1-SFINT-Pad49)") - (net 108 "unconnected-(U1-GPIO18-Pad50)") - (net 109 "unconnected-(U1-GPIO03-Pad51)") - (net 110 "unconnected-(U1-GPIO19-Pad52)") - (net 111 "unconnected-(U1-GPIO05-Pad53)") + (net 92 "Net-(U2-TEST)") + (net 93 "Net-(U3-WP)") + (net 94 "Net-(U2-I2C_SCL)") + (net 95 "Net-(U4-BOOT0)") + (net 96 "unconnected-(U2-GPIO02-Pad4)") + (net 97 "unconnected-(U2-FMISO-Pad7)") + (net 98 "unconnected-(U2-GPIO27-Pad8)") + (net 99 "unconnected-(U2-FSCLK-Pad9)") + (net 100 "unconnected-(U2-GPIO28-Pad11)") + (net 101 "unconnected-(U2-FMOSI-Pad12)") + (net 102 "unconnected-(U2-GPIO29-Pad13)") + (net 103 "unconnected-(U2-GPIO14-Pad14)") + (net 104 "unconnected-(U2-GPIO30-Pad15)") + (net 105 "unconnected-(U2-GPIO15-Pad17)") + (net 106 "unconnected-(U2-GPIO31-Pad18)") + (net 107 "unconnected-(U2-GPIO20-Pad42)") + (net 108 "unconnected-(U2-GPIO00-Pad43)") + (net 109 "unconnected-(U2-GPIO16-Pad44)") + (net 110 "unconnected-(U2-GPIO01-Pad47)") + (net 111 "unconnected-(U2-GPIO17-Pad48)") (net 112 "A1V2") - (net 113 "unconnected-(U1-GPIO04-Pad60)") - (net 114 "unconnected-(U1-GPIO21-Pad66)") - (net 115 "unconnected-(U1-GPIO06-Pad67)") - (net 116 "unconnected-(U1-GPIO22-Pad68)") - (net 117 "unconnected-(U1-GPIO07-Pad69)") - (net 118 "unconnected-(U1-GPIO23-Pad70)") - (net 119 "unconnected-(U1-GPIO08-Pad71)") - (net 120 "unconnected-(U1-GPIO24-Pad73)") - (net 121 "unconnected-(U1-GPIO09-Pad74)") - (net 122 "unconnected-(U1-GPIO25-Pad75)") - (net 123 "unconnected-(U1-GPIO26-Pad76)") + (net 113 "unconnected-(U2-SFINT-Pad49)") + (net 114 "unconnected-(U2-GPIO18-Pad50)") + (net 115 "unconnected-(U2-GPIO03-Pad51)") + (net 116 "unconnected-(U2-GPIO19-Pad52)") + (net 117 "unconnected-(U2-GPIO05-Pad53)") + (net 118 "unconnected-(U2-GPIO04-Pad60)") + (net 119 "unconnected-(U2-GPIO21-Pad66)") + (net 120 "unconnected-(U2-GPIO06-Pad67)") + (net 121 "unconnected-(U2-GPIO22-Pad68)") + (net 122 "unconnected-(U2-GPIO07-Pad69)") + (net 123 "unconnected-(U2-GPIO23-Pad70)") (net 124 "SCS_FUNC") (net 125 "RST_MCU") - (net 126 "Net-(U5-VCAP_1)") - (net 127 "Net-(U5-PH0)") - (net 128 "Net-(U5-PH1)") - (net 129 "Net-(U5-VCAP_2)") - (net 130 "Net-(U5-BOOT0)") - (net 131 "unconnected-(U5-PE2-Pad1)") - (net 132 "unconnected-(U5-PE3-Pad2)") - (net 133 "unconnected-(U5-PE4-Pad3)") - (net 134 "unconnected-(U5-PE5-Pad4)") - (net 135 "unconnected-(U5-PE6-Pad5)") - (net 136 "unconnected-(U5-PC13-Pad7)") - (net 137 "unconnected-(U5-PC14-Pad8)") - (net 138 "unconnected-(U5-PC2-Pad17)") - (net 139 "unconnected-(U5-PA3-Pad26)") - (net 140 "unconnected-(U5-PB12-Pad51)") - (net 141 "unconnected-(U5-PB13-Pad52)") - (net 142 "unconnected-(U5-PB14-Pad53)") - (net 143 "unconnected-(U5-PB15-Pad54)") - (net 144 "unconnected-(U5-PD8-Pad55)") - (net 145 "unconnected-(U5-PD9-Pad56)") - (net 146 "unconnected-(U5-PD10-Pad57)") - (net 147 "unconnected-(U5-PD14-Pad61)") - (net 148 "unconnected-(U5-PD15-Pad62)") - (net 149 "unconnected-(U5-PC8-Pad65)") - (net 150 "unconnected-(U5-PA15-Pad77)") - (net 151 "unconnected-(U5-PC11-Pad79)") - (net 152 "unconnected-(U5-PC12-Pad80)") - (net 153 "unconnected-(U5-PD0-Pad81)") - (net 154 "unconnected-(U5-PD1-Pad82)") - (net 155 "unconnected-(U5-PD2-Pad83)") - (net 156 "unconnected-(U5-PD3-Pad84)") - (net 157 "unconnected-(U5-PD4-Pad85)") - (net 158 "unconnected-(U5-PD5-Pad86)") - (net 159 "unconnected-(U5-PD6-Pad87)") - (net 160 "unconnected-(U5-PD7-Pad88)") - (net 161 "unconnected-(U5-PB3-Pad89)") - (net 162 "unconnected-(U5-PB7-Pad93)") - (net 163 "unconnected-(U5-PB8-Pad95)") - (net 164 "unconnected-(U5-PB9-Pad96)") - (net 165 "unconnected-(U5-PE0-Pad97)") - (net 166 "unconnected-(U5-PE1-Pad98)") + (net 126 "unconnected-(U2-GPIO08-Pad71)") + (net 127 "unconnected-(U2-GPIO24-Pad73)") + (net 128 "unconnected-(U2-GPIO09-Pad74)") + (net 129 "unconnected-(U2-GPIO25-Pad75)") + (net 130 "unconnected-(U2-GPIO26-Pad76)") + (net 131 "unconnected-(U4-PE2-Pad1)") + (net 132 "unconnected-(U4-PE3-Pad2)") + (net 133 "unconnected-(U4-PE4-Pad3)") + (net 134 "unconnected-(U4-PE5-Pad4)") + (net 135 "unconnected-(U4-PE6-Pad5)") + (net 136 "unconnected-(U4-PC13-Pad7)") + (net 137 "unconnected-(U4-PC14-Pad8)") + (net 138 "unconnected-(U4-PC2-Pad17)") + (net 139 "unconnected-(U4-PA3-Pad26)") + (net 140 "unconnected-(U4-PB12-Pad51)") + (net 141 "unconnected-(U4-PB13-Pad52)") + (net 142 "unconnected-(U4-PB14-Pad53)") + (net 143 "unconnected-(U4-PB15-Pad54)") + (net 144 "unconnected-(U4-PD8-Pad55)") + (net 145 "unconnected-(U4-PD9-Pad56)") + (net 146 "unconnected-(U4-PD10-Pad57)") + (net 147 "unconnected-(U4-PD14-Pad61)") + (net 148 "unconnected-(U4-PD15-Pad62)") + (net 149 "unconnected-(U4-PC8-Pad65)") + (net 150 "unconnected-(U4-PA15-Pad77)") + (net 151 "unconnected-(U4-PC11-Pad79)") + (net 152 "unconnected-(U4-PC12-Pad80)") + (net 153 "unconnected-(U4-PD0-Pad81)") + (net 154 "unconnected-(U4-PD1-Pad82)") + (net 155 "unconnected-(U4-PD2-Pad83)") + (net 156 "unconnected-(U4-PD3-Pad84)") + (net 157 "unconnected-(U4-PD4-Pad85)") + (net 158 "unconnected-(U4-PD5-Pad86)") + (net 159 "unconnected-(U4-PD6-Pad87)") + (net 160 "unconnected-(U4-PD7-Pad88)") + (net 161 "unconnected-(U4-PB3-Pad89)") + (net 162 "unconnected-(U4-PB7-Pad93)") + (net 163 "unconnected-(U4-PB8-Pad95)") + (net 164 "unconnected-(U4-PB9-Pad96)") + (net 165 "unconnected-(U4-PE0-Pad97)") + (net 166 "unconnected-(U4-PE1-Pad98)") (footprint "Connector_JST:JST_XH_B4B-XH-A_1x04_P2.50mm_Vertical" (layer "F.Cu") (tstamp 002284e4-59d9-480b-be6c-7512bda91de7) @@ -273,7 +273,7 @@ (property "ki_keywords" "connector") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/0c654793-c9a7-40f5-ab50-4c0089a53edd") (attr through_hole) - (fp_text reference "J8" (at 3.944 1.795 90) (layer "F.SilkS") + (fp_text reference "J11" (at 3.944 1.795 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 0eed36e9-fc5f-4d43-a3b2-e33bae871b34) ) @@ -377,7 +377,7 @@ (property "Sheetname" "AX58100") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/151decbc-1b66-4082-88a8-6da1bb3d9015") (attr smd) - (fp_text reference "U1" (at 0 -7.35 90) (layer "F.SilkS") + (fp_text reference "U2" (at 0 -7.35 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp f5e484d2-32e5-4786-aa8a-998c18740ee1) ) @@ -623,35 +623,35 @@ (pad "3" smd roundrect (at -5.6625 -3 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 49 "SYNC1") (pinfunction "SYNC_L1") (pintype "bidirectional") (tstamp 81483342-a845-4472-a16d-d12ba7e74850)) (pad "4" smd roundrect (at -5.6625 -2.6 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 92 "unconnected-(U1-GPIO02-Pad4)") (pinfunction "GPIO02") (pintype "bidirectional+no_connect") (tstamp 333e50df-b8a5-486e-b9ac-5dd9628aaa2e)) + (net 96 "unconnected-(U2-GPIO02-Pad4)") (pinfunction "GPIO02") (pintype "bidirectional+no_connect") (tstamp 333e50df-b8a5-486e-b9ac-5dd9628aaa2e)) (pad "5" smd roundrect (at -5.6625 -2.2 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 1 "+1V2") (pinfunction "VCCK") (pintype "power_in") (tstamp 7f53c78d-93e2-449f-bd74-a1c9106a207a)) (pad "6" smd roundrect (at -5.6625 -1.8 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 79 "Net-(U1-SPI_MISO)") (pinfunction "SPI_MISO") (pintype "output") (tstamp 38bc7c8a-c350-43cf-9567-f3540e774211)) + (net 84 "Net-(U2-SPI_MISO)") (pinfunction "SPI_MISO") (pintype "output") (tstamp 38bc7c8a-c350-43cf-9567-f3540e774211)) (pad "7" smd roundrect (at -5.6625 -1.4 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 93 "unconnected-(U1-FMISO-Pad7)") (pinfunction "FMISO") (pintype "output+no_connect") (tstamp fe92f4e4-0e25-4f1b-9058-5c66944f5bf4)) + (net 97 "unconnected-(U2-FMISO-Pad7)") (pinfunction "FMISO") (pintype "output+no_connect") (tstamp fe92f4e4-0e25-4f1b-9058-5c66944f5bf4)) (pad "8" smd roundrect (at -5.6625 -1 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 94 "unconnected-(U1-GPIO27-Pad8)") (pinfunction "GPIO27") (pintype "bidirectional+no_connect") (tstamp 119bf87b-bfc4-46d0-bb77-49f56a19b188)) + (net 98 "unconnected-(U2-GPIO27-Pad8)") (pinfunction "GPIO27") (pintype "bidirectional+no_connect") (tstamp 119bf87b-bfc4-46d0-bb77-49f56a19b188)) (pad "9" smd roundrect (at -5.6625 -0.6 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 95 "unconnected-(U1-FSCLK-Pad9)") (pinfunction "FSCLK") (pintype "input+no_connect") (tstamp 61c5e21d-9ea4-4e39-981e-40e20d1e08aa)) + (net 99 "unconnected-(U2-FSCLK-Pad9)") (pinfunction "FSCLK") (pintype "input+no_connect") (tstamp 61c5e21d-9ea4-4e39-981e-40e20d1e08aa)) (pad "10" smd roundrect (at -5.6625 -0.2 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 2 "+3.3V") (pinfunction "VCC3IO") (pintype "power_in") (tstamp b1e7a2bf-6afd-4d0f-a86a-61490ff65b69)) (pad "11" smd roundrect (at -5.6625 0.2 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 96 "unconnected-(U1-GPIO28-Pad11)") (pinfunction "GPIO28") (pintype "bidirectional+no_connect") (tstamp c4bad738-4f84-467a-bbb9-4a57f59e76a7)) + (net 100 "unconnected-(U2-GPIO28-Pad11)") (pinfunction "GPIO28") (pintype "bidirectional+no_connect") (tstamp c4bad738-4f84-467a-bbb9-4a57f59e76a7)) (pad "12" smd roundrect (at -5.6625 0.6 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 97 "unconnected-(U1-FMOSI-Pad12)") (pinfunction "FMOSI") (pintype "input+no_connect") (tstamp e923e303-8707-4be8-b202-6c0cd885f503)) + (net 101 "unconnected-(U2-FMOSI-Pad12)") (pinfunction "FMOSI") (pintype "input+no_connect") (tstamp e923e303-8707-4be8-b202-6c0cd885f503)) (pad "13" smd roundrect (at -5.6625 1 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 98 "unconnected-(U1-GPIO29-Pad13)") (pinfunction "GPIO29") (pintype "bidirectional+no_connect") (tstamp fc2aaec3-0c06-4041-bfd8-cae0e981f559)) + (net 102 "unconnected-(U2-GPIO29-Pad13)") (pinfunction "GPIO29") (pintype "bidirectional+no_connect") (tstamp fc2aaec3-0c06-4041-bfd8-cae0e981f559)) (pad "14" smd roundrect (at -5.6625 1.4 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 99 "unconnected-(U1-GPIO14-Pad14)") (pinfunction "GPIO14") (pintype "bidirectional+no_connect") (tstamp 9fe91213-4b4c-4bba-9a50-5877c27f8c26)) + (net 103 "unconnected-(U2-GPIO14-Pad14)") (pinfunction "GPIO14") (pintype "bidirectional+no_connect") (tstamp 9fe91213-4b4c-4bba-9a50-5877c27f8c26)) (pad "15" smd roundrect (at -5.6625 1.8 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 100 "unconnected-(U1-GPIO30-Pad15)") (pinfunction "GPIO30") (pintype "bidirectional+no_connect") (tstamp f2a7bcb0-a9c8-4cdf-afd7-30cf131536f2)) + (net 104 "unconnected-(U2-GPIO30-Pad15)") (pinfunction "GPIO30") (pintype "bidirectional+no_connect") (tstamp f2a7bcb0-a9c8-4cdf-afd7-30cf131536f2)) (pad "16" smd roundrect (at -5.6625 2.2 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 1 "+1V2") (pinfunction "VCCK") (pintype "power_in") (tstamp 66a6fe4b-b42a-4d7b-a62c-21efdbf177ef)) (pad "17" smd roundrect (at -5.6625 2.6 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 101 "unconnected-(U1-GPIO15-Pad17)") (pinfunction "GPIO15") (pintype "bidirectional+no_connect") (tstamp 6c117fdc-002b-4242-a8cb-ed63901948a8)) + (net 105 "unconnected-(U2-GPIO15-Pad17)") (pinfunction "GPIO15") (pintype "bidirectional+no_connect") (tstamp 6c117fdc-002b-4242-a8cb-ed63901948a8)) (pad "18" smd roundrect (at -5.6625 3 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 102 "unconnected-(U1-GPIO31-Pad18)") (pinfunction "GPIO31") (pintype "bidirectional+no_connect") (tstamp eb323804-ec4e-4a7b-b874-7d0b2f58243a)) + (net 106 "unconnected-(U2-GPIO31-Pad18)") (pinfunction "GPIO31") (pintype "bidirectional+no_connect") (tstamp eb323804-ec4e-4a7b-b874-7d0b2f58243a)) (pad "19" smd roundrect (at -5.6625 3.4 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 89 "LED_RUN") (pinfunction "LED_RUN") (pintype "bidirectional") (tstamp 117fb29f-8222-4c81-a808-6bf5a577a12f)) (pad "20" smd roundrect (at -5.6625 3.8 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -669,7 +669,7 @@ (pad "26" smd roundrect (at -1.8 5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 72 "P1_RXIN") (pinfunction "P1_RXIN") (pintype "bidirectional") (tstamp f8cdd818-05eb-4bc3-84e9-c95f07cac6ec)) (pad "27" smd roundrect (at -1.4 5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 82 "Net-(U1-P1_SD)") (pinfunction "P1_SD") (pintype "bidirectional") (tstamp 773600eb-0e88-4ee1-8221-9bd77d41b9d7)) + (net 82 "Net-(U2-P1_SD)") (pinfunction "P1_SD") (pintype "bidirectional") (tstamp 773600eb-0e88-4ee1-8221-9bd77d41b9d7)) (pad "28" smd roundrect (at -1 5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 3 "+3.3VA") (pinfunction "VCC33A") (pintype "power_in") (tstamp 17e20e1b-c76a-494d-8394-b80f58582acf)) (pad "29" smd roundrect (at -0.6 5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -681,9 +681,9 @@ (pad "32" smd roundrect (at 0.6 5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 3 "+3.3VA") (pinfunction "VCC33A") (pintype "power_in") (tstamp 81adb417-6bcb-46fe-a007-6fd95524ec9e)) (pad "33" smd roundrect (at 1 5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 81 "Net-(U1-RESET_BG)") (pinfunction "RESET_BG") (pintype "output") (tstamp 752234a3-30b7-4626-afd7-31ec67de719c)) + (net 81 "Net-(U2-RESET_BG)") (pinfunction "RESET_BG") (pintype "output") (tstamp 752234a3-30b7-4626-afd7-31ec67de719c)) (pad "34" smd roundrect (at 1.4 5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 80 "Net-(U1-P0_SD)") (pinfunction "P0_SD") (pintype "bidirectional") (tstamp 6df9b613-1a33-417c-8a4d-adbddd69e7ca)) + (net 80 "Net-(U2-P0_SD)") (pinfunction "P0_SD") (pintype "bidirectional") (tstamp 6df9b613-1a33-417c-8a4d-adbddd69e7ca)) (pad "35" smd roundrect (at 1.8 5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 71 "P0_RXIN") (pinfunction "P0_RXIN") (pintype "bidirectional") (tstamp f3bc639c-39a8-4efb-9a58-678a2429958a)) (pad "36" smd roundrect (at 2.2 5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -699,29 +699,29 @@ (pad "41" smd roundrect (at 5.6625 3.8 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 87 "P1_ACT") (pinfunction "P1_ACT") (pintype "input") (tstamp 0a52efae-b4b2-4036-a3e4-29b5df8a8dd8)) (pad "42" smd roundrect (at 5.6625 3.4 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 103 "unconnected-(U1-GPIO20-Pad42)") (pinfunction "GPIO20") (pintype "bidirectional+no_connect") (tstamp 6d8386ca-59e8-4091-8652-2d429051b2f2)) + (net 107 "unconnected-(U2-GPIO20-Pad42)") (pinfunction "GPIO20") (pintype "bidirectional+no_connect") (tstamp 6d8386ca-59e8-4091-8652-2d429051b2f2)) (pad "43" smd roundrect (at 5.6625 3 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 14 "unconnected-(U1-GPIO00-Pad43)") (pinfunction "GPIO00") (pintype "bidirectional+no_connect") (tstamp 027db5d1-9994-4930-8eb0-a0c6fd50d95c)) + (net 108 "unconnected-(U2-GPIO00-Pad43)") (pinfunction "GPIO00") (pintype "bidirectional+no_connect") (tstamp 027db5d1-9994-4930-8eb0-a0c6fd50d95c)) (pad "44" smd roundrect (at 5.6625 2.6 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 104 "unconnected-(U1-GPIO16-Pad44)") (pinfunction "GPIO16") (pintype "bidirectional+no_connect") (tstamp ad230000-bac6-44b1-85ca-18312ffc58bf)) + (net 109 "unconnected-(U2-GPIO16-Pad44)") (pinfunction "GPIO16") (pintype "bidirectional+no_connect") (tstamp ad230000-bac6-44b1-85ca-18312ffc58bf)) (pad "45" smd roundrect (at 5.6625 2.2 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 2 "+3.3V") (pinfunction "VCC3IO") (pintype "power_in") (tstamp 2fea7205-e96f-494f-9773-8f4ab676060a)) (pad "46" smd roundrect (at 5.6625 1.8 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 1 "+1V2") (pinfunction "VCCK") (pintype "power_in") (tstamp 434460e8-a48f-4da7-b9ef-3018ab907e21)) (pad "47" smd roundrect (at 5.6625 1.4 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 105 "unconnected-(U1-GPIO01-Pad47)") (pinfunction "GPIO01") (pintype "bidirectional+no_connect") (tstamp 901de8f1-6567-4a39-b4ad-95a02d62ac74)) + (net 110 "unconnected-(U2-GPIO01-Pad47)") (pinfunction "GPIO01") (pintype "bidirectional+no_connect") (tstamp 901de8f1-6567-4a39-b4ad-95a02d62ac74)) (pad "48" smd roundrect (at 5.6625 1 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 106 "unconnected-(U1-GPIO17-Pad48)") (pinfunction "GPIO17") (pintype "bidirectional+no_connect") (tstamp 7f93a86c-df85-4533-9e03-994f426259dc)) + (net 111 "unconnected-(U2-GPIO17-Pad48)") (pinfunction "GPIO17") (pintype "bidirectional+no_connect") (tstamp 7f93a86c-df85-4533-9e03-994f426259dc)) (pad "49" smd roundrect (at 5.6625 0.6 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 107 "unconnected-(U1-SFINT-Pad49)") (pinfunction "SFINT") (pintype "output+no_connect") (tstamp 00a141c6-8b5b-4222-9a52-0f8d8a480d29)) + (net 113 "unconnected-(U2-SFINT-Pad49)") (pinfunction "SFINT") (pintype "output+no_connect") (tstamp 00a141c6-8b5b-4222-9a52-0f8d8a480d29)) (pad "50" smd roundrect (at 5.6625 0.2 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 108 "unconnected-(U1-GPIO18-Pad50)") (pinfunction "GPIO18") (pintype "bidirectional+no_connect") (tstamp 06479d08-12f3-47ef-9961-50a4ac51b849)) + (net 114 "unconnected-(U2-GPIO18-Pad50)") (pinfunction "GPIO18") (pintype "bidirectional+no_connect") (tstamp 06479d08-12f3-47ef-9961-50a4ac51b849)) (pad "51" smd roundrect (at 5.6625 -0.2 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 109 "unconnected-(U1-GPIO03-Pad51)") (pinfunction "GPIO03") (pintype "passive+no_connect") (tstamp 0ad12a98-49be-42c0-9d4b-f527799ee41b)) + (net 115 "unconnected-(U2-GPIO03-Pad51)") (pinfunction "GPIO03") (pintype "passive+no_connect") (tstamp 0ad12a98-49be-42c0-9d4b-f527799ee41b)) (pad "52" smd roundrect (at 5.6625 -0.6 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 110 "unconnected-(U1-GPIO19-Pad52)") (pinfunction "GPIO19") (pintype "bidirectional+no_connect") (tstamp 7649aa5f-ed51-4e1c-9a97-9e91b4a9f353)) + (net 116 "unconnected-(U2-GPIO19-Pad52)") (pinfunction "GPIO19") (pintype "bidirectional+no_connect") (tstamp 7649aa5f-ed51-4e1c-9a97-9e91b4a9f353)) (pad "53" smd roundrect (at 5.6625 -1 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 111 "unconnected-(U1-GPIO05-Pad53)") (pinfunction "GPIO05") (pintype "bidirectional+no_connect") (tstamp 176f8a29-2cba-406e-af49-dd0a35c59703)) + (net 117 "unconnected-(U2-GPIO05-Pad53)") (pinfunction "GPIO05") (pintype "bidirectional+no_connect") (tstamp 176f8a29-2cba-406e-af49-dd0a35c59703)) (pad "54" smd roundrect (at 5.6625 -1.4 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 112 "A1V2") (pinfunction "VCC12A_PLL") (pintype "power_in") (tstamp 95a42362-c72c-49a9-befa-db4798013531)) (pad "55" smd roundrect (at 5.6625 -1.8 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -733,13 +733,13 @@ (pad "58" smd roundrect (at 5.6625 -3 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 85 "RSTO") (pinfunction "RSTO") (pintype "output") (tstamp 82889a7c-f887-4bcd-8111-af455dc6322b)) (pad "59" smd roundrect (at 5.6625 -3.4 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 78 "Net-(U1-TEST)") (pinfunction "TEST") (pintype "input") (tstamp 64a311fc-069a-4db9-8839-3d4242a8bb08)) + (net 92 "Net-(U2-TEST)") (pinfunction "TEST") (pintype "input") (tstamp 64a311fc-069a-4db9-8839-3d4242a8bb08)) (pad "60" smd roundrect (at 5.6625 -3.8 90) (size 1.475 0.25) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 113 "unconnected-(U1-GPIO04-Pad60)") (pinfunction "GPIO04") (pintype "bidirectional+no_connect") (tstamp 8857a3da-a82e-4235-867e-e1ce05ba0eda)) + (net 118 "unconnected-(U2-GPIO04-Pad60)") (pinfunction "GPIO04") (pintype "bidirectional+no_connect") (tstamp 8857a3da-a82e-4235-867e-e1ce05ba0eda)) (pad "61" smd roundrect (at 3.8 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 88 "PDI_EMU") (pinfunction "PDI_EMU") (pintype "input") (tstamp def8044d-820e-41a8-a81e-fb09d9cf4c0e)) (pad "62" smd roundrect (at 3.4 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 77 "Net-(U1-I2C_SCL)") (pinfunction "I2C_SCL") (pintype "output") (tstamp a8fe5c33-12ed-46d7-bfc8-d16d4923a823)) + (net 94 "Net-(U2-I2C_SCL)") (pinfunction "I2C_SCL") (pintype "output") (tstamp a8fe5c33-12ed-46d7-bfc8-d16d4923a823)) (pad "63" smd roundrect (at 3 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 12 "I2C_SDA") (pinfunction "I2C_SDA") (pintype "bidirectional") (tstamp 404db66d-aa0b-4421-a8fa-080ab2597bcb)) (pad "64" smd roundrect (at 2.6 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -747,27 +747,27 @@ (pad "65" smd roundrect (at 2.2 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 2 "+3.3V") (pinfunction "VCC3IO") (pintype "power_in") (tstamp 62219fe5-e589-4801-bcc7-39b109457600)) (pad "66" smd roundrect (at 1.8 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 114 "unconnected-(U1-GPIO21-Pad66)") (pinfunction "GPIO21") (pintype "bidirectional+no_connect") (tstamp 641e26a4-da6f-4714-ba7f-88161fe756fe)) + (net 119 "unconnected-(U2-GPIO21-Pad66)") (pinfunction "GPIO21") (pintype "bidirectional+no_connect") (tstamp 641e26a4-da6f-4714-ba7f-88161fe756fe)) (pad "67" smd roundrect (at 1.4 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 115 "unconnected-(U1-GPIO06-Pad67)") (pinfunction "GPIO06") (pintype "bidirectional+no_connect") (tstamp 7e6c7bae-a320-4bd6-88a4-3c7f020421d5)) + (net 120 "unconnected-(U2-GPIO06-Pad67)") (pinfunction "GPIO06") (pintype "bidirectional+no_connect") (tstamp 7e6c7bae-a320-4bd6-88a4-3c7f020421d5)) (pad "68" smd roundrect (at 1 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 116 "unconnected-(U1-GPIO22-Pad68)") (pinfunction "GPIO22") (pintype "bidirectional+no_connect") (tstamp a1e27da9-c59d-40c4-8d56-17c01e798047)) + (net 121 "unconnected-(U2-GPIO22-Pad68)") (pinfunction "GPIO22") (pintype "bidirectional+no_connect") (tstamp a1e27da9-c59d-40c4-8d56-17c01e798047)) (pad "69" smd roundrect (at 0.6 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 117 "unconnected-(U1-GPIO07-Pad69)") (pinfunction "GPIO07") (pintype "bidirectional+no_connect") (tstamp f7b4d2e9-273e-48eb-bebf-76aa38b81396)) + (net 122 "unconnected-(U2-GPIO07-Pad69)") (pinfunction "GPIO07") (pintype "bidirectional+no_connect") (tstamp f7b4d2e9-273e-48eb-bebf-76aa38b81396)) (pad "70" smd roundrect (at 0.2 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 118 "unconnected-(U1-GPIO23-Pad70)") (pinfunction "GPIO23") (pintype "bidirectional+no_connect") (tstamp c053cf9e-f6fd-405d-af7f-d04cc97f52d7)) + (net 123 "unconnected-(U2-GPIO23-Pad70)") (pinfunction "GPIO23") (pintype "bidirectional+no_connect") (tstamp c053cf9e-f6fd-405d-af7f-d04cc97f52d7)) (pad "71" smd roundrect (at -0.2 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 119 "unconnected-(U1-GPIO08-Pad71)") (pinfunction "GPIO08") (pintype "bidirectional+no_connect") (tstamp a404480c-d96c-41ce-aaad-7c746f743971)) + (net 126 "unconnected-(U2-GPIO08-Pad71)") (pinfunction "GPIO08") (pintype "bidirectional+no_connect") (tstamp a404480c-d96c-41ce-aaad-7c746f743971)) (pad "72" smd roundrect (at -0.6 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 1 "+1V2") (pinfunction "VCCK") (pintype "power_in") (tstamp 0c7d9268-7a85-4f01-8ab2-8f34fffcf1e5)) (pad "73" smd roundrect (at -1 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 120 "unconnected-(U1-GPIO24-Pad73)") (pinfunction "GPIO24") (pintype "bidirectional+no_connect") (tstamp 3e7b94c7-9c5e-4045-8f22-1db2911440b6)) + (net 127 "unconnected-(U2-GPIO24-Pad73)") (pinfunction "GPIO24") (pintype "bidirectional+no_connect") (tstamp 3e7b94c7-9c5e-4045-8f22-1db2911440b6)) (pad "74" smd roundrect (at -1.4 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 121 "unconnected-(U1-GPIO09-Pad74)") (pinfunction "GPIO09") (pintype "bidirectional+no_connect") (tstamp e27f0874-d5ae-4982-9b38-7226127024a6)) + (net 128 "unconnected-(U2-GPIO09-Pad74)") (pinfunction "GPIO09") (pintype "bidirectional+no_connect") (tstamp e27f0874-d5ae-4982-9b38-7226127024a6)) (pad "75" smd roundrect (at -1.8 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 122 "unconnected-(U1-GPIO25-Pad75)") (pinfunction "GPIO25") (pintype "bidirectional+no_connect") (tstamp 4ee7ac53-bb9e-4f8e-b63b-98c27b6f3ebe)) + (net 129 "unconnected-(U2-GPIO25-Pad75)") (pinfunction "GPIO25") (pintype "bidirectional+no_connect") (tstamp 4ee7ac53-bb9e-4f8e-b63b-98c27b6f3ebe)) (pad "76" smd roundrect (at -2.2 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 123 "unconnected-(U1-GPIO26-Pad76)") (pinfunction "GPIO26") (pintype "bidirectional+no_connect") (tstamp 7f546517-49c4-46d3-82de-ed3ae976fbcd)) + (net 130 "unconnected-(U2-GPIO26-Pad76)") (pinfunction "GPIO26") (pintype "bidirectional+no_connect") (tstamp 7f546517-49c4-46d3-82de-ed3ae976fbcd)) (pad "77" smd roundrect (at -2.6 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 2 "+3.3V") (pinfunction "VCC3IO") (pintype "power_in") (tstamp b3333904-46ae-4c08-9362-41cf68fd541c)) (pad "78" smd roundrect (at -3 -5.6625 90) (size 0.25 1.475) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -830,7 +830,7 @@ (property "ki_keywords" "L ferrite bead inductor filter") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/18c39117-9175-49a5-804f-919c3f463e74") (attr smd) - (fp_text reference "B3" (at 0 -1.68 90) (layer "F.SilkS") + (fp_text reference "B7" (at 0 -1.68 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp b43351bd-3070-4d90-a7a2-ad7a60f85be9) ) @@ -884,7 +884,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/fba92b1b-a107-4bbf-b17c-e1290d74ed15") (attr smd) - (fp_text reference "R59" (at -0.254 1.524) (layer "F.SilkS") + (fp_text reference "R18" (at -0.254 1.524) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp d2a9ca24-6032-4a78-bc37-e0953cf70c3c) ) @@ -938,7 +938,7 @@ (property "ki_keywords" "Arm Cortex-M4 STM32F4 STM32F407/417") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/1a6fc763-30fe-4ccb-ac19-f8d2ce5a8c3b") (attr smd) - (fp_text reference "U5" (at 0 -9.42 -270) (layer "F.SilkS") + (fp_text reference "U4" (at 0 -9.42 -270) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 563f0402-269b-416d-9cfd-30b187b30a66) ) @@ -1027,21 +1027,21 @@ (fp_line (start 7 7) (end -7 7) (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 5f96e1bc-3625-4725-ab21-099ca6876302)) (pad "1" smd roundrect (at -7.675 -6 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 131 "unconnected-(U5-PE2-Pad1)") (pinfunction "PE2") (pintype "bidirectional+no_connect") (tstamp ad627668-fb10-439f-a120-c9b6be19f6b9)) + (net 131 "unconnected-(U4-PE2-Pad1)") (pinfunction "PE2") (pintype "bidirectional+no_connect") (tstamp ad627668-fb10-439f-a120-c9b6be19f6b9)) (pad "2" smd roundrect (at -7.675 -5.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 132 "unconnected-(U5-PE3-Pad2)") (pinfunction "PE3") (pintype "bidirectional+no_connect") (tstamp 416d5c00-a8b5-479e-9190-0af874c5ffd4)) + (net 132 "unconnected-(U4-PE3-Pad2)") (pinfunction "PE3") (pintype "bidirectional+no_connect") (tstamp 416d5c00-a8b5-479e-9190-0af874c5ffd4)) (pad "3" smd roundrect (at -7.675 -5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 133 "unconnected-(U5-PE4-Pad3)") (pinfunction "PE4") (pintype "bidirectional+no_connect") (tstamp fbd314c4-ece4-45a2-860b-318494022057)) + (net 133 "unconnected-(U4-PE4-Pad3)") (pinfunction "PE4") (pintype "bidirectional+no_connect") (tstamp fbd314c4-ece4-45a2-860b-318494022057)) (pad "4" smd roundrect (at -7.675 -4.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 134 "unconnected-(U5-PE5-Pad4)") (pinfunction "PE5") (pintype "bidirectional+no_connect") (tstamp 783d4a98-626d-4318-bf1a-7af915118aa9)) + (net 134 "unconnected-(U4-PE5-Pad4)") (pinfunction "PE5") (pintype "bidirectional+no_connect") (tstamp 783d4a98-626d-4318-bf1a-7af915118aa9)) (pad "5" smd roundrect (at -7.675 -4 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 135 "unconnected-(U5-PE6-Pad5)") (pinfunction "PE6") (pintype "bidirectional+no_connect") (tstamp f6ff689c-789c-4b3e-a638-fcdb798d0000)) + (net 135 "unconnected-(U4-PE6-Pad5)") (pinfunction "PE6") (pintype "bidirectional+no_connect") (tstamp f6ff689c-789c-4b3e-a638-fcdb798d0000)) (pad "6" smd roundrect (at -7.675 -3.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 2 "+3.3V") (pinfunction "VBAT") (pintype "power_in") (tstamp 99375cd8-8339-46db-b6c2-e8d8aa9d3d36)) (pad "7" smd roundrect (at -7.675 -3 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 136 "unconnected-(U5-PC13-Pad7)") (pinfunction "PC13") (pintype "bidirectional+no_connect") (tstamp d91a19ef-ea96-4ed9-bd6d-46be1a51de84)) + (net 136 "unconnected-(U4-PC13-Pad7)") (pinfunction "PC13") (pintype "bidirectional+no_connect") (tstamp d91a19ef-ea96-4ed9-bd6d-46be1a51de84)) (pad "8" smd roundrect (at -7.675 -2.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 137 "unconnected-(U5-PC14-Pad8)") (pinfunction "PC14") (pintype "bidirectional+no_connect") (tstamp 6351d797-fa77-475d-ab7f-6a4e5c3051ad)) + (net 137 "unconnected-(U4-PC14-Pad8)") (pinfunction "PC14") (pintype "bidirectional+no_connect") (tstamp 6351d797-fa77-475d-ab7f-6a4e5c3051ad)) (pad "9" smd roundrect (at -7.675 -2 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 124 "SCS_FUNC") (pinfunction "PC15") (pintype "bidirectional") (tstamp 05a49924-ac0c-4702-9cd0-9bec98d0dacc)) (pad "10" smd roundrect (at -7.675 -1.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -1049,9 +1049,9 @@ (pad "11" smd roundrect (at -7.675 -1 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 2 "+3.3V") (pinfunction "VDD") (pintype "power_in") (tstamp 2ce2fb64-b623-4677-b57c-d2ea5494033b)) (pad "12" smd roundrect (at -7.675 -0.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 127 "Net-(U5-PH0)") (pinfunction "PH0") (pintype "bidirectional") (tstamp 836378df-c1fe-45f2-84de-84e234e45696)) + (net 77 "Net-(U4-PH0)") (pinfunction "PH0") (pintype "bidirectional") (tstamp 836378df-c1fe-45f2-84de-84e234e45696)) (pad "13" smd roundrect (at -7.675 0 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 128 "Net-(U5-PH1)") (pinfunction "PH1") (pintype "bidirectional") (tstamp 9b3f5aa9-95c4-4072-8f30-92f16500cd48)) + (net 78 "Net-(U4-PH1)") (pinfunction "PH1") (pintype "bidirectional") (tstamp 9b3f5aa9-95c4-4072-8f30-92f16500cd48)) (pad "14" smd roundrect (at -7.675 0.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 125 "RST_MCU") (pinfunction "NRST") (pintype "input") (tstamp 98a34819-cc1a-4932-b599-cab28c267826)) (pad "15" smd roundrect (at -7.675 1 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -1059,7 +1059,7 @@ (pad "16" smd roundrect (at -7.675 1.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 49 "SYNC1") (pinfunction "PC1") (pintype "bidirectional") (tstamp ada48236-745a-47f2-90c7-7cba2d1e6a58)) (pad "17" smd roundrect (at -7.675 2 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 138 "unconnected-(U5-PC2-Pad17)") (pinfunction "PC2") (pintype "bidirectional+no_connect") (tstamp 60dc45ff-d14b-4332-a04e-eaa2a8e50e36)) + (net 138 "unconnected-(U4-PC2-Pad17)") (pinfunction "PC2") (pintype "bidirectional+no_connect") (tstamp 60dc45ff-d14b-4332-a04e-eaa2a8e50e36)) (pad "18" smd roundrect (at -7.675 2.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 48 "SYNC0") (pinfunction "PC3") (pintype "bidirectional") (tstamp 531a0241-55f8-4353-90af-27d032d96b6d)) (pad "19" smd roundrect (at -7.675 3 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -1077,7 +1077,7 @@ (pad "25" smd roundrect (at -7.675 6 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 25 "ENC1_Z") (pinfunction "PA2") (pintype "bidirectional") (tstamp 8f8c1322-0079-4a23-ba7d-2329eecce48b)) (pad "26" smd roundrect (at -6 7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 139 "unconnected-(U5-PA3-Pad26)") (pinfunction "PA3") (pintype "bidirectional+no_connect") (tstamp c64e95d9-1f0b-45cc-8b4c-a0e4f9e7d802)) + (net 139 "unconnected-(U4-PA3-Pad26)") (pinfunction "PA3") (pintype "bidirectional+no_connect") (tstamp c64e95d9-1f0b-45cc-8b4c-a0e4f9e7d802)) (pad "27" smd roundrect (at -5.5 7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pinfunction "VSS") (pintype "passive") (tstamp 97b33dee-0805-4744-9f8c-a6beca83efc4)) (pad "28" smd roundrect (at -5 7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -1123,23 +1123,23 @@ (pad "48" smd roundrect (at 5 7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 28 "I2C2_SDA") (pinfunction "PB11") (pintype "bidirectional") (tstamp 726fbd01-5440-474f-a974-842d95d1f2c3)) (pad "49" smd roundrect (at 5.5 7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 126 "Net-(U5-VCAP_1)") (pinfunction "VCAP_1") (pintype "power_out") (tstamp cd60df20-a408-447c-b4d3-66e4adab1285)) + (net 79 "Net-(U4-VCAP_1)") (pinfunction "VCAP_1") (pintype "power_out") (tstamp cd60df20-a408-447c-b4d3-66e4adab1285)) (pad "50" smd roundrect (at 6 7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 2 "+3.3V") (pinfunction "VDD") (pintype "power_in") (tstamp 8ad00027-c143-46b6-a711-b1c076c468cf)) (pad "51" smd roundrect (at 7.675 6 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 140 "unconnected-(U5-PB12-Pad51)") (pinfunction "PB12") (pintype "bidirectional+no_connect") (tstamp 835d3d85-51c0-40ee-ab30-f4c808a6a5ae)) + (net 140 "unconnected-(U4-PB12-Pad51)") (pinfunction "PB12") (pintype "bidirectional+no_connect") (tstamp 835d3d85-51c0-40ee-ab30-f4c808a6a5ae)) (pad "52" smd roundrect (at 7.675 5.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 141 "unconnected-(U5-PB13-Pad52)") (pinfunction "PB13") (pintype "bidirectional+no_connect") (tstamp 8ac47b49-5194-4f48-b784-8df7a0369ec7)) + (net 141 "unconnected-(U4-PB13-Pad52)") (pinfunction "PB13") (pintype "bidirectional+no_connect") (tstamp 8ac47b49-5194-4f48-b784-8df7a0369ec7)) (pad "53" smd roundrect (at 7.675 5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 142 "unconnected-(U5-PB14-Pad53)") (pinfunction "PB14") (pintype "bidirectional+no_connect") (tstamp 5a363e3a-e019-4279-af06-6924bee0caf8)) + (net 142 "unconnected-(U4-PB14-Pad53)") (pinfunction "PB14") (pintype "bidirectional+no_connect") (tstamp 5a363e3a-e019-4279-af06-6924bee0caf8)) (pad "54" smd roundrect (at 7.675 4.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 143 "unconnected-(U5-PB15-Pad54)") (pinfunction "PB15") (pintype "bidirectional+no_connect") (tstamp 35857864-633e-4582-8711-ef84087bf193)) + (net 143 "unconnected-(U4-PB15-Pad54)") (pinfunction "PB15") (pintype "bidirectional+no_connect") (tstamp 35857864-633e-4582-8711-ef84087bf193)) (pad "55" smd roundrect (at 7.675 4 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 144 "unconnected-(U5-PD8-Pad55)") (pinfunction "PD8") (pintype "bidirectional+no_connect") (tstamp 7e9298b3-35c5-4274-a90b-4b6e3f7e8a3e)) + (net 144 "unconnected-(U4-PD8-Pad55)") (pinfunction "PD8") (pintype "bidirectional+no_connect") (tstamp 7e9298b3-35c5-4274-a90b-4b6e3f7e8a3e)) (pad "56" smd roundrect (at 7.675 3.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 145 "unconnected-(U5-PD9-Pad56)") (pinfunction "PD9") (pintype "bidirectional+no_connect") (tstamp 33f1875b-d2db-4438-a878-1da8d527b43f)) + (net 145 "unconnected-(U4-PD9-Pad56)") (pinfunction "PD9") (pintype "bidirectional+no_connect") (tstamp 33f1875b-d2db-4438-a878-1da8d527b43f)) (pad "57" smd roundrect (at 7.675 3 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 146 "unconnected-(U5-PD10-Pad57)") (pinfunction "PD10") (pintype "bidirectional+no_connect") (tstamp 2dfffe3e-23d4-4459-b525-33e10ac86f16)) + (net 146 "unconnected-(U4-PD10-Pad57)") (pinfunction "PD10") (pintype "bidirectional+no_connect") (tstamp 2dfffe3e-23d4-4459-b525-33e10ac86f16)) (pad "58" smd roundrect (at 7.675 2.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 34 "ENC3_Z") (pinfunction "PD11") (pintype "bidirectional") (tstamp cd172b23-52b0-484b-8712-4b5403af8509)) (pad "59" smd roundrect (at 7.675 2 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -1147,15 +1147,15 @@ (pad "60" smd roundrect (at 7.675 1.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 33 "ENC3_B") (pinfunction "PD13") (pintype "bidirectional") (tstamp 5f2cb5be-fb5e-4b4e-aadc-413e7e0144f0)) (pad "61" smd roundrect (at 7.675 1 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 147 "unconnected-(U5-PD14-Pad61)") (pinfunction "PD14") (pintype "bidirectional") (tstamp 467a79a9-fea2-43a5-8012-768cc1374850)) + (net 147 "unconnected-(U4-PD14-Pad61)") (pinfunction "PD14") (pintype "bidirectional") (tstamp 467a79a9-fea2-43a5-8012-768cc1374850)) (pad "62" smd roundrect (at 7.675 0.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 148 "unconnected-(U5-PD15-Pad62)") (pinfunction "PD15") (pintype "bidirectional") (tstamp 3efc6622-e232-4cd5-b541-cc693aaa6ea9)) + (net 148 "unconnected-(U4-PD15-Pad62)") (pinfunction "PD15") (pintype "bidirectional") (tstamp 3efc6622-e232-4cd5-b541-cc693aaa6ea9)) (pad "63" smd roundrect (at 7.675 0 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 35 "ENC4_A") (pinfunction "PC6") (pintype "bidirectional") (tstamp c9e451f9-1bd6-4eea-9133-d4f79eab914a)) (pad "64" smd roundrect (at 7.675 -0.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 36 "ENC4_B") (pinfunction "PC7") (pintype "bidirectional") (tstamp 489f7ed7-d04a-405d-b6c7-e3c37dcbce4e)) (pad "65" smd roundrect (at 7.675 -1 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 149 "unconnected-(U5-PC8-Pad65)") (pinfunction "PC8") (pintype "bidirectional+no_connect") (tstamp c056a04d-12d6-4b0b-877f-83d72cc1d303)) + (net 149 "unconnected-(U4-PC8-Pad65)") (pinfunction "PC8") (pintype "bidirectional+no_connect") (tstamp c056a04d-12d6-4b0b-877f-83d72cc1d303)) (pad "66" smd roundrect (at 7.675 -1.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 54 "STEP2_STEP") (pinfunction "PC9") (pintype "bidirectional") (tstamp e3f9eb42-8ab8-4128-a658-07c6b3650a64)) (pad "67" smd roundrect (at 7.675 -2 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -1171,7 +1171,7 @@ (pad "72" smd roundrect (at 7.675 -4.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 20 "SWDIO") (pinfunction "PA13") (pintype "bidirectional") (tstamp acacfb86-2cbb-41e3-9f29-38e4cc33295a)) (pad "73" smd roundrect (at 7.675 -5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 129 "Net-(U5-VCAP_2)") (pinfunction "VCAP_2") (pintype "power_out") (tstamp 1580b7b1-8511-4f1c-91fb-42f3a0929d51)) + (net 14 "Net-(U4-VCAP_2)") (pinfunction "VCAP_2") (pintype "power_out") (tstamp 1580b7b1-8511-4f1c-91fb-42f3a0929d51)) (pad "74" smd roundrect (at 7.675 -5.5 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pinfunction "VSS") (pintype "passive") (tstamp 6da332df-1c7d-4f4b-b8d8-fd52981fe4ca)) (pad "75" smd roundrect (at 7.675 -6 270) (size 1.6 0.3) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -1179,31 +1179,31 @@ (pad "76" smd roundrect (at 6 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 19 "SWCLK") (pinfunction "PA14") (pintype "bidirectional") (tstamp bfe88c4b-48c4-4ddd-8141-a0307701e519)) (pad "77" smd roundrect (at 5.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 150 "unconnected-(U5-PA15-Pad77)") (pinfunction "PA15") (pintype "bidirectional+no_connect") (tstamp 6359e343-feee-4a7d-8eda-2e40eb0d9f53)) + (net 150 "unconnected-(U4-PA15-Pad77)") (pinfunction "PA15") (pintype "bidirectional+no_connect") (tstamp 6359e343-feee-4a7d-8eda-2e40eb0d9f53)) (pad "78" smd roundrect (at 5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 53 "STEP2_DIR") (pinfunction "PC10") (pintype "bidirectional") (tstamp d4a67332-4891-4fcb-b7fe-11e6d2b4edc8)) (pad "79" smd roundrect (at 4.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 151 "unconnected-(U5-PC11-Pad79)") (pinfunction "PC11") (pintype "bidirectional+no_connect") (tstamp 9a9f3c07-c442-439c-8b86-eaa66bc92e9c)) + (net 151 "unconnected-(U4-PC11-Pad79)") (pinfunction "PC11") (pintype "bidirectional+no_connect") (tstamp 9a9f3c07-c442-439c-8b86-eaa66bc92e9c)) (pad "80" smd roundrect (at 4 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 152 "unconnected-(U5-PC12-Pad80)") (pinfunction "PC12") (pintype "bidirectional+no_connect") (tstamp 3c42832a-5898-495e-a3b6-517b1ea51a48)) + (net 152 "unconnected-(U4-PC12-Pad80)") (pinfunction "PC12") (pintype "bidirectional+no_connect") (tstamp 3c42832a-5898-495e-a3b6-517b1ea51a48)) (pad "81" smd roundrect (at 3.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 153 "unconnected-(U5-PD0-Pad81)") (pinfunction "PD0") (pintype "bidirectional+no_connect") (tstamp 693c6554-d048-4f35-bdf0-173c34f64229)) + (net 153 "unconnected-(U4-PD0-Pad81)") (pinfunction "PD0") (pintype "bidirectional+no_connect") (tstamp 693c6554-d048-4f35-bdf0-173c34f64229)) (pad "82" smd roundrect (at 3 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 154 "unconnected-(U5-PD1-Pad82)") (pinfunction "PD1") (pintype "bidirectional+no_connect") (tstamp e0e9db6d-05e9-4940-8339-14c66565c7ca)) + (net 154 "unconnected-(U4-PD1-Pad82)") (pinfunction "PD1") (pintype "bidirectional+no_connect") (tstamp e0e9db6d-05e9-4940-8339-14c66565c7ca)) (pad "83" smd roundrect (at 2.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 155 "unconnected-(U5-PD2-Pad83)") (pinfunction "PD2") (pintype "bidirectional+no_connect") (tstamp 5aa7022e-d965-471f-8586-a9b7a947341a)) + (net 155 "unconnected-(U4-PD2-Pad83)") (pinfunction "PD2") (pintype "bidirectional+no_connect") (tstamp 5aa7022e-d965-471f-8586-a9b7a947341a)) (pad "84" smd roundrect (at 2 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 156 "unconnected-(U5-PD3-Pad84)") (pinfunction "PD3") (pintype "bidirectional+no_connect") (tstamp 385ed9b1-e25b-492a-ba12-8117c7b22276)) + (net 156 "unconnected-(U4-PD3-Pad84)") (pinfunction "PD3") (pintype "bidirectional+no_connect") (tstamp 385ed9b1-e25b-492a-ba12-8117c7b22276)) (pad "85" smd roundrect (at 1.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 157 "unconnected-(U5-PD4-Pad85)") (pinfunction "PD4") (pintype "bidirectional+no_connect") (tstamp 19e72d65-99f6-4748-b619-49edbd12d6e0)) + (net 157 "unconnected-(U4-PD4-Pad85)") (pinfunction "PD4") (pintype "bidirectional+no_connect") (tstamp 19e72d65-99f6-4748-b619-49edbd12d6e0)) (pad "86" smd roundrect (at 1 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 158 "unconnected-(U5-PD5-Pad86)") (pinfunction "PD5") (pintype "bidirectional+no_connect") (tstamp 543c7615-89d3-4cfc-b1b4-042dd973380b)) + (net 158 "unconnected-(U4-PD5-Pad86)") (pinfunction "PD5") (pintype "bidirectional+no_connect") (tstamp 543c7615-89d3-4cfc-b1b4-042dd973380b)) (pad "87" smd roundrect (at 0.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 159 "unconnected-(U5-PD6-Pad87)") (pinfunction "PD6") (pintype "bidirectional+no_connect") (tstamp dbf46362-4b6b-4746-8a7c-e794f43d6c55)) + (net 159 "unconnected-(U4-PD6-Pad87)") (pinfunction "PD6") (pintype "bidirectional+no_connect") (tstamp dbf46362-4b6b-4746-8a7c-e794f43d6c55)) (pad "88" smd roundrect (at 0 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 160 "unconnected-(U5-PD7-Pad88)") (pinfunction "PD7") (pintype "bidirectional+no_connect") (tstamp d4fbd1cd-3a5b-440d-a10d-3a1a24f7f84b)) + (net 160 "unconnected-(U4-PD7-Pad88)") (pinfunction "PD7") (pintype "bidirectional+no_connect") (tstamp d4fbd1cd-3a5b-440d-a10d-3a1a24f7f84b)) (pad "89" smd roundrect (at -0.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 161 "unconnected-(U5-PB3-Pad89)") (pinfunction "PB3") (pintype "bidirectional+no_connect") (tstamp 2dc3fc50-3a9f-4a45-b2d6-3c9bc4bfb17c)) + (net 161 "unconnected-(U4-PB3-Pad89)") (pinfunction "PB3") (pintype "bidirectional+no_connect") (tstamp 2dc3fc50-3a9f-4a45-b2d6-3c9bc4bfb17c)) (pad "90" smd roundrect (at -1 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 29 "ENC2_A") (pinfunction "PB4") (pintype "bidirectional") (tstamp ae1f7ac7-d4a6-4aee-b802-c9e47b01cda2)) (pad "91" smd roundrect (at -1.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -1211,17 +1211,17 @@ (pad "92" smd roundrect (at -2 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 31 "ENC2_Z") (pinfunction "PB6") (pintype "bidirectional") (tstamp 9ccb61a8-ab15-4c7b-80ec-443d04629bbc)) (pad "93" smd roundrect (at -2.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 162 "unconnected-(U5-PB7-Pad93)") (pinfunction "PB7") (pintype "bidirectional+no_connect") (tstamp b2625474-73da-4997-bb2c-2374039605f3)) + (net 162 "unconnected-(U4-PB7-Pad93)") (pinfunction "PB7") (pintype "bidirectional+no_connect") (tstamp b2625474-73da-4997-bb2c-2374039605f3)) (pad "94" smd roundrect (at -3 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 130 "Net-(U5-BOOT0)") (pinfunction "BOOT0") (pintype "input") (tstamp 382b8d19-5edc-4f8b-b72d-c8a0ffaa7a21)) + (net 95 "Net-(U4-BOOT0)") (pinfunction "BOOT0") (pintype "input") (tstamp 382b8d19-5edc-4f8b-b72d-c8a0ffaa7a21)) (pad "95" smd roundrect (at -3.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 163 "unconnected-(U5-PB8-Pad95)") (pinfunction "PB8") (pintype "bidirectional+no_connect") (tstamp a2dd7c73-5759-4d4a-b103-11f7a43e96dd)) + (net 163 "unconnected-(U4-PB8-Pad95)") (pinfunction "PB8") (pintype "bidirectional+no_connect") (tstamp a2dd7c73-5759-4d4a-b103-11f7a43e96dd)) (pad "96" smd roundrect (at -4 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 164 "unconnected-(U5-PB9-Pad96)") (pinfunction "PB9") (pintype "bidirectional+no_connect") (tstamp 40fbdbaf-9ad0-48dd-892e-7f3fc0e7cb59)) + (net 164 "unconnected-(U4-PB9-Pad96)") (pinfunction "PB9") (pintype "bidirectional+no_connect") (tstamp 40fbdbaf-9ad0-48dd-892e-7f3fc0e7cb59)) (pad "97" smd roundrect (at -4.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 165 "unconnected-(U5-PE0-Pad97)") (pinfunction "PE0") (pintype "bidirectional+no_connect") (tstamp 4ef39a8f-c4d3-4b4f-b68f-f7802a505ae1)) + (net 165 "unconnected-(U4-PE0-Pad97)") (pinfunction "PE0") (pintype "bidirectional+no_connect") (tstamp 4ef39a8f-c4d3-4b4f-b68f-f7802a505ae1)) (pad "98" smd roundrect (at -5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 166 "unconnected-(U5-PE1-Pad98)") (pinfunction "PE1") (pintype "bidirectional+no_connect") (tstamp e888f989-a335-4e1f-b8db-21462a6681d9)) + (net 166 "unconnected-(U4-PE1-Pad98)") (pinfunction "PE1") (pintype "bidirectional+no_connect") (tstamp e888f989-a335-4e1f-b8db-21462a6681d9)) (pad "99" smd roundrect (at -5.5 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pinfunction "VSS") (pintype "passive") (tstamp b6d641fc-b2d2-4533-8789-dc81518e414b)) (pad "100" smd roundrect (at -6 -7.675 270) (size 0.3 1.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) @@ -1244,7 +1244,7 @@ (property "ki_keywords" "I2C Serial EEPROM Nonvolatile Memory") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/8408a666-ef40-4b48-8c8c-2ec840ed8567") (attr smd) - (fp_text reference "U2" (at 0 0.254 90) (layer "F.SilkS") + (fp_text reference "U3" (at 0 0.254 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp d96ab563-4009-477a-be21-13a6a548ebba) ) @@ -1295,7 +1295,7 @@ (pad "6" smd roundrect (at 2.475 0.635 270) (size 1.95 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 13 "I2C_SCL") (pinfunction "SCL") (pintype "input") (tstamp 40b5eccb-ce2a-4d23-b665-244fcff45cb6)) (pad "7" smd roundrect (at 2.475 -0.635 270) (size 1.95 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 84 "Net-(U2-WP)") (pinfunction "WP") (pintype "input") (tstamp d53a29b1-5caa-492b-b604-4db66e413311)) + (net 93 "Net-(U3-WP)") (pinfunction "WP") (pintype "input") (tstamp d53a29b1-5caa-492b-b604-4db66e413311)) (pad "8" smd roundrect (at 2.475 -1.905 270) (size 1.95 0.6) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 2 "+3.3V") (pinfunction "VCC") (pintype "power_in") (tstamp a9302998-c197-45fb-b2bb-208fcbf15d7e)) (model "${KICAD6_3DMODEL_DIR}/Package_SO.3dshapes/SOIC-8_3.9x4.9mm_P1.27mm.wrl" @@ -1316,7 +1316,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/32075a8b-69da-4a9b-bc51-4abd88b43499") (attr smd) - (fp_text reference "R3" (at -2.54 0 90) (layer "F.SilkS") + (fp_text reference "R30" (at -2.54 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 82f8b074-110f-4e7c-9736-ed0daaa22377) ) @@ -1351,7 +1351,7 @@ (pad "1" smd roundrect (at -0.9125 0 90) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 10 "SPI_MISO") (pintype "passive") (tstamp 3115f8cd-b703-4f7a-9fa2-5870344cdf21)) (pad "2" smd roundrect (at 0.9125 0 90) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 79 "Net-(U1-SPI_MISO)") (pintype "passive") (tstamp 8b38ec49-acca-49e1-b3c9-e9938afd1141)) + (net 84 "Net-(U2-SPI_MISO)") (pintype "passive") (tstamp 8b38ec49-acca-49e1-b3c9-e9938afd1141)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -1370,7 +1370,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/d97aea31-efd3-4805-a26e-93bfe540f39c") (attr smd) - (fp_text reference "C23" (at -2.982 0) (layer "F.SilkS") + (fp_text reference "C3" (at -2.982 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp f7bad594-2b50-4738-b735-78a7dfadb71d) ) @@ -1424,7 +1424,7 @@ (property "ki_keywords" "connector") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/2d821c83-edfe-4d38-b7b0-75d2eafb9539") (attr through_hole) - (fp_text reference "J3" (at 6.758 -3.2452) (layer "F.SilkS") + (fp_text reference "J1" (at 6.758 -3.2452) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp bd629193-bb60-4728-86c1-068ea58c9f6b) ) @@ -1534,7 +1534,7 @@ (property "ki_keywords" "connector") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/c0a97825-2c68-46df-a1bb-d944a95dbe32") (attr through_hole) - (fp_text reference "J4" (at 6.758 -3.2452 180) (layer "F.SilkS") + (fp_text reference "J3" (at 6.758 -3.2452 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 9c0bac00-4e85-438d-89b2-2d1da2bb0969) ) @@ -1644,7 +1644,7 @@ (property "ki_keywords" "connector") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/f6e9f205-080b-446b-8e6e-d2d2eaa67fb7") (attr through_hole) - (fp_text reference "J9" (at -0.548 -2.838) (layer "F.SilkS") + (fp_text reference "J14" (at -0.548 -2.838) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 5b88f5dc-749c-4b44-a76f-8350ba2ee580) ) @@ -1712,7 +1712,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/cce125df-b506-49fe-a527-fbc672f08648") (attr smd) - (fp_text reference "R61" (at 0 1.524) (layer "F.SilkS") + (fp_text reference "R29" (at 0 1.524) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 3b395f80-369a-47f5-b2fe-3d40ceae9c03) ) @@ -1766,7 +1766,7 @@ (property "ki_keywords" "R res resistor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/140a44d2-3fef-4643-9093-c9424b0884f8") (attr smd) - (fp_text reference "R49" (at -3.1515 0) (layer "F.SilkS") + (fp_text reference "R44" (at -3.1515 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp ea644fe8-850a-4669-b72f-b016078bbb5c) ) @@ -1820,7 +1820,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/d529cc5f-92f2-4fcd-ab9c-f3bdcd825cbb") (attr smd) - (fp_text reference "C45" (at 3.048 0 90) (layer "F.SilkS") + (fp_text reference "C36" (at 3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 337bf992-c78c-418b-afdd-af443e193f4d) ) @@ -1919,9 +1919,9 @@ (fp_arc (start 5.565 -2.325) (mid 7.89 0) (end 5.565 2.325) (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 9fed39ab-ef04-4f10-85b8-40ff60f53fbb)) (pad "1" thru_hole circle (at 0 0) (size 1.5 1.5) (drill 0.8) (layers "*.Cu" "*.Mask") - (net 128 "Net-(U5-PH1)") (pinfunction "1") (pintype "passive") (tstamp 79221def-8f44-4265-b450-50d0ac7ee725)) + (net 78 "Net-(U4-PH1)") (pinfunction "1") (pintype "passive") (tstamp 79221def-8f44-4265-b450-50d0ac7ee725)) (pad "2" thru_hole circle (at 4.88 0) (size 1.5 1.5) (drill 0.8) (layers "*.Cu" "*.Mask") - (net 127 "Net-(U5-PH0)") (pinfunction "2") (pintype "passive") (tstamp 332c0258-2c86-4be2-a02a-b5c5ff96200e)) + (net 77 "Net-(U4-PH0)") (pinfunction "2") (pintype "passive") (tstamp 332c0258-2c86-4be2-a02a-b5c5ff96200e)) (model "${KICAD6_3DMODEL_DIR}/Crystal.3dshapes/Crystal_HC49-U_Vertical.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -1940,7 +1940,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/69038310-08d8-4fd8-baf2-714dff3fe0fa") (attr smd) - (fp_text reference "R11" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "R37" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 55e035a6-a8c8-4a58-97c2-a4c3b5b76cf0) ) @@ -1973,7 +1973,7 @@ (fp_line (start 1 0.625) (end -1 0.625) (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp f8036aa2-a053-4548-afa4-f1e33a2cb5ee)) (pad "1" smd roundrect (at -0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 84 "Net-(U2-WP)") (pintype "passive") (tstamp 4299c14a-b853-4613-bf71-24488f10944f)) + (net 93 "Net-(U3-WP)") (pintype "passive") (tstamp 4299c14a-b853-4613-bf71-24488f10944f)) (pad "2" smd roundrect (at 0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 6 "GND") (pintype "passive") (tstamp 8b4eae48-f1cc-4e9a-8bb3-856038c14ca7)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" @@ -2052,7 +2052,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/703a5ad5-261f-462a-927b-2f5091816ac1") (attr smd) - (fp_text reference "C21" (at -2.86 0) (layer "F.SilkS") + (fp_text reference "C2" (at -2.86 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 2e635063-ac38-4a78-8a0c-00cd8a6205d4) ) @@ -2106,7 +2106,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/49216c29-c381-45ad-8d00-c393ed31d1e1") (attr smd) - (fp_text reference "C36" (at 0 -1.778 -90) (layer "F.SilkS") + (fp_text reference "C34" (at 0 -1.778 -90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 8cdb0e55-8fc2-4a3c-a5f2-40e827156e17) ) @@ -2160,7 +2160,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/f8848c60-f91f-414b-a5b0-c8e97aca000a") (attr smd) - (fp_text reference "R28" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "R6" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 15fd7d72-292d-4a15-818f-e6981a5b4091) ) @@ -2214,7 +2214,7 @@ (property "ki_keywords" "connector") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/bf40be7c-de17-409c-b5ef-5b18f35948f9") (attr through_hole) - (fp_text reference "J14" (at 4.96 1.778) (layer "F.SilkS") + (fp_text reference "J6" (at 4.96 1.778) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 84b0d50c-6806-40cd-8da3-cbb96c479b46) ) @@ -2322,7 +2322,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/6624d943-f8e6-4441-982c-3de575b1dc6e") (attr smd) - (fp_text reference "R7" (at 2.612 0.151 90) (layer "F.SilkS") + (fp_text reference "R26" (at 2.612 0.151 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp ab6ff7c0-219d-4056-b248-cadc1895b7dc) ) @@ -2355,7 +2355,7 @@ (fp_line (start 1 0.625) (end -1 0.625) (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 0f8686b6-5d82-4c33-b6f5-3b3cd28e77bf)) (pad "1" smd roundrect (at -0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 82 "Net-(U1-P1_SD)") (pintype "passive") (tstamp f0d8bf02-22f2-4592-a809-4ca0083b3dfa)) + (net 82 "Net-(U2-P1_SD)") (pintype "passive") (tstamp f0d8bf02-22f2-4592-a809-4ca0083b3dfa)) (pad "2" smd roundrect (at 0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 6 "GND") (pintype "passive") (tstamp ba006268-836a-4013-9e32-9ea7516180c2)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" @@ -2376,7 +2376,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/1d4d957f-3b42-4bf0-8be5-1c4b58af2943") (attr smd) - (fp_text reference "C34" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "C32" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp ea38c381-3706-4996-bd4d-d3e189eb17b8) ) @@ -2430,7 +2430,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/817571cd-b71b-4f1f-b21a-2340accaf437") (attr smd) - (fp_text reference "C24" (at -3.302 0) (layer "F.SilkS") + (fp_text reference "C8" (at -3.302 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp e9f0b1d1-fd9a-4276-996a-3c10aa19e42d) ) @@ -2484,7 +2484,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/4e757cf6-4f9b-4f37-92a3-908f74f9fcf5") (attr smd) - (fp_text reference "C35" (at -3.048 0 90) (layer "F.SilkS") + (fp_text reference "C48" (at -3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp dd80d2ba-024e-4d9f-ba1c-08c8e42cd6fd) ) @@ -2538,7 +2538,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/a8f795da-4f57-4266-9dbc-d4b1ec49a21b") (attr smd) - (fp_text reference "R39" (at -3.1515 -0.196 90) (layer "F.SilkS") + (fp_text reference "R20" (at -3.1515 -0.196 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp dc8ef572-a7bc-4b69-8d6a-87e4fb8731ae) ) @@ -2592,7 +2592,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/2a5ab83f-3b84-47bb-a903-61f00416091f") (attr smd) - (fp_text reference "C37" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "C47" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 60f225f7-f0b6-4ee3-aabe-91113c8662cd) ) @@ -2646,7 +2646,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/89e3f962-234c-49f3-a3a2-0f5f5324d1a1") (attr smd) - (fp_text reference "C38" (at 3.114 0) (layer "F.SilkS") + (fp_text reference "C45" (at 3.114 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 5eb48115-73fe-4e35-8705-91288c6e871f) ) @@ -2700,7 +2700,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/acd922bf-b439-49a5-93b9-08d057963a14") (attr smd) - (fp_text reference "C22" (at -3.302 0.254) (layer "F.SilkS") + (fp_text reference "C7" (at -3.302 0.254) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 460dd71e-8599-42e9-b607-50dfc9332b5b) ) @@ -2754,7 +2754,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/13a82430-c8ee-4250-a3cb-e52cb6a30faa") (attr smd) - (fp_text reference "R51" (at 0 1.524 180) (layer "F.SilkS") + (fp_text reference "R8" (at 0 1.524 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp ea198f47-e3b5-46f2-90c3-24f7afa60d1c) ) @@ -2808,7 +2808,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/e6ad3dc1-0e47-43aa-b5b8-965b1e4f4e9d") (attr smd) - (fp_text reference "C9" (at 2.54 0 90) (layer "F.SilkS") + (fp_text reference "C27" (at 2.54 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 4a5f93d5-2e9f-4c8e-ac13-1d9532aee9ba) ) @@ -2862,7 +2862,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/bb5e4b34-d8d0-490a-81c3-049e209827d6") (attr smd) - (fp_text reference "C49" (at -3.048 0) (layer "F.SilkS") + (fp_text reference "C46" (at -3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp ca906548-7ea3-4ec8-85a6-6de2e22c1dbc) ) @@ -2897,7 +2897,7 @@ (pad "1" smd roundrect (at -0.95 0) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pintype "passive") (tstamp fd9236f1-4aba-4220-affa-1f38f1f820ec)) (pad "2" smd roundrect (at 0.95 0) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 126 "Net-(U5-VCAP_1)") (pintype "passive") (tstamp 6ad02aea-881b-427d-9cdd-3d6a660e5cbc)) + (net 79 "Net-(U4-VCAP_1)") (pintype "passive") (tstamp 6ad02aea-881b-427d-9cdd-3d6a660e5cbc)) (model "${KICAD6_3DMODEL_DIR}/Capacitor_SMD.3dshapes/C_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -2916,7 +2916,7 @@ (property "ki_keywords" "LED diode") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/1add6186-dd41-47b4-83dc-904a6de84ca1") (attr smd) - (fp_text reference "D4" (at -2.7155 0 90) (layer "F.SilkS") + (fp_text reference "D5" (at -2.7155 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 63d361c6-b98d-49ee-b63d-172bac202cb4) ) @@ -2955,7 +2955,7 @@ (pad "1" smd roundrect (at -0.9375 0 90) (size 0.975 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pinfunction "K") (pintype "passive") (tstamp 71895b13-ab6a-481e-a6f1-a1be549c1985)) (pad "2" smd roundrect (at 0.9375 0 90) (size 0.975 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 75 "Net-(D4-A)") (pinfunction "A") (pintype "passive") (tstamp 905ff377-f012-4683-8e66-f35a7ec5d51e)) + (net 76 "Net-(D5-A)") (pinfunction "A") (pintype "passive") (tstamp 905ff377-f012-4683-8e66-f35a7ec5d51e)) (model "${KICAD6_3DMODEL_DIR}/LED_SMD.3dshapes/LED_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -2974,7 +2974,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/d135b0c1-00a9-4a15-bf69-2c050be870d3") (attr smd) - (fp_text reference "R25" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "R5" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 7777d0e0-f600-48d0-b52c-2fb04d265d46) ) @@ -3028,7 +3028,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/20b5ce21-323d-43f6-ab22-3679f48b5966") (attr smd) - (fp_text reference "C39" (at 3.048 0 90) (layer "F.SilkS") + (fp_text reference "C41" (at 3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp cb2a318d-7c1a-4956-905e-fd9c8467fbeb) ) @@ -3082,7 +3082,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/aaa3a6f9-473c-405e-9246-c50f1418c80a") (attr smd) - (fp_text reference "R22" (at 3.302 0) (layer "F.SilkS") + (fp_text reference "R16" (at 3.302 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp a55fe692-4882-434b-822c-3618c384665e) ) @@ -3136,7 +3136,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/5ff7eb3b-4022-400e-8b2d-e57549faafb6") (attr smd) - (fp_text reference "R30" (at -3.048 0) (layer "F.SilkS") + (fp_text reference "R34" (at -3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 972e5545-85a3-4ead-a909-54f090c1c7e1) ) @@ -3190,7 +3190,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/e534b46c-80d1-4c34-8578-50b240333e0c") (attr smd) - (fp_text reference "C27" (at -3.048 0) (layer "F.SilkS") + (fp_text reference "C5" (at -3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 5d8a071c-85ca-46f8-83dc-6a734270ea31) ) @@ -3244,7 +3244,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/11d5ea8f-3a28-42fa-b01d-beb1a86a57de") (attr smd) - (fp_text reference "C17" (at 0 -1.778) (layer "F.SilkS") + (fp_text reference "C12" (at 0 -1.778) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 5386eca4-0a80-42f8-b56e-d39f799e59be) ) @@ -3366,7 +3366,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/e42bfe7f-7ca3-4fd5-a029-2fee492bb34b") (attr smd) - (fp_text reference "R12" (at 3.1985 0 180) (layer "F.SilkS") + (fp_text reference "R23" (at 3.1985 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 8be09ce1-3930-4ca4-98b0-37f2bed73fa8) ) @@ -3420,7 +3420,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/52f49fd2-f073-4f65-b85d-4076ede1e08b") (attr smd) - (fp_text reference "R41" (at -3.048 0 90) (layer "F.SilkS") + (fp_text reference "R35" (at -3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 78a107fd-692a-47a7-b60d-cd496137bc25) ) @@ -3474,7 +3474,7 @@ (property "ki_keywords" "R res resistor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/cd4fc8ea-460c-4b7b-8197-8a4f867172ef") (attr smd) - (fp_text reference "R45" (at 3.2485 0 -270) (layer "F.SilkS") + (fp_text reference "R46" (at 3.2485 0 -270) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 0479766b-f586-4cb6-a45b-0425b5d5eb7d) ) @@ -3507,7 +3507,7 @@ (fp_line (start 1 0.625) (end -1 0.625) (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 24d0435d-19ec-43f3-8a76-0edd0698fd9c)) (pad "1" smd roundrect (at -0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 75 "Net-(D4-A)") (pintype "passive") (tstamp 36435517-af1a-4a09-8172-7da0e9f39619)) + (net 76 "Net-(D5-A)") (pintype "passive") (tstamp 36435517-af1a-4a09-8172-7da0e9f39619)) (pad "2" smd roundrect (at 0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 15 "+5V") (pintype "passive") (tstamp 62e5469a-a4ca-4c2d-bac2-7841cf6cc554)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" @@ -3638,7 +3638,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/fba0373f-ffda-4e13-b810-cf3ea7f2656c") (attr smd) - (fp_text reference "C53" (at 0 -1.778 90) (layer "F.SilkS") + (fp_text reference "C35" (at 0 -1.778 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp f254a772-4de3-4c69-930d-aa5313faf81a) ) @@ -3673,7 +3673,7 @@ (pad "1" smd roundrect (at -0.95 0 90) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pintype "passive") (tstamp 119fabfb-6e3c-4ebb-aa91-34f229250ba9)) (pad "2" smd roundrect (at 0.95 0 90) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 129 "Net-(U5-VCAP_2)") (pintype "passive") (tstamp 96cafd90-d28f-49f3-9d4c-e349c45cf109)) + (net 14 "Net-(U4-VCAP_2)") (pintype "passive") (tstamp 96cafd90-d28f-49f3-9d4c-e349c45cf109)) (model "${KICAD6_3DMODEL_DIR}/Capacitor_SMD.3dshapes/C_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -3692,7 +3692,7 @@ (property "ki_keywords" "connector") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/961574f6-6377-4800-9f44-d18aac623304") (attr through_hole) - (fp_text reference "J12" (at 5 1.778) (layer "F.SilkS") + (fp_text reference "J4" (at 5 1.778) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 08b4e1be-ff4d-4f84-ae35-31d2834ca359) ) @@ -3800,7 +3800,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/7c830bcb-695d-41b3-8002-7f2c5e88ee96") (attr smd) - (fp_text reference "C13" (at 3.048 0 90) (layer "F.SilkS") + (fp_text reference "C24" (at 3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 018d92e1-6ff1-427e-9ad9-30c21ac06df6) ) @@ -3854,7 +3854,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/f493fbdd-16cf-47a4-8571-5bdeffa77b8e") (attr smd) - (fp_text reference "C19" (at -3.048 0) (layer "F.SilkS") + (fp_text reference "C1" (at -3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp d306e022-9670-45e4-88fb-c5ee586d0681) ) @@ -3908,7 +3908,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/10d87c4c-c4d6-4df7-b739-131249afa699") (attr smd) - (fp_text reference "R60" (at 3.048 0 180) (layer "F.SilkS") + (fp_text reference "R41" (at 3.048 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 2cb965ea-612a-4535-a4eb-6c8d5863cfeb) ) @@ -3962,7 +3962,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/ad6de67e-4fd5-4374-8c26-533464ecb640") (attr smd) - (fp_text reference "C12" (at 3.048 -0.254 90) (layer "F.SilkS") + (fp_text reference "C28" (at 3.048 -0.254 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp f36e97ba-1245-49b6-bbc5-a3ce0fb6861e) ) @@ -4016,7 +4016,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/64094713-7d76-4b8b-9bf9-b7f64f75c920") (attr smd) - (fp_text reference "R5" (at 2.54 0 90) (layer "F.SilkS") + (fp_text reference "R21" (at 2.54 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp e279a5a7-e042-481f-b361-8849db682f28) ) @@ -4049,7 +4049,7 @@ (fp_line (start 1 0.625) (end -1 0.625) (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp d06d76d6-c874-4672-89f2-3c4e90dfcde4)) (pad "1" smd roundrect (at -0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 80 "Net-(U1-P0_SD)") (pintype "passive") (tstamp 37c92a37-8ea3-45c6-bac6-5de55fb71f4d)) + (net 80 "Net-(U2-P0_SD)") (pintype "passive") (tstamp 37c92a37-8ea3-45c6-bac6-5de55fb71f4d)) (pad "2" smd roundrect (at 0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 6 "GND") (pintype "passive") (tstamp 2f5c945f-416e-4a54-baa0-75640f66c3aa)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" @@ -4070,7 +4070,7 @@ (property "ki_keywords" "connector") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/8c256f13-694b-429b-9500-e0788025192a") (attr through_hole) - (fp_text reference "J1" (at -3.85 1.016) (layer "F.SilkS") + (fp_text reference "J10" (at -3.85 1.016) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp fcd6950b-7afa-4eae-94eb-00eaf713c8d5) ) @@ -4226,7 +4226,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/60d91c1b-c1ae-4fea-a103-74cf4adc6ef3") (attr smd) - (fp_text reference "R58" (at 0 1.778) (layer "F.SilkS") + (fp_text reference "R3" (at 0 1.778) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 961d7d97-3156-4d6f-b85b-851f7fd25574) ) @@ -4404,7 +4404,7 @@ (property "ki_keywords" "connector") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/d129ec5d-1890-4701-8161-4f33129e3de3") (attr through_hole) - (fp_text reference "J2" (at 2.166 2.032) (layer "F.SilkS") + (fp_text reference "J9" (at 2.166 2.032) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 7b47fdf5-62c1-47b2-b192-5ab0ecad7fc7) ) @@ -4510,7 +4510,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/feb0a5ed-4720-49ab-b7b2-db871d6fd2ee") (attr smd) - (fp_text reference "C10" (at 3.048 -0.254 90) (layer "F.SilkS") + (fp_text reference "C25" (at 3.048 -0.254 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 1ea1b6f8-7ca9-4a6e-a77a-480a2416ec06) ) @@ -4564,7 +4564,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/cebf0351-8b49-463e-9ced-837ba891babc") (attr smd) - (fp_text reference "C52" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "C39" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp d9914e32-b8f9-4401-b837-d564588a994c) ) @@ -4599,7 +4599,7 @@ (pad "1" smd roundrect (at -0.95 0 180) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pintype "passive") (tstamp ecbe06ba-53fb-4574-b799-5f3745c7ca04)) (pad "2" smd roundrect (at 0.95 0 180) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 128 "Net-(U5-PH1)") (pintype "passive") (tstamp 9d7b8819-deb3-487e-ad09-7b7f17872a53)) + (net 78 "Net-(U4-PH1)") (pintype "passive") (tstamp 9d7b8819-deb3-487e-ad09-7b7f17872a53)) (model "${KICAD6_3DMODEL_DIR}/Capacitor_SMD.3dshapes/C_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -4618,7 +4618,7 @@ (property "ki_keywords" "L ferrite bead inductor filter") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/044bfca2-fe85-424e-89e6-85976fdf3676") (attr smd) - (fp_text reference "B7" (at -2.54 0 90) (layer "F.SilkS") + (fp_text reference "B4" (at -2.54 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 3c33737a-fc9c-4d6f-b64a-bfd54bfc9e65) ) @@ -4726,7 +4726,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/687437c4-7aa9-4046-9f4a-5ed469d0a577") (attr smd) - (fp_text reference "R10" (at 3.12 0.151) (layer "F.SilkS") + (fp_text reference "R39" (at 3.12 0.151) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 3a9685f4-4090-4cb8-bd1d-910ed54c479c) ) @@ -4780,7 +4780,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/bb276b0b-50da-456f-91b2-d5b2aee3075b") (attr smd) - (fp_text reference "C51" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "C37" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp a0cefd43-e3d4-46fd-81d1-8367b8a9de0a) ) @@ -4815,7 +4815,7 @@ (pad "1" smd roundrect (at -0.95 0) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pintype "passive") (tstamp f3f39d9a-1455-4f91-b6df-3f2484665a6d)) (pad "2" smd roundrect (at 0.95 0) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 127 "Net-(U5-PH0)") (pintype "passive") (tstamp 78560cf0-2b6f-4884-bda1-847212c61f2a)) + (net 77 "Net-(U4-PH0)") (pintype "passive") (tstamp 78560cf0-2b6f-4884-bda1-847212c61f2a)) (model "${KICAD6_3DMODEL_DIR}/Capacitor_SMD.3dshapes/C_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -4834,7 +4834,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/b162f748-c4c9-4222-9aec-552919872ce9") (attr smd) - (fp_text reference "R2" (at 2.6435 0 90) (layer "F.SilkS") + (fp_text reference "R31" (at 2.6435 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 3cd6219b-2bcf-4d85-ae8b-3269e2c1c5a5) ) @@ -4867,7 +4867,7 @@ (fp_line (start 1 0.625) (end -1 0.625) (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 52dccdaa-1d0d-4bfb-b581-173e4decf76d)) (pad "1" smd roundrect (at -0.9125 0 90) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 78 "Net-(U1-TEST)") (pintype "passive") (tstamp 3e169679-afce-41e9-a6fd-8989c92b915b)) + (net 92 "Net-(U2-TEST)") (pintype "passive") (tstamp 3e169679-afce-41e9-a6fd-8989c92b915b)) (pad "2" smd roundrect (at 0.9125 0 90) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 6 "GND") (pintype "passive") (tstamp 3a3c8e9d-fc8d-416b-909c-c33db68d292b)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" @@ -4888,7 +4888,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/ca3b83df-34a4-4261-8b7d-4450fdcf7ea0") (attr smd) - (fp_text reference "C8" (at 2.54 0 180) (layer "F.SilkS") + (fp_text reference "C18" (at 2.54 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp cc0895d5-7e74-4c46-9713-3f11c3e3e5ed) ) @@ -4996,7 +4996,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/b79bae43-c327-493d-a038-855680f06fe3") (attr smd) - (fp_text reference "R18" (at 3.4055 0 180) (layer "F.SilkS") + (fp_text reference "R14" (at 3.4055 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 64b46ea2-f3e6-4093-a242-9e5b0bce1696) ) @@ -5050,7 +5050,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/80b396e6-1879-4eac-b0a4-6cc056dcdbd4") (attr smd) - (fp_text reference "C6" (at 2.54 0 180) (layer "F.SilkS") + (fp_text reference "C15" (at 2.54 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp ec881cfd-5986-46d1-b95a-0d6311af81e8) ) @@ -5104,7 +5104,7 @@ (property "ki_keywords" "connector") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/5333effc-7687-4ee9-907a-50564ca8d5a9") (attr through_hole) - (fp_text reference "J10" (at 2.5 -3.55) (layer "F.SilkS") + (fp_text reference "J7" (at 2.5 -3.55) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 0654b84b-953d-4ae5-a935-e002180a3850) ) @@ -5208,7 +5208,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/e59e1dd2-d274-40ca-a8b1-cb4b3dd2162e") (attr smd) - (fp_text reference "R26" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "R7" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 408b18d2-7bce-4cdd-bf8f-dc09a07d2303) ) @@ -5262,7 +5262,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/9524ae2d-5fd1-442f-9d93-71be2652385d") (attr smd) - (fp_text reference "C29" (at -2.982 0 90) (layer "F.SilkS") + (fp_text reference "C20" (at -2.982 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 3376cc5e-7363-475d-b33a-81ef509c25ca) ) @@ -5316,7 +5316,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/1c4db209-5e6a-4cbe-b133-c6f6909b09dd") (attr smd) - (fp_text reference "R19" (at 3.1515 0 180) (layer "F.SilkS") + (fp_text reference "R11" (at 3.1515 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp df50d6a5-6e1e-448e-b0ff-8f7bdda5391e) ) @@ -5370,7 +5370,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/28999b48-7a3f-4a2d-8295-808981bd0f46") (attr smd) - (fp_text reference "C11" (at 3.048 0 180) (layer "F.SilkS") + (fp_text reference "C30" (at 3.048 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 2c081c0a-808c-4e13-b081-47dd8e55a1da) ) @@ -5424,7 +5424,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/97e5be48-f3b6-410a-b8d3-042a3216795f") (attr smd) - (fp_text reference "C46" (at 3.048 0 90) (layer "F.SilkS") + (fp_text reference "C42" (at 3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp c9a3dfd7-389e-4af0-9c78-86070dc347d5) ) @@ -5478,7 +5478,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/8c1a0b38-bcc5-4658-8a69-f4a9c64b4a45") (attr smd) - (fp_text reference "C15" (at 0.038 -1.694 180) (layer "F.SilkS") + (fp_text reference "C11" (at 0.038 -1.694 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp d7787231-1fae-4e9e-b4a9-6adcbc9565e3) ) @@ -5532,7 +5532,7 @@ (property "ki_keywords" "linear regulator ldo fixed positive") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/e7ad8deb-d267-447a-ac55-a91cde53ea00") (attr smd) - (fp_text reference "U4" (at 0 0.508) (layer "F.SilkS") + (fp_text reference "U5" (at 0 0.508) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp a9021550-e90f-44eb-9150-25a846cad36e) ) @@ -5596,7 +5596,7 @@ (property "ki_keywords" "L ferrite bead inductor filter") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/5a256e67-effb-487d-986d-5a4e91cc6e7b") (attr smd) - (fp_text reference "B4" (at 0 -1.68 90) (layer "F.SilkS") + (fp_text reference "B6" (at 0 -1.68 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 26c6ad39-282d-403f-b3bf-2e9ad2ccd497) ) @@ -5650,7 +5650,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/5d2a3bd4-36a3-4cd5-b2ec-31d44b293cc0") (attr smd) - (fp_text reference "R38" (at -3.048 0 90) (layer "F.SilkS") + (fp_text reference "R28" (at -3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp dc726502-ab8d-42da-83b1-fc5de0f3d22e) ) @@ -5704,7 +5704,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/33b95d1b-4180-477e-93fe-daa04b8a21ee") (attr smd) - (fp_text reference "C28" (at -3.302 0) (layer "F.SilkS") + (fp_text reference "C10" (at -3.302 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp a5424b40-c5e3-404f-82c5-5451ffbb0c11) ) @@ -5758,7 +5758,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/cd4007e2-5a66-41a7-ba64-1fe909a22a11") (attr smd) - (fp_text reference "C3" (at 2.728 0) (layer "F.SilkS") + (fp_text reference "C29" (at 2.728 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 45070ab3-8a9b-4ba1-ab25-4812d15d98c5) ) @@ -5812,7 +5812,7 @@ (property "ki_keywords" "connector") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/16b03982-a480-44cc-904c-99af5abaac97") (attr through_hole) - (fp_text reference "J7" (at 3.73 1.778) (layer "F.SilkS") + (fp_text reference "J13" (at 3.73 1.778) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 38a66b87-a86e-4346-9d1f-81ef761b2b01) ) @@ -5918,7 +5918,7 @@ (property "ki_keywords" "connector") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/a58acd1a-d730-4859-b943-3976f3f73e63") (attr through_hole) - (fp_text reference "J6" (at 3.556 1.778 90) (layer "F.SilkS") + (fp_text reference "J12" (at 3.556 1.778 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp afc6f9cf-6ac5-42b4-88f2-1017f3cfca4f) ) @@ -6024,7 +6024,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/6205b81a-3f1e-4c02-9f7e-21413744183e") (attr smd) - (fp_text reference "R50" (at 0.254 1.778) (layer "F.SilkS") + (fp_text reference "R1" (at 0.254 1.778) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp c903ac67-c8bd-4d88-b1ab-ec521b9b0432) ) @@ -6252,7 +6252,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/0156fcd2-2fd8-4277-bfea-a43d1b5d2609") (attr smd) - (fp_text reference "R44" (at -3.1515 0 90) (layer "F.SilkS") + (fp_text reference "R43" (at -3.1515 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp ad4f3dfe-c4ce-4044-809b-833643b1f2d6) ) @@ -6287,7 +6287,7 @@ (pad "1" smd roundrect (at -0.9125 0 90) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 90 "LED_ERR") (pintype "passive") (tstamp e83c4878-6dba-4db1-811f-9d864d84e24c)) (pad "2" smd roundrect (at 0.9125 0 90) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 47 "Net-(D3-A)") (pintype "passive") (tstamp 5446e433-2584-4e5a-8033-ae2feef47707)) + (net 75 "Net-(D4-A)") (pintype "passive") (tstamp 5446e433-2584-4e5a-8033-ae2feef47707)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -6306,7 +6306,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/c01f9f04-3e14-4fe2-bfff-c83b3128fbfe") (attr smd) - (fp_text reference "C16" (at -3.048 0 180) (layer "F.SilkS") + (fp_text reference "C13" (at -3.048 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp dec86a3a-6fd0-4b51-b23d-71c08169416c) ) @@ -6360,7 +6360,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/e0f26f8b-8985-49e6-8c97-f11bdae1e3a3") (attr smd) - (fp_text reference "C25" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "C4" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 292998f5-09f1-4fc1-bf80-ae0a5134403e) ) @@ -6414,7 +6414,7 @@ (property "ki_keywords" "LED diode") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/c0b7aea9-2a3a-4cf1-8174-af4cc706461f") (attr smd) - (fp_text reference "D3" (at -2.794 0 90) (layer "F.SilkS") + (fp_text reference "D4" (at -2.794 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 5fc1585e-eb94-40d1-879b-83c606d7a09a) ) @@ -6453,7 +6453,7 @@ (pad "1" smd roundrect (at -0.9375 0 90) (size 0.975 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pinfunction "K") (pintype "passive") (tstamp a5b86495-4661-4a6c-9b5d-0636212c19e9)) (pad "2" smd roundrect (at 0.9375 0 90) (size 0.975 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 47 "Net-(D3-A)") (pinfunction "A") (pintype "passive") (tstamp 122cb4f5-ad58-4706-867e-5952b859e39e)) + (net 75 "Net-(D4-A)") (pinfunction "A") (pintype "passive") (tstamp 122cb4f5-ad58-4706-867e-5952b859e39e)) (model "${KICAD6_3DMODEL_DIR}/LED_SMD.3dshapes/LED_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -6472,7 +6472,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/68b822d9-2e16-4f7a-acbc-af94678e419e") (attr smd) - (fp_text reference "C33" (at -3.048 0 90) (layer "F.SilkS") + (fp_text reference "C43" (at -3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp b91e9b7e-41e8-4912-b3fa-02b2aba10222) ) @@ -6526,7 +6526,7 @@ (property "ki_keywords" "connector") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/1c84a65c-5122-4a9d-93c5-c95fdce8d967") (attr through_hole) - (fp_text reference "J13" (at 4.96 1.778) (layer "F.SilkS") + (fp_text reference "J8" (at 4.96 1.778) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp f5989cff-9d37-4663-9cc2-1b0dc1cb8915) ) @@ -6634,7 +6634,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/f6afafec-23d4-4288-b115-63bb96d688f9") (attr smd) - (fp_text reference "R57" (at 0 1.524 180) (layer "F.SilkS") + (fp_text reference "R27" (at 0 1.524 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 414f917c-a637-4664-ae7c-a7f086eca8f2) ) @@ -6688,7 +6688,7 @@ (property "ki_keywords" "connector") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/d5941a4c-e7e4-411a-a70c-a9b8e3c1bfce") (attr through_hole) - (fp_text reference "J11" (at 5 1.795) (layer "F.SilkS") + (fp_text reference "J2" (at 5 1.795) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 24674b39-507c-4e48-a7de-24eddb245383) ) @@ -6796,7 +6796,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/dbb53c1f-a3e9-40f7-9c26-4cfbc7e7faea") (attr smd) - (fp_text reference "R13" (at 3.1985 0) (layer "F.SilkS") + (fp_text reference "R38" (at 3.1985 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 8a5fc528-e6ae-41f0-8919-147b7bed193e) ) @@ -6850,7 +6850,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/392ac5db-26e1-4917-a929-e966ccef6bd2") (attr smd) - (fp_text reference "R53" (at 0 1.524) (layer "F.SilkS") + (fp_text reference "R22" (at 0 1.524) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 2eb9a0a6-db8e-45f3-9eea-80c0a204a266) ) @@ -6904,7 +6904,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/bbe83ce3-aae4-47aa-b2f9-a26ae91145ea") (attr smd) - (fp_text reference "C41" (at -3.048 0 90) (layer "F.SilkS") + (fp_text reference "C49" (at -3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp cb6ee62c-63c1-41e0-8d94-a7ab17589d2b) ) @@ -6958,7 +6958,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/afc04acb-541e-4783-aa5d-3ce559901854") (attr smd) - (fp_text reference "C5" (at 2.54 0) (layer "F.SilkS") + (fp_text reference "C14" (at 2.54 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 61fa52ef-7308-45b7-824d-d7a42dcb3a10) ) @@ -7012,7 +7012,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/67ac6176-2471-48a9-ab9f-52beec89a1b4") (attr smd) - (fp_text reference "C2" (at 2.794 0) (layer "F.SilkS") + (fp_text reference "C31" (at 2.794 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 6d6e5e7a-4e39-475b-bbcf-d41ceba59f60) ) @@ -7066,7 +7066,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/252ccc0b-afe2-4cfa-9240-bbd4119b8767") (attr smd) - (fp_text reference "C26" (at -3.302 0) (layer "F.SilkS") + (fp_text reference "C9" (at -3.302 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 9fc888dd-a0cd-44b5-ae9f-a3c1683f30df) ) @@ -7178,7 +7178,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/f53c9c50-c0e4-401d-9b73-d626744de938") (attr smd) - (fp_text reference "C32" (at -3.048 0 90) (layer "F.SilkS") + (fp_text reference "C21" (at -3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 23b73a3a-c1d5-495f-8c51-e7a86a4ef433) ) @@ -7232,7 +7232,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/ed1edc57-26e1-4234-abcd-a22b87379f7e") (attr smd) - (fp_text reference "R52" (at 0 1.524) (layer "F.SilkS") + (fp_text reference "R32" (at 0 1.524) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp d75d1033-e802-426c-a4a1-e0817f628b0e) ) @@ -7286,7 +7286,7 @@ (property "ki_keywords" "R res resistor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/f663b0be-0d19-45c1-b3de-31c4d1dfc2f4") (attr smd) - (fp_text reference "R48" (at -3.1515 -0.254 90) (layer "F.SilkS") + (fp_text reference "R45" (at -3.1515 -0.254 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 7ebb0937-4750-42ef-be24-3772658c921b) ) @@ -7321,7 +7321,7 @@ (pad "1" smd roundrect (at -0.9125 0 90) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 6 "GND") (pintype "passive") (tstamp e020755e-6105-4409-b072-3f5ebd5b2ae8)) (pad "2" smd roundrect (at 0.9125 0 90) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 130 "Net-(U5-BOOT0)") (pintype "passive") (tstamp a4c11965-1150-44ce-896b-1f4703720212)) + (net 95 "Net-(U4-BOOT0)") (pintype "passive") (tstamp a4c11965-1150-44ce-896b-1f4703720212)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -7340,7 +7340,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/137b958d-6c66-4243-b922-13e0d4e0ff22") (attr smd) - (fp_text reference "R40" (at -3.1685 -0.508 90) (layer "F.SilkS") + (fp_text reference "R19" (at -3.1685 -0.508 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 491a3aab-d97a-4453-8345-24547e280686) ) @@ -7394,7 +7394,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/65effee6-c5fd-4cb0-988e-3d8d0f0ed9a9") (attr smd) - (fp_text reference "C31" (at -3.114 0.254 90) (layer "F.SilkS") + (fp_text reference "C19" (at -3.114 0.254 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 2c3f2a65-d491-4bc8-b538-e49df5eaef60) ) @@ -7448,7 +7448,7 @@ (property "ki_keywords" "LED diode") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/45441953-91e1-4ac3-bada-71f63029cbea") (attr smd) - (fp_text reference "D5" (at -2.7155 0 90) (layer "F.SilkS") + (fp_text reference "D3" (at -2.7155 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp bc45cedc-c493-41f4-a640-60dd15da26a8) ) @@ -7487,7 +7487,7 @@ (pad "1" smd roundrect (at -0.9375 0 90) (size 0.975 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) (net 6 "GND") (pinfunction "K") (pintype "passive") (tstamp 2ca4c95d-4ff6-46c9-ae3c-59841b7b8b7a)) (pad "2" smd roundrect (at 0.9375 0 90) (size 0.975 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) - (net 76 "Net-(D5-A)") (pinfunction "A") (pintype "passive") (tstamp 1ce8988a-dadd-4e08-9dce-1376d46f25e3)) + (net 47 "Net-(D3-A)") (pinfunction "A") (pintype "passive") (tstamp 1ce8988a-dadd-4e08-9dce-1376d46f25e3)) (model "${KICAD6_3DMODEL_DIR}/LED_SMD.3dshapes/LED_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -7506,7 +7506,7 @@ (property "ki_keywords" "linear regulator ldo fixed positive") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/beffc438-33dc-405c-8415-f7748704f861") (attr smd) - (fp_text reference "U3" (at 0 -0.254 180) (layer "F.SilkS") + (fp_text reference "U1" (at 0 -0.254 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 588cb18d-4c6a-4cad-8ef0-8e1a0348acde) ) @@ -7570,7 +7570,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/a3b06323-b5c8-4051-b0b4-69c7a4fc48db") (attr smd) - (fp_text reference "C18" (at -3.048 0) (layer "F.SilkS") + (fp_text reference "C33" (at -3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 16b6e3ef-03a2-42fd-893a-c484f339727d) ) @@ -7624,7 +7624,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/5b51c0db-89fb-4b33-acf6-55877b663ddb") (attr smd) - (fp_text reference "R20" (at 3.4055 0) (layer "F.SilkS") + (fp_text reference "R15" (at 3.4055 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp d0718955-d102-43cf-9c64-e4dc973e959c) ) @@ -7678,7 +7678,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/7e520c4e-ee0b-4ea7-8b18-2be4397e790f") (attr smd) - (fp_text reference "R17" (at 3.134 0 180) (layer "F.SilkS") + (fp_text reference "R10" (at 3.134 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 86bd56ce-1988-4958-8697-902c039bec1e) ) @@ -7732,7 +7732,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/94e7971f-a4d4-466b-8bd1-b0a1da13dc73") (attr smd) - (fp_text reference "R23" (at 3.1515 0 180) (layer "F.SilkS") + (fp_text reference "R13" (at 3.1515 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp fc1d19b6-cda9-4850-ac20-b1cd14e344fc) ) @@ -7786,7 +7786,7 @@ (property "ki_keywords" "cap capacitor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/592645f8-e23e-4baa-8af8-0a9b7d8e806a") (attr smd) - (fp_text reference "C43" (at 3.048 0 90) (layer "F.SilkS") + (fp_text reference "C38" (at 3.048 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp b8a0acc8-9ec7-4a96-97ff-8d4c84edba1e) ) @@ -7894,7 +7894,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/45a449d5-9134-41f8-aaba-983731aca91e") (attr smd) - (fp_text reference "R1" (at -2.54 0) (layer "F.SilkS") + (fp_text reference "R40" (at -2.54 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp f4f1e8a4-2298-40ea-b861-99788ba45ef0) ) @@ -7929,7 +7929,7 @@ (pad "1" smd roundrect (at -0.9125 0 180) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 13 "I2C_SCL") (pintype "passive") (tstamp ece32bde-e26c-4d2f-9e6f-b30cd67f0cbe)) (pad "2" smd roundrect (at 0.9125 0 180) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 77 "Net-(U1-I2C_SCL)") (pintype "passive") (tstamp a75bf981-3c62-4406-90c8-1beed7ac7bfd)) + (net 94 "Net-(U2-I2C_SCL)") (pintype "passive") (tstamp a75bf981-3c62-4406-90c8-1beed7ac7bfd)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" (offset (xyz 0 0 0)) (scale (xyz 1 1 1)) @@ -7948,7 +7948,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/4fb33cd9-ab35-41e8-9f9e-8140f99baa4f") (attr smd) - (fp_text reference "R56" (at 0 1.524 180) (layer "F.SilkS") + (fp_text reference "R36" (at 0 1.524 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp e87be2d4-9bda-477f-bbc1-ed219833bf7a) ) @@ -8002,7 +8002,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/43243964-0602-4452-b782-e18672992d26") (attr smd) - (fp_text reference "R27" (at 3.048 0) (layer "F.SilkS") + (fp_text reference "R4" (at 3.048 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 61bc56c1-2c4d-4471-b08c-158af6f4cffc) ) @@ -8056,7 +8056,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/4693cf1a-5c81-4dfd-8a56-8dd30b07179a") (attr smd) - (fp_text reference "C14" (at 3.048 0 180) (layer "F.SilkS") + (fp_text reference "C16" (at 3.048 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 938d1126-e525-4343-b688-d987500d3895) ) @@ -8234,7 +8234,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/b297d9a7-f493-4b05-81ae-f0b3d7b2667f") (attr smd) - (fp_text reference "C20" (at -3.348 0) (layer "F.SilkS") + (fp_text reference "C6" (at -3.348 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp fba776c2-821a-4b1a-b395-148c52fbb81c) ) @@ -8342,7 +8342,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/57d23afb-3e89-43f3-b8ac-d446fddb5c78") (attr smd) - (fp_text reference "R8" (at 2.612 0.151) (layer "F.SilkS") + (fp_text reference "R24" (at 2.612 0.151) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp be47c881-25fc-4521-aca4-7478fbd05034) ) @@ -8396,7 +8396,7 @@ (property "ki_keywords" "L ferrite bead inductor filter") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/f76a00b9-0511-4931-90f1-d259b14389f9") (attr smd) - (fp_text reference "B6" (at -2.54 0 90) (layer "F.SilkS") + (fp_text reference "B3" (at -2.54 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp aadad923-dee8-48e6-be03-b31b14903938) ) @@ -8450,7 +8450,7 @@ (property "ki_keywords" "R res resistor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/95dffa01-7efa-4524-83d7-dd663891f3a6") (attr smd) - (fp_text reference "R6" (at 2.612 0.151 90) (layer "F.SilkS") + (fp_text reference "R25" (at 2.612 0.151 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 3f309169-d920-475f-9824-67ce4f0dfc22) ) @@ -8483,7 +8483,7 @@ (fp_line (start 1 0.625) (end -1 0.625) (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp aebcca92-d3d9-4004-8a22-1b44fcee9b0e)) (pad "1" smd roundrect (at -0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 81 "Net-(U1-RESET_BG)") (pintype "passive") (tstamp 4b16d8a9-4a0f-4361-9fbb-dc89cdb3c79f)) + (net 81 "Net-(U2-RESET_BG)") (pintype "passive") (tstamp 4b16d8a9-4a0f-4361-9fbb-dc89cdb3c79f)) (pad "2" smd roundrect (at 0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 6 "GND") (pintype "passive") (tstamp b6a7bb10-23df-4429-bd79-0da5f197004a)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" @@ -8558,7 +8558,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/f2ad262e-6efc-4ec5-abc3-f362fad8d615") (attr smd) - (fp_text reference "C4" (at 2.54 0 90) (layer "F.SilkS") + (fp_text reference "C26" (at 2.54 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 47c9eebf-9eb3-4932-af1a-ae539e2576b6) ) @@ -8612,7 +8612,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/8c98ccb6-e2c4-48b8-9f34-f2506c1d2e3e") (attr smd) - (fp_text reference "R55" (at 0 1.524) (layer "F.SilkS") + (fp_text reference "R9" (at 0 1.524) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp b8ec1820-d749-45ac-9a21-6b73f234ec93) ) @@ -8666,7 +8666,7 @@ (property "ki_keywords" "cap capacitor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/eaac7571-dd8f-46a3-906f-3df999d7d2b9") (attr smd) - (fp_text reference "C30" (at -2.982 0 90) (layer "F.SilkS") + (fp_text reference "C22" (at -2.982 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 911a7458-58c3-4794-b5e0-d496a98d744c) ) @@ -8720,7 +8720,7 @@ (property "ki_keywords" "R res resistor") (path "/d564400f-40ba-4aca-9c2a-14ec52a8353b/d9c0791d-391e-46e5-a594-faed6b01b24c") (attr smd) - (fp_text reference "R46" (at 3.145 0 -270) (layer "F.SilkS") + (fp_text reference "R42" (at 3.145 0 -270) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 36d3f55f-7886-478b-b91a-508f9063588d) ) @@ -8753,7 +8753,7 @@ (fp_line (start 1 0.625) (end -1 0.625) (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp f1296e19-37ea-465d-a45c-c2a754726850)) (pad "1" smd roundrect (at -0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) - (net 76 "Net-(D5-A)") (pintype "passive") (tstamp 23416c7e-e55a-4457-b7f3-99ed5e91d050)) + (net 47 "Net-(D3-A)") (pintype "passive") (tstamp 23416c7e-e55a-4457-b7f3-99ed5e91d050)) (pad "2" smd roundrect (at 0.9125 0 270) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) (net 2 "+3.3V") (pintype "passive") (tstamp 2139e93b-ace3-44ea-a874-819ccd50334f)) (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" @@ -8774,7 +8774,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/103155a9-e700-4183-b756-a6fc8ca57bcd") (attr smd) - (fp_text reference "C7" (at 2.54 0) (layer "F.SilkS") + (fp_text reference "C17" (at 2.54 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp e6c90db3-b43d-4dc2-abe6-d33e9237c562) ) @@ -8828,7 +8828,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/395e4cb0-42d4-43ec-b523-c62753046557") (attr smd) - (fp_text reference "R21" (at 3.1515 0 180) (layer "F.SilkS") + (fp_text reference "R12" (at 3.1515 0 180) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp e9e47866-597d-4877-ae68-ff9c59595eaa) ) @@ -8882,7 +8882,7 @@ (property "ki_keywords" "cap capacitor") (path "/9f485422-734f-43d3-94ea-443cbc453d2e/c46518db-79b6-4045-8dfc-08fea70463ae") (attr smd) - (fp_text reference "C1" (at 2.54 0 90) (layer "F.SilkS") + (fp_text reference "C23" (at 2.54 0 90) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 7440d66e-ac8e-4ea7-b32f-71bfd119f8cd) ) @@ -8936,7 +8936,7 @@ (property "ki_keywords" "R res resistor") (path "/5bf93325-f5d9-4344-9bf3-f5fc91bc1622/dcb1369b-bcf1-4c3e-bd29-50410ac94349") (attr smd) - (fp_text reference "R24" (at 3.4055 0) (layer "F.SilkS") + (fp_text reference "R17" (at 3.4055 0) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp 28a37476-9edd-4cd4-9bcc-ad6d99cf1c17) ) @@ -8990,7 +8990,7 @@ (property "ki_keywords" "R res resistor") (path "/0a376a6c-0f15-42f8-81f6-3a55619be267/1f6cd783-9186-4110-918c-22956cf2a8ab") (attr smd) - (fp_text reference "R54" (at 0.254 1.778) (layer "F.SilkS") + (fp_text reference "R2" (at 0.254 1.778) (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))) (tstamp cdca14eb-03a2-4d7e-a6d3-5fbee35ccbee) ) @@ -9769,6 +9769,8 @@ (segment (start 173.6325 89.662) (end 174.0038 90.0333) (width 0.2) (layer "F.Cu") (net 13) (tstamp 5f5e18d0-cf19-463f-850a-316bcf5476ac)) (segment (start 174.0038 90.0333) (end 176.5084 90.0333) (width 0.2) (layer "F.Cu") (net 13) (tstamp 601e978c-a97a-4d5e-9211-17a9975273da)) (segment (start 176.657 86.5905) (end 176.657 87.819) (width 0.2) (layer "F.Cu") (net 13) (tstamp 9b114d81-df80-40b9-9121-f31fcf79ab01)) + (segment (start 169.084 109.874) (end 169.084 108.259) (width 0.2) (layer "F.Cu") (net 14) (tstamp 5ec90ccf-14b7-4209-a17d-bece40efdeec)) + (segment (start 168.402 110.556) (end 169.084 109.874) (width 0.2) (layer "F.Cu") (net 14) (tstamp ae6851ea-f2c4-4a56-b493-102c3b1a9068)) (segment (start 213.3659 118.11) (end 214.9557 119.6998) (width 0.2) (layer "F.Cu") (net 15) (tstamp 147388c3-f912-4f11-b0d6-02039345a315)) (segment (start 228.52 118.093) (end 227.4181 118.093) (width 0.2) (layer "F.Cu") (net 15) (tstamp 163ef245-fd7b-4f9b-bfbc-28525b3f53de)) (segment (start 154.432 68.326) (end 155.8541 68.326) (width 1) (layer "F.Cu") (net 15) (tstamp 16eaf607-0a89-4980-bcaa-9949a43e0868)) @@ -9819,27 +9821,26 @@ (segment (start 214.9557 119.6998) (end 226.1212 119.6998) (width 0.2) (layer "F.Cu") (net 15) (tstamp fa8bea6c-79b9-4aef-875e-c88d5295bc0e)) (segment (start 181.1573 66.6474) (end 210.5054 66.6474) (width 0.2) (layer "F.Cu") (net 15) (tstamp fda1ae1c-690f-460d-b76b-e81d499dd3a6)) (via (at 196.5699 73.6618) (size 0.8) (drill 0.4) (layers "F.Cu" "B.Cu") (net 15) (tstamp b6289af4-fc65-4c1b-97c1-99249649667c)) + (segment (start 177.98 120.43) (end 180.3 118.11) (width 0.2) (layer "B.Cu") (net 15) (tstamp 185a4f7c-f6d4-45ca-83ba-aa0afcd7da5d)) (segment (start 144.6683 70.9196) (end 144.6683 90.1647) (width 0.2) (layer "B.Cu") (net 15) (tstamp 1e3d8084-7ccb-4088-bd58-b481f244bd64)) (segment (start 182.6489 119.357) (end 194.2439 119.357) (width 0.2) (layer "B.Cu") (net 15) (tstamp 21525a66-aebb-4639-91b9-1851f0f9f3ec)) - (segment (start 143.082 118.11) (end 145.368 120.396) (width 0.2) (layer "B.Cu") (net 15) (tstamp 2ff4deae-60a1-4cfc-bcad-d14391bc67e6)) + (segment (start 143.082 118.11) (end 143.082 119.085) (width 0.2) (layer "B.Cu") (net 15) (tstamp 2b5ee728-9e83-4bc1-9ca2-4b629d8411da)) (segment (start 195.2001 118.4008) (end 195.2001 118.11) (width 0.2) (layer "B.Cu") (net 15) (tstamp 35c05696-4cd0-4f3a-8d0b-c8980a3c042d)) (segment (start 193.662 70.7539) (end 196.5699 73.6618) (width 0.2) (layer "B.Cu") (net 15) (tstamp 52414ffb-2dea-4229-a25a-ef660b316801)) (segment (start 144.6683 90.1647) (end 144.543 90.29) (width 0.2) (layer "B.Cu") (net 15) (tstamp 649388c9-e8f3-4b03-8b13-8790165c6476)) (segment (start 147.026 68.5619) (end 144.6683 70.9196) (width 0.2) (layer "B.Cu") (net 15) (tstamp 745ecaf6-9b1d-4c38-a7f7-fefe15498f81)) - (segment (start 145.368 120.396) (end 177.2029 120.396) (width 0.2) (layer "B.Cu") (net 15) (tstamp 754d52a2-549b-420d-9977-602d717ef244)) (segment (start 193.662 68.326) (end 193.662 70.7539) (width 0.2) (layer "B.Cu") (net 15) (tstamp 75af89f0-e9c5-42f5-8947-ae15a44e39f3)) (segment (start 181.4019 118.11) (end 182.6489 119.357) (width 0.2) (layer "B.Cu") (net 15) (tstamp 7aae9d21-ad2b-43dd-ab7f-f6184ac19fe8)) (segment (start 147.026 67.31) (end 147.026 68.5619) (width 0.2) (layer "B.Cu") (net 15) (tstamp 87da13b2-3c3e-4ec3-959e-6645af5b5f11)) - (segment (start 179.1981 118.4008) (end 179.1981 118.11) (width 0.2) (layer "B.Cu") (net 15) (tstamp 9e838a1e-f823-4bba-b687-293efad6b136)) (segment (start 145.7699 91.5169) (end 145.7699 102.6421) (width 0.2) (layer "B.Cu") (net 15) (tstamp a3b69be4-bfeb-4f5d-9dfb-ca0d65974ce6)) + (segment (start 143.082 119.085) (end 144.427 120.43) (width 0.2) (layer "B.Cu") (net 15) (tstamp a911c493-92ee-415a-a387-eb02fdecbb23)) (segment (start 145.7699 102.6421) (end 144.526 103.886) (width 0.2) (layer "B.Cu") (net 15) (tstamp b67adb1c-1f89-4a31-9309-d93611185063)) (segment (start 143.082 105.33) (end 143.082 118.11) (width 0.2) (layer "B.Cu") (net 15) (tstamp c13d9668-3114-47af-9ee0-208c813d4b4d)) (segment (start 180.3 118.11) (end 181.4019 118.11) (width 0.2) (layer "B.Cu") (net 15) (tstamp cb51b9c4-5003-47b8-b41e-b3a4b4ab9515)) (segment (start 144.543 90.29) (end 145.7699 91.5169) (width 0.2) (layer "B.Cu") (net 15) (tstamp d744948e-8581-4e2e-a6ee-f1aa7129e38f)) - (segment (start 179.1981 118.11) (end 180.3 118.11) (width 0.2) (layer "B.Cu") (net 15) (tstamp d946d0a1-6497-4e34-b544-5e6f38c4931e)) + (segment (start 144.427 120.43) (end 177.98 120.43) (width 0.2) (layer "B.Cu") (net 15) (tstamp dd6a6265-dab0-4b3a-90bf-df5f0f758a39)) (segment (start 194.2439 119.357) (end 195.2001 118.4008) (width 0.2) (layer "B.Cu") (net 15) (tstamp e3655acf-9932-41c4-96fa-27402e70b5b7)) (segment (start 144.526 103.886) (end 143.082 105.33) (width 0.2) (layer "B.Cu") (net 15) (tstamp ede4e79d-a399-406a-828f-59fd6e014107)) - (segment (start 177.2029 120.396) (end 179.1981 118.4008) (width 0.2) (layer "B.Cu") (net 15) (tstamp f921dce2-2ea3-486a-8cf4-a9a325beb120)) (segment (start 196.302 118.11) (end 195.2001 118.11) (width 0.2) (layer "B.Cu") (net 15) (tstamp fa882642-7d7c-44b3-b1c8-cfbde92f832b)) (segment (start 215.0416 90.8391) (end 211.4515 87.249) (width 0.2) (layer "F.Cu") (net 16) (tstamp 09191097-9208-41ad-a978-3e223b37244a)) (segment (start 230.7082 87.7316) (end 227.6007 90.8391) (width 0.2) (layer "F.Cu") (net 16) (tstamp c075fca3-2d8e-4865-ac0e-2d686e8bfc38)) @@ -10047,27 +10048,28 @@ (segment (start 177.8 118.11) (end 179.9825 115.9275) (width 0.2) (layer "F.Cu") (net 32) (tstamp 5c32a06e-78db-4764-ab71-d9eeb7f14d7c)) (segment (start 162.084 108.259) (end 162.084 109.6304) (width 0.2) (layer "F.Cu") (net 32) (tstamp c27db33b-4efd-43f3-a2d8-836f28523fa5)) (via (at 162.072 109.6424) (size 0.8) (drill 0.4) (layers "F.Cu" "B.Cu") (net 32) (tstamp bbdd82bc-a12e-44ca-87a0-f422e47168f1)) - (segment (start 162.072 115.296) (end 162.072 109.6424) (width 0.2) (layer "B.Cu") (net 32) (tstamp 31d6afce-a8f9-4046-a280-39accf3f5a4b)) - (segment (start 161.8337 120.046) (end 160.4684 118.6807) (width 0.2) (layer "B.Cu") (net 32) (tstamp 599a5c71-ad15-4be2-b3b0-13192dd54b3b)) - (segment (start 175.989 120.046) (end 161.8337 120.046) (width 0.2) (layer "B.Cu") (net 32) (tstamp 5f768799-f4f6-49ca-9b5b-c2b2c7a671bd)) - (segment (start 177.8 118.11) (end 177.8 118.235) (width 0.2) (layer "B.Cu") (net 32) (tstamp 6752b6a3-03fa-4c9f-bc48-8a115b3ebfa4)) - (segment (start 160.4684 116.8996) (end 162.072 115.296) (width 0.2) (layer "B.Cu") (net 32) (tstamp 93a76174-608b-4ea2-a640-a7f46b50d779)) - (segment (start 177.8 118.235) (end 175.989 120.046) (width 0.2) (layer "B.Cu") (net 32) (tstamp b970ec32-abf1-4b09-a9ff-e152b2b1c250)) - (segment (start 160.4684 118.6807) (end 160.4684 116.8996) (width 0.2) (layer "B.Cu") (net 32) (tstamp e160b039-8b5a-4d04-8e72-699e1faa03db)) + (segment (start 169.148202 120.046) (end 161.8337 120.046) (width 0.2) (layer "B.Cu") (net 32) (tstamp 14b22a9f-d6cc-49aa-8220-0a0696009596)) + (segment (start 169.182201 120.08) (end 169.148202 120.046) (width 0.2) (layer "B.Cu") (net 32) (tstamp 1cab9f52-a190-40e3-9067-aee3a11e16b6)) + (segment (start 160.4684 118.6807) (end 160.4684 111.246) (width 0.2) (layer "B.Cu") (net 32) (tstamp 6cf653f1-fa53-408e-a8de-a56e4284da50)) + (segment (start 161.8337 120.046) (end 160.4684 118.6807) (width 0.2) (layer "B.Cu") (net 32) (tstamp 75378034-25b2-4a71-8f9d-acbfc6440ce4)) + (segment (start 175.83 120.08) (end 169.182201 120.08) (width 0.2) (layer "B.Cu") (net 32) (tstamp 83bf8ca4-4c92-406d-bad7-dd57c0659dfa)) + (segment (start 160.4684 111.246) (end 162.072 109.6424) (width 0.2) (layer "B.Cu") (net 32) (tstamp ac2e726f-05f8-4005-a64d-9b0b71f23340)) + (segment (start 177.8 118.11) (end 175.83 120.08) (width 0.2) (layer "B.Cu") (net 32) (tstamp ad19b8f2-f803-4fe1-9d92-e3f1dd2f13ef)) (segment (start 175.3 115.1725) (end 176.1725 114.3) (width 0.2) (layer "F.Cu") (net 33) (tstamp 05f1782b-5c3a-485b-8e56-b34764e01fa2)) (segment (start 162.584 109.2325) (end 163.1664 109.8149) (width 0.2) (layer "F.Cu") (net 33) (tstamp 74630c74-b287-4db1-821d-10617cc91100)) (segment (start 162.584 108.259) (end 162.584 109.2325) (width 0.2) (layer "F.Cu") (net 33) (tstamp 78777ba4-d545-4773-b917-2961ed622064)) (segment (start 163.1664 109.8149) (end 163.1664 110.3919) (width 0.2) (layer "F.Cu") (net 33) (tstamp 9525021a-b908-4246-9d6e-7c02bb022b6a)) (segment (start 175.3 118.11) (end 175.3 115.1725) (width 0.2) (layer "F.Cu") (net 33) (tstamp cbc2eeaf-a67b-46b2-bdda-4ced177e5c86)) (via (at 163.1664 110.3919) (size 0.8) (drill 0.4) (layers "F.Cu" "B.Cu") (net 33) (tstamp 74eaeef8-fe58-4780-84d1-7b1b754f0d55)) - (segment (start 173.839 119.696) (end 175.3 118.235) (width 0.2) (layer "B.Cu") (net 33) (tstamp 11602336-dfdd-43fb-b91d-a05a05dc1b37)) - (segment (start 168.148 117.0078) (end 168.148 118.5355) (width 0.2) (layer "B.Cu") (net 33) (tstamp 43cbb8a3-7363-47c9-af94-9cec9818f378)) - (segment (start 169.3085 119.696) (end 173.839 119.696) (width 0.2) (layer "B.Cu") (net 33) (tstamp 657f57c2-f3db-43b1-87f4-64eb988c1a8f)) - (segment (start 162.9932 111.853) (end 168.148 117.0078) (width 0.2) (layer "B.Cu") (net 33) (tstamp 807712a7-a1ea-4ff4-b0b9-ef95eda097f5)) - (segment (start 163.1664 110.3919) (end 162.9932 110.5651) (width 0.2) (layer "B.Cu") (net 33) (tstamp bbf76260-857e-4c4c-9104-fb6fa643eac7)) - (segment (start 162.9932 110.5651) (end 162.9932 111.853) (width 0.2) (layer "B.Cu") (net 33) (tstamp c09c97b5-bc8d-4365-833e-f1c5f91aa725)) - (segment (start 175.3 118.235) (end 175.3 118.11) (width 0.2) (layer "B.Cu") (net 33) (tstamp cd00e92a-e5b5-4597-894a-87c6b6791385)) - (segment (start 168.148 118.5355) (end 169.3085 119.696) (width 0.2) (layer "B.Cu") (net 33) (tstamp dc88572a-d24e-499a-b1c0-48cb2211e1de)) + (segment (start 162.9932 110.5651) (end 162.9932 111.853) (width 0.2) (layer "B.Cu") (net 33) (tstamp 3fe46f39-16b3-4e27-98d9-a35e91403bc7)) + (segment (start 173.68 119.73) (end 175.3 118.11) (width 0.2) (layer "B.Cu") (net 33) (tstamp 59890c59-8a41-4d32-b2db-207d18dda2ea)) + (segment (start 169.327176 119.73) (end 173.68 119.73) (width 0.2) (layer "B.Cu") (net 33) (tstamp 681fc48f-89cf-412f-a98a-7bd9fe6aaf45)) + (segment (start 168.148 117.0078) (end 168.148 118.5355) (width 0.2) (layer "B.Cu") (net 33) (tstamp 7bcbe0f0-7259-4c28-8ced-fe1b5b0c9ad3)) + (segment (start 168.3092 118.712025) (end 169.327176 119.73) (width 0.2) (layer "B.Cu") (net 33) (tstamp 8c7ca0f9-2123-4051-96b1-3ada2dcbf16e)) + (segment (start 163.1664 110.3919) (end 162.9932 110.5651) (width 0.2) (layer "B.Cu") (net 33) (tstamp b24e5141-55df-4633-9156-27a8cdc7ac45)) + (segment (start 162.9932 111.853) (end 168.148 117.0078) (width 0.2) (layer "B.Cu") (net 33) (tstamp b57838d8-7071-4298-94ea-9d635aa4ecc3)) + (segment (start 168.3092 118.6967) (end 168.3092 118.712025) (width 0.2) (layer "B.Cu") (net 33) (tstamp cce29e26-f5ce-4d44-b980-aa6d6c2b5820)) + (segment (start 168.148 118.5355) (end 168.3092 118.6967) (width 0.2) (layer "B.Cu") (net 33) (tstamp fbc4876e-8ba6-4332-8404-ebef7d413372)) (segment (start 172.8 118.11) (end 172.8 116.8831) (width 0.2) (layer "F.Cu") (net 34) (tstamp 2432bcd6-3d16-4b6d-8af6-506ccd1e25cf)) (segment (start 172.8 116.8831) (end 172.3625 116.4456) (width 0.2) (layer "F.Cu") (net 34) (tstamp 281d14b9-d98a-475b-89b9-e2f13f0557b8)) (segment (start 161.584 108.259) (end 161.584 109.2086) (width 0.2) (layer "F.Cu") (net 34) (tstamp 40c77d94-767b-4655-9e69-cfa69db23fa6)) @@ -10077,14 +10079,14 @@ (segment (start 161.584 109.2086) (end 161.3856 109.407) (width 0.2) (layer "F.Cu") (net 34) (tstamp ec587d62-2ceb-415e-a038-3fd9440c58e6)) (segment (start 161.3856 109.407) (end 161.3856 109.9042) (width 0.2) (layer "F.Cu") (net 34) (tstamp ff8df3a9-a58f-4e47-a129-457bd01b7e88)) (via (at 163.6451 111.2595) (size 0.8) (drill 0.4) (layers "F.Cu" "B.Cu") (net 34) (tstamp e1db3da4-18cd-499d-8bd3-0549dc781f51)) - (segment (start 171.6981 118.11) (end 171.6981 118.7987) (width 0.2) (layer "B.Cu") (net 34) (tstamp 0fe00185-5746-4728-bcac-fbfbd9e1ad94)) - (segment (start 171.6981 118.7987) (end 171.15 119.3468) (width 0.2) (layer "B.Cu") (net 34) (tstamp 4d99499b-b3bb-45c7-a181-af7ef7d987e4)) - (segment (start 171.15 119.3468) (end 169.4931 119.3468) (width 0.2) (layer "B.Cu") (net 34) (tstamp 624a9f40-fe4b-4a75-b59e-7e1248cf51d5)) - (segment (start 168.6592 116.8432) (end 163.6451 111.8291) (width 0.2) (layer "B.Cu") (net 34) (tstamp 878fe740-2ff5-443c-9927-88e7dda248f5)) - (segment (start 169.4931 119.3468) (end 168.6592 118.5129) (width 0.2) (layer "B.Cu") (net 34) (tstamp 8e387bbb-a44f-4f39-a0a7-e63bffca407f)) - (segment (start 168.6592 118.5129) (end 168.6592 116.8432) (width 0.2) (layer "B.Cu") (net 34) (tstamp 99d477b5-aa60-4fb0-ba62-61fdf900eaf6)) - (segment (start 163.6451 111.8291) (end 163.6451 111.2595) (width 0.2) (layer "B.Cu") (net 34) (tstamp cd2d6794-b6cc-463d-b35a-9070a4587e31)) - (segment (start 172.8 118.11) (end 171.6981 118.11) (width 0.2) (layer "B.Cu") (net 34) (tstamp d9375e83-48cf-4d37-9378-6747ab15c8d7)) + (segment (start 171.6981 118.8779) (end 171.196 119.38) (width 0.2) (layer "B.Cu") (net 34) (tstamp 29ef1dbf-70fe-49fc-ab3a-ee89d396efec)) + (segment (start 172.8 118.11) (end 171.6981 118.11) (width 0.2) (layer "B.Cu") (net 34) (tstamp 2e764a54-6811-43c1-b86c-88e3ae8e76b7)) + (segment (start 163.6451 111.8291) (end 163.6451 111.2595) (width 0.2) (layer "B.Cu") (net 34) (tstamp 6c3c6c5b-3c5d-4bcc-9814-14b291153bde)) + (segment (start 171.6981 118.11) (end 171.6981 118.8779) (width 0.2) (layer "B.Cu") (net 34) (tstamp 74be69c4-d9dc-45bb-9ae2-578c4320a8fa)) + (segment (start 169.47215 119.38) (end 168.6592 118.56705) (width 0.2) (layer "B.Cu") (net 34) (tstamp a6a9b271-4b40-4590-bbe7-e3c5e4fa47ee)) + (segment (start 168.6592 116.8432) (end 163.6451 111.8291) (width 0.2) (layer "B.Cu") (net 34) (tstamp ae0556d3-e5f2-40f8-82fd-5736e1b2e76b)) + (segment (start 171.196 119.38) (end 169.47215 119.38) (width 0.2) (layer "B.Cu") (net 34) (tstamp bf899a1d-25f7-4102-9d0e-3e74d0624a9c)) + (segment (start 168.6592 118.56705) (end 168.6592 116.8432) (width 0.2) (layer "B.Cu") (net 34) (tstamp f420fbd3-1787-42a3-8e4c-7070c9cf2cd2)) (segment (start 164.084 108.259) (end 164.084 109.4043) (width 0.2) (layer "F.Cu") (net 35) (tstamp 3d17400e-f607-4b5e-8779-11d21e1115d5)) (segment (start 164.084 109.4043) (end 163.8577 109.6306) (width 0.2) (layer "F.Cu") (net 35) (tstamp 48644939-858a-4469-b1d7-5ea1ce2d74e6)) (segment (start 193.802 116.2285) (end 195.9845 114.046) (width 0.2) (layer "F.Cu") (net 35) (tstamp be5ee676-751b-4c47-bffe-ad638e73b759)) @@ -10134,8 +10136,8 @@ (segment (start 176.1725 107.188) (end 175.26 106.2755) (width 0.2) (layer "F.Cu") (net 46) (tstamp 443fc1f1-6dde-4b16-a48f-5fc2945d0a71)) (segment (start 178.3865 107.188) (end 176.1725 107.188) (width 0.2) (layer "F.Cu") (net 46) (tstamp 8316eab9-171a-4b34-bef6-336062a5013a)) (segment (start 179.324 108.1255) (end 178.3865 107.188) (width 0.2) (layer "F.Cu") (net 46) (tstamp a2adc7d3-ac48-4353-b353-5118da611958)) - (segment (start 154.407 88.7245) (end 154.432 88.7495) (width 0.2) (layer "F.Cu") (net 47) (tstamp 2cbc9e44-4597-4a1f-9fcc-ceee878f07f9)) - (segment (start 152.4 88.7245) (end 154.407 88.7245) (width 0.2) (layer "F.Cu") (net 47) (tstamp 6e281413-da25-430f-90d1-1f14ccc12710)) + (segment (start 152.908 79.151) (end 154.915 79.151) (width 0.2) (layer "F.Cu") (net 47) (tstamp 36873927-df59-4cb1-8233-d1dae9595161)) + (segment (start 154.915 79.151) (end 154.94 79.176) (width 0.2) (layer "F.Cu") (net 47) (tstamp c4010c99-27b8-423b-b5fc-085efd98f12e)) (segment (start 162.439028 94.52503) (end 162.439025 94.52503) (width 0.2) (layer "F.Cu") (net 48) (tstamp 1296a6a6-1561-4713-9f5b-81ff5f44da59)) (segment (start 164.723691 96.809693) (end 162.439028 94.52503) (width 0.2) (layer "F.Cu") (net 48) (tstamp 2e5aef80-7c16-4bc9-8bab-b325e94919d2)) (segment (start 165.312723 96.809692) (end 164.723691 96.809693) (width 0.2) (layer "F.Cu") (net 48) (tstamp 464c7b9e-e91d-4940-bb72-f0b1d88a9e56)) @@ -10585,20 +10587,19 @@ (segment (start 191.9759 104.4907) (end 192.6482 105.163) (width 0.2) (layer "F.Cu") (net 74) (tstamp c59789f3-67d0-40ea-abd6-2ee4ac4343c7)) (segment (start 194.8811 106.7461) (end 195.1759 107.0409) (width 0.2) (layer "F.Cu") (net 74) (tstamp cea34252-603f-4331-8730-ca26fe33e159)) (segment (start 199.923 106.2505) (end 199.898 106.2755) (width 0.2) (layer "F.Cu") (net 74) (tstamp eee80fee-47c1-4234-bbd8-58148b475606)) - (segment (start 150.876 79.151) (end 148.844 79.151) (width 0.2) (layer "F.Cu") (net 75) (tstamp 0835c1e9-b3f4-474e-9a4c-58cc7c08549d)) - (segment (start 152.908 79.151) (end 154.915 79.151) (width 0.2) (layer "F.Cu") (net 76) (tstamp 36873927-df59-4cb1-8233-d1dae9595161)) - (segment (start 154.915 79.151) (end 154.94 79.176) (width 0.2) (layer "F.Cu") (net 76) (tstamp c4010c99-27b8-423b-b5fc-085efd98f12e)) - (segment (start 178.7414 94.9508) (end 178.7414 94.7817) (width 0.2) (layer "F.Cu") (net 77) (tstamp 0e24b301-096a-4acc-bb16-907d65e92764)) - (segment (start 171.8075 89.8916) (end 171.8075 89.662) (width 0.2) (layer "F.Cu") (net 77) (tstamp 17b8f842-60f7-4ece-8c72-50d9640cc299)) - (segment (start 178.7414 94.7817) (end 177.4338 93.4741) (width 0.2) (layer "F.Cu") (net 77) (tstamp 20829334-4172-4db4-870e-e0a91526b4e2)) - (segment (start 178.9426 95.152) (end 178.7414 94.9508) (width 0.2) (layer "F.Cu") (net 77) (tstamp 66227485-afc2-4003-948b-46d0a4b38ca7)) - (segment (start 179.7575 95.152) (end 178.9426 95.152) (width 0.2) (layer "F.Cu") (net 77) (tstamp b55aab1b-a36b-4b80-8d89-7a8ab3f22936)) - (segment (start 175.39 93.4741) (end 171.8075 89.8916) (width 0.2) (layer "F.Cu") (net 77) (tstamp d54073f0-7797-44c7-916e-56d850a3bad5)) - (segment (start 177.4338 93.4741) (end 175.39 93.4741) (width 0.2) (layer "F.Cu") (net 77) (tstamp ddf99cc3-1aed-46c9-8da8-85d5e00d5b64)) - (segment (start 182.02 91.2385) (end 182.02 92.8895) (width 0.2) (layer "F.Cu") (net 78) (tstamp 1a088fd1-41bb-4a85-95c7-460c7a2ff5af)) - (segment (start 181.61 90.8285) (end 182.02 91.2385) (width 0.2) (layer "F.Cu") (net 78) (tstamp e7d59dc9-4db4-4f50-acca-de25aed756df)) - (segment (start 183.388 106.2755) (end 183.62 106.0435) (width 0.2) (layer "F.Cu") (net 79) (tstamp 6d8b11ce-f15d-4a95-a60b-fe591e616348)) - (segment (start 183.62 106.0435) (end 183.62 104.2145) (width 0.2) (layer "F.Cu") (net 79) (tstamp 9f3beab4-3ac1-4ca8-b1f0-2fabbc89d790)) + (segment (start 154.407 88.7245) (end 154.432 88.7495) (width 0.2) (layer "F.Cu") (net 75) (tstamp 2cbc9e44-4597-4a1f-9fcc-ceee878f07f9)) + (segment (start 152.4 88.7245) (end 154.407 88.7245) (width 0.2) (layer "F.Cu") (net 75) (tstamp 6e281413-da25-430f-90d1-1f14ccc12710)) + (segment (start 150.876 79.151) (end 148.844 79.151) (width 0.2) (layer "F.Cu") (net 76) (tstamp 0835c1e9-b3f4-474e-9a4c-58cc7c08549d)) + (segment (start 167.112 79.984) (end 167.112 83.75) (width 0.2) (layer "F.Cu") (net 77) (tstamp 0f3754f1-ab88-4453-9ba7-95e143dfa3ca)) + (segment (start 166.56 84.302) (end 164.584 86.278) (width 0.2) (layer "F.Cu") (net 77) (tstamp 55611d0b-a356-4b66-84da-5abc81079f6c)) + (segment (start 167.112 83.75) (end 166.56 84.302) (width 0.2) (layer "F.Cu") (net 77) (tstamp 68f8e1b4-c870-4410-a0fc-90a05e2d8d54)) + (segment (start 164.584 86.278) (end 164.584 92.909) (width 0.2) (layer "F.Cu") (net 77) (tstamp fe78eb16-2b98-4570-824e-6baba41a0573)) + (segment (start 164.084 86.706) (end 164.084 92.909) (width 0.2) (layer "F.Cu") (net 78) (tstamp 25a87d1f-f445-4c7c-b95a-7d98c24f88e5)) + (segment (start 161.656 84.278) (end 161.68 84.302) (width 0.2) (layer "F.Cu") (net 78) (tstamp b20d3d9e-f0f0-468f-8d88-94afbd198c16)) + (segment (start 161.656 79.984) (end 161.656 84.278) (width 0.2) (layer "F.Cu") (net 78) (tstamp c19f0f07-7d21-4213-ab69-f39180c776d7)) + (segment (start 161.68 84.302) (end 164.084 86.706) (width 0.2) (layer "F.Cu") (net 78) (tstamp c225ea24-4388-49fb-8e53-4ccc3c5b5c62)) + (segment (start 154.346 105.13) (end 155.3 106.084) (width 0.2) (layer "F.Cu") (net 79) (tstamp 3032a85c-2da2-4ccf-acbe-88069c81a275)) + (segment (start 155.3 106.084) (end 156.409 106.084) (width 0.2) (layer "F.Cu") (net 79) (tstamp d57ac226-4b79-4b8d-b63b-aa0402f40571)) (segment (start 191.0825 97.152) (end 190.0949 97.152) (width 0.2) (layer "F.Cu") (net 80) (tstamp 04fa4925-75e9-45e2-839f-a299b222bd17)) (segment (start 189.4399 97.807) (end 189.4399 97.9368) (width 0.2) (layer "F.Cu") (net 80) (tstamp 6f9d770b-3d9e-4eb9-9fd4-254c3340755e)) (segment (start 195.834 106.2755) (end 195.834 103.8081) (width 0.2) (layer "F.Cu") (net 80) (tstamp d8580b19-d4f7-49bc-9e9b-ab82cc4bdc40)) @@ -10641,12 +10642,8 @@ (segment (start 200.152 98.9541) (end 199.927 98.7291) (width 0.2) (layer "F.Cu") (net 83) (tstamp 83861cbf-07bf-4ce9-8196-bb8d751459d9)) (segment (start 191.1054 98.7291) (end 191.0825 98.752) (width 0.2) (layer "F.Cu") (net 83) (tstamp 84b4ef5a-ebcc-49d6-b92f-11885f2269f4)) (segment (start 200.152 100.6659) (end 200.152 101.958) (width 0.25) (layer "F.Cu") (net 83) (tstamp c3a40dc9-cad5-4edc-81f3-790505d280c7)) - (segment (start 172.8235 82.55) (end 174.0851 82.55) (width 0.2) (layer "F.Cu") (net 84) (tstamp 316fe59b-70da-4363-aa69-f474b87106f6)) - (segment (start 174.657 83.1219) (end 174.657 83.73) (width 0.2) (layer "F.Cu") (net 84) (tstamp 70608dde-063e-4623-987e-14764deb1deb)) - (segment (start 171.8075 81.534) (end 172.8235 82.55) (width 0.2) (layer "F.Cu") (net 84) (tstamp 74f1386c-fa71-4ad2-b6cb-a15fbaf7a54b)) - (segment (start 174.0851 82.55) (end 174.657 83.1219) (width 0.2) (layer "F.Cu") (net 84) (tstamp 836f86c3-3918-4294-92bc-2e0b021a244d)) - (segment (start 174.657 83.73) (end 177.927 87) (width 0.2) (layer "F.Cu") (net 84) (tstamp d6ba87f6-526d-4c6c-9cb3-df139ddfa2d9)) - (segment (start 177.927 87) (end 177.927 87.819) (width 0.2) (layer "F.Cu") (net 84) (tstamp fa114b29-3b38-45a9-b68e-2d10113ddab2)) + (segment (start 183.388 106.2755) (end 183.62 106.0435) (width 0.2) (layer "F.Cu") (net 84) (tstamp 6d8b11ce-f15d-4a95-a60b-fe591e616348)) + (segment (start 183.62 106.0435) (end 183.62 104.2145) (width 0.2) (layer "F.Cu") (net 84) (tstamp 9f3beab4-3ac1-4ca8-b1f0-2fabbc89d790)) (segment (start 181.3769 93.898) (end 180.9069 93.428) (width 0.2) (layer "F.Cu") (net 85) (tstamp 76a24135-eb63-4d18-ab98-616f0447530e)) (segment (start 182.42 92.8895) (end 182.42 93.670674) (width 0.2) (layer "F.Cu") (net 85) (tstamp 9136eeed-6ef8-4d0c-bd36-dab9d05dc45e)) (segment (start 182.42 93.670674) (end 182.192674 93.898) (width 0.2) (layer "F.Cu") (net 85) (tstamp 9b5d4cc9-8db3-43fe-b8be-6b098dd71957)) @@ -10734,6 +10731,33 @@ (segment (start 168.6131 97.316) (end 168.6131 96.9765) (width 0.2) (layer "B.Cu") (net 91) (tstamp 411e8f68-5b34-4ad7-9af2-f0e6bdae40b8)) (segment (start 172.2599 100.9628) (end 168.6131 97.316) (width 0.2) (layer "B.Cu") (net 91) (tstamp e1e45870-a0b5-4749-80de-865a0b6a7eba)) (segment (start 180.2745 104.2145) (end 180.2745 103.5761) (width 0.2) (layer "B.Cu") (net 91) (tstamp f3166783-a64d-43cc-85ea-c9df8b74e3b7)) + (segment (start 182.02 91.2385) (end 182.02 92.8895) (width 0.2) (layer "F.Cu") (net 92) (tstamp 1a088fd1-41bb-4a85-95c7-460c7a2ff5af)) + (segment (start 181.61 90.8285) (end 182.02 91.2385) (width 0.2) (layer "F.Cu") (net 92) (tstamp e7d59dc9-4db4-4f50-acca-de25aed756df)) + (segment (start 172.8235 82.55) (end 174.0851 82.55) (width 0.2) (layer "F.Cu") (net 93) (tstamp 316fe59b-70da-4363-aa69-f474b87106f6)) + (segment (start 174.657 83.1219) (end 174.657 83.73) (width 0.2) (layer "F.Cu") (net 93) (tstamp 70608dde-063e-4623-987e-14764deb1deb)) + (segment (start 171.8075 81.534) (end 172.8235 82.55) (width 0.2) (layer "F.Cu") (net 93) (tstamp 74f1386c-fa71-4ad2-b6cb-a15fbaf7a54b)) + (segment (start 174.0851 82.55) (end 174.657 83.1219) (width 0.2) (layer "F.Cu") (net 93) (tstamp 836f86c3-3918-4294-92bc-2e0b021a244d)) + (segment (start 174.657 83.73) (end 177.927 87) (width 0.2) (layer "F.Cu") (net 93) (tstamp d6ba87f6-526d-4c6c-9cb3-df139ddfa2d9)) + (segment (start 177.927 87) (end 177.927 87.819) (width 0.2) (layer "F.Cu") (net 93) (tstamp fa114b29-3b38-45a9-b68e-2d10113ddab2)) + (segment (start 178.7414 94.9508) (end 178.7414 94.7817) (width 0.2) (layer "F.Cu") (net 94) (tstamp 0e24b301-096a-4acc-bb16-907d65e92764)) + (segment (start 171.8075 89.8916) (end 171.8075 89.662) (width 0.2) (layer "F.Cu") (net 94) (tstamp 17b8f842-60f7-4ece-8c72-50d9640cc299)) + (segment (start 178.7414 94.7817) (end 177.4338 93.4741) (width 0.2) (layer "F.Cu") (net 94) (tstamp 20829334-4172-4db4-870e-e0a91526b4e2)) + (segment (start 178.9426 95.152) (end 178.7414 94.9508) (width 0.2) (layer "F.Cu") (net 94) (tstamp 66227485-afc2-4003-948b-46d0a4b38ca7)) + (segment (start 179.7575 95.152) (end 178.9426 95.152) (width 0.2) (layer "F.Cu") (net 94) (tstamp b55aab1b-a36b-4b80-8d89-7a8ab3f22936)) + (segment (start 175.39 93.4741) (end 171.8075 89.8916) (width 0.2) (layer "F.Cu") (net 94) (tstamp d54073f0-7797-44c7-916e-56d850a3bad5)) + (segment (start 177.4338 93.4741) (end 175.39 93.4741) (width 0.2) (layer "F.Cu") (net 94) (tstamp ddf99cc3-1aed-46c9-8da8-85d5e00d5b64)) + (segment (start 159.764027 95.884) (end 162.808049 95.884) (width 0.2) (layer "F.Cu") (net 95) (tstamp 005e08f6-7d8a-4e56-a394-12496eff9707)) + (segment (start 149.4131 89.7044) (end 149.4131 91.079) (width 0.2) (layer "F.Cu") (net 95) (tstamp 1c16cd20-7e68-4030-ac75-e8dc99b85d71)) + (segment (start 154.5852 93.8846) (end 154.6477 93.8221) (width 0.2) (layer "F.Cu") (net 95) (tstamp 24d65316-1e36-475f-89be-ef376f3f742f)) + (segment (start 154.6477 93.8221) (end 157.702127 93.8221) (width 0.2) (layer "F.Cu") (net 95) (tstamp 417858d3-4de2-4b36-847c-5406d18a6aeb)) + (segment (start 170.1316 98.3323) (end 170.8799 97.584) (width 0.2) (layer "F.Cu") (net 95) (tstamp 5e172e43-8438-4231-b617-ca92a9859045)) + (segment (start 157.702127 93.8221) (end 159.764027 95.884) (width 0.2) (layer "F.Cu") (net 95) (tstamp 747e1b63-76e2-4551-a8df-09f92ea71f7c)) + (segment (start 170.8799 97.584) (end 171.759 97.584) (width 0.2) (layer "F.Cu") (net 95) (tstamp 8a6f0377-81a7-4c72-ac1f-13421a1eb75d)) + (segment (start 165.256349 98.3323) (end 170.1316 98.3323) (width 0.2) (layer "F.Cu") (net 95) (tstamp 97ba809a-f166-4a03-9230-52ef4005ae16)) + (segment (start 152.2187 93.8846) (end 154.5852 93.8846) (width 0.2) (layer "F.Cu") (net 95) (tstamp 97fb78bc-4bec-4053-afbc-6bf9fdf30fdd)) + (segment (start 162.808049 95.884) (end 165.256349 98.3323) (width 0.2) (layer "F.Cu") (net 95) (tstamp 9dfd63ce-64c6-4528-ac20-d35f01d2a268)) + (segment (start 150.368 88.7495) (end 149.4131 89.7044) (width 0.2) (layer "F.Cu") (net 95) (tstamp b7f4d8cf-8727-413c-8840-2ca730faa824)) + (segment (start 149.4131 91.079) (end 152.2187 93.8846) (width 0.2) (layer "F.Cu") (net 95) (tstamp f5358da0-04cb-4ea4-9ddb-74aa53be43b8)) (segment (start 194.818 76.642) (end 194.818 80.1852) (width 0.2) (layer "F.Cu") (net 112) (tstamp 68ed262d-cdec-4cfa-a4f2-a738b0e726c2)) (segment (start 194.818 80.1852) (end 194.4111 80.5921) (width 0.2) (layer "F.Cu") (net 112) (tstamp 9195b4e1-b3cc-4e2e-8960-6061dfd95e46)) (segment (start 184.02 92.8895) (end 184.02 92.1011) (width 0.2) (layer "F.Cu") (net 112) (tstamp 9c3eb1e0-55cd-4854-9911-a33ef663b1c5)) @@ -10755,30 +10779,6 @@ (segment (start 172.0005 101.3147) (end 167.8728 97.187) (width 0.2) (layer "B.Cu") (net 124) (tstamp 2b904cc1-bfb3-4d3b-8b07-3e6d56a41aff)) (segment (start 177.0489 101.3147) (end 172.0005 101.3147) (width 0.2) (layer "B.Cu") (net 124) (tstamp 3b79adac-1a07-4459-8d8f-e4230a71d79b)) (segment (start 178.6023 102.8681) (end 177.0489 101.3147) (width 0.2) (layer "B.Cu") (net 124) (tstamp abf1b720-3c04-4951-8697-18e967af0caa)) - (segment (start 154.346 105.13) (end 155.3 106.084) (width 0.2) (layer "F.Cu") (net 126) (tstamp 3032a85c-2da2-4ccf-acbe-88069c81a275)) - (segment (start 155.3 106.084) (end 156.409 106.084) (width 0.2) (layer "F.Cu") (net 126) (tstamp d57ac226-4b79-4b8d-b63b-aa0402f40571)) - (segment (start 167.112 79.984) (end 167.112 83.75) (width 0.2) (layer "F.Cu") (net 127) (tstamp 0f3754f1-ab88-4453-9ba7-95e143dfa3ca)) - (segment (start 166.56 84.302) (end 164.584 86.278) (width 0.2) (layer "F.Cu") (net 127) (tstamp 55611d0b-a356-4b66-84da-5abc81079f6c)) - (segment (start 167.112 83.75) (end 166.56 84.302) (width 0.2) (layer "F.Cu") (net 127) (tstamp 68f8e1b4-c870-4410-a0fc-90a05e2d8d54)) - (segment (start 164.584 86.278) (end 164.584 92.909) (width 0.2) (layer "F.Cu") (net 127) (tstamp fe78eb16-2b98-4570-824e-6baba41a0573)) - (segment (start 164.084 86.706) (end 164.084 92.909) (width 0.2) (layer "F.Cu") (net 128) (tstamp 25a87d1f-f445-4c7c-b95a-7d98c24f88e5)) - (segment (start 161.656 84.278) (end 161.68 84.302) (width 0.2) (layer "F.Cu") (net 128) (tstamp b20d3d9e-f0f0-468f-8d88-94afbd198c16)) - (segment (start 161.656 79.984) (end 161.656 84.278) (width 0.2) (layer "F.Cu") (net 128) (tstamp c19f0f07-7d21-4213-ab69-f39180c776d7)) - (segment (start 161.68 84.302) (end 164.084 86.706) (width 0.2) (layer "F.Cu") (net 128) (tstamp c225ea24-4388-49fb-8e53-4ccc3c5b5c62)) - (segment (start 169.084 109.874) (end 169.084 108.259) (width 0.2) (layer "F.Cu") (net 129) (tstamp 5ec90ccf-14b7-4209-a17d-bece40efdeec)) - (segment (start 168.402 110.556) (end 169.084 109.874) (width 0.2) (layer "F.Cu") (net 129) (tstamp ae6851ea-f2c4-4a56-b493-102c3b1a9068)) - (segment (start 159.764027 95.884) (end 162.808049 95.884) (width 0.2) (layer "F.Cu") (net 130) (tstamp 005e08f6-7d8a-4e56-a394-12496eff9707)) - (segment (start 149.4131 89.7044) (end 149.4131 91.079) (width 0.2) (layer "F.Cu") (net 130) (tstamp 1c16cd20-7e68-4030-ac75-e8dc99b85d71)) - (segment (start 154.5852 93.8846) (end 154.6477 93.8221) (width 0.2) (layer "F.Cu") (net 130) (tstamp 24d65316-1e36-475f-89be-ef376f3f742f)) - (segment (start 154.6477 93.8221) (end 157.702127 93.8221) (width 0.2) (layer "F.Cu") (net 130) (tstamp 417858d3-4de2-4b36-847c-5406d18a6aeb)) - (segment (start 170.1316 98.3323) (end 170.8799 97.584) (width 0.2) (layer "F.Cu") (net 130) (tstamp 5e172e43-8438-4231-b617-ca92a9859045)) - (segment (start 157.702127 93.8221) (end 159.764027 95.884) (width 0.2) (layer "F.Cu") (net 130) (tstamp 747e1b63-76e2-4551-a8df-09f92ea71f7c)) - (segment (start 170.8799 97.584) (end 171.759 97.584) (width 0.2) (layer "F.Cu") (net 130) (tstamp 8a6f0377-81a7-4c72-ac1f-13421a1eb75d)) - (segment (start 165.256349 98.3323) (end 170.1316 98.3323) (width 0.2) (layer "F.Cu") (net 130) (tstamp 97ba809a-f166-4a03-9230-52ef4005ae16)) - (segment (start 152.2187 93.8846) (end 154.5852 93.8846) (width 0.2) (layer "F.Cu") (net 130) (tstamp 97fb78bc-4bec-4053-afbc-6bf9fdf30fdd)) - (segment (start 162.808049 95.884) (end 165.256349 98.3323) (width 0.2) (layer "F.Cu") (net 130) (tstamp 9dfd63ce-64c6-4528-ac20-d35f01d2a268)) - (segment (start 150.368 88.7495) (end 149.4131 89.7044) (width 0.2) (layer "F.Cu") (net 130) (tstamp b7f4d8cf-8727-413c-8840-2ca730faa824)) - (segment (start 149.4131 91.079) (end 152.2187 93.8846) (width 0.2) (layer "F.Cu") (net 130) (tstamp f5358da0-04cb-4ea4-9ddb-74aa53be43b8)) (zone (net 6) (net_name "GND") (layers "F.Cu" "In1.Cu" "B.Cu") (tstamp 3667f0ea-9288-4c72-869e-bb49768fb21b) (hatch edge 0.5) (connect_pads (clearance 0.5)) @@ -31731,27 +31731,16 @@ (filled_polygon (layer "B.Cu") (pts - (xy 161.252793 110.081254) - (xy 161.308726 110.123126) - (xy 161.316846 110.135436) - (xy 161.339466 110.174614) - (xy 161.339465 110.174614) - (xy 161.43965 110.28588) - (xy 161.46988 110.348871) - (xy 161.4715 110.368852) - (xy 161.4715 114.995902) - (xy 161.451815 115.062941) - (xy 161.435181 115.083583) - (xy 160.074496 116.444268) - (xy 160.068394 116.449619) - (xy 160.040116 116.471318) - (xy 159.955331 116.581815) - (xy 159.943862 116.596761) - (xy 159.88941 116.728222) - (xy 159.845569 116.782625) - (xy 159.779275 116.80469) - (xy 159.722444 116.793151) - (xy 159.547492 116.71157) + (xy 159.787234 111.546814) + (xy 159.843167 111.588686) + (xy 159.867584 111.65415) + (xy 159.8679 111.662996) + (xy 159.8679 116.666337) + (xy 159.848215 116.733376) + (xy 159.795411 116.779131) + (xy 159.726253 116.789075) + (xy 159.691496 116.778719) + (xy 159.547497 116.711571) (xy 159.547486 116.711567) (xy 159.334 116.654364) (xy 159.334 117.701981) @@ -31803,25 +31792,78 @@ (xy 155.244001 118.987799) (xy 155.299185 119.154331) (xy 155.299187 119.154336) - (xy 155.326771 119.199057) + (xy 155.305442 119.164477) (xy 155.391288 119.303656) (xy 155.515344 119.427712) (xy 155.664666 119.519814) - (xy 155.767213 119.553794) - (xy 155.824657 119.593567) - (xy 155.85148 119.658082) - (xy 155.839165 119.726858) - (xy 155.791622 119.778058) - (xy 155.728208 119.7955) - (xy 151.735396 119.7955) - (xy 151.668357 119.775815) - (xy 151.622602 119.723011) - (xy 151.612658 119.653853) - (xy 151.641683 119.590297) - (xy 151.647715 119.583819) - (xy 156.308034 114.9235) - (xy 161.12178 110.109753) - (xy 161.183101 110.07627) + (xy 155.831203 119.574999) + (xy 155.84524 119.576433) + (xy 155.901121 119.582142) + (xy 155.965812 119.608538) + (xy 156.005964 119.665719) + (xy 156.008827 119.73553) + (xy 155.973493 119.795807) + (xy 155.91118 119.827412) + (xy 155.888518 119.8295) + (xy 151.701396 119.8295) + (xy 151.634357 119.809815) + (xy 151.588602 119.757011) + (xy 151.578658 119.687853) + (xy 151.607683 119.624297) + (xy 151.613715 119.617819) + (xy 155.6338 115.597734) + (xy 159.656221 111.575313) + (xy 159.717542 111.54183) + ) + ) + (filled_polygon + (layer "B.Cu") + (pts + (xy 159.334 119.565633) + (xy 159.547483 119.508433) + (xy 159.547492 119.508429) + (xy 159.761575 119.408601) + (xy 159.955081 119.273105) + (xy 159.995644 119.232543) + (xy 160.056967 119.199057) + (xy 160.126658 119.204041) + (xy 160.171007 119.232542) + (xy 160.556284 119.617819) + (xy 160.589769 119.679142) + (xy 160.584785 119.748834) + (xy 160.542913 119.804767) + (xy 160.477449 119.829184) + (xy 160.468603 119.8295) + (xy 157.279474 119.8295) + (xy 157.212435 119.809815) + (xy 157.16668 119.757011) + (xy 157.156736 119.687853) + (xy 157.185761 119.624297) + (xy 157.244539 119.586523) + (xy 157.266873 119.582142) + (xy 157.322759 119.576433) + (xy 157.336797 119.574999) + (xy 157.503334 119.519814) + (xy 157.652656 119.427712) + (xy 157.776712 119.303656) + (xy 157.868814 119.154334) + (xy 157.868814 119.154333) + (xy 157.872448 119.148442) + (xy 157.924396 119.101717) + (xy 157.993358 119.090494) + (xy 158.057441 119.118337) + (xy 158.065668 119.125856) + (xy 158.212921 119.273108) + (xy 158.406421 119.4086) + (xy 158.620507 119.508429) + (xy 158.620516 119.508433) + (xy 158.834 119.565634) + (xy 158.834 118.518018) + (xy 158.948801 118.570446) + (xy 159.050025 118.585) + (xy 159.117975 118.585) + (xy 159.219199 118.570446) + (xy 159.334 118.518018) ) ) (filled_polygon @@ -31835,21 +31877,28 @@ (xy 167.5475 118.492071) (xy 167.546969 118.500173) (xy 167.542318 118.535499) - (xy 167.542318 118.535501) - (xy 167.546597 118.568) - (xy 167.554994 118.631785) + (xy 167.542318 118.5355) + (xy 167.555095 118.63255) + (xy 167.562955 118.69226) (xy 167.562956 118.692262) (xy 167.623464 118.838341) (xy 167.719718 118.963782) (xy 167.747995 118.98548) (xy 167.754085 118.99082) - (xy 167.881602 119.118337) - (xy 167.997084 119.233819) - (xy 168.030569 119.295142) - (xy 168.025585 119.364834) - (xy 167.983713 119.420767) - (xy 167.918249 119.445184) - (xy 167.909403 119.4455) + (xy 167.803337 119.040072) + (xy 167.808682 119.046168) + (xy 167.813758 119.052783) + (xy 167.880918 119.140307) + (xy 167.899198 119.154334) + (xy 167.909191 119.162002) + (xy 167.915286 119.167346) + (xy 167.948651 119.200711) + (xy 167.981759 119.233819) + (xy 168.015244 119.295142) + (xy 168.01026 119.364834) + (xy 167.968388 119.420767) + (xy 167.902924 119.445184) + (xy 167.894078 119.4455) (xy 165.082759 119.4455) (xy 165.01572 119.425815) (xy 164.969965 119.373011) @@ -31934,7 +31983,7 @@ (xy 181.08008 116.882561) (xy 180.977834 116.810967) (xy 180.97783 116.810965) - (xy 180.917055 116.782625) + (xy 180.908678 116.778719) (xy 180.763663 116.711097) (xy 180.763659 116.711096) (xy 180.763655 116.711094) @@ -32072,7 +32121,7 @@ (xy 148.86208 116.882561) (xy 148.759834 116.810967) (xy 148.75983 116.810965) - (xy 148.699055 116.782625) + (xy 148.690678 116.778719) (xy 148.545663 116.711097) (xy 148.545659 116.711096) (xy 148.545655 116.711094) @@ -32100,7 +32149,7 @@ (xy 146.36208 116.882561) (xy 146.259834 116.810967) (xy 146.25983 116.810965) - (xy 146.199055 116.782625) + (xy 146.190678 116.778719) (xy 146.045663 116.711097) (xy 146.045659 116.711096) (xy 146.045655 116.711094) @@ -32160,7 +32209,7 @@ (xy 145.689495 110.514599) (xy 145.689494 110.514597) (xy 145.522403 110.347506) - (xy 145.434391 110.28588) + (xy 145.466187 110.308144) (xy 145.365401 110.237573) (xy 145.321778 110.182999) (xy 145.314584 110.1135) @@ -32295,7 +32344,7 @@ (xy 173.58008 116.882561) (xy 173.477834 116.810967) (xy 173.47783 116.810965) - (xy 173.417055 116.782625) + (xy 173.408678 116.778719) (xy 173.263663 116.711097) (xy 173.263659 116.711096) (xy 173.263655 116.711094) @@ -32336,7 +32385,7 @@ (xy 176.08008 116.882561) (xy 175.977834 116.810967) (xy 175.97783 116.810965) - (xy 175.917055 116.782625) + (xy 175.908678 116.778719) (xy 175.763663 116.711097) (xy 175.763659 116.711096) (xy 175.763655 116.711094) @@ -32377,7 +32426,7 @@ (xy 178.58008 116.882561) (xy 178.477834 116.810967) (xy 178.47783 116.810965) - (xy 178.417055 116.782625) + (xy 178.408678 116.778719) (xy 178.263663 116.711097) (xy 178.263659 116.711096) (xy 178.263655 116.711094) @@ -32417,7 +32466,7 @@ (xy 194.58208 116.882561) (xy 194.479834 116.810967) (xy 194.47983 116.810965) - (xy 194.419055 116.782625) + (xy 194.410678 116.778719) (xy 194.265663 116.711097) (xy 194.265659 116.711096) (xy 194.265655 116.711094) @@ -34401,60 +34450,47 @@ (xy 141.742001 118.987799) (xy 141.797185 119.154331) (xy 141.797187 119.154336) - (xy 141.824771 119.199057) + (xy 141.803442 119.164477) (xy 141.889288 119.303656) (xy 142.013344 119.427712) (xy 142.162666 119.519814) (xy 142.329203 119.574999) (xy 142.431991 119.5855) - (xy 143.656902 119.585499) - (xy 143.723941 119.605184) - (xy 143.744583 119.621818) - (xy 144.912669 120.789904) - (xy 144.91802 120.796005) - (xy 144.939718 120.824282) - (xy 145.010624 120.87869) - (xy 145.047755 120.907182) - (xy 145.061109 120.917428) - (xy 145.065159 120.920536) - (xy 145.065161 120.920536) - (xy 145.065163 120.920538) - (xy 145.138198 120.95079) - (xy 145.211238 120.981044) - (xy 145.289619 120.991363) - (xy 145.367999 121.001682) - (xy 145.368 121.001682) - (xy 145.403329 120.99703) - (xy 145.411428 120.9965) - (xy 177.159472 120.9965) - (xy 177.16757 120.99703) - (xy 177.2029 121.001682) - (xy 177.202901 121.001682) - (xy 177.255154 120.994802) - (xy 177.359662 120.981044) - (xy 177.505741 120.920536) - (xy 177.515588 120.912979) - (xy 177.523145 120.907182) - (xy 177.586816 120.858324) - (xy 177.631182 120.824282) - (xy 177.652883 120.795999) - (xy 177.658219 120.789914) - (xy 179.213938 119.234196) - (xy 179.275261 119.200711) - (xy 179.344953 119.205695) - (xy 179.3893 119.234196) - (xy 179.428599 119.273495) - (xy 179.471675 119.303657) - (xy 179.622165 119.409032) - (xy 179.622167 119.409033) - (xy 179.62217 119.409035) - (xy 179.836337 119.508903) + (xy 142.681902 119.585499) + (xy 142.748941 119.605183) + (xy 142.769583 119.621818) + (xy 143.971669 120.823904) + (xy 143.97702 120.830005) + (xy 143.998718 120.858282) + (xy 144.107247 120.941559) + (xy 144.124159 120.954536) + (xy 144.270238 121.015044) + (xy 144.348619 121.025363) + (xy 144.426999 121.035682) + (xy 144.427 121.035682) + (xy 144.462329 121.03103) + (xy 144.470428 121.0305) + (xy 177.936572 121.0305) + (xy 177.94467 121.03103) + (xy 177.98 121.035682) + (xy 177.980001 121.035682) + (xy 178.032254 121.028802) + (xy 178.136762 121.015044) + (xy 178.282841 120.954536) + (xy 178.299753 120.941559) + (xy 178.408282 120.858282) + (xy 178.429984 120.829998) + (xy 178.43531 120.823923) + (xy 179.717885 119.541349) + (xy 179.779206 119.507866) + (xy 179.837657 119.509257) + (xy 179.89146 119.523673) (xy 180.064592 119.570063) (xy 180.241034 119.5855) (xy 180.299999 119.590659) (xy 180.3 119.590659) (xy 180.300001 119.590659) - (xy 180.358966 119.5855) + (xy 180.339234 119.587226) (xy 180.535408 119.570063) (xy 180.763663 119.508903) (xy 180.977829 119.409035) @@ -34469,9 +34505,9 @@ (xy 181.526879 119.084302) (xy 181.52971 119.087045) (xy 182.193569 119.750904) - (xy 182.198922 119.757007) - (xy 182.220618 119.785283) - (xy 182.268447 119.821982) + (xy 182.19892 119.757005) + (xy 182.220618 119.785282) + (xy 182.282089 119.83245) (xy 182.346059 119.881536) (xy 182.346062 119.881537) (xy 182.346063 119.881538) @@ -34489,7 +34525,7 @@ (xy 194.296154 119.955802) (xy 194.400662 119.942044) (xy 194.546741 119.881536) - (xy 194.624353 119.821982) + (xy 194.610711 119.83245) (xy 194.672182 119.785282) (xy 194.693883 119.756999) (xy 194.699219 119.750914) @@ -34498,7 +34534,7 @@ (xy 195.346953 119.205695) (xy 195.3913 119.234196) (xy 195.430599 119.273495) - (xy 195.473675 119.303657) + (xy 195.527384 119.341265) (xy 195.624165 119.409032) (xy 195.624167 119.409033) (xy 195.62417 119.409035) @@ -34508,7 +34544,7 @@ (xy 196.301999 119.590659) (xy 196.302 119.590659) (xy 196.302001 119.590659) - (xy 196.360966 119.5855) + (xy 196.341234 119.587226) (xy 196.537408 119.570063) (xy 196.765663 119.508903) (xy 196.979829 119.409035) @@ -34598,7 +34634,7 @@ (xy 229.391395 116.929501) (xy 229.197834 116.793967) (xy 229.19783 116.793965) - (xy 229.088188 116.742838) + (xy 229.129523 116.762113) (xy 228.983663 116.694097) (xy 228.983659 116.694096) (xy 228.983655 116.694094) @@ -34624,7 +34660,7 @@ (xy 226.891395 116.929501) (xy 226.697834 116.793967) (xy 226.69783 116.793965) - (xy 226.588188 116.742838) + (xy 226.629523 116.762113) (xy 226.483663 116.694097) (xy 226.483659 116.694096) (xy 226.483655 116.694094) @@ -34650,7 +34686,7 @@ (xy 224.391395 116.929501) (xy 224.197834 116.793967) (xy 224.19783 116.793965) - (xy 224.088188 116.742838) + (xy 224.129523 116.762113) (xy 223.983663 116.694097) (xy 223.983659 116.694096) (xy 223.983655 116.694094) @@ -34676,7 +34712,7 @@ (xy 221.891395 116.929501) (xy 221.697834 116.793967) (xy 221.69783 116.793965) - (xy 221.588188 116.742838) + (xy 221.629523 116.762113) (xy 221.483663 116.694097) (xy 221.483659 116.694096) (xy 221.483655 116.694094) @@ -34767,7 +34803,7 @@ (xy 208.818502 119.215245) (xy 208.86285 119.243746) (xy 208.892599 119.273495) - (xy 208.935675 119.303657) + (xy 208.989384 119.341265) (xy 209.086165 119.409032) (xy 209.086167 119.409033) (xy 209.08617 119.409035) @@ -34777,7 +34813,7 @@ (xy 209.763999 119.590659) (xy 209.764 119.590659) (xy 209.764001 119.590659) - (xy 209.822966 119.5855) + (xy 209.803234 119.587226) (xy 209.999408 119.570063) (xy 210.227663 119.508903) (xy 210.441829 119.409035) @@ -34788,11 +34824,11 @@ (xy 211.0365 118.898584) (xy 211.098855 118.930106) (xy 211.115571 118.949398) - (xy 211.186144 119.050187) + (xy 211.179056 119.040064) (xy 211.225506 119.106403) (xy 211.318161 119.199057) (xy 211.392599 119.273495) - (xy 211.435675 119.303657) + (xy 211.489384 119.341265) (xy 211.586165 119.409032) (xy 211.586167 119.409033) (xy 211.58617 119.409035) @@ -34802,7 +34838,7 @@ (xy 212.263999 119.590659) (xy 212.264 119.590659) (xy 212.264001 119.590659) - (xy 212.322966 119.5855) + (xy 212.303234 119.587226) (xy 212.499408 119.570063) (xy 212.727663 119.508903) (xy 212.941829 119.409035) @@ -34824,7 +34860,7 @@ (xy 213.04408 116.882561) (xy 212.941834 116.810967) (xy 212.94183 116.810965) - (xy 212.881055 116.782625) + (xy 212.872678 116.778719) (xy 212.727663 116.711097) (xy 212.727659 116.711096) (xy 212.727655 116.711094) @@ -34852,7 +34888,7 @@ (xy 210.54408 116.882561) (xy 210.441834 116.810967) (xy 210.44183 116.810965) - (xy 210.381055 116.782625) + (xy 210.372678 116.778719) (xy 210.227663 116.711097) (xy 210.227659 116.711096) (xy 210.227655 116.711094) @@ -34880,7 +34916,7 @@ (xy 208.04408 116.882561) (xy 207.941834 116.810967) (xy 207.94183 116.810965) - (xy 207.881055 116.782625) + (xy 207.872678 116.778719) (xy 207.727663 116.711097) (xy 207.727659 116.711096) (xy 207.727655 116.711094) @@ -34908,7 +34944,7 @@ (xy 205.54408 116.882561) (xy 205.441834 116.810967) (xy 205.44183 116.810965) - (xy 205.381055 116.782625) + (xy 205.372678 116.778719) (xy 205.227663 116.711097) (xy 205.227659 116.711096) (xy 205.227655 116.711094) diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_prl b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_prl similarity index 100% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_prl rename to Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_prl diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pro b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pro similarity index 100% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pro rename to Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_pro diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_sch b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_sch similarity index 91% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_sch rename to Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_sch index b91dba8..b17a006 100755 --- a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_sch +++ b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.kicad_sch @@ -24,7 +24,7 @@ (effects (font (size 1.27 1.27)) (justify left top)) ) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1" (page "5")) ) ) @@ -41,7 +41,7 @@ (effects (font (size 1.27 1.27)) (justify left top)) ) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1" (page "3")) ) ) @@ -58,7 +58,7 @@ (effects (font (size 1.27 1.27)) (justify left top)) ) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1" (page "2")) ) ) @@ -75,7 +75,7 @@ (effects (font (size 1.27 1.27)) (justify left top)) ) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1" (page "4")) ) ) diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.ods b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.ods similarity index 100% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.ods rename to Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.ods diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.ses b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.ses similarity index 100% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.ses rename to Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.ses diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.xml b/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.xml similarity index 100% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.xml rename to Kicad/Ax58100-stm32-ethercat/Ax58100-stm32-ethercat.xml diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/STM32F4.kicad_sch b/Kicad/Ax58100-stm32-ethercat/STM32F4.kicad_sch similarity index 95% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/STM32F4.kicad_sch rename to Kicad/Ax58100-stm32-ethercat/STM32F4.kicad_sch index dae4bf9..786f7f5 100755 --- a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/STM32F4.kicad_sch +++ b/Kicad/Ax58100-stm32-ethercat/STM32F4.kicad_sch @@ -2777,7 +2777,7 @@ ) (pin "1" (uuid 18967861-bdad-4cd8-ad6d-ddb6181d8744)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR0101") (unit 1) ) @@ -2802,7 +2802,7 @@ ) (pin "1" (uuid c07cd363-8ffd-49d5-80d0-c73c17556e49)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR0103") (unit 1) ) @@ -2813,7 +2813,7 @@ (symbol (lib_id "Connector:Conn_01x04_Pin") (at 245.11 83.82 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 0c654793-c9a7-40f5-ab50-4c0089a53edd) - (property "Reference" "J8" (at 237.49 82.55 0) + (property "Reference" "J11" (at 237.49 82.55 0) (effects (font (size 1.27 1.27)) (justify right)) ) (property "Value" "Stepper 2" (at 260.35 78.74 0) @@ -2830,9 +2830,9 @@ (pin "3" (uuid ae3b1d57-276b-4e73-ae37-580a06b765c5)) (pin "4" (uuid df8514ce-49f2-400d-a42c-6e10b817ad1f)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "J8") (unit 1) + (reference "J11") (unit 1) ) ) ) @@ -2856,7 +2856,7 @@ (pin "1" (uuid 80076109-e569-4f37-a30e-905d7c5b2556)) (pin "2" (uuid c45208e0-0d1c-438c-a175-9fe3abf375e6)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "C44") (unit 1) ) @@ -2881,7 +2881,7 @@ ) (pin "1" (uuid d35e7562-aaff-46c6-b547-873ebb825cac)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR088") (unit 1) ) @@ -2906,7 +2906,7 @@ ) (pin "1" (uuid 14acf04f-5537-4766-b0a6-a57896ae9382)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR0104") (unit 1) ) @@ -2917,7 +2917,7 @@ (symbol (lib_id "Device:R") (at 180.34 74.93 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 140a44d2-3fef-4643-9093-c9424b0884f8) - (property "Reference" "R49" (at 180.34 74.93 90) + (property "Reference" "R44" (at 180.34 74.93 90) (effects (font (size 1.27 1.27))) ) (property "Value" "22" (at 185.42 73.66 90) @@ -2932,9 +2932,9 @@ (pin "1" (uuid ee4ed84a-b4cf-4e1b-97aa-128bdce7f1a6)) (pin "2" (uuid e0259efc-e7d4-4e5b-aff0-f1b948d6892c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "R49") (unit 1) + (reference "R44") (unit 1) ) ) ) @@ -2943,7 +2943,7 @@ (symbol (lib_id "Connector:Conn_01x04_Pin") (at 243.84 67.31 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 16b03982-a480-44cc-904c-99af5abaac97) - (property "Reference" "J7" (at 236.22 66.04 0) + (property "Reference" "J13" (at 236.22 66.04 0) (effects (font (size 1.27 1.27)) (justify right)) ) (property "Value" "Stepper 1" (at 259.08 62.23 0) @@ -2960,9 +2960,9 @@ (pin "3" (uuid 7732623f-f2df-449f-a60b-8e0213a5da67)) (pin "4" (uuid 79458505-67b4-4bd7-b4eb-df3d7bf535e6)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "J7") (unit 1) + (reference "J13") (unit 1) ) ) ) @@ -3084,12 +3084,12 @@ (pin "98" (uuid 59853846-6d13-4da1-abca-86c625aa8cd4)) (pin "99" (uuid 2e4d33b2-8e3f-4c42-ad62-15b9ab2a6d4e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1" (reference "U?") (unit 1) ) (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "U5") (unit 1) + (reference "U4") (unit 1) ) ) ) @@ -3098,7 +3098,7 @@ (symbol (lib_id "Device:LED") (at 60.96 57.15 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 1add6186-dd41-47b4-83dc-904a6de84ca1) - (property "Reference" "D4" (at 58.42 55.88 0) + (property "Reference" "D5" (at 58.42 55.88 0) (effects (font (size 1.27 1.27))) ) (property "Value" "Blue led" (at 67.31 58.42 0) @@ -3113,9 +3113,9 @@ (pin "1" (uuid ec75ce01-c831-4ac2-b707-28dc4c9cfcdf)) (pin "2" (uuid 7d357428-e3c1-475c-96de-c1bca05c737e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "D4") (unit 1) + (reference "D5") (unit 1) ) ) ) @@ -3138,7 +3138,7 @@ ) (pin "1" (uuid f4fc3dc1-cf31-42db-b1fd-bf8ef7a10698)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR098") (unit 1) ) @@ -3149,7 +3149,7 @@ (symbol (lib_id "Device:C") (at 31.75 82.55 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 1d4d957f-3b42-4bf0-8be5-1c4b58af2943) - (property "Reference" "C34" (at 30.48 80.01 0) + (property "Reference" "C32" (at 30.48 80.01 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 31.75 85.09 0) @@ -3164,9 +3164,9 @@ (pin "1" (uuid 4ff6318c-0ca5-4f08-9cc6-f8fc75bd6ad6)) (pin "2" (uuid f2aa6637-3557-45e4-9d94-ba26765e85b3)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C34") (unit 1) + (reference "C32") (unit 1) ) ) ) @@ -3175,7 +3175,7 @@ (symbol (lib_id "Device:C") (at 57.15 82.55 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 20b5ce21-323d-43f6-ab22-3679f48b5966) - (property "Reference" "C39" (at 55.88 80.01 0) + (property "Reference" "C41" (at 55.88 80.01 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 57.15 85.09 0) @@ -3190,9 +3190,9 @@ (pin "1" (uuid 79c65b07-e788-49f3-9d2c-cc41586ee4b9)) (pin "2" (uuid dded325a-87f2-45cc-af05-4a6e42579015)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C39") (unit 1) + (reference "C41") (unit 1) ) ) ) @@ -3201,7 +3201,7 @@ (symbol (lib_id "Device:C") (at 44.45 82.55 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 2a5ab83f-3b84-47bb-a903-61f00416091f) - (property "Reference" "C37" (at 43.18 80.01 0) + (property "Reference" "C47" (at 43.18 80.01 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 44.45 85.09 0) @@ -3216,9 +3216,9 @@ (pin "1" (uuid ca86c1c7-2fe4-4e40-b67a-3374146850a6)) (pin "2" (uuid 034d3d29-9ea0-44cb-bb46-92910c903b39)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C37") (unit 1) + (reference "C47") (unit 1) ) ) ) @@ -3227,7 +3227,7 @@ (symbol (lib_id "Connector:Conn_01x06_Pin") (at 234.95 118.11 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid 2d821c83-edfe-4d38-b7b0-75d2eafb9539) - (property "Reference" "J3" (at 235.585 108.8095 0) + (property "Reference" "J1" (at 235.585 108.8095 0) (effects (font (size 1.27 1.27))) ) (property "Value" "Conn_01x06_Pin" (at 235.585 111.2337 0) @@ -3246,9 +3246,9 @@ (pin "2" (uuid ee7eba7a-00b8-43d9-a610-b40d81b904f0)) (pin "4" (uuid 130e85c5-4090-456a-b121-59a97b785b25)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "J3") (unit 1) + (reference "J1") (unit 1) ) ) ) @@ -3271,7 +3271,7 @@ ) (pin "1" (uuid 3e48c214-7a03-481c-b495-7ea4cfdadc4a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR085") (unit 1) ) @@ -3301,7 +3301,7 @@ (pin "2" (uuid a811087f-5e70-4478-b0b3-15832f216f37)) (pin "4" (uuid c278e06a-c6e6-4a80-9fe6-6e40bdd9eee5)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "J5") (unit 1) ) @@ -3326,7 +3326,7 @@ ) (pin "1" (uuid 1c295d68-86f0-4af6-a5ee-65ced16211df)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR079") (unit 1) ) @@ -3351,7 +3351,7 @@ ) (pin "1" (uuid 3a579e13-5aa6-447f-8558-f0621a446dc7)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR080") (unit 1) ) @@ -3376,7 +3376,7 @@ ) (pin "1" (uuid 87978959-07e9-48a8-81d0-e0b0d25405a7)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR090") (unit 1) ) @@ -3401,7 +3401,7 @@ ) (pin "1" (uuid ca3b03ba-1e94-47c3-af3d-6c12ac54d4f9)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR076") (unit 1) ) @@ -3412,7 +3412,7 @@ (symbol (lib_id "Device:LED") (at 60.96 62.23 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 45441953-91e1-4ac3-bada-71f63029cbea) - (property "Reference" "D5" (at 58.42 60.96 0) + (property "Reference" "D3" (at 58.42 60.96 0) (effects (font (size 1.27 1.27))) ) (property "Value" "Blue led" (at 67.31 63.5 0) @@ -3427,9 +3427,9 @@ (pin "1" (uuid c4625de9-23e7-4f81-89e9-10619e6de1f0)) (pin "2" (uuid b0938f4b-5680-4ec8-ad01-05b858e10876)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "D5") (unit 1) + (reference "D3") (unit 1) ) ) ) @@ -3438,7 +3438,7 @@ (symbol (lib_id "Device:C") (at 38.1 82.55 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 49216c29-c381-45ad-8d00-c393ed31d1e1) - (property "Reference" "C36" (at 36.83 80.01 0) + (property "Reference" "C34" (at 36.83 80.01 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 38.1 85.09 0) @@ -3453,9 +3453,9 @@ (pin "1" (uuid c4fa54f2-5c38-4226-b51e-d153edd4fc9f)) (pin "2" (uuid c6be95e6-e975-433b-9b06-76edaa2d1eb6)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C36") (unit 1) + (reference "C34") (unit 1) ) ) ) @@ -3464,7 +3464,7 @@ (symbol (lib_id "Device:C") (at 34.29 139.7 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 4e757cf6-4f9b-4f37-92a3-908f74f9fcf5) - (property "Reference" "C35" (at 33.02 137.16 0) + (property "Reference" "C48" (at 33.02 137.16 0) (effects (font (size 1.27 1.27))) ) (property "Value" "10uF" (at 34.29 142.24 0) @@ -3479,9 +3479,9 @@ (pin "1" (uuid 9bf99308-1bc0-411f-afba-e85196b8de4b)) (pin "2" (uuid 2e6bc35b-4fb2-4628-8fd4-a264ecf4cf46)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C35") (unit 1) + (reference "C48") (unit 1) ) ) ) @@ -3504,7 +3504,7 @@ ) (pin "1" (uuid 6ca77473-99b8-436a-b410-03d1c397afd7)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR091") (unit 1) ) @@ -3515,7 +3515,7 @@ (symbol (lib_id "Device:C") (at 69.85 82.55 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 592645f8-e23e-4baa-8af8-0a9b7d8e806a) - (property "Reference" "C43" (at 67.31 80.01 0) + (property "Reference" "C38" (at 67.31 80.01 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 69.85 85.09 0) @@ -3530,9 +3530,9 @@ (pin "1" (uuid a264f262-ac74-4680-a642-0accce9b3547)) (pin "2" (uuid 4a692e72-909e-43ec-b9ce-af4fd6528efd)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C43") (unit 1) + (reference "C38") (unit 1) ) ) ) @@ -3555,7 +3555,7 @@ ) (pin "1" (uuid 65bcd21e-1e8f-49b5-9348-9118453ef2f4)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR086") (unit 1) ) @@ -3566,7 +3566,7 @@ (symbol (lib_id "Device:C") (at 25.4 139.7 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 68b822d9-2e16-4f7a-acbc-af94678e419e) - (property "Reference" "C33" (at 24.13 137.16 0) + (property "Reference" "C43" (at 24.13 137.16 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 25.4 142.24 0) @@ -3581,9 +3581,9 @@ (pin "1" (uuid 195dde42-64ae-4cc0-adf9-56974c3d9153)) (pin "2" (uuid 80bec40e-708c-4f1a-a853-99c2d5495d02)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C33") (unit 1) + (reference "C43") (unit 1) ) ) ) @@ -3606,7 +3606,7 @@ ) (pin "1" (uuid cced0f03-550c-46fb-878f-d06e935071b2)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR089") (unit 1) ) @@ -3631,7 +3631,7 @@ ) (pin "1" (uuid 320fbc2f-0a90-499e-9cdd-c5d06f287009)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR077") (unit 1) ) @@ -3656,7 +3656,7 @@ ) (pin "1" (uuid 99280e89-22aa-4241-b9b6-94306136988e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR0105") (unit 1) ) @@ -3681,7 +3681,7 @@ ) (pin "1" (uuid b424538d-3b2f-4a61-8ac1-ab0cd64b267f)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR099") (unit 1) ) @@ -3707,7 +3707,7 @@ (pin "1" (uuid ade49b78-0d10-4683-9d80-0aba350d0108)) (pin "2" (uuid 0bd1d172-b369-41eb-9942-d263815c70de)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "Y2") (unit 1) ) @@ -3732,7 +3732,7 @@ ) (pin "1" (uuid 1a110acc-a818-4e98-9b79-b70f3bf81800)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR092") (unit 1) ) @@ -3757,7 +3757,7 @@ ) (pin "1" (uuid 8b5bb0db-e198-4401-b8b7-a4e17d28f61a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR087") (unit 1) ) @@ -3768,7 +3768,7 @@ (symbol (lib_id "Device:C") (at 50.8 82.55 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 89e3f962-234c-49f3-a3a2-0f5f5324d1a1) - (property "Reference" "C38" (at 49.53 80.01 0) + (property "Reference" "C45" (at 49.53 80.01 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 50.8 85.09 0) @@ -3783,9 +3783,9 @@ (pin "1" (uuid 6445979d-d5af-4010-b265-008f6afe33d5)) (pin "2" (uuid 2ba5ebfa-9133-4344-b2a5-ec104876869d)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C38") (unit 1) + (reference "C45") (unit 1) ) ) ) @@ -3794,7 +3794,7 @@ (symbol (lib_id "Connector:Conn_01x02_Pin") (at 113.03 182.88 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid 8c256f13-694b-429b-9500-e0788025192a) - (property "Reference" "J1" (at 113.665 178.6595 0) + (property "Reference" "J10" (at 113.665 178.6595 0) (effects (font (size 1.27 1.27))) ) (property "Value" "Conn_01x02_Pin" (at 113.665 181.0837 0) @@ -3809,9 +3809,9 @@ (pin "1" (uuid 7eca68e0-6801-452b-9854-37a1196ef8c8)) (pin "2" (uuid cd7e403a-8ce5-4355-80b7-f0b6e3595d78)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "J1") (unit 1) + (reference "J10") (unit 1) ) ) ) @@ -3834,7 +3834,7 @@ ) (pin "1" (uuid 821fe78d-55f1-4260-9afe-d1a285777a99)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR097") (unit 1) ) @@ -3845,7 +3845,7 @@ (symbol (lib_id "Device:C") (at 82.55 82.55 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 97e5be48-f3b6-410a-b8d3-042a3216795f) - (property "Reference" "C46" (at 80.01 80.01 0) + (property "Reference" "C42" (at 80.01 80.01 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 82.55 85.09 0) @@ -3860,9 +3860,9 @@ (pin "1" (uuid 6c5cde07-b64a-404c-85f5-07176d55ffaf)) (pin "2" (uuid 6f9ad07f-a002-4733-8498-7122049e9872)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C46") (unit 1) + (reference "C42") (unit 1) ) ) ) @@ -3885,7 +3885,7 @@ ) (pin "1" (uuid 1a7a6d4a-f303-4c3b-af8c-e95feab12507)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR075") (unit 1) ) @@ -3896,7 +3896,7 @@ (symbol (lib_id "Connector:Conn_01x04_Pin") (at 242.57 54.61 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid a58acd1a-d730-4859-b943-3976f3f73e63) - (property "Reference" "J6" (at 234.95 53.34 0) + (property "Reference" "J12" (at 234.95 53.34 0) (effects (font (size 1.27 1.27)) (justify right)) ) (property "Value" "Serial usart1" (at 255.27 52.07 0) @@ -3913,9 +3913,9 @@ (pin "3" (uuid 685288a4-bf05-4428-88ab-3d5efe3aa3f3)) (pin "4" (uuid 44789300-dd1c-459e-a0b8-02dad7694f0a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "J6") (unit 1) + (reference "J12") (unit 1) ) ) ) @@ -3938,7 +3938,7 @@ ) (pin "1" (uuid 28f83500-fd2a-4085-bb33-ef70a296634c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR0106") (unit 1) ) @@ -3963,7 +3963,7 @@ ) (pin "1" (uuid 8e94446b-886f-4a90-8399-756e1415fd3b)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR0100") (unit 1) ) @@ -3988,7 +3988,7 @@ ) (pin "1" (uuid 2b3b4cb3-1c9f-455c-8a55-f65fc110675a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR073") (unit 1) ) @@ -3999,7 +3999,7 @@ (symbol (lib_id "Device:C") (at 104.14 39.37 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid bb276b0b-50da-456f-91b2-d5b2aee3075b) - (property "Reference" "C51" (at 101.6 38.1 90) + (property "Reference" "C37" (at 101.6 38.1 90) (effects (font (size 1.27 1.27))) ) (property "Value" "22pF" (at 107.95 38.1 90) @@ -4014,9 +4014,9 @@ (pin "1" (uuid a2426e75-4780-46c3-b49d-03a341b88579)) (pin "2" (uuid 40b3b79e-a804-4e2f-bb1c-64be598a6b8e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C51") (unit 1) + (reference "C37") (unit 1) ) ) ) @@ -4025,7 +4025,7 @@ (symbol (lib_id "Device:C") (at 97.79 143.51 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid bb5e4b34-d8d0-490a-81c3-049e209827d6) - (property "Reference" "C49" (at 91.44 143.51 90) + (property "Reference" "C46" (at 91.44 143.51 90) (effects (font (size 1.27 1.27))) ) (property "Value" "2.2uF" (at 93.98 143.51 90) @@ -4040,9 +4040,9 @@ (pin "1" (uuid 465f7ebd-1eea-4c04-b563-356390e7a1f6)) (pin "2" (uuid 715954af-78d5-4c4c-97ea-f0f946082356)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C49") (unit 1) + (reference "C46") (unit 1) ) ) ) @@ -4065,7 +4065,7 @@ ) (pin "1" (uuid 828283c5-9ac7-4785-84f0-94eccc761f7a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR078") (unit 1) ) @@ -4076,7 +4076,7 @@ (symbol (lib_id "Device:C") (at 63.5 139.7 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid bbe83ce3-aae4-47aa-b2f9-a26ae91145ea) - (property "Reference" "C41" (at 62.23 137.16 0) + (property "Reference" "C49" (at 62.23 137.16 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 63.5 142.24 0) @@ -4091,9 +4091,9 @@ (pin "1" (uuid b04bf846-6b31-4434-8c2b-a18fa9d5fc94)) (pin "2" (uuid d2d9eda1-dd6b-4f80-9ea6-ddcd8c7bb232)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C41") (unit 1) + (reference "C49") (unit 1) ) ) ) @@ -4117,7 +4117,7 @@ (pin "1" (uuid b286f20f-8318-4afb-9b84-c5c197d9d116)) (pin "2" (uuid bfdda1ce-94bc-44c7-89d6-800a9ae5e9ae)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "C40") (unit 1) ) @@ -4142,7 +4142,7 @@ ) (pin "1" (uuid 6abf42e2-9a94-499f-be2f-0858debdd672)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR083") (unit 1) ) @@ -4153,7 +4153,7 @@ (symbol (lib_id "Connector:Conn_01x06_Pin") (at 234.95 135.89 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid c0a97825-2c68-46df-a1bb-d944a95dbe32) - (property "Reference" "J4" (at 235.585 126.5895 0) + (property "Reference" "J3" (at 235.585 126.5895 0) (effects (font (size 1.27 1.27))) ) (property "Value" "Conn_01x06_Pin" (at 235.585 129.0137 0) @@ -4172,9 +4172,9 @@ (pin "2" (uuid 9a211906-fdc3-4068-acef-937da9480e58)) (pin "4" (uuid cb233792-5f39-47ec-98c0-fd8e5d1c8d4d)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "J4") (unit 1) + (reference "J3") (unit 1) ) ) ) @@ -4197,7 +4197,7 @@ ) (pin "1" (uuid fb971ffb-ab99-4fb7-9aa2-20264fa6a7a7)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR084") (unit 1) ) @@ -4222,7 +4222,7 @@ ) (pin "1" (uuid 35f825b0-8e8c-4326-bec4-6239efb0faec)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR082") (unit 1) ) @@ -4233,7 +4233,7 @@ (symbol (lib_id "Device:R") (at 49.53 57.15 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid cd4fc8ea-460c-4b7b-8197-8a4f867172ef) - (property "Reference" "R45" (at 49.53 57.15 90) + (property "Reference" "R46" (at 49.53 57.15 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 49.53 54.61 90) @@ -4248,9 +4248,9 @@ (pin "1" (uuid 84383a52-bc33-4f32-b42f-9a176c5c401a)) (pin "2" (uuid 0e1eab0c-ebe5-4e1f-9f9e-e0c7bff9bf1e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "R45") (unit 1) + (reference "R46") (unit 1) ) ) ) @@ -4259,7 +4259,7 @@ (symbol (lib_id "Device:C") (at 104.14 46.99 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid cebf0351-8b49-463e-9ced-837ba891babc) - (property "Reference" "C52" (at 101.6 48.26 90) + (property "Reference" "C39" (at 101.6 48.26 90) (effects (font (size 1.27 1.27))) ) (property "Value" "22pF" (at 107.95 48.26 90) @@ -4274,9 +4274,9 @@ (pin "1" (uuid 8efa2dd0-b247-41b9-aa28-f3e4ccd6313a)) (pin "2" (uuid 36174c41-9828-46e1-86ef-4992928c6ce6)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C52") (unit 1) + (reference "C39") (unit 1) ) ) ) @@ -4299,7 +4299,7 @@ ) (pin "1" (uuid 93c00817-0dca-4314-8bf2-4db3a7554454)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR095") (unit 1) ) @@ -4310,7 +4310,7 @@ (symbol (lib_id "Connector:Conn_01x04_Pin") (at 241.3 40.64 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid d129ec5d-1890-4701-8161-4f33129e3de3) - (property "Reference" "J2" (at 232.41 39.37 0) + (property "Reference" "J9" (at 232.41 39.37 0) (effects (font (size 1.27 1.27)) (justify right)) ) (property "Value" "STLINK" (at 257.81 38.1 0) @@ -4327,9 +4327,9 @@ (pin "3" (uuid f7db2037-bcd5-4bae-aede-37160713d468)) (pin "4" (uuid d4ecb52a-13f9-4288-910e-1d82b5b1d98e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "J2") (unit 1) + (reference "J9") (unit 1) ) ) ) @@ -4352,7 +4352,7 @@ ) (pin "1" (uuid 05f0caff-8432-4fae-b76b-d0f7fdbe24be)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR074") (unit 1) ) @@ -4363,7 +4363,7 @@ (symbol (lib_id "Device:C") (at 76.2 82.55 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid d529cc5f-92f2-4fcd-ab9c-f3bdcd825cbb) - (property "Reference" "C45" (at 73.66 80.01 0) + (property "Reference" "C36" (at 73.66 80.01 0) (effects (font (size 1.27 1.27))) ) (property "Value" "0.1uF" (at 76.2 85.09 0) @@ -4378,9 +4378,9 @@ (pin "1" (uuid da941a5a-1bae-487e-a4d8-44657ea58875)) (pin "2" (uuid 93dc2c7c-e647-46c9-b0a6-58a96d8aed17)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C45") (unit 1) + (reference "C36") (unit 1) ) ) ) @@ -4403,7 +4403,7 @@ ) (pin "1" (uuid 9d1bceed-f899-430f-8729-08d05a9f5916)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR0102") (unit 1) ) @@ -4414,7 +4414,7 @@ (symbol (lib_id "Device:R") (at 49.53 62.23 270) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid d9c0791d-391e-46e5-a594-faed6b01b24c) - (property "Reference" "R46" (at 49.53 62.23 90) + (property "Reference" "R42" (at 49.53 62.23 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 49.53 59.69 90) @@ -4429,9 +4429,9 @@ (pin "1" (uuid 0ca9d2bf-6f07-4fc7-9628-6f46e2f5ae21)) (pin "2" (uuid dda6e859-c4e3-433a-aa30-6447f980a4ae)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "R46") (unit 1) + (reference "R42") (unit 1) ) ) ) @@ -4440,7 +4440,7 @@ (symbol (lib_id "Regulator_Linear:AMS1117-3.3") (at 48.26 133.35 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid e7ad8deb-d267-447a-ac55-a91cde53ea00) - (property "Reference" "U4" (at 48.26 127.3007 0) + (property "Reference" "U5" (at 48.26 127.3007 0) (effects (font (size 1.27 1.27))) ) (property "Value" "AMS1117-3.3" (at 48.26 129.7249 0) @@ -4456,9 +4456,9 @@ (pin "2" (uuid 4b7cb9d5-b997-4ec9-a5dc-7710e8729858)) (pin "3" (uuid 2c2dde74-7946-470d-9907-5e8ea622bf9e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "U4") (unit 1) + (reference "U5") (unit 1) ) ) ) @@ -4481,7 +4481,7 @@ ) (pin "1" (uuid 47173a8b-7990-461a-a7ed-f007a7249530)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR096") (unit 1) ) @@ -4492,7 +4492,7 @@ (symbol (lib_id "Device:R") (at 113.03 31.75 90) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid f663b0be-0d19-45c1-b3de-31c4d1dfc2f4) - (property "Reference" "R48" (at 113.03 31.75 90) + (property "Reference" "R45" (at 113.03 31.75 90) (effects (font (size 1.27 1.27))) ) (property "Value" "22" (at 116.84 30.48 90) @@ -4507,9 +4507,9 @@ (pin "1" (uuid d918afb0-3096-4811-ab8b-9558fb814397)) (pin "2" (uuid 47a23f70-43c6-47fa-adbe-f729207a4f1e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "R48") (unit 1) + (reference "R45") (unit 1) ) ) ) @@ -4518,7 +4518,7 @@ (symbol (lib_id "Device:C") (at 107.95 143.51 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid fba0373f-ffda-4e13-b810-cf3ea7f2656c) - (property "Reference" "C53" (at 114.3 143.51 90) + (property "Reference" "C35" (at 114.3 143.51 90) (effects (font (size 1.27 1.27))) ) (property "Value" "2.2uF" (at 111.76 143.51 90) @@ -4533,9 +4533,9 @@ (pin "1" (uuid fe922747-8360-40d6-9a25-dca2bfb7f04b)) (pin "2" (uuid c8e747dc-97f9-4818-94f9-fdeb5bdecf83)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" - (reference "C53") (unit 1) + (reference "C35") (unit 1) ) ) ) diff --git a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/peripherals.kicad_sch b/Kicad/Ax58100-stm32-ethercat/peripherals.kicad_sch similarity index 92% rename from Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/peripherals.kicad_sch rename to Kicad/Ax58100-stm32-ethercat/peripherals.kicad_sch index 1a9f529..be7c0cf 100755 --- a/Pcb-2-Ax58100/Kicad/Ax58100-stm32-ethercat/peripherals.kicad_sch +++ b/Kicad/Ax58100-stm32-ethercat/peripherals.kicad_sch @@ -940,7 +940,7 @@ ) (pin "1" (uuid 23f3c69e-afb4-43bf-9acc-6d55efc294d7)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -968,7 +968,7 @@ ) (pin "1" (uuid f8855c24-f07a-4a5c-aa93-111c38c54998)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -996,7 +996,7 @@ ) (pin "1" (uuid 12cbe4d8-e548-42e4-8ed0-1663c1c72f12)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1010,7 +1010,7 @@ (symbol (lib_id "Device:R") (at 71.12 92.71 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 10d87c4c-c4d6-4df7-b739-131249afa699) - (property "Reference" "R60" (at 71.12 92.71 90) + (property "Reference" "R41" (at 71.12 92.71 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 72.39 88.9 0) @@ -1025,9 +1025,9 @@ (pin "1" (uuid 47639c9d-1d96-4116-8203-161985cc905d)) (pin "2" (uuid a52f2ffa-2584-41b0-832b-a1b5cdb8c45a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R60") (unit 1) + (reference "R41") (unit 1) ) ) ) @@ -1036,7 +1036,7 @@ (symbol (lib_id "Device:R") (at 63.5 68.58 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 13a82430-c8ee-4250-a3cb-e52cb6a30faa) - (property "Reference" "R51" (at 63.5 68.58 90) + (property "Reference" "R8" (at 63.5 68.58 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 64.77 64.77 0) @@ -1051,9 +1051,9 @@ (pin "1" (uuid 5832c5ba-1250-4b60-950a-508431c4307c)) (pin "2" (uuid 54632a52-1c29-46a3-8873-d89cd21ad170)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R51") (unit 1) + (reference "R8") (unit 1) ) ) ) @@ -1062,7 +1062,7 @@ (symbol (lib_id "Connector:Conn_01x05_Pin") (at 81.28 101.6 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid 1c84a65c-5122-4a9d-93c5-c95fdce8d967) - (property "Reference" "J13" (at 81.9912 100.3879 0) + (property "Reference" "J8" (at 81.9912 100.3879 0) (effects (font (size 1.27 1.27)) (justify right)) ) (property "Value" "Encoder 3" (at 81.9912 102.8121 0) @@ -1080,9 +1080,9 @@ (pin "4" (uuid 5389b8f8-f6f1-4a81-86fc-36b270e9e779)) (pin "5" (uuid 0d505531-e434-4969-b3d5-470caf1c249d)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "J13") (unit 1) + (reference "J8") (unit 1) ) ) ) @@ -1091,7 +1091,7 @@ (symbol (lib_id "Device:R") (at 67.31 44.45 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 1f6cd783-9186-4110-918c-22956cf2a8ab) - (property "Reference" "R54" (at 67.31 44.45 90) + (property "Reference" "R2" (at 67.31 44.45 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 68.58 40.64 0) @@ -1106,9 +1106,9 @@ (pin "1" (uuid 12c26344-7596-4c8f-af8f-9e9efe4b161a)) (pin "2" (uuid 844a6691-8752-45a1-8292-2f0d78e136be)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R54") (unit 1) + (reference "R2") (unit 1) ) ) ) @@ -1131,7 +1131,7 @@ ) (pin "1" (uuid 75177a4e-e439-4047-942d-4a88b4b2dd4e)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1145,7 +1145,7 @@ (symbol (lib_id "Device:R") (at 64.77 116.84 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 392ac5db-26e1-4917-a929-e966ccef6bd2) - (property "Reference" "R53" (at 64.77 116.84 90) + (property "Reference" "R22" (at 64.77 116.84 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 66.04 113.03 0) @@ -1160,9 +1160,9 @@ (pin "1" (uuid 71deb045-33bc-45f2-bdde-da80f96b573a)) (pin "2" (uuid c64dd24f-7c01-4159-909b-3504dfef6bf0)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R53") (unit 1) + (reference "R22") (unit 1) ) ) ) @@ -1185,7 +1185,7 @@ ) (pin "1" (uuid 4a20576e-c962-40f8-909a-4a006b523bc7)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1213,7 +1213,7 @@ ) (pin "1" (uuid b5a796f8-f145-4f9c-a19d-5ec662ca48fc)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1227,7 +1227,7 @@ (symbol (lib_id "Device:R") (at 67.31 92.71 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 4fb33cd9-ab35-41e8-9f9e-8140f99baa4f) - (property "Reference" "R56" (at 67.31 92.71 90) + (property "Reference" "R36" (at 67.31 92.71 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 68.58 88.9 0) @@ -1242,9 +1242,9 @@ (pin "1" (uuid 80c2d502-1889-473e-ae1e-fe3e4abd8815)) (pin "2" (uuid f539fb75-f3a5-48aa-aaa8-9947fdfc44d7)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R56") (unit 1) + (reference "R36") (unit 1) ) ) ) @@ -1253,7 +1253,7 @@ (symbol (lib_id "Connector:Conn_01x03_Pin") (at 76.2 146.05 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 5333effc-7687-4ee9-907a-50564ca8d5a9) - (property "Reference" "J10" (at 73.66 146.05 0) + (property "Reference" "J7" (at 73.66 146.05 0) (effects (font (size 1.27 1.27))) ) (property "Value" "DAC1" (at 91.44 146.05 0) @@ -1269,9 +1269,9 @@ (pin "3" (uuid c1a91b41-d4bb-457e-b0d5-5e5a8a7c21e3)) (pin "2" (uuid 5bf3ceb0-d975-4ee0-960b-e957ee85ddcf)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "J10") (unit 1) + (reference "J7") (unit 1) ) ) ) @@ -1294,7 +1294,7 @@ ) (pin "1" (uuid 33623f8b-7963-47a3-81d9-bf347e264dbf)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1308,7 +1308,7 @@ (symbol (lib_id "Device:R") (at 71.12 44.45 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 60d91c1b-c1ae-4fea-a103-74cf4adc6ef3) - (property "Reference" "R58" (at 71.12 44.45 90) + (property "Reference" "R3" (at 71.12 44.45 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 72.39 40.64 0) @@ -1323,9 +1323,9 @@ (pin "1" (uuid df8f8ed2-da37-464e-b904-951ca39108a8)) (pin "2" (uuid 7cab4630-1636-418a-b118-bd4231413c30)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R58") (unit 1) + (reference "R3") (unit 1) ) ) ) @@ -1334,7 +1334,7 @@ (symbol (lib_id "Device:R") (at 63.5 44.45 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 6205b81a-3f1e-4c02-9f7e-21413744183e) - (property "Reference" "R50" (at 63.5 44.45 90) + (property "Reference" "R1" (at 63.5 44.45 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 64.77 40.64 0) @@ -1349,9 +1349,9 @@ (pin "1" (uuid b90e7914-bbae-4881-9977-6a7a2dcc9fda)) (pin "2" (uuid 11ad5fde-617c-4dac-951b-6b24e7292439)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R50") (unit 1) + (reference "R1") (unit 1) ) ) ) @@ -1374,7 +1374,7 @@ ) (pin "1" (uuid f8356eea-1205-4923-ae4e-9fa2aa74ecfb)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1402,7 +1402,7 @@ ) (pin "1" (uuid 9439d226-2512-4eb7-a25d-a7fbf282d78c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1430,7 +1430,7 @@ ) (pin "1" (uuid a2f3e71f-2960-4e03-bb95-5a5c7eef6aca)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1458,7 +1458,7 @@ ) (pin "1" (uuid 7ffd3275-c83d-46f7-8c90-d99e31fbdfb2)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1472,7 +1472,7 @@ (symbol (lib_id "Device:R") (at 67.31 68.58 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid 8c98ccb6-e2c4-48b8-9f34-f2506c1d2e3e) - (property "Reference" "R55" (at 67.31 68.58 90) + (property "Reference" "R9" (at 67.31 68.58 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 68.58 64.77 0) @@ -1487,9 +1487,9 @@ (pin "1" (uuid ba3d8ee6-96d3-4e2a-8f11-c483343817ea)) (pin "2" (uuid 7b04a0ba-1011-4916-a94e-3addca4bb7d4)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R55") (unit 1) + (reference "R9") (unit 1) ) ) ) @@ -1498,7 +1498,7 @@ (symbol (lib_id "Connector:Conn_01x05_Pin") (at 81.28 77.47 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid 961574f6-6377-4800-9f44-d18aac623304) - (property "Reference" "J12" (at 81.9912 76.2579 0) + (property "Reference" "J4" (at 81.9912 76.2579 0) (effects (font (size 1.27 1.27)) (justify right)) ) (property "Value" "Encoder 2" (at 81.9912 78.6821 0) @@ -1516,9 +1516,9 @@ (pin "4" (uuid 990a65af-297a-4f87-8998-6aa41d3cb8d3)) (pin "5" (uuid 69c0e3e8-a858-4e02-a0c8-1fa828dc8c37)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "J12") (unit 1) + (reference "J4") (unit 1) ) ) ) @@ -1541,7 +1541,7 @@ ) (pin "1" (uuid 3c923bac-8405-45c7-a74c-6a363eec7d84)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1555,7 +1555,7 @@ (symbol (lib_id "Connector:Conn_01x05_Pin") (at 82.55 125.73 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid bf40be7c-de17-409c-b5ef-5b18f35948f9) - (property "Reference" "J14" (at 83.2612 124.5179 0) + (property "Reference" "J6" (at 83.2612 124.5179 0) (effects (font (size 1.27 1.27)) (justify right)) ) (property "Value" "Encoder 4" (at 83.2612 126.9421 0) @@ -1573,9 +1573,9 @@ (pin "4" (uuid 7ae77234-5780-4b3b-a75b-3216e6e9a83f)) (pin "5" (uuid d812103e-792d-4cb0-8951-2bac9a9c9503)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "J14") (unit 1) + (reference "J6") (unit 1) ) ) ) @@ -1598,7 +1598,7 @@ ) (pin "1" (uuid 6d821f3a-d89c-4799-90f3-9cd615c5d3ee)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1612,7 +1612,7 @@ (symbol (lib_id "Device:R") (at 72.39 116.84 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid cce125df-b506-49fe-a527-fbc672f08648) - (property "Reference" "R61" (at 72.39 116.84 90) + (property "Reference" "R29" (at 72.39 116.84 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 73.66 113.03 0) @@ -1627,9 +1627,9 @@ (pin "1" (uuid 9db9c4ba-ea66-4649-aa53-c88638ba6331)) (pin "2" (uuid 540e8541-5769-42ce-b0f6-1cc85f0fe147)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R61") (unit 1) + (reference "R29") (unit 1) ) ) ) @@ -1638,7 +1638,7 @@ (symbol (lib_id "Connector:Conn_01x05_Pin") (at 81.28 53.34 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (fields_autoplaced) (uuid d5941a4c-e7e4-411a-a70c-a9b8e3c1bfce) - (property "Reference" "J11" (at 81.9912 52.1279 0) + (property "Reference" "J2" (at 81.9912 52.1279 0) (effects (font (size 1.27 1.27)) (justify right)) ) (property "Value" "Encoder 1" (at 81.9912 54.5521 0) @@ -1656,9 +1656,9 @@ (pin "4" (uuid 10f66ad1-8425-4d47-9a21-2dabc23be413)) (pin "5" (uuid 33f07966-a0a1-4252-a420-396366f07c38)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "J11") (unit 1) + (reference "J2") (unit 1) ) ) ) @@ -1681,7 +1681,7 @@ ) (pin "1" (uuid 39b1a121-7ad5-4a0f-a1f5-c192907c022b)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1695,7 +1695,7 @@ (symbol (lib_id "Device:R") (at 63.5 92.71 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid ed1edc57-26e1-4234-abcd-a22b87379f7e) - (property "Reference" "R52" (at 63.5 92.71 90) + (property "Reference" "R32" (at 63.5 92.71 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 64.77 88.9 0) @@ -1710,9 +1710,9 @@ (pin "1" (uuid 3c8cc804-7e28-4c29-979f-5435fa740934)) (pin "2" (uuid b8a330b7-96fe-42d1-aa02-687e85f7ab2a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R52") (unit 1) + (reference "R32") (unit 1) ) ) ) @@ -1721,7 +1721,7 @@ (symbol (lib_id "Device:R") (at 68.58 116.84 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid f6afafec-23d4-4288-b115-63bb96d688f9) - (property "Reference" "R57" (at 68.58 116.84 90) + (property "Reference" "R27" (at 68.58 116.84 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 69.85 113.03 0) @@ -1736,9 +1736,9 @@ (pin "1" (uuid 9e635052-58c2-4b83-8155-27fd32de84a7)) (pin "2" (uuid 273a33f7-be7b-46dc-814e-cf5a4ed8483a)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R57") (unit 1) + (reference "R27") (unit 1) ) ) ) @@ -1761,7 +1761,7 @@ ) (pin "1" (uuid bd4f3ca7-a32d-43b0-97b0-68b5ca21e4a3)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) @@ -1775,7 +1775,7 @@ (symbol (lib_id "Connector:Conn_01x04_Pin") (at 71.12 156.21 0) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid f6e9f205-080b-446b-8e6e-d2d2eaa67fb7) - (property "Reference" "J9" (at 69.85 156.21 0) + (property "Reference" "J14" (at 69.85 156.21 0) (effects (font (size 1.27 1.27))) ) (property "Value" "I2C bus2" (at 93.98 157.48 0) @@ -1792,9 +1792,9 @@ (pin "2" (uuid 96e6cf4c-75b4-47ff-bf47-f499c6b08032)) (pin "4" (uuid 08ac2130-4308-4802-b146-2e4e12e8ea4f)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "J9") (unit 1) + (reference "J14") (unit 1) ) ) ) @@ -1803,7 +1803,7 @@ (symbol (lib_id "Device:R") (at 71.12 68.58 180) (unit 1) (in_bom yes) (on_board yes) (dnp no) (uuid fba92b1b-a107-4bbf-b17c-e1290d74ed15) - (property "Reference" "R59" (at 71.12 68.58 90) + (property "Reference" "R18" (at 71.12 68.58 90) (effects (font (size 1.27 1.27))) ) (property "Value" "1k" (at 72.39 64.77 0) @@ -1818,9 +1818,9 @@ (pin "1" (uuid 545716f0-994b-46c9-a559-20747da6ba8b)) (pin "2" (uuid 112446a2-014e-4ec2-bde4-34650f443b1c)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/0a376a6c-0f15-42f8-81f6-3a55619be267" - (reference "R59") (unit 1) + (reference "R18") (unit 1) ) ) ) @@ -1843,7 +1843,7 @@ ) (pin "1" (uuid f560dfa3-2e0f-409f-a64e-b0c197c17347)) (instances - (project "AX58100-stm32-ethercat" + (project "Ax58100-stm32-ethercat" (path "/5597aedc-b607-407f-bbfd-31b3b298ecb1/d564400f-40ba-4aca-9c2a-14ec52a8353b" (reference "#PWR?") (unit 1) ) diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/.gitignore b/Kicad/Ethercat-stm32/.gitignore similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/.gitignore rename to Kicad/Ethercat-stm32/.gitignore diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_pcb b/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_pcb similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_pcb rename to Kicad/Ethercat-stm32/Ethercat-stm32.kicad_pcb diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_prl b/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_prl similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_prl rename to Kicad/Ethercat-stm32/Ethercat-stm32.kicad_prl diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_pro b/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_pro similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_pro rename to Kicad/Ethercat-stm32/Ethercat-stm32.kicad_pro diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_sch b/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_sch similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.kicad_sch rename to Kicad/Ethercat-stm32/Ethercat-stm32.kicad_sch diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.xml b/Kicad/Ethercat-stm32/Ethercat-stm32.xml similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/Ethercat-stm32.xml rename to Kicad/Ethercat-stm32/Ethercat-stm32.xml diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/2.8 TFT 320x240 led with sd and touch.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/2.8 TFT 320x240 led with sd and touch.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/2.8 TFT 320x240 led with sd and touch.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/2.8 TFT 320x240 led with sd and touch.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/4.0 TFT 480x320 led with sd and touch.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/4.0 TFT 480x320 led with sd and touch.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/4.0 TFT 480x320 led with sd and touch.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/4.0 TFT 480x320 led with sd and touch.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/IC_DRV8825_STEPPER_MOTOR_DRIVER_CARRIER.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/IC_DRV8825_STEPPER_MOTOR_DRIVER_CARRIER.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/IC_DRV8825_STEPPER_MOTOR_DRIVER_CARRIER.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/IC_DRV8825_STEPPER_MOTOR_DRIVER_CARRIER.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/L298N Motor driver module-utan motorpads.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/L298N Motor driver module-utan motorpads.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/L298N Motor driver module-utan motorpads.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/L298N Motor driver module-utan motorpads.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/L298N Motor driver module.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/L298N Motor driver module.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/L298N Motor driver module.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/L298N Motor driver module.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/LQFP-80-1EP_10x10mm_P0.4mm_EP5.3x4.5mm_ThermalVias.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/LQFP-80-1EP_10x10mm_P0.4mm_EP5.3x4.5mm_ThermalVias.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/LQFP-80-1EP_10x10mm_P0.4mm_EP5.3x4.5mm_ThermalVias.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/LQFP-80-1EP_10x10mm_P0.4mm_EP5.3x4.5mm_ThermalVias.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/MODULE_ESP32_DEVKIT_V1.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/MODULE_ESP32_DEVKIT_V1.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/MODULE_ESP32_DEVKIT_V1.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/MODULE_ESP32_DEVKIT_V1.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/MODULE_ESP32_NODEMCU.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/MODULE_ESP32_NODEMCU.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/MODULE_ESP32_NODEMCU.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/MODULE_ESP32_NODEMCU.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/PWM_module_ebay.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/PWM_module_ebay.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/PWM_module_ebay.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/PWM_module_ebay.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/PulseJack JB0011D01BNL.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/PulseJack JB0011D01BNL.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/PulseJack JB0011D01BNL.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/PulseJack JB0011D01BNL.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/Step-down_converter.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/Step-down_converter.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/Step-down_converter.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/Step-down_converter.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/TCA_9548A_module.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/TCA_9548A_module.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/TCA_9548A_module.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/TCA_9548A_module.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/USB_Micro-Hakan.kicad_mod b/Kicad/Ethercat-stm32/HakansLibrary.pretty/USB_Micro-Hakan.kicad_mod similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/HakansLibrary.pretty/USB_Micro-Hakan.kicad_mod rename to Kicad/Ethercat-stm32/HakansLibrary.pretty/USB_Micro-Hakan.kicad_mod diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/LAN9252.kicad_sch b/Kicad/Ethercat-stm32/LAN9252.kicad_sch similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/LAN9252.kicad_sch rename to Kicad/Ethercat-stm32/LAN9252.kicad_sch diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/LAN9252_diverse.kicad_sch b/Kicad/Ethercat-stm32/LAN9252_diverse.kicad_sch similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/LAN9252_diverse.kicad_sch rename to Kicad/Ethercat-stm32/LAN9252_diverse.kicad_sch diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/STM32F4.kicad_sch b/Kicad/Ethercat-stm32/STM32F4.kicad_sch similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/STM32F4.kicad_sch rename to Kicad/Ethercat-stm32/STM32F4.kicad_sch diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/Symbols/HakansLibrary.kicad_sym b/Kicad/Ethercat-stm32/Symbols/HakansLibrary.kicad_sym similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/Symbols/HakansLibrary.kicad_sym rename to Kicad/Ethercat-stm32/Symbols/HakansLibrary.kicad_sym diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/Symbols/LAN9252_PT.kicad_sym b/Kicad/Ethercat-stm32/Symbols/LAN9252_PT.kicad_sym similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/Symbols/LAN9252_PT.kicad_sym rename to Kicad/Ethercat-stm32/Symbols/LAN9252_PT.kicad_sym diff --git a/Pcb-1-lan9252/Kicad/Ethercat-stm32/peripherals.kicad_sch b/Kicad/Ethercat-stm32/peripherals.kicad_sch similarity index 100% rename from Pcb-1-lan9252/Kicad/Ethercat-stm32/peripherals.kicad_sch rename to Kicad/Ethercat-stm32/peripherals.kicad_sch diff --git a/Pcb-1-lan9252/LAN9252_eeprom_store_valid/LAN9252_eeprom_store_valid.ino b/LAN9252_eeprom_store_valid/LAN9252_eeprom_store_valid.ino similarity index 100% rename from Pcb-1-lan9252/LAN9252_eeprom_store_valid/LAN9252_eeprom_store_valid.ino rename to LAN9252_eeprom_store_valid/LAN9252_eeprom_store_valid.ino diff --git a/Pcb-1-lan9252/Firmware/src/Stepper.cpp b/Pcb-1-lan9252/Firmware/src/Stepper.cpp deleted file mode 100755 index fe99446..0000000 --- a/Pcb-1-lan9252/Firmware/src/Stepper.cpp +++ /dev/null @@ -1,270 +0,0 @@ -#include - -/* USER CODE BEGIN Header */ -/** - ****************************************************************************** - * @file : main.c - * @brief : Main program body - ****************************************************************************** - * @attention - * - * Copyright (c) 2023 STMicroelectronics. - * All rights reserved. - * - * This software is licensed under terms that can be found in the LICENSE file - * in the root directory of this software component. - * If no LICENSE file comes with this software, it is provided AS-IS. - * - ****************************************************************************** - */ -/* USER CODE END Header */ -/* Includes ------------------------------------------------------------------*/ -#include "Stepper.h" - -/* Private includes ----------------------------------------------------------*/ -/* USER CODE BEGIN Includes */ - -/* USER CODE END Includes */ - -/* Private typedef -----------------------------------------------------------*/ -/* USER CODE BEGIN PTD */ - -/* USER CODE END PTD */ - -/* Private define ------------------------------------------------------------*/ -/* USER CODE BEGIN PD */ - -/* USER CODE END PD */ - -/* Private macro -------------------------------------------------------------*/ -/* USER CODE BEGIN PM */ - -/* USER CODE END PM */ - -/* Private variables ---------------------------------------------------------*/ -TIM_HandleTypeDef htim1; - -/* USER CODE BEGIN PV */ - -/* USER CODE END PV */ - -/* Private function prototypes -----------------------------------------------*/ -void SystemClock_Config(void); -static void MX_GPIO_Init(void); -static void MX_TIM1_Init(void); -/* USER CODE BEGIN PFP */ - -/* USER CODE END PFP */ - -/* Private user code ---------------------------------------------------------*/ -/* USER CODE BEGIN 0 */ - -/* USER CODE END 0 */ - -void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim) -{ - GPIO_InitTypeDef GPIO_InitStruct = {0}; - if (htim->Instance == TIM1) - { - //__HAL_RCC_GPIOE_CLK_ENABLE(); - /**TIM1 GPIO Configuration - PE9 ------> TIM1_CH1 - PA8 ------< TIM1_CH1 - */ - GPIO_InitStruct.Pin = GPIO_PIN_8; // 9; - GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - GPIO_InitStruct.Alternate = GPIO_AF1_TIM1; - // HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); - HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); - } -} - -/** - * @brief The application entry point. - * @retval int - */ -void StepperSetup(void) -{ - /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ - // HAL_Init(); - // SystemClock_Config(); - - /* Initialize all configured peripherals */ - // MX_GPIO_Init(); - MX_TIM1_Init(); - - // htim1.Instance->ARR = 1; - // htim1.Instance->CCR1 = 1; - HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_1); - TIM_TypeDef *TIMM = TIM1; - -#define CLOCK_FREQ (168000000-2000000) - // Best range on timer clock frequency/pulse length/65355 +1 => best resolution in the pulse range - TIM1->PSC = CLOCK_FREQ / 1000 / (1 << 16); - - /* Infinite loop */ -#if 0 - while (1) - { - makePulses(1200, 15); - HAL_Delay(1000); - } -#endif -} - -void makePulses(uint32_t totalLength /* µsec */, uint32_t nPulses) -{ - uint64_t TickFreq = CLOCK_FREQ / (TIM1->PSC+1); // 56 MHz at PSC=2 - uint64_t TicksTotal = TickFreq * totalLength / 1000000; // Total number of ticks during this time, ca 56000 - uint32_t TicksPerPulse = TicksTotal / nPulses; - - TIM1->ARR = TicksPerPulse - 1; - TIM1->CCR1 = TicksPerPulse / 2; - TIM1->RCR = nPulses - 1; - TIM1->EGR = TIM_EGR_UG; - TIM1->CR1 |= TIM_CR1_OPM; - TIM1->CR1 |= TIM_CR1_CEN; -} - -/** - * @brief System Clock Configuration - * @retval None - */ -void SystemClock_Config(void) -{ - RCC_OscInitTypeDef RCC_OscInitStruct = {0}; - RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; - - /** Configure the main internal regulator output voltage - */ - __HAL_RCC_PWR_CLK_ENABLE(); - __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); - - /** Initializes the RCC Oscillators according to the specified parameters - * in the RCC_OscInitTypeDef structure. - */ - RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI; - RCC_OscInitStruct.HSIState = RCC_HSI_ON; - RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; - RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; - RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI; - RCC_OscInitStruct.PLL.PLLM = 8; - RCC_OscInitStruct.PLL.PLLN = 168; - RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; - RCC_OscInitStruct.PLL.PLLQ = 4; - if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) - { - Error_Handler(); - } - - /** Initializes the CPU, AHB and APB buses clocks - */ - RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2; - RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; - RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; - RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; - RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; - - if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK) - { - Error_Handler(); - } -} - -/** - * @brief TIM1 Initialization Function - * @param None - * @retval None - */ -static void MX_TIM1_Init(void) -{ - - /* USER CODE BEGIN TIM1_Init 0 */ - - /* USER CODE END TIM1_Init 0 */ - - TIM_ClockConfigTypeDef sClockSourceConfig = {0}; - TIM_MasterConfigTypeDef sMasterConfig = {0}; - TIM_OC_InitTypeDef sConfigOC = {0}; - TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig = {0}; - - /* USER CODE BEGIN TIM1_Init 1 */ - - /* USER CODE END TIM1_Init 1 */ - htim1.Instance = TIM1; - htim1.Init.Prescaler = 70; - htim1.Init.CounterMode = TIM_COUNTERMODE_UP; - htim1.Init.Period = 65535; - htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - htim1.Init.RepetitionCounter = 10; - htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE; - if (HAL_TIM_Base_Init(&htim1) != HAL_OK) - { - Error_Handler(); - } - sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; - if (HAL_TIM_ConfigClockSource(&htim1, &sClockSourceConfig) != HAL_OK) - { - Error_Handler(); - } - if (HAL_TIM_PWM_Init(&htim1) != HAL_OK) - { - Error_Handler(); - } - sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; - sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; - if (HAL_TIMEx_MasterConfigSynchronization(&htim1, &sMasterConfig) != HAL_OK) - { - Error_Handler(); - } - sConfigOC.OCMode = TIM_OCMODE_PWM2; - sConfigOC.Pulse = 0; - sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; - sConfigOC.OCNPolarity = TIM_OCNPOLARITY_HIGH; - sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; - sConfigOC.OCIdleState = TIM_OCIDLESTATE_RESET; - sConfigOC.OCNIdleState = TIM_OCNIDLESTATE_RESET; - if (HAL_TIM_PWM_ConfigChannel(&htim1, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) - { - Error_Handler(); - } - sBreakDeadTimeConfig.OffStateRunMode = TIM_OSSR_DISABLE; - sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_DISABLE; - sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_OFF; - sBreakDeadTimeConfig.DeadTime = 0; - sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE; - sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH; - sBreakDeadTimeConfig.AutomaticOutput = TIM_AUTOMATICOUTPUT_DISABLE; - if (HAL_TIMEx_ConfigBreakDeadTime(&htim1, &sBreakDeadTimeConfig) != HAL_OK) - { - Error_Handler(); - } - /* USER CODE BEGIN TIM1_Init 2 */ - - /* USER CODE END TIM1_Init 2 */ - HAL_TIM_MspPostInit(&htim1); -} - -/** - * @brief GPIO Initialization Function - * @param None - * @retval None - */ -static void MX_GPIO_Init(void) -{ - /* USER CODE BEGIN MX_GPIO_Init_1 */ - /* USER CODE END MX_GPIO_Init_1 */ - - /* GPIO Ports Clock Enable */ - __HAL_RCC_GPIOH_CLK_ENABLE(); - __HAL_RCC_GPIOE_CLK_ENABLE(); - - /* USER CODE BEGIN MX_GPIO_Init_2 */ - /* USER CODE END MX_GPIO_Init_2 */ -} - -/* USER CODE BEGIN 4 */ - -/* USER CODE END 4 */ diff --git a/Pcb-1-lan9252/README.md b/Pcb-1-lan9252/README.md deleted file mode 100644 index a9804ad..0000000 --- a/Pcb-1-lan9252/README.md +++ /dev/null @@ -1,45 +0,0 @@ -# EtherCAT PCB based on LAN9252 and STM34F407 - -##### The firmware is in the **Firmware** folder. - -Open this in PlatformIO. PlatformIO might be able to install all necessary software. If not, you need at least Arduino for STM32 (STM32duino) and SPI. PlatformIO might be able to figure that out, I hope so. -SPI settings are in lib/soes/hal/spi.cpp if you are interested. -SOES is the Arduino port of SOES from -My own code is in main.cpp. The encoder counter code is in STM34_Encoder.cpp - -###### The PCB design is in **Kicad**. - -Open this with Kicad. I have put the symbols and footprints in there, just set the right paths. -The design is in the state I ordered the pcb from Aisler, Germany. - -###### The **Schematics** folder - -contains reference documentation, schematics of several LAN9252 evaluation boards and other boards. This is from where I got inspiration and ideas to the design. No I didn't read all the reference documentation - I copied most from these designs and that's why it also worked the first time. [Freerouting](https://github.com/freerouting/freerouting) was used to route the pcb. Normally I route the nets by hand but this time it was a bit much and it came out quite nice and, most importantly, it worked. - -##### ESI xml file generator is in **EEPROM_generator**. - -Access the folder with a file browser and click on index.html to make or update your own xml file (and other necessary files, incl eeprom bin). Copy the contents to Firmware/lib/soes -and to Twincat esi xml file directory `c:\twincat\3.1\io\modules\ethercat` -The original EEPROM_generator is found here - -##### **CubeMX-files** are for reference only. - -The .ioc file can be opened in CubeMX. The STM32F407 processor has functions tied to specific pins, the .ioc file has this info. This is just for reference. - -##### ESI (EtherCAT Slave Information) files - -I have put [Dig_8IN_8OUT.xml](Dig_8IN_8OUT.xml) here, this is an example ESI file for the LAN9252 IC standalone, no MCU needed. It's sometimes handy to have the simplest possible ESI file at ahnd, here it is. You find the ESI file for the Encoder application [here](Firmware/lib/soes/MetalMusings_EaserCAT_2000_encoder.xml) - -##### **linuxcnc** contains modifications to make EaserCAT 2000 work - -The configuration files and the hal component I used are placed here. - -##### LAN9252_eeprom_store_valid - -Arduino sketch to program the AT24C32 eeprom with a valid eeprom content. Hook up the eeprom using I2C and run the program. The verification in the of theprogram must be passed for valid programming. - - - -###License - -Don't violate the original licenses. No warranties. Use it any way you like. \ No newline at end of file diff --git a/Pcb-1-lan9252/linuxcnc/ethercat-conf.xml b/Pcb-1-lan9252/linuxcnc/ethercat-conf.xml deleted file mode 100644 index 674957a..0000000 --- a/Pcb-1-lan9252/linuxcnc/ethercat-conf.xml +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/README.md b/README.md index 6ca240c..a6ba5d1 100644 --- a/README.md +++ b/README.md @@ -6,14 +6,22 @@ that I used during the creation of my own EtherCAT device. This job is documented in a series of Youtube videos, from my first attempts to understand how EtherCAT works, to making my own pcb, program it and testing it in LinuxCNC. -## Make my own EtherCat device 5. The lathe is alive +## Make my own EtherCAT device 6. Stepper motor driver + +The stepper driver generator shows up and makes some stepper motor sounds. The two big things +this time have been setup of the timer for the stepper pulses and synchronizing the EtherCAT +cycle with the linuxcnc servo-thread cycle. Thankfully I don't show much of that. + +[![Watch the video](https://img.youtube.com/vi/QNNEA0wO4Mw/default.jpg)](https://youtu.be/QNNEA0wO4Mw) + +## Make my own EtherCAT device 5. The lathe is alive I hook up the EaserCAT 2000 board to my mini-lathe and make it work. Documentation is available here, please select the *Video5* branch. -[![Watch the video](https://img.youtube.com/vi/wOtMrlHCCic/default.jpg)](https://youtu.be/wOtMrlHCCic)0 +[![Watch the video](https://img.youtube.com/vi/wOtMrlHCCic/default.jpg)](https://youtu.be/wOtMrlHCCic) -## Make my own EtherCat device 4. The PCB is here +## Make my own EtherCAT device 4. The PCB is here In this video it starts to be interesting. I have got the pcb and I try to make it work. Now I finally make documentation available, see [this folder](Pcb-1-lan9252). @@ -40,3 +48,48 @@ My first tries with the LAN9252 chip. Getting accustomed to some tools. +# EtherCAT PCB based on LAN9252 and STM34F407 + +##### The firmware is in the **Firmware** folder. + +Open this in PlatformIO. PlatformIO might be able to install all necessary software. If not, you need at least Arduino for STM32 (STM32duino) and SPI. PlatformIO might be able to figure that out, I hope so. +SPI settings are in lib/soes/hal/spi.cpp if you are interested. +SOES is the Arduino port of SOES from +My own code is in main.cpp. The encoder counter code is in STM34_Encoder.cpp + +###### The PCB design is in **Kicad**. + +Open this with Kicad. I have put the symbols and footprints in there, just set the right paths. +The design is in the state I ordered the pcb from Aisler, Germany. + +###### The **Schematics** folder + +contains reference documentation, schematics of several LAN9252 evaluation boards and other boards. This is from where I got inspiration and ideas to the design. No I didn't read all the reference documentation - I copied most from these designs and that's why it also worked the first time. [Freerouting](https://github.com/freerouting/freerouting) was used to route the pcb. Normally I route the nets by hand but this time it was a bit much and it came out quite nice and, most importantly, it worked. + +##### ESI xml file generator is in **EEPROM_generator**. + +Access the folder with a file browser and click on index.html to make or update your own xml file (and other necessary files, incl eeprom bin). Copy the contents to Firmware/lib/soes +and to Twincat esi xml file directory `c:\twincat\3.1\io\modules\ethercat` +The original EEPROM_generator is found here + +##### **CubeMX-files** are for reference only. + +The .ioc file can be opened in CubeMX. The STM32F407 processor has functions tied to specific pins, the .ioc file has this info. This is just for reference. + +##### ESI (EtherCAT Slave Information) files + +I have put [Dig_8IN_8OUT.xml](Dig_8IN_8OUT.xml) here, this is an example ESI file for the LAN9252 IC standalone, no MCU needed. It's sometimes handy to have the simplest possible ESI file at ahnd, here it is. You find the ESI file for the Encoder application [here](Firmware/lib/soes/MetalMusings_EaserCAT_2000_encoder.xml) + +##### **linuxcnc** contains modifications to make EaserCAT 2000 work + +The configuration files and the hal component I used are placed here. + +##### LAN9252_eeprom_store_valid + +Arduino sketch to program the AT24C32 eeprom with a valid eeprom content. Hook up the eeprom using I2C and run the program. The verification in the of theprogram must be passed for valid programming. + + + +###License + +Don't violate the original licenses. No warranties. Use it any way you like. \ No newline at end of file diff --git a/Pcb-1-lan9252/Schematics/EVB-LAN9252-DIGIO-EtherCAT-Evaluation-Board-User's-Guide-50002332C.pdf b/Schematics/EVB-LAN9252-DIGIO-EtherCAT-Evaluation-Board-User's-Guide-50002332C.pdf similarity index 100% rename from Pcb-1-lan9252/Schematics/EVB-LAN9252-DIGIO-EtherCAT-Evaluation-Board-User's-Guide-50002332C.pdf rename to Schematics/EVB-LAN9252-DIGIO-EtherCAT-Evaluation-Board-User's-Guide-50002332C.pdf diff --git a/Pcb-1-lan9252/Schematics/EVB-LAN9252-HBI+EtherCAT-Evaluation-Board-User's-Guide-50002333C.pdf b/Schematics/EVB-LAN9252-HBI+EtherCAT-Evaluation-Board-User's-Guide-50002333C.pdf similarity index 100% rename from Pcb-1-lan9252/Schematics/EVB-LAN9252-HBI+EtherCAT-Evaluation-Board-User's-Guide-50002333C.pdf rename to Schematics/EVB-LAN9252-HBI+EtherCAT-Evaluation-Board-User's-Guide-50002333C.pdf diff --git a/Pcb-1-lan9252/Schematics/EVB-LAN9252-SPI+EtherCAT-Evaluation-Board-User's-Guide-50002604A.pdf b/Schematics/EVB-LAN9252-SPI+EtherCAT-Evaluation-Board-User's-Guide-50002604A.pdf similarity index 100% rename from Pcb-1-lan9252/Schematics/EVB-LAN9252-SPI+EtherCAT-Evaluation-Board-User's-Guide-50002604A.pdf rename to Schematics/EVB-LAN9252-SPI+EtherCAT-Evaluation-Board-User's-Guide-50002604A.pdf diff --git a/Pcb-1-lan9252/Schematics/LAN9252.SPI.SQI+GPIO16.Mode.Rev.A.pdf b/Schematics/LAN9252.SPI.SQI+GPIO16.Mode.Rev.A.pdf similarity index 100% rename from Pcb-1-lan9252/Schematics/LAN9252.SPI.SQI+GPIO16.Mode.Rev.A.pdf rename to Schematics/LAN9252.SPI.SQI+GPIO16.Mode.Rev.A.pdf diff --git a/Pcb-1-lan9252/Schematics/Schema development cards LAN9252+STM32F407ZGT6/EtherCAT LAN9252.pdf b/Schematics/Schema development cards LAN9252+STM32F407ZGT6/EtherCAT LAN9252.pdf similarity index 100% rename from Pcb-1-lan9252/Schematics/Schema development cards LAN9252+STM32F407ZGT6/EtherCAT LAN9252.pdf rename to Schematics/Schema development cards LAN9252+STM32F407ZGT6/EtherCAT LAN9252.pdf diff --git a/Pcb-1-lan9252/Schematics/Schema development cards LAN9252+STM32F407ZGT6/EtherCAT STM32F407ZGT6 MCU.pdf b/Schematics/Schema development cards LAN9252+STM32F407ZGT6/EtherCAT STM32F407ZGT6 MCU.pdf similarity index 100% rename from Pcb-1-lan9252/Schematics/Schema development cards LAN9252+STM32F407ZGT6/EtherCAT STM32F407ZGT6 MCU.pdf rename to Schematics/Schema development cards LAN9252+STM32F407ZGT6/EtherCAT STM32F407ZGT6 MCU.pdf diff --git a/Pcb-1-lan9252/linuxcnc/Turner.hal b/linuxcnc/Turner.hal similarity index 100% rename from Pcb-1-lan9252/linuxcnc/Turner.hal rename to linuxcnc/Turner.hal diff --git a/linuxcnc/ethercat-conf.xml b/linuxcnc/ethercat-conf.xml new file mode 100644 index 0000000..618f5c5 --- /dev/null +++ b/linuxcnc/ethercat-conf.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/linuxcnc/lcec-64bitfloatadded.patch b/linuxcnc/lcec-64bitfloatadded.patch new file mode 100644 index 0000000..801ae31 --- /dev/null +++ b/linuxcnc/lcec-64bitfloatadded.patch @@ -0,0 +1,102 @@ +diff --git a/src/lcec_conf.c b/src/lcec_conf.c +index b0e9ad1..6cc7f8a 100644 +--- a/src/lcec_conf.c ++++ b/src/lcec_conf.c +@@ -1267,6 +1267,11 @@ static void parsePdoEntryAttrs(LCEC_CONF_XML_INST_T *inst, int next, const char + p->halType = HAL_FLOAT; + continue; + } ++ if (strcasecmp(val, "float-double") == 0) { ++ p->subType = lcecPdoEntTypeFloatDouble; ++ p->halType = HAL_FLOAT; ++ continue; ++ } + fprintf(stderr, "%s: ERROR: Invalid pdoEntry halType %s\n", modname, val); + XML_StopParser(inst->parser, 0); + return; +@@ -1410,6 +1415,11 @@ static void parseComplexEntryAttrs(LCEC_CONF_XML_INST_T *inst, int next, const c + p->halType = HAL_FLOAT; + continue; + } ++ if (strcasecmp(val, "float-double") == 0) { ++ p->subType = lcecPdoEntTypeFloatDouble; ++ p->halType = HAL_FLOAT; ++ continue; ++ } + fprintf(stderr, "%s: ERROR: Invalid complexEntry halType %s\n", modname, val); + XML_StopParser(inst->parser, 0); + return; +diff --git a/src/lcec_conf.h b/src/lcec_conf.h +index 5d9943c..261c965 100644 +--- a/src/lcec_conf.h ++++ b/src/lcec_conf.h +@@ -55,6 +55,7 @@ typedef enum { + lcecPdoEntTypeSimple, + lcecPdoEntTypeFloatSigned, + lcecPdoEntTypeFloatUnsigned, ++ lcecPdoEntTypeFloatDouble, + lcecPdoEntTypeComplex, + lcecPdoEntTypeFloatIeee + } LCEC_PDOENT_TYPE_T; +diff --git a/src/lcec_generic.c b/src/lcec_generic.c +index dfddf73..41a13a9 100644 +--- a/src/lcec_generic.c ++++ b/src/lcec_generic.c +@@ -26,6 +26,7 @@ hal_s32_t lcec_generic_read_s32(uint8_t *pd, lcec_generic_pin_t *hal_data); + hal_u32_t lcec_generic_read_u32(uint8_t *pd, lcec_generic_pin_t *hal_data); + void lcec_generic_write_s32(uint8_t *pd, lcec_generic_pin_t *hal_data, hal_s32_t sval); + void lcec_generic_write_u32(uint8_t *pd, lcec_generic_pin_t *hal_data, hal_u32_t uval); ++void lcec_generic_write_f64(uint8_t *pd, lcec_generic_pin_t *hal_data, hal_float_t fval); + + int lcec_generic_init(int comp_id, struct lcec_slave *slave, ec_pdo_entry_reg_t *pdo_entry_regs) { + lcec_master_t *master = slave->master; +@@ -78,7 +79,7 @@ int lcec_generic_init(int comp_id, struct lcec_slave *slave, ec_pdo_entry_reg_t + + case HAL_FLOAT: + // check data size +- if (hal_data->bitLength > 32) { ++ if (hal_data->bitLength > 64) { + rtapi_print_msg(RTAPI_MSG_WARN, LCEC_MSG_PFX "unable to export pin %s.%s.%s.%s: invalid process data bitlen!\n", LCEC_MODULE_NAME, master->name, slave->name, hal_data->name); + continue; + } +@@ -133,6 +134,8 @@ void lcec_generic_read(struct lcec_slave *slave, long period) { + fval = lcec_generic_read_u32(pd, hal_data); + } else if(hal_data->subType == lcecPdoEntTypeFloatIeee){ + fval = EC_READ_REAL(&pd[hal_data->pdo_os]); ++ } else if(hal_data->subType == lcecPdoEntTypeFloatDouble){ ++ fval = EC_READ_LREAL(&pd[hal_data->pdo_os]); + } else { + fval = lcec_generic_read_s32(pd, hal_data); + } +@@ -185,6 +188,8 @@ void lcec_generic_write(struct lcec_slave *slave, long period) { + + if (hal_data->subType == lcecPdoEntTypeFloatUnsigned) { + lcec_generic_write_u32(pd, hal_data, (hal_u32_t) fval); ++ } else if (hal_data->subType == lcecPdoEntTypeFloatDouble) { ++ lcec_generic_write_f64(pd, hal_data, fval); + } else { + lcec_generic_write_s32(pd, hal_data, (hal_s32_t) fval); + } +@@ -300,3 +305,22 @@ void lcec_generic_write_u32(uint8_t *pd, lcec_generic_pin_t *hal_data, hal_u32_t + } + } + ++void lcec_generic_write_f64(uint8_t *pd, lcec_generic_pin_t *hal_data, hal_float_t fval) { ++ int i, offset; ++ ++ if (hal_data->pdo_bp == 0 && hal_data->bitOffset == 0) { ++ EC_WRITE_LREAL(&pd[hal_data->pdo_os], fval); ++ return; ++ } ++ union { ++ double d; ++ uint64_t u; ++ } v; ++ v.d = fval; // Make an equivalent long int for bit operations (don't work on doubles) ++ offset = ((hal_data->pdo_os << 3) | (hal_data->pdo_bp & 0x07)) + hal_data->bitOffset; ++ for (i=0; i < hal_data->bitLength; i++, offset++) { ++ EC_WRITE_BIT(&pd[offset >> 3], offset & 0x07,v.u & 1); ++ v.u >>= 1; ++ } ++} ++ diff --git a/Pcb-1-lan9252/linuxcnc/metalmusings_encoder.comp b/linuxcnc/metalmusings_encoder.comp similarity index 100% rename from Pcb-1-lan9252/linuxcnc/metalmusings_encoder.comp rename to linuxcnc/metalmusings_encoder.comp diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/.gitignore b/linuxcnc/sim.gmoccapy.lathe_configs/.gitignore new file mode 100755 index 0000000..b25c15b --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/.gitignore @@ -0,0 +1 @@ +*~ diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/LatheMacro.svg b/linuxcnc/sim.gmoccapy.lathe_configs/LatheMacro.svg new file mode 100755 index 0000000..dc974c4 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/LatheMacro.svg @@ -0,0 +1,3057 @@ + +image/svg+xml diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/README b/linuxcnc/sim.gmoccapy.lathe_configs/README new file mode 100755 index 0000000..da5d6cf --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/README @@ -0,0 +1,72 @@ +This folder contains a number of simulated lathe configs. + +the "lathemacro" config offers a number of simple macros to perform +the most common lathe operations. + +The GUI that controls the macros can be viewed by clicking the "Cycles" +tab top left of the graphical preview window. + +There are two load-time options to control the tab behaviour: +1) norun will hide the action button, use this if you want to use only +a physical button (connected to gladevcp.cycle-start) to start the macros +(Strongly recommended, especially with Touchy) +2) notouch will allow keyboard editing of the spinboxes. Otherwise the +custom numeric keyboard will be shown. + +An example loadrt line, as used here in the Gmoccapy demo is: + +[DISPLAY] +EMBED_TAB_COMMAND = halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -U notouch=1 -U norun=0 -u lathehandler.py -x {XID} lathemacro.ui + +The window will resize slowly if you grab the corner and move the mouse +inside the window. It's not as bad as it was, but still needs work. +You may need to click the unmaximise button in the toolbar to get a +window border to be able to use the resize handles. + +Notes on the keyboard: +As well as the obvious functions and unit conversions, it can be used to +enter fractions. For example if you type 1.1/2 it will automatically +update to display 1.5000 and 16.17/64 will show 16.2656. +This can be used in a limited way to halve the onscreen value eg for +entering radius instead of diameter. +However it only works for whole numbers: 100/2 will become 50 but +3.14149/2 is interpreted as 3 and 14 thousand halves so won't work. + +Notes on adding your own cycles: +Create a new G-code subroutine in the same format as the existing ones. +In Glade add a new tab to the 'tabs1' notebook and give it a name matching +the new cycle. +Edit the action button (inside an eventbox) to call the new G-code sub. +Rename the action button to match the tab name and append '.action' eg +MyCycle.action + +Create new artwork. I used Fusion360, the models are here: +https://a360.co/3uFPZNv +and the drawings are here: +https://a360.co/3uFPZNv +Esport the drawing page as PDF and import into the lathemacro.svg file in +Inkscape. You will need to resize. Add your own arrows and annotations. + +Save the new layer in a layer named "layerN" (lower case) where N is the +tab number, starting at zero. You will need to invoke the XML editor for +this (Shift-Cmd-X on Mac) + +The entry boxes are positioned relative to a 1500 x 1000 image; the +original size of the SVG. So you can hover your mouse over the image in +Inkscape to determine the coordinates. +In the in the case of on-drawing controls the coordinates are entered as +an XML comment in the Tooltip for the control in x,y format (The surface speed, +tool and coolant do not need this, they are in a fixed table) + +An example: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/ethercat_end.hal b/linuxcnc/sim.gmoccapy.lathe_configs/ethercat_end.hal new file mode 100755 index 0000000..b61ece0 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/ethercat_end.hal @@ -0,0 +1 @@ +addf lcec.write-all servo-thread diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/facing.ngc b/linuxcnc/sim.gmoccapy.lathe_configs/facing.ngc new file mode 100755 index 0000000..341bc61 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/facing.ngc @@ -0,0 +1,45 @@ +;Facing +O sub + +G7 ; Lathe Diameter Mode +G18 ; XZ Plane +G21 ; Metric Units +G90 ; Absolute Distance + +M6 T#7 G43 + +O90 IF [#8 GT 0.5] + M8 +O90 ENDIF + +O10 IF [#6 NE 0] + (MSG, Angled facing isn't supported yet) +O10 ENDIF + +#14 = [#<_x> * 2] (starting X) +#13 = #<_z> (starting Z) + +G96 D2500 S#2 ; Constant Surface Speed Mode +M3 +g95 F#4 ; Feed-Per-Rev Mode + +g4p1 ; Wait to reach speed + + O200 WHILE [#13 GT #5 + #3] + + #13=[#13-#3] + G1 Z#13 + G1 X#1 + G0 Z[#13+#3] + G0 X#14 + G0 Z#13 + O200 ENDWHILE + + G1 Z#5 + G1 X#1 + G0 Z[#13+#3] + G0 X[#14+#3] + G0 Z#5 ; For touch-off + M5 M9 +O endsub +M2 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/gmoccapy_lathe.pref b/linuxcnc/sim.gmoccapy.lathe_configs/gmoccapy_lathe.pref new file mode 100755 index 0000000..9b9f354 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/gmoccapy_lathe.pref @@ -0,0 +1,81 @@ +[DEFAULT] +dro_size = 28 +abs_color = #0000FF +rel_color = #000000 +dtg_color = #FFFF00 +homed_color = #00FF00 +unhomed_color = #FF0000 +spindle_bar_min = 0.0 +spindle_bar_max = 6000.0 +unlock_code = 123 +view = y +blockheight = 0.0 +spindle_start_rpm = 300.0 +scale_jog_vel = 140.4 +scale_spindle_override = 1 +scale_feed_override = 1 +scale_rapid_override = 1 +hide_turtle_jog_button = False +turtle_jog_factor = 20 +open_file = +screen1 = window +x_pos = 40 +y_pos = 30 +width = 979 +height = 750 +gtk_theme = Follow System Theme +audio_alert = /usr/share/sounds/freedesktop/stereo/dialog-warning.oga +audio_error = /usr/share/sounds/freedesktop/stereo/dialog-error.oga +grid_size = 1.0 +mouse_btn_mode = 4 +hide_cursor = False +system_name_tool = Tool +system_name_g5x = G5x +system_name_rot = Rot +system_name_g92 = G92 +system_name_g54 = G54 +system_name_g55 = G55 +system_name_g56 = G56 +system_name_g57 = G57 +system_name_g58 = G58 +system_name_g59 = G59 +system_name_g59.1 = G59.1 +system_name_g59.2 = G59.2 +system_name_g59.3 = G59.3 +jump_to_dir = /home/emcmesa +show_keyboard_on_offset = False +show_keyboard_on_tooledit = False +show_keyboard_on_edit = False +show_keyboard_on_mdi = False +show_keyboard_on_file_selection = False +x_pos_popup = 45.0 +y_pos_popup = 55 +width_popup = 250.0 +max_messages = 10 +message_font = sans 10 +use_frames = True +reload_tool = True +blockdel = False +opstop = False +enable_dro = False +show_offsets = False +show_dtg = False +view_tool_path = True +view_dimension = True +run_from_line = no_run +unlock_way = no +show_preview_on_offset = False +use_keyboard_shortcuts = True +dro_digits = 3 +toggle_readout = True +tool_in_spindle = 3 +diameter offset_axis_x = 0 +offset_axis_x = 0.0 +offset_axis_z = 0.0 +offset_axis_r = 50.0 +radius offset_axis_x = 0 +use_toolmeasurement = False +kbd_height = 250 +icon_theme = None +hide_tooltips = False + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/gmoccapy_lathe_c.pref b/linuxcnc/sim.gmoccapy.lathe_configs/gmoccapy_lathe_c.pref new file mode 100755 index 0000000..483f557 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/gmoccapy_lathe_c.pref @@ -0,0 +1,72 @@ +[DEFAULT] +dro_size = 28 +abs_color = #0000FF +rel_color = #000000 +dtg_color = #FFFF00 +homed_color = #00FF00 +unhomed_color = #FF0000 +spindle_bar_min = 0.0 +spindle_bar_max = 6000.0 +unlock_code = 123 +view = y +blockheight = 0.0 +spindle_start_rpm = 300.0 +scale_jog_vel = 140.4 +scale_spindle_override = 1 +scale_feed_override = 1 +scale_rapid_override = 1 +hide_turtle_jog_button = False +turtle_jog_factor = 20 +open_file = +screen1 = window +x_pos = 40 +y_pos = 30 +width = 979 +height = 750 +gtk_theme = Follow System Theme +audio_alert = /usr/share/sounds/freedesktop/stereo/dialog-warning.oga +audio_error = /usr/share/sounds/freedesktop/stereo/dialog-error.oga +grid_size = 1.0 +mouse_btn_mode = 4 +hide_cursor = False +system_name_tool = Tool +system_name_g5x = G5x +system_name_rot = Rot +system_name_g92 = G92 +system_name_g54 = G54 +system_name_g55 = G55 +system_name_g56 = G56 +system_name_g57 = G57 +system_name_g58 = G58 +system_name_g59 = G59 +system_name_g59.1 = G59.1 +system_name_g59.2 = G59.2 +system_name_g59.3 = G59.3 +jump_to_dir = /home/emcmesa +show_keyboard_on_offset = False +show_keyboard_on_tooledit = False +show_keyboard_on_edit = True +show_keyboard_on_mdi = True +show_keyboard_on_file_selection = False +x_pos_popup = 45.0 +y_pos_popup = 55 +width_popup = 250.0 +max_messages = 10 +message_font = sans 10 +use_frames = True +reload_tool = True +blockdel = False +opstop = False +enable_dro = False +show_offsets = False +show_dtg = False +view_tool_path = True +view_dimension = True +run_from_line = no_run +unlock_way = use +show_preview_on_offset = False +use_keyboard_shortcuts = False +dro_digits = 3 +toggle_readout = True +tool_in_spindle = 0 + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/gmoccapy_postgui.hal b/linuxcnc/sim.gmoccapy.lathe_configs/gmoccapy_postgui.hal new file mode 100755 index 0000000..aa8a9d7 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/gmoccapy_postgui.hal @@ -0,0 +1,23 @@ +################################################################### +# moccapy_postgui.hal file from Norbert Schechner # +################################################################### + +loadrt abs names=abs_spindle_feedback +addf abs_spindle_feedback servo-thread + +net spindle-speed-limited => abs_spindle_feedback.in +net spindle-abs abs_spindle_feedback.out => gmoccapy.spindle_feedback_bar +net spindle-at-speed gmoccapy.spindle_at_speed_led + +# the unlink pin commands are only used, because they are connected +# in core_sim.hal and we use this file to simulate +unlinkp iocontrol.0.tool-change +unlinkp iocontrol.0.tool-changed +unlinkp iocontrol.0.tool-prep-number + +net tool-change gmoccapy.toolchange-change <= iocontrol.0.tool-change +net tool-changed gmoccapy.toolchange-changed <= iocontrol.0.tool-changed +net tool-prep-number gmoccapy.toolchange-number <= iocontrol.0.tool-prep-number + +net tooloffset-x gmoccapy.tooloffset-x <= motion.tooloffset.x +net tooloffset-z gmoccapy.tooloffset-z <= motion.tooloffset.z \ No newline at end of file diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/grooving.ngc b/linuxcnc/sim.gmoccapy.lathe_configs/grooving.ngc new file mode 100755 index 0000000..475da84 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/grooving.ngc @@ -0,0 +1,32 @@ +;grooving + +O sub + +G8 ; Radius mode (easier maths) +G18 ; XZ Plane +G21 ; Metric Units +G90 ; Absolute Distance +G91.1 ; but not for arcs + +M6 T#4 G43 + +#1 = [#1 / 2] ; because of radius mode + +#14 = [#<_x>] (starting X) + +G96 D1500 S#2 ; Constant Surface Speed Mode +m3 ;Start Spindle +g95 F#3 ; Feed-Per-Rev Mode + +O90 IF [#5 GT 0.5] + M8 +O90 ENDIF + +g4p1 ; Wait to reach speed +G1 F#3 X#1 +G0 X#14 +M5 M9 +G7 +O endsub + +M2 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/README b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/README new file mode 100755 index 0000000..596828d --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/README @@ -0,0 +1,70 @@ +This directory contains halfiles (*.hal and *.tcl) that are available +using the LinuxCNC halfile search path or by an explicit directive. + +The HALLIB_PATH is '.:HALLIB_DIR' + The '.' specifies the directory containing the INI file. + HALIB_DIR specifies this directory. + +The explicit directive uses a prefix (LIB:) to identify halfiles: + [HAL] + HALFILE = LIB:filename.[hal|tcl] + +The LinuxCNC startup script (linuxcnc) finds each halfile using the +HALLIB_PATH unless the explicit directive is used. + +Also included in this directory are files associated with included +system halfiles. For example, the button layout files +(xhc-hb04-layout*.cfg) that are used with the halfile xhc-hb04.tcl. +------------------------------------------------------------------------ + + +Hal files (*.hal) Notes +----------------------- --------------------------------------------- +axis_manualtoolchange.hal setup for using hal_manualtoolchange + (for axis or other guis) +core_sim.hal xyz simulator config +core_servo.hal xyz servo (pid) config +core_sim9.hal 9 axis (xyzabcuvw) simulation config +core_stepper.hal xyz stepper config +gantrysim.hal gantrykins config, 4 joints: X Y Y Z +lathe.hal simulate spindle with encoder,sim_encoder +locking_indexer.hal simulate locking rotary using timedelay comp +wheeljogpins.tcl enable wheel jog pins for joints & axes +moveoff_external.hal Simulate external control connections for + a moveoff component +servo_sim.hal simulate servo (pid) xyz using lowpass comp +sim_spindle_encoder.hal simulate spindle with lowpass filter +simulated-gantry-home.hal simulate gantry home switches (4 joints) +simulated_home.hal simulate xyz home switches +simulated_limits.hal simulate xyz limit switches +tripodsim.hal simulated tripodkins system + +Haltcl Files (*.tcl) Notes +----------------------- --------------------------------------------- +basic_sim.tcl set up a sim config (arbitrary no. of axes) +var_show.tcl show INI variables and context +hookup_moveoff.tcl make connections for a moveoff component +plasmac.tcl common connections for the plasmac component + +xhc-hb04.tcl Configuration builder for xhc-hb04 pendant +xhc-hb04-layout1.cfg button layout 1 for xhc-hb04.tcl +xhc-hb04-layout2.cfg button layout 2 for xhc-hb04.tcl + +halcheck.tcl Report: 1) functions without addf + 2) signals with no inputs + 3) signals with no output + +Haltcl libs (*_lib.tcl) Notes +----------------------- --------------------------------------------- +sim_lib.tcl simulator config procedures + procs: + core_sim (arbitrary axes) + make-ddts (arbitrary axes) + simulated_home (arbitrary axes) + use_hal_manualtoolchange + sim_spindle +util_lib.tcl utility procedures + procs: + show_context (calling parms) + show_ini (INI file settings) + show_env (environmental vars) diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/axis_manualtoolchange.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/axis_manualtoolchange.hal new file mode 100755 index 0000000..45dbe63 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/axis_manualtoolchange.hal @@ -0,0 +1,10 @@ +loadusr -W hal_manualtoolchange + +# in case they were linked already +unlinkp iocontrol.0.tool-change +unlinkp iocontrol.0.tool-changed + +net tool-change hal_manualtoolchange.change iocontrol.0.tool-change +net tool-changed hal_manualtoolchange.changed iocontrol.0.tool-changed +net tool-prep-number hal_manualtoolchange.number iocontrol.0.tool-prep-number + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/basic_sim.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/basic_sim.tcl new file mode 100755 index 0000000..22bcebb --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/basic_sim.tcl @@ -0,0 +1,71 @@ +# basic_sim.tcl +# +# Provide common hal components and connections for a simulated machine. +# By default, the script makes and connects ddts, simulated_home, +# spindle, and hal_manualtoolchange components. +# +# Options are available to +# a) disable specific hal components and connections +# b) save a halfile equivalent to the hal commands executed by +# this script (and any prior executed hal commands) +# +# Coordinate letters and number_of_joints are determined from the usual +# INI file settings. +# +# INI file usage: +# [HAL]HALFILE = basic_sim.tcl [Options] +# Options: +# -no_make_ddts +# -no_simulated_home +# -no_use_hal_manualtoolchange +# -no_sim_spindle + +#---------------------------------------------------------------------- +# Notes: +# 1) ::env() is a global associative array of environmental variables +# as exported by the main LinuxCNC script (linuxcnc) +# 2) Settings from the INI file are available as global associative +# arrays named: ::SECTION(varname) +# example: ::EMCMOT(SERVO_PERIOD) +# 3) procs are from sim_lib.tcl + +#begin----------------------------------------------------------------- +source [file join $::env(HALLIB_DIR) sim_lib.tcl] +set save_options {} + +if [catch {check_ini_items} msg] { + puts "\nbasic_sim.tcl ERROR: $msg\n" + exit 1 +} +set axes [get_traj_coordinates] +set number_of_joints $::KINS(JOINTS) + +set base_period 0 ;# 0 means no thread +if [info exists ::EMCMOT(BASE_PERIOD)] { + set base_period $::EMCMOT(BASE_PERIOD) +} + +core_sim $axes \ + $number_of_joints \ + $::EMCMOT(SERVO_PERIOD) \ + $base_period \ + $::EMCMOT(EMCMOT) + +if {[lsearch -nocase $::argv -no_make_ddts] < 0} { + make_ddts $number_of_joints +} +if {[lsearch -nocase $::argv -no_simulated_home] < 0} { + simulated_home $number_of_joints +} +if {[lsearch -nocase $::argv -no_use_hal_manualtoolchange] < 0} { + use_hal_manualtoolchange + lappend save_options use_hal_manualtoolchange +} +if {[lsearch -nocase $::argv -no_sim_spindle] < 0} { + sim_spindle +} + +# make a halfile (inifilename_cmds.hal) with equivalent hal commands +set savefilename \ + ./[file rootname [file tail $::env(INI_FILE_NAME)]]_cmds.hal +save_hal_cmds $savefilename $save_options diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/check_config.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/check_config.tcl new file mode 100755 index 0000000..d18b833 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/check_config.tcl @@ -0,0 +1,240 @@ +# check_config.tcl +# Usage: tclsh path_to_this_file inifilename +# if a check fails, print message and exit 1 +# +# checks: +# 1) mandatory items per ::mandatory_items list +# 2) if trivkins, check consistency of [JOINT_] and [AXIS_] +# MIN_LIMIT and MAX_LIMIT +#---------------------------------------------------------------------- +set ::mandatory_items {KINS KINEMATICS + KINS JOINTS + } +# Ref: src/emc/nml_intf/emccfg.h,src/emc/ini/inijoint.cc,src/emc/iniaxis.cc: +set ::DEFAULT_AXIS_MAX_VELOCITY 1.0 +set ::DEFAULT_AXIS_MAX_ACCELERATION 1.0 +set ::DEFAULT_JOINT_MAX_VELOCITY 1.0 +set ::DEFAULT_JOINT_MAX_ACCELERATION 1.0 + +# Ref: src/emc/ini/iniaxis.cc: +set ::DEFAULT_AXIS_MIN_LIMIT -1e99 +set ::DEFAULT_AXIS_MAX_LIMIT +1e99 +#---------------------------------------------------------------------- +proc warnings msg { + puts -nonewline "\n$::progname:\n" + catch {puts ($::kins(module) kinematics) WARNING:"} + foreach m $msg {puts " $m"} + puts "" +} ;# warnings + +proc err_exit msg { + puts -nonewline "\n$::progname:\n" + catch {puts ($::kins(module) kinematics) ERROR:"} + foreach m $msg {puts " $m"} + puts "" + exit 1 +} ;# err_exit + +proc check_mandatory_items {} { + foreach {section item} $::mandatory_items { + if ![info exists ::[set section]($item) ] { + set section [string trim $section :] + lappend emsg "Missing \[$section\]$item=" + } + } + if [info exists emsg] { + err_exit $emsg + } +} ;# check_mandatory_items + +proc uniq {list_name} { ;# make list unique + foreach item $list_name { set tmp($item) "" } + return [array names tmp] +} ;# uniq + +proc joints_for_trivkins {coords} { + # ref: src/emc/kinematics/trivkins.c + # order of coord letters determines assigned joint number + if {"$coords" == ""} {set coords {X Y Z A B C U V W}} + set i 0 + foreach a [string toupper $coords] { + # assign to consecutive joints: + lappend ::kins(jointidx,$a) $i + incr i + } +} ;# joints_for_trivkins + +proc consistent_coords_for_trivkins {trivcoords} { + set m {" " "" "\t" ""} ;# mapping to remove whitespace + set trivcoords [string map $m $trivcoords] + if {"$trivcoords" == "XYZABCUVW"} { + return ;# unspecified trivkins coordinates + # allows use of any coordinates + } + set trajcoords "" + if [info exists ::TRAJ(COORDINATES)] { + set trajcoords [string map $m [lindex $::TRAJ(COORDINATES) 0]] + } + if {[string toupper "$trivcoords"] != [string toupper "$trajcoords"]} { + lappend ::wmsg "INCONSISTENT coordinates specifications: + trivkins coordinates=$trivcoords + \[TRAJ\]COORDINATES=$trajcoords" + } +} ;# consistent_coords_for_trivkins + +proc validate_identity_kins_limits {} { + set emsg "" + for {set j 0} {$j < $::KINS(JOINTS)} {incr j} { + if {![info exists ::JOINT_[set j](MAX_VELOCITY)] } { + lappend ::wmsg "Unspecified \[JOINT_$j\]MAX_VELOCITY, default used: $::DEFAULT_JOINT_MAX_VELOCITY" + } + if {![info exists ::JOINT_[set j](MAX_ACCELERATION)] } { + lappend ::wmsg "Unspecified \[JOINT_$j\]MAX_ACCELERATION, default used: $::DEFAULT_JOINT_MAX_ACCELERATION" + } + } + foreach c [uniq $::kins(coordinates)] { + # array test avoids superfluous messages when coordinates= not specified + if [array exists ::AXIS_[set c]] { + if {![info exists ::AXIS_[set c](MAX_VELOCITY)] } { + lappend ::wmsg "Unspecified \[AXIS_$c\]MAX_VELOCITY, default used: $::DEFAULT_AXIS_MAX_VELOCITY" + } + if {![info exists ::AXIS_[set c](MAX_ACCELERATION)] } { + lappend ::wmsg "Unspecified \[AXIS_$c\]MAX_ACCELERATION, default used: $::DEFAULT_AXIS_MAX_ACCELERATION" + } + } + + set missing_axis_min_limit 0 + set missing_axis_max_limit 0 + if ![info exists ::AXIS_[set c](MIN_LIMIT)] { + set ::AXIS_[set c](MIN_LIMIT) $::DEFAULT_AXIS_MIN_LIMIT + set missing_axis_min_limit 1 + } + if ![info exists ::AXIS_[set c](MAX_LIMIT)] { + set ::AXIS_[set c](MAX_LIMIT) $::DEFAULT_AXIS_MAX_LIMIT + set missing_axis_max_limit 1 + } + foreach j $::kins(jointidx,$c) { + if [info exists ::JOINT_[set j](MIN_LIMIT)] { + set jlim [set ::JOINT_[set j](MIN_LIMIT)] + set clim [set ::AXIS_[set c](MIN_LIMIT)] + if {$jlim > $clim} { + if $missing_axis_min_limit { + lappend ::wmsg "Unspecified \[AXIS_$c\]MIN_LIMIT, default used: $::DEFAULT_AXIS_MIN_LIMIT" + } + lappend emsg "\[JOINT_$j\]MIN_LIMIT > \[AXIS_$c\]MIN_LIMIT ($jlim > $clim)" + } + } + if [info exists ::JOINT_[set j](MAX_LIMIT)] { + set jlim [set ::JOINT_[set j](MAX_LIMIT)] + set clim [set ::AXIS_[set c](MAX_LIMIT)] + if {$jlim < $clim} { + if $missing_axis_max_limit { + lappend ::wmsg "Unspecified \[AXIS_$c\]MAX_LIMIT, default used: $::DEFAULT_AXIS_MAX_LIMIT" + } + lappend emsg "\[JOINT_$j\]MAX_LIMIT < \[AXIS_$c\]MAX_LIMIT ($jlim < $clim)" + } + } + } + } + return $emsg +} ;# validate_identity_kins_limits + +proc check_extrajoints {} { + if ![info exists ::EMCMOT(EMCMOT)] return + if {[string first motmod $::EMCMOT(EMCMOT)] <= 0} return + set mot [split [lindex $::EMCMOT(EMCMOT) 0]] + foreach item $mot { + set pair [split $item =] + set parm [lindex $pair 0] + set val [lindex $pair 1] + if {"$parm" == "num_extrajoints"} { + set ::num_extrajoints $val + } + } + if [info exists ::num_extrajoints] { + lappend ::wmsg [format "Extra joints specified=%d\n \ +\[KINS\]JOINTS=%d must accommodate kinematic joints *plus* extra joints " \ + $::num_extrajoints $::KINS(JOINTS)] + } +} ;#check_extrajoints + +proc warn_for_multiple_ini_values {} { + set sections [info globals] + set sections_to_check {JOINT_ AXIS_} + + foreach section $sections { + set enforce 0 + foreach csection $sections_to_check { + if {[string first $csection $section"] >= 0} { + set enforce 1 + break + } + } + if !$enforce continue + foreach name [array names ::$section] { + set gsection ::$section + set val [set [set gsection]($name)] + set len [llength $val] + if {$len > 1} { + lappend ::wmsg "Unexpected multiple values \[$section\]$name: $val" + } + } + } +} ;# warn_for_multiple_ini_values + +#---------------------------------------------------------------------- +# begin +package require Linuxcnc ;# parse_ini + +set ::progname [file rootname [file tail [info script]]] +set inifile [lindex $::argv 0] +if ![file exists $inifile] { + err_exit [list "No such file <$inifile>"] +} +if ![file readable $inifile] { + err_exit [list "File not readable <$inifile>"] +} +parse_ini $inifile + +check_mandatory_items + +set kins_kinematics [lindex $::KINS(KINEMATICS) end] +set ::kins(module) [lindex $kins_kinematics 0] + +# parameters specified as parm=value --> ::kins(parm)=value +foreach item $kins_kinematics { + if {[string first = $item] >= 0} { + set l [split $item =] + set ::kins([lindex $l 0]) [lindex $l 1] + } else { + if {"$item" != $::kins(module)} { + puts "Unknown \[KINS\]KINEMATICS item: <$item>" + } + } +} +# coordinates --> ::kins(coordinates) (all if not specified) +if [info exists ::kins(coordinates)] { + set ::kins(coordinates) [split $::kins(coordinates) ""] + set ::kins(coordinates) [string toupper $::kins(coordinates)] +} else { + set ::kins(coordinates) {X Y Z A B C U V W} +} + +# list of joints for each coord --> ::kins(jointidx,coordinateletter) +switch $::kins(module) { + trivkins {joints_for_trivkins $::kins(coordinates)} + default { + puts "$::progname: Unchecked: \[KINS\]KINEMATICS=$::KINS(KINEMATICS)" + exit 0 + } +} +check_extrajoints + +warn_for_multiple_ini_values +#parray ::kins +set emsg [validate_identity_kins_limits] +consistent_coords_for_trivkins $::kins(coordinates) +if [info exists ::wmsg] {warnings $::wmsg} + +if {"$emsg" == ""} {exit 0} +err_exit $emsg diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/check_xyz_constraints.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/check_xyz_constraints.hal new file mode 100755 index 0000000..c2a4320 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/check_xyz_constraints.hal @@ -0,0 +1,63 @@ +# HAL config file to check vel/acc constraints +# +loadrt wcomp names=wcomp_xacc,wcomp_xvel,wcomp_yacc,wcomp_yvel,wcomp_zacc,wcomp_zvel + +addf wcomp_xacc servo-thread +addf wcomp_xvel servo-thread +addf wcomp_yacc servo-thread +addf wcomp_yvel servo-thread +addf wcomp_zacc servo-thread +addf wcomp_zvel servo-thread + +net Xacc => wcomp_xacc.in +net Xvel => wcomp_xvel.in +net Yacc => wcomp_yacc.in +net Yvel => wcomp_yvel.in +net Zacc => wcomp_zacc.in +net Zvel => wcomp_zvel.in + +net acc-ok-x <= wcomp_xacc.out +net vel-ok-x <= wcomp_xvel.out +net acc-ok-y <= wcomp_yacc.out +net vel-ok-y <= wcomp_yvel.out +net acc-ok-z <= wcomp_zacc.out +net vel-ok-z <= wcomp_zvel.out + +setp wcomp_xacc.max 50.001 +setp wcomp_xacc.min -50.001 +setp wcomp_xvel.max 5.001 +setp wcomp_xvel.min -5.001 +setp wcomp_yacc.max 50.001 +setp wcomp_yacc.min -50.001 +setp wcomp_yvel.max 5.001 +setp wcomp_yvel.min -5.001 +setp wcomp_zacc.max 50.001 +setp wcomp_zacc.min -50.001 +setp wcomp_zvel.max 5.001 +setp wcomp_zvel.min -5.001 + +loadrt match8 names=match_all + +addf match_all servo-thread + +net acc-ok-x => match_all.a0 +setp match_all.b0 1 +net vel-ok-x => match_all.a1 +setp match_all.b1 1 +net acc-ok-y => match_all.a2 +setp match_all.b2 1 +net vel-ok-y => match_all.a3 +setp match_all.b3 1 +net acc-ok-z => match_all.a4 +setp match_all.b4 1 +net vel-ok-z => match_all.a5 +setp match_all.b5 1 + +setp match_all.a6 0 +setp match_all.a7 0 +setp match_all.b6 0 +setp match_all.b7 0 + +setp match_all.in 1 + +net constraints-ok <= match_all.out diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_servo.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_servo.hal new file mode 100755 index 0000000..166a46b --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_servo.hal @@ -0,0 +1,74 @@ +# core HAL config file for servos + +# first load the core RT modules that will be needed +# kinematics +loadrt [KINS]KINEMATICS +# motion controller, get name and thread periods from INI file +loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS +# PID module, for three PID loops +loadrt pid num_chan=3 + +# hook functions to realtime thread +addf motion-command-handler servo-thread +addf motion-controller servo-thread +addf pid.0.do-pid-calcs servo-thread +addf pid.1.do-pid-calcs servo-thread +addf pid.2.do-pid-calcs servo-thread + +# connect position feedback +net Xpos-fb joint.0.motor-pos-fb => pid.0.feedback +net Ypos-fb joint.1.motor-pos-fb => pid.1.feedback +net Zpos-fb joint.2.motor-pos-fb => pid.2.feedback + +# create PID to DAC output signals +net Xoutput <= pid.0.output +net Youtput <= pid.1.output +net Zoutput <= pid.2.output + +# set PID loop output limits to +/-1.00 +setp pid.0.maxoutput [JOINT_0]MAX_VELOCITY +setp pid.1.maxoutput [JOINT_1]MAX_VELOCITY +setp pid.2.maxoutput [JOINT_2]MAX_VELOCITY + +# set PID loop gains from INI file + +# the values below come from the INI +setp pid.0.Pgain [JOINT_0]P +setp pid.0.Igain [JOINT_0]I +setp pid.0.Dgain [JOINT_0]D +setp pid.0.bias [JOINT_0]BIAS +setp pid.0.FF0 [JOINT_0]FF0 +setp pid.0.FF1 [JOINT_0]FF1 +setp pid.0.FF2 [JOINT_0]FF2 +# deadband should be just over 1 count +setp pid.0.deadband [JOINT_0]DEADBAND + +setp pid.1.Pgain [JOINT_1]P +setp pid.1.Igain [JOINT_1]I +setp pid.1.Dgain [JOINT_1]D +setp pid.1.bias [JOINT_1]BIAS +setp pid.1.FF0 [JOINT_1]FF0 +setp pid.1.FF1 [JOINT_1]FF1 +setp pid.1.FF2 [JOINT_1]FF2 +# deadband should be just over 1 count +setp pid.1.deadband [JOINT_1]DEADBAND + +setp pid.2.Pgain [JOINT_2]P +setp pid.2.Igain [JOINT_2]I +setp pid.2.Dgain [JOINT_2]D +setp pid.2.bias [JOINT_2]BIAS +setp pid.2.FF0 [JOINT_2]FF0 +setp pid.2.FF1 [JOINT_2]FF1 +setp pid.2.FF2 [JOINT_2]FF2 +# deadband should be just over 1 count +setp pid.2.deadband [JOINT_2]DEADBAND + +# position command signals +net Xpos-cmd joint.0.motor-pos-cmd => pid.0.command +net Ypos-cmd joint.1.motor-pos-cmd => pid.1.command +net Zpos-cmd joint.2.motor-pos-cmd => pid.2.command + +# joint enable signals +net Xenable joint.0.amp-enable-out => pid.0.enable +net Yenable joint.1.amp-enable-out => pid.1.enable +net Zenable joint.2.amp-enable-out => pid.2.enable diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_sim.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_sim.hal new file mode 100755 index 0000000..4bdf936 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_sim.hal @@ -0,0 +1,51 @@ +# core HAL config file for simulation + +# first load all the RT modules that will be needed +# kinematics +loadrt [KINS]KINEMATICS +# motion controller, get name and thread periods from INI file +loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS +# load 6 differentiators (for velocity and accel signals +loadrt ddt names=ddt_x,ddt_xv,ddt_y,ddt_yv,ddt_z,ddt_zv +# load additional blocks +loadrt hypot names=vel_xy,vel_xyz + +# add motion controller functions to servo thread +addf motion-command-handler servo-thread +addf motion-controller servo-thread +# link the differentiator functions into the code +addf ddt_x servo-thread +addf ddt_xv servo-thread +addf ddt_y servo-thread +addf ddt_yv servo-thread +addf ddt_z servo-thread +addf ddt_zv servo-thread +addf vel_xy servo-thread +addf vel_xyz servo-thread + +# create HAL signals for position commands from motion module +# loop position commands back to motion module feedback +net Xpos joint.0.motor-pos-cmd => joint.0.motor-pos-fb ddt_x.in +net Ypos joint.1.motor-pos-cmd => joint.1.motor-pos-fb ddt_y.in +net Zpos joint.2.motor-pos-cmd => joint.2.motor-pos-fb ddt_z.in + +# send the position commands thru differentiators to +# generate velocity and accel signals +net Xvel ddt_x.out => ddt_xv.in vel_xy.in0 +net Xacc <= ddt_xv.out +net Yvel ddt_y.out => ddt_yv.in vel_xy.in1 +net Yacc <= ddt_yv.out +net Zvel ddt_z.out => ddt_zv.in vel_xyz.in0 +net Zacc <= ddt_zv.out + +# Cartesian 2- and 3-axis velocities +net XYvel vel_xy.out => vel_xyz.in1 +net XYZvel <= vel_xyz.out + +# estop loopback +net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in + +# create signals for tool loading loopback +net tool-prep-loop iocontrol.0.tool-prepare iocontrol.0.tool-prepared +net tool-change-loop iocontrol.0.tool-change iocontrol.0.tool-changed + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_sim9.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_sim9.hal new file mode 100755 index 0000000..3146afc --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_sim9.hal @@ -0,0 +1,67 @@ +#!!! DECLINING USAGE use: HALFILE=LIB:basic_sim.tcl to automatically +#!!! make the components and connections required for sim configs + +# core HAL config file for simulation + +# first load all the RT modules that will be needed +# kinematics +loadrt [KINS]KINEMATICS +# motion controller, get name and thread periods from INI file +loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS +# load 6 differentiators (for velocity and accel signals +loadrt ddt names=ddt_x,ddt_xv,ddt_y,ddt_yv,ddt_z,ddt_zv +# load additional blocks +loadrt hypot names=vel_xy,vel_xyz + +# add motion controller functions to servo thread +addf motion-command-handler servo-thread +addf motion-controller servo-thread +# link the differentiator functions into the code +addf ddt_x servo-thread +addf ddt_xv servo-thread +addf ddt_y servo-thread +addf ddt_yv servo-thread +addf ddt_z servo-thread +addf ddt_zv servo-thread +addf vel_xy servo-thread +addf vel_xyz servo-thread + +# create HAL signals for position commands from motion module +# loop position commands back to motion module feedback +net Xpos joint.0.motor-pos-cmd => joint.0.motor-pos-fb ddt_x.in +net Ypos joint.1.motor-pos-cmd => joint.1.motor-pos-fb ddt_y.in +net Zpos joint.2.motor-pos-cmd => joint.2.motor-pos-fb ddt_z.in +net Apos joint.3.motor-pos-cmd => joint.3.motor-pos-fb +net Bpos joint.4.motor-pos-cmd => joint.4.motor-pos-fb +net Cpos joint.5.motor-pos-cmd => joint.5.motor-pos-fb +net Upos joint.6.motor-pos-cmd => joint.6.motor-pos-fb +net Vpos joint.7.motor-pos-cmd => joint.7.motor-pos-fb +net Wpos joint.8.motor-pos-cmd => joint.8.motor-pos-fb + +# send the position commands thru differentiators to +# generate velocity and accel signals +net Xvel ddt_x.out => ddt_xv.in vel_xy.in0 +net Xacc <= ddt_xv.out +net Yvel ddt_y.out => ddt_yv.in vel_xy.in1 +net Yacc <= ddt_yv.out +net Zvel ddt_z.out => ddt_zv.in vel_xyz.in0 +net Zacc <= ddt_zv.out + +# Cartesian 2- and 3-axis velocities +net XYvel vel_xy.out => vel_xyz.in1 +net XYZvel <= vel_xyz.out + +# estop loopback +net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in + +# create signals for tool loading loopback +net tool-prep-loop iocontrol.0.tool-prepare iocontrol.0.tool-prepared +net tool-change-loop iocontrol.0.tool-change iocontrol.0.tool-changed + +net spindle-fwd spindle.0.forward +net spindle-rev spindle.0.reverse +#net spindle-speed spindle.0.speed-out + +net lube iocontrol.0.lube +net flood iocontrol.0.coolant-flood +net mist iocontrol.0.coolant-mist diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_stepper.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_stepper.hal new file mode 100755 index 0000000..b911393 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/core_stepper.hal @@ -0,0 +1,53 @@ +# core HAL config file for steppers + +# first load the core RT modules that will be needed +# kinematics +loadrt [KINS]KINEMATICS +# motion controller, get name and thread periods from INI file +loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS +# stepper module, three step generators, all three using step/dir +loadrt stepgen step_type=0,0,0 + +# hook functions to base thread (high speed thread for step generation) +addf stepgen.make-pulses base-thread + +# hook functions to servo thread +addf stepgen.capture-position servo-thread +addf motion-command-handler servo-thread +addf motion-controller servo-thread +addf stepgen.update-freq servo-thread + +# connect position commands from motion module to step generator +net Xpos-cmd joint.0.motor-pos-cmd => stepgen.0.position-cmd +net Ypos-cmd joint.1.motor-pos-cmd => stepgen.1.position-cmd +net Zpos-cmd joint.2.motor-pos-cmd => stepgen.2.position-cmd + +# connect position feedback from step generators +# to motion module +net Xpos-fb stepgen.0.position-fb => joint.0.motor-pos-fb +net Ypos-fb stepgen.1.position-fb => joint.1.motor-pos-fb +net Zpos-fb stepgen.2.position-fb => joint.2.motor-pos-fb + +# connect enable signals for step generators +net Xen joint.0.amp-enable-out => stepgen.0.enable +net Yen joint.1.amp-enable-out => stepgen.1.enable +net Zen joint.2.amp-enable-out => stepgen.2.enable + +# connect signals to step pulse generator outputs +net Xstep <= stepgen.0.step +net Xdir <= stepgen.0.dir +net Ystep <= stepgen.1.step +net Ydir <= stepgen.1.dir +net Zstep <= stepgen.2.step +net Zdir <= stepgen.2.dir + +# set stepgen module scaling - get values from INI file +setp stepgen.0.position-scale [JOINT_0]SCALE +setp stepgen.1.position-scale [JOINT_1]SCALE +setp stepgen.2.position-scale [JOINT_2]SCALE + +# set stepgen module accel limits - get values from INI file +setp stepgen.0.maxaccel [JOINT_0]STEPGEN_MAXACCEL +setp stepgen.1.maxaccel [JOINT_1]STEPGEN_MAXACCEL +setp stepgen.2.maxaccel [JOINT_2]STEPGEN_MAXACCEL + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/gantrysim.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/gantrysim.hal new file mode 100755 index 0000000..77e9d55 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/gantrysim.hal @@ -0,0 +1,35 @@ +loadrt [KINS]KINEMATICS +show comp + +# motion controller, get name and thread periods from INI file +loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS + +# add motion controller functions to servo thread +addf motion-command-handler servo-thread +addf motion-controller servo-thread + +# create HAL signals for position commands from motion module +# loop position commands back to motion module feedback +net J0pos joint.0.motor-pos-cmd => joint.0.motor-pos-fb +net J1pos joint.1.motor-pos-cmd => joint.1.motor-pos-fb +net J2pos joint.2.motor-pos-cmd => joint.2.motor-pos-fb +net J3pos joint.3.motor-pos-cmd => joint.3.motor-pos-fb + +# estop loopback +net estop-loop iocontrol.0.user-enable-out => iocontrol.0.emc-enable-in + +# create signals for tool loading loopback +net tool-prep-loop iocontrol.0.tool-prepare => iocontrol.0.tool-prepared +net tool-change-loop iocontrol.0.tool-change => iocontrol.0.tool-changed + +# amp control - these nets are not used, but are placeholders for +# converting this sample config to actual machines +net J0ena <= joint.0.amp-enable-out +net J1ena <= joint.1.amp-enable-out +net J2ena <= joint.2.amp-enable-out +net J3ena <= joint.3.amp-enable-out + +net J0flt => joint.0.amp-fault-in +net J1flt => joint.1.amp-fault-in +net J2flt => joint.2.amp-fault-in +net J3flt => joint.3.amp-fault-in diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/hal_procs_lib.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/hal_procs_lib.tcl new file mode 100755 index 0000000..6347d5d --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/hal_procs_lib.tcl @@ -0,0 +1,190 @@ +# hal_procs_lib.tcl +package require Hal ;# provides hal commands + +proc pin_exists {name} { + # return 1 if pin exists + if { [lindex [hal list pin "$name"] 0] == "$name"} {return 1} + return 0 +} ;# pin_exists + +proc connection_info {result_name pinname } { + # return 0 if pinname not found, else 1 + # result_name is associative array with details + # owner type direction value separator signame + upvar $result_name ay + set ans [hal show pin $pinname] + set lines [split $ans \n] + set sig "" + set sep "" + set ct [scan [lindex $lines 2] "%s %s %s %s %s %s %s" \ + owner type dir val name sep sig] + if {$ct <0} { + return 0 + } + set ay(owner) $owner + set ay(type) $type + set ay(direction) $dir + set ay(value) $val + set ay(separator) $sep + set ay(signame) $sig + return 1 +} ;# connection_info + +proc is_connected {pinname {signame {} } } { + # return is_input or is_output or is_io or not_connected + # set signame to signal name if connected + upvar $signame thesig + set ans [hal show pin $pinname] + set lines [split $ans \n] + set thesig "" + set sep "" + set ct [scan [lindex $lines 2] "%s %s %s %s %s %s %s" \ + owner type dir val name sep thesig] + if {$ct <0} {return not_connected} + if {"$sep" == "<=="} {return is_input} + if {"$sep" == "==>"} {return is_output} + if {"$sep" == "<=>"} {return is_io} + return "not_connected" +} ;# is_connected + +proc thread_info {ay_name} { + # return details about threads in associative array ay_name + # items for each $threadname: + # ($threadname,$componentname) $threadname index for $componentname + # ($threadname,fp) $threadname uses floatingpoint + # ($threadname,period) $threadname period + # ($threadname,index,last) $threadname last index used + # + # motion specific items: + # (motion-command-handler,threadname) threadname + # (motion-command-handler,index) index + # (motion-controller,threadname) threadname + # (motion-controller,index) index + # other: + # (threadnames) list of all threanames + # + # return string is $ay(motion-controller,threadname) + + upvar $ay_name ay + set ans [hal show thread] + set lines [split $ans \n] + set header_len 2 + set lines [lreplace $lines 0 [expr $header_len -1]] + set lines [lreplace $lines end end] + set remainder "" + set ct 0 + foreach line $lines { + catch {unset f1 f2 f3 f4} + scan [lindex $lines $ct] \ + "%s %s %s %s" \ + f1 f2 f3 f4 + if ![info exists f3] { + set index $f1; set compname $f2 + set ay($threadname,$compname) $index + set ay($threadname,index,last) $index + if {"$compname" == "motion-command-handler"} { + set ay(motion-command-handler,threadname) $threadname + set ay(motion-command-handler,index) $index + } + if {"$compname" == "motion-controller"} { + set ay(motion-controller,threadname) $threadname + set ay(motion-controller,index) $index + } + } else { + set period $f1; set fp $f2; set threadname $f3 + lappend ay(threadnames) $threadname + set ay($threadname,fp) $fp + set ay($threadname,period) $period + } + incr ct + } + if [info exists ay(motion-controller,threadname)] { + if [info exists ay(motion-command-handler,threadname)] { + if { "$ay(motion-controller,threadname)" \ + != "$ay(motion-command-handler,threadname)" \ + } { + return -code error "thread_info: mot funcs on separate threads" + if { $ay(motion-command-handler,index) \ + > $ay(motion-controller,index) \ + } { + return -code error "thread_info: mot funcs OUT-OF-SEQUENCE" + } + } + return $ay(motion-controller,threadname) + } else { + return -code error "thread_info: motion-controller not found" + } + } +} ;# thread_info + +proc get_netlist {inpins_name outpin_name iopins_name signame} { + # input: signame + # outputs: + # inpins_name list of input pins for signame or "" + # iopins_name list of io pins for signame or "" + # outpin_name output pin for signame or "" + upvar $inpins_name inpins + upvar $iopins_name iopins + upvar $outpin_name outpin + + set inpins "" + set iopins "" + set outpin "" + + set header_len 2 + set lines [split [hal show signal $signame] \n] + set lines [lreplace $lines 0 [expr $header_len -1]] + set lines [lreplace $lines end end] + set ct 0 + foreach line $lines {set l($ct) [string trim $line];incr ct} + set ct_max $ct + set ct 0 + for {set ct 0} {$ct < $ct_max} {incr ct} { + set v0 [lindex $l($ct) 0] + set v1 [lindex $l($ct) 1] + set v2 [lindex $l($ct) 2] + switch $v0 { + float - + bit - + u32 - + s32 {set sname $v2} ;# set on 1st non-header line + "==>" {} + "<==" {} + "<=>" {} + * {return -code error "get_netlist: Unexpected <$line">} + } + if {"$signame"=="$sname"} { + switch $v0 { + "==>" {lappend inpins $v1} + "<==" {lappend outpin $v1} + "<=>" {lappend iopins $v1} + } + } + } +} ;# get_netlist + +proc find_file_in_hallib_path {filename {inifile .}} { + # find halfile using path HALLIB_PATH=.:HALLIB_DIR (see scripts/linuxcnc.in) + set libtag LIB: ;# special prefix for explicit use of hallib file + set halname [lindex $filename end] + if {[string first "$libtag" $halname] == 0} { + # explicit $libtag used + set halname [string range $halname [string len $libtag] end] + set usehalname [file join $::env(HALLIB_DIR) $halname] + } else { + if {[file pathtype $filename] == "absolute"} { + set usehalname $filename + } else { + # relative file specifier (relative to INI file directory) + set usehalname [file join [file dirname $inifile] $halname] + if ![file readable $usehalname] { + # use ::env(HALLIB_DIR) + set usehalname [file join $::env(HALLIB_DIR) $halname] + } + } + } + if [file readable $usehalname] { + return $usehalname + } + return -code error "find_file_in_hallib_path: cannot find: <$filename>" +} ;# find_file_in_hallib_path diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/halcheck.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/halcheck.tcl new file mode 100755 index 0000000..af58589 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/halcheck.tcl @@ -0,0 +1,171 @@ +# halcheck.tcl: a halfile to report: +# 1) functions with no addf (usually an error) +# 2) signals with no inputs (not an error) +# 3) signals with no output (not an error) +# +# Usage in INI file (must be the last HALFILE): +# [HAL] +# ... +# HALFILE = LIB:halcheck.tcl +# +# Note: connections in a POSTGUI_HALFILE are not checked +# + +# config items: +set ::popup 1 ;# default: enable popup (in addition to prints) +set ::bigfont {Helvetica 12 bold} ;# {Family size weight} + +#---------------------------------------------------------------------- +set ::prog halcheck + +# test for ::argv items on halfile line (requires 2.7) +if [info exists ::argv] { + if {[lsearch $::argv nopopup] >= 0} { + set ::popup 0 ;# disable popup + } +} + +#---------------------------------------------------------------------- +proc gui_message { type items } { + if { "$items" == "" } return + # twopass processing uses built-ins only (no Tk) + if {$::popup && [catch {package require Tk} msg]} { + set ::popup 0 + } + if { !$::popup } return + if { ![winfo exists .b] } { + wm title . "HAL checks" + pack [button .b \ + -text Dismiss \ + -command {destroy .} \ + ] -side bottom + } + set items [string map {" " \n} $items] + switch $type { + no_addfs { + pack [label .noa1 \ + -text "Functions with no addf: " \ + -font $::bigfont \ + -relief ridge -bd 3 \ + ] -side top -fill x -expand 1 + pack [label .noa2 \ + -text "$items" \ + -justify left \ + -anchor w \ + -relief sunken -bd 3 \ + ] -side top -fill x -expand 1 + } + no_inputs { + pack [label .noi1 \ + -text "Signals with no inputs: " \ + -font $::bigfont \ + -relief ridge -bd 3 \ + ] -side top -fill x -expand 1 + pack [label .noi2 \ + -text "$items" \ + -justify left \ + -anchor w \ + -relief sunken -bd 3 \ + ] -side top -fill x -expand 1 + } + no_output { + pack [label .noo1 \ + -text "Signals with no output: " \ + -font $::bigfont \ + -relief ridge -bd 3 \ + ] -side top -fill x -expand 1 + pack [label .noo2 \ + -text "$items" \ + -justify left \ + -anchor w \ + -relief sunken -bd 3 \ + ] -side top -fill x -expand 1 + } + } +} ;# gui_message + +proc check_function_usage {} { + set ans [hal show function] + set lines [split $ans \n] + set header_len 2 + set lines [lreplace $lines 0 [expr $header_len -1]] + set lines [lreplace $lines end end] + set ct 0 + set no_addfs "" + foreach line $lines { + catch {unset f1 f2 f3 f4} + scan [lindex $lines $ct] \ + "%s %s %s %s %s %s" \ + owner codeaddr arg fp users name + if {"$users" == 0} { + puts "$::prog: Functions with no addf: $name" + lappend no_addfs $name + } + incr ct + } + gui_message no_addfs $no_addfs +} ;# check_function_usage + +proc check_signal_usage {} { + set ans [hal show signal] + set lines [split $ans \n] + set header_len 2 + set lines [lreplace $lines 0 [expr $header_len -1]] + set lines [lreplace $lines end end] + set ct 0 + foreach line $lines { + set howmany [scan $line "%s%s%s" fld1 fld2 fld3] + if {$howmany == 3} { + set signame $fld3 + set ::SIG($signame,type) $fld1 + set ::SIG($signame,value) $fld2 + set ::SIG($signame,inputs) "" + set ::SIG($signame,output) "" + set ::SIG($signame,ios) "" + continue + } + switch $fld1 { + "==>" {lappend ::SIG($signame,inputs) $fld2} + "<==" {lappend ::SIG($signame,output) $fld2} + "<=>" {lappend ::SIG($signame,ios) $fld2} + default {return -code error "check-signal_usage: unrecognized <$line>"} + } + incr ct + } + set no_inputs "" + foreach iname [array names ::SIG *,inputs] { + set signame [lindex [split $iname ,] 0] + if {$::SIG($iname) == ""} { + set msg "$::prog: Signal: $signame <$::SIG($signame,value)> NO inputs" + if {$::SIG($signame,ios) != ""} { + set msg "$msg (i/o:$::SIG($signame,ios))" + } else { + lappend no_inputs $signame + } + puts "$msg" + } + } + set no_output "" + foreach oname [array names ::SIG *,output] { + set signame [lindex [split $oname ,] 0] + if {$::SIG($oname) == ""} { + set msg "$::prog: Signal: $signame <$::SIG($signame,value)> NO output" + if {$::SIG($signame,ios) != ""} { + set msg "$msg (i/o:$::SIG($signame,ios))" + } else { + lappend no_output $signame + } + puts "$msg" + } + } + foreach iname [array names ::SIG *,ios] { + if { $::SIG($iname) == ""} {unset ::SIG($iname)} + } + gui_message no_inputs $no_inputs + gui_message no_output $no_output +} ;# check_signal_usage + +#---------------------------------------------------------------------- +# begin +check_function_usage +check_signal_usage diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/hookup_moveoff.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/hookup_moveoff.tcl new file mode 100755 index 0000000..38f4cfa --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/hookup_moveoff.tcl @@ -0,0 +1,316 @@ +# hallib procs: +source [file join $::env(HALLIB_DIR) hal_procs_lib.tcl] +# +# hookup_moveoff.tcl -- HALFILE to: +# 1) disconnect initial pos-cmd and pos-fb pin connections +# 2) loadrt the moveoff component with name=mv +# 3) addf the moveoff component functions in required sequence +# 4) reconnect the pos-cmd and pos-fb pins to use the component +# +# Support for demo type INI files where the pos-cmd and pos-fb pins are +# 'shortcircuit' connected together is included. +# +# The moveoff component may be initialized with settings from the INI file +# +# Usage: +# 1) Specify this file in the INI file as [HAL]HALFILE +# Its position must follow halfiles that connect the pos-cmd and +# pos-fb pins. +# [HAL] +# ... +# HALFILE = hookup_moveoff.tcl +# ... +# +# 2) Include INI file entries for moveoff component settings: +# [MOVEOFF] +# EPSILON = +# WAYPOINT_SAMPLE_SECS = +# WAYPOINT_THRESHOLD = +# BACKTRACK_ENABLE = +# +# If these settings are not found in the INI file, the moveoff +# component defaults will be used. +# +# 3) Include INI file entries for the per-joint settings +# [MOVEOFF_n] +# MAX_VELOCITY = +# MAX_ACCELERATION = +# MAX_LIMIT = +# MIN_LIMIT = +# +# If settings are not found in the INI file, the items +# [JOINT_n] +# MAX_VELOCITY = +# MAX_ACCELERATION = +# MAX_LIMIT = +# MIN_LIMIT = +# are used. If these are not defined, the moveoff component +# defaults are used. +# +# To use the (optional) demonstration gui named moveoff_gui, +# include an INI entry: +# +# [APPLICATIONS] +# APP = moveoff_gui option1 option2 ... +# +# For available options, Use: +# $ moveoff_gui --help +# +# The moveoff_gui will provide a display and control for +# enabling offsetting if the pin mv.move-enable is not connected +# when moveoff_gui is started. +# +# If the mv.move-enable pin is connected when moveoff_gui +# is started, then it will provide a display but no control. +# This mode supports hal connections for a jog wheel or other +# methods of controlling the offset input pins (mv.offset-M) + +#----------------------------------------------------------------------- +# Copyright: 2014 +# Authors: Dewey Garrett +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +#----------------------------------------------------------------------- + +proc do_hal {args} { + if {[info exists ::noexecute] && $::noexecute} { + puts "((do_hal))$args" + } else { + if {$::HU(verbose)} {puts do_hal:$args} + eval hal $args + } +} ;# do_hal + +proc setup_pinnames {} { + # Note: works for standard names but a custom proc is needed + # here if the Hal alias command is used on the names + + # Identify JOINT_n stanzas + for {set a 0} {$a < 9} {incr a} { + if [info exists ::JOINT_[set a](TYPE)] { + lappend ::HU(axes) $a + set ::HU(highest_joint_num) $a + } + } + foreach a $::HU(axes) { + set ::HU($a,pos,pinname) joint.${a}.motor-pos-cmd + set ::HU($a,fb,pinname) joint.${a}.motor-pos-fb + } +} ;# setup_pinnames + +proc install_moveoff {} { + # note expected name for moveoff_gui is $::m + set pnumber [expr 1 + $::HU(highest_joint_num)] + do_hal loadrt moveoff personality=$pnumber names=$::m + + set mot_thread $::HU(motion-controller,threadname) + + if [info exists ::HU($mot_thread,motion-controller)] { + set write_index [expr 1 + $::HU($mot_thread,motion-controller)] + } else { + set write_index [expr 1 + $::HU($mot_thread,index,last)] + } + do_hal addf $::m.write-outputs $mot_thread $write_index + + if [info exists ::HU($mot_thread,motion-command-handler)] { + if {1 == $::HU($mot_thread,motion-command-handler) } { + set read_index 1 + } else { + set read_index [expr -1 + $::HU($mot_thread,motion-command-handler)] + } + } else { + set read_index 1 + } + do_hal addf $::m.read-inputs $mot_thread $read_index +} ;# install_moveoff + +proc disconnect_pos_from_motion {a} { + set pinname $::HU($a,pos,pinname) + set inpins {}; set outpin {} + if [connection_info tmp $pinname] { + if {$tmp(signame) != ""} { + get_netlist inpins outpin iopins $tmp(signame) + set ::HU($a,pos,signame) $tmp(signame) + set ::HU($a,pos,inputs) $inpins + set ::HU($a,pos,output) $outpin + } + } else { + return -code error "<$pinname> not connected as expected" + } + do_hal unlinkp $pinname +} ;# disconnect_pos_from_motion + +proc disconnect_fb_to_motion {a} { + set pinname $::HU($a,fb,pinname) + set inpins {}; set outpin {} + if [connection_info tmp $pinname] { + if {$tmp(signame) != ""} { + get_netlist inpins outpin iopins $tmp(signame) + set ::HU($a,fb,signame) $tmp(signame) + set ::HU($a,fb,inputs) $inpins + set ::HU($a,fb,output) $outpin + } + } else { + return -code error "<$pinname> not connected as expected" + } + do_hal unlinkp $pinname +} ;# disconnect_fb_to_motion + +proc check_for_short_circuit {a} { + if {$::HU($a,fb,signame) == $::HU($a,pos,signame)} { + set ::HU($a,shortcircuit) 1 + } else { + set ::HU($a,shortcircuit) 0 + } +} ;# check_for_short_circuit + +proc new_connect_pos_to_moveoff {a} { + do_hal delsig $::HU($a,pos,signame) + do_hal net hu:pos-$a <= $::HU($a,pos,pinname) + do_hal net hu:pos-$a => $::m.pos-$a +} ;# new_connect_pos_to_moveoff + +proc new_connect_plus_offset {a} { + if $::HU($a,shortcircuit) return + do_hal net hu:plus-$a <= $::m.pos-plusoffset-$a + foreach in_pinname $::HU($a,pos,inputs) { + if {"$in_pinname" == "$::HU($a,fb,pinname)"} continue + do_hal unlinkp $in_pinname + do_hal net hu:plus-$a => $in_pinname + } +} ;# new_connect_plus_offset + +proc new_connect_minus_offset {a} { + do_hal net hu:minus-$a <= $::m.fb-minusoffset-$a + do_hal net hu:minus-$a => $::HU($a,fb,pinname) +} ;# new_connect_plus_offset + +proc new_connect_fb_to_moveoff {a} { + if $::HU($a,shortcircuit) return + do_hal delsig $::HU($a,fb,signame) + do_hal net hu:fb-$a => $::m.fb-$a + do_hal net hu:fb-$a <= $::HU($a,fb,output) + foreach in_pinname $::HU($a,fb,inputs) { + if {"$in_pinname" == "$::HU($a,fb,pinname)"} continue + do_hal unlinkp $in_pinname + do_hal net hu:fb-$a => $in_pinname + } +} ;# new_connect_fb_to_moveoff + +proc reconnect_short_circuit {a} { + do_hal net hu:shortcircuit-$a <= $::m.pos-plusoffset-$a + do_hal net hu:shortcircuit-$a => $::m.fb-$a + foreach in_pinname $::HU($a,pos,inputs) { + if {"$in_pinname" == "$::HU($a,fb,pinname)"} {continue} + do_hal unlinkp $in_pinname + do_hal net hu:shortcircuit-$a => $in_pinname + } +} ;# reconnect_short_circuit + +proc set_moveoff_inputs {a} { + foreach {pin ininame} { offset-vel MAX_VELOCITY \ + offset-accel MAX_ACCELERATION \ + offset-max MAX_LIMIT \ + offset-min MIN_LIMIT \ + } { + if [info exists ::MOVEOFF_[set a]($ininame)] { + set ::HU($a,$pin) [set ::MOVEOFF_[set a]($ininame)] + # lindex is used in case there are duplicate entries + set ::HU($a,$pin) [lindex $::HU($a,$pin) end] + } elseif { [info exists ::JOINT_[set a]($ininame)] } { + set ::HU($a,$pin) [set ::JOINT_[set a]($ininame)] + # lindex is used in case there are duplicate entries + set ::HU($a,$pin) [lindex $::HU($a,$pin) end] + puts "hookup_moveoff.tcl:use \[JOINT_$a\]$ininame=$::HU($a,$pin)" + } + if [info exists ::HU($a,$pin)] { + do_hal setp $::m.$pin-$a $::HU($a,$pin) + } + } +} ;# set_moveoff_inputs + +proc set_moveoff_parms {} { + foreach {pin ininame} { epsilon EPSILON \ + waypoint-sample-secs WAYPOINT_SAMPLE_SECS \ + waypoint-threshold WAYPOINT_THRESHOLD \ + backtrack-enable BACKTRACK_ENABLE \ + } { + if {[info exists ::MOVEOFF($ininame)]} { + # lindex is used in case there are duplicate entries + set ::HU($pin) [lindex $::MOVEOFF($ininame) end] + do_hal setp $::m.$pin $::HU($pin) + } + } +} ;# set_moveoff_parms + +proc set_moveoff_controls {} { + return + # provision for future offset control connections +} ;# set_moveoff_controls + +# begin----------------------------------------------------------------- + +set ::m mv ;# moveoff component name + #(must agree with the (optionaL) gui moveoff_gui) + +# debugging items +set ::HU(verbose) 0 +set ::noexecute 0 + +# Provision for twopass compatibility +# (::tp is the namespace for [HAL]TWOPASS processing) +if [namespace exists ::tp] { + set passno [::tp::passnumber] + if {$passno == 0} { + # With twopass processing, the initial pass0 only collects + # loadrt and loadusr commands with no execution. + # So the checks etc herein cannot work until pass1 + # Note that this file only uses loadrt once for the moveoff + # component so it manages its loadrt exclusively + puts "hookup_moveoff.tcl: twopass active, pass $passno skipped" + return + } else { + puts "hookup_moveoff.tcl: twopass active, pass $passno active" + } +} + +if [catch { + set ::HU(cmd) "thread_info ::HU"; eval $::HU(cmd) + set ::HU(cmd) setup_pinnames; eval $::HU(cmd) + set ::HU(cmd) install_moveoff; eval $::HU(cmd) + foreach a $::HU(axes) { + set ::HU(cmd) "disconnect_pos_from_motion $a"; eval $::HU(cmd) + set ::HU(cmd) "disconnect_fb_to_motion $a"; eval $::HU(cmd) + set ::HU(cmd) "check_for_short_circuit $a"; eval $::HU(cmd) + set ::HU(cmd) "new_connect_pos_to_moveoff $a"; eval $::HU(cmd) + set ::HU(cmd) "new_connect_plus_offset $a"; eval $::HU(cmd) + set ::HU(cmd) "new_connect_minus_offset $a"; eval $::HU(cmd) + set ::HU(cmd) "new_connect_fb_to_moveoff $a"; eval $::HU(cmd) + if $::HU($a,shortcircuit) { + set ::HU(cmd) "reconnect_short_circuit $a "; eval $::HU(cmd) + } + set ::HU(cmd) "set_moveoff_inputs $a"; eval $::HU(cmd) + } + set ::HU(cmd) "set_moveoff_parms"; eval $::HU(cmd) + set ::HU(cmd) "set_moveoff_controls"; eval $::HU(cmd) + if $::HU(verbose) {parray ::HU} +} msg ] { + puts "\n\n$::argv0 $::argv" + parray ::HU + catch {puts filename=$filename} + puts "\n failing cmd=$::HU(cmd)" + puts msg=<$msg> + return -code error +} diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/lathe.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/lathe.hal new file mode 100755 index 0000000..1e8b3ca --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/lathe.hal @@ -0,0 +1,69 @@ +# counting the spindle encoder in software +loadrt encoder names=encoder_0 +# simulate the encoder +loadrt sim_encoder names=sim_encoder_0 +loadrt limit2 names=limit_speed + +addf limit_speed servo-thread + +####################################################### +# Beginning of threading related stuff +####################################################### + +# spindle speed control +net spindle-speed-cmd spindle.0.speed-out => limit_speed.in +net spindle-speed-limited limit_speed.out => sim_encoder_0.speed + +# simulate spindle mass +setp limit_speed.maxv 500.0 # rpm/second + +# spindle encoder +# connect encoder signals to encoder counter +net spindle-phase-A sim_encoder_0.phase-A => encoder_0.phase-A +net spindle-phase-B sim_encoder_0.phase-B => encoder_0.phase-B +net spindle-phase-Z sim_encoder_0.phase-Z => encoder_0.phase-Z + +# assume 120 ppr = 480 counts/rev for the spindle +setp sim_encoder_0.ppr 120 +# iocontrol output is in rpm, but sim-encoder speed is rps +setp sim_encoder_0.scale 60 +# scale encoder output to read in revolutions +# (that way thread pitches can be straightforward, +# a 20 tpi thread would multiply the encoder output +# by 1/20, etc) +setp encoder_0.position-scale 480 + +# encoder reset control +# hook up motion controller's sync output +net spindle-index-enable spindle.0.index-enable <=> encoder_0.index-enable + +# report our revolution count to the motion controller +net spindle-pos encoder_0.position => spindle.0.revs + +# for spindle velocity estimate +loadrt lowpass names=lowpass_velocity +loadrt scale names=scale_to_rpm +net spindle-rps-raw encoder_0.velocity lowpass_velocity.in +net spindle-rps-filtered lowpass_velocity.out scale_to_rpm.in spindle.0.speed-in +net spindle-rpm-filtered scale_to_rpm.out +setp scale_to_rpm.gain 60 +setp lowpass_velocity.gain .07 +addf lowpass_velocity servo-thread +addf scale_to_rpm servo-thread + +# for at-speed detection +loadrt near names=near_speed +addf near_speed servo-thread +setp near_speed.scale 1.1 +setp near_speed.difference 10 +net spindle-speed-cmd => near_speed.in1 +net spindle-rpm-filtered => near_speed.in2 +net spindle-at-speed near_speed.out spindle.0.at-speed + +net spindle-fwd <= spindle.0.forward + +addf encoder.capture-position servo-thread +addf sim-encoder.update-speed servo-thread + +addf sim-encoder.make-pulses base-thread +addf encoder.update-counters base-thread diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/locking_indexer.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/locking_indexer.hal new file mode 100755 index 0000000..5a147fa --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/locking_indexer.hal @@ -0,0 +1,11 @@ +# simulate a locking rotary axis B + +loadrt timedelay names=timedelay_unlock +addf timedelay_unlock servo-thread + +net B-unlock joint.4.unlock => timedelay_unlock.in +net B-is-unlocked timedelay_unlock.out => joint.4.is-unlocked + +setp timedelay_unlock.on-delay 0.75 +setp timedelay_unlock.off-delay 0.5 + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/moveoff_external.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/moveoff_external.hal new file mode 100755 index 0000000..92c205a --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/moveoff_external.hal @@ -0,0 +1,28 @@ +# moveoff_external.hal (for use with moveoff_gui) + +# This halfile demonstrates how a connection to +# mv.move-enable +# allows moveoff_gui to interface with other connections that control: +# mv.move-enable +# mv.offset-in-M + +# This halfile should follow halfiles which loadrt the moveoff component +#----------------------------------------------------------------------- + +# Overall enable for the component: +# 0 ==> external control of mv.move-enable required +setp mv.move-enable 0 + +# When the mv.move-enable pin is connected to a signal, moveoff_gui +# will provide display but no controls. +# An external app must connect the mv.move-enable pin to control: +net external_enable mv.move-enable + +# An external app must connect to the mv.offset-in-M pins to control: +net external_offset_0 mv.offset-in-0 +net external_offset_1 mv.offset-in-1 +net external_offset_2 mv.offset-in-2 + +# An external app may optionally connect the mv.backtrack-enable pin +# to manage backtracking: +net external_backtrack_en mv.backtrack-enable diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/plasmac.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/plasmac.tcl new file mode 100755 index 0000000..77db473 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/plasmac.tcl @@ -0,0 +1,79 @@ + +# ***** THIS FILE IS USED ONLY BY CONFIGS THAT HAVE BEEN MIGRATED FROM A PLASMAC CONFIGURATION ***** + +# common connections for the plasmac component + +# PLASMAC COMPONENT ########################################################## +loadrt plasmac +addf plasmac servo-thread + +# COMPONENT INPUTS ########################################################### +net plasmac:axis-x-position axis.x.pos-cmd => plasmac.axis-x-position +net plasmac:axis-y-position axis.y.pos-cmd => plasmac.axis-y-position +net plasmac:current-velocity motion.current-vel => plasmac.current-velocity +net plasmac:cutting-start spindle.0.on => plasmac.cutting-start +net plasmac:feed-override halui.feed-override.value => plasmac.feed-override +net plasmac:feed-reduction motion.analog-out-03 => plasmac.feed-reduction +net plasmac:feed-upm motion.feed-upm => plasmac.feed-upm +net plasmac:homed motion.is-all-homed => plasmac.homed +net plasmac:ignore-arc-ok-0 motion.digital-out-01 => plasmac.ignore-arc-ok-0 +net plasmac:motion-type motion.motion-type => plasmac.motion-type +net plasmac:offsets-active motion.eoffset-active => plasmac.offsets-active +net plasmac:program-is-idle halui.program.is-idle => plasmac.program-is-idle +net plasmac:program-is-paused halui.program.is-paused => plasmac.program-is-paused +net plasmac:program-is-running halui.program.is-running => plasmac.program-is-running +net plasmac:thc-disable motion.digital-out-02 => plasmac.thc-disable +net plasmac:torch-off motion.digital-out-03 => plasmac.torch-off +net plasmac:units-per-mm halui.machine.units-per-mm => plasmac.units-per-mm +net plasmac:x-offset-current axis.x.eoffset => plasmac.x-offset-current +net plasmac:y-offset-current axis.y.eoffset => plasmac.y-offset-current +net plasmac:z-offset-current axis.z.eoffset => plasmac.z-offset-current + +# use existing machine-is-on signal from pncconf if it exists +if {[hal list sig machine-is-on] != {}} { + net machine-is-on => plasmac.machine-is-on +} else { + net machine-is-on halui.machine.is-on => plasmac.machine-is-on +} + +# if no new dbounce then use old debounce component for legacy plasmac conversions +if {[hal list pin db_float.out] != {}} { + net plasmac:arc-ok db_arc-ok.out => plasmac.arc-ok-in + net plasmac:breakaway-switch-out db_breakaway.out => plasmac.breakaway + net plasmac:float-switch-out db_float.out => plasmac.float-switch + net plasmac:ohmic-probe-out db_ohmic.out => plasmac.ohmic-probe +} else { + net plasmac:breakaway-switch-out debounce.0.1.out => plasmac.breakaway + net plasmac:float-switch-out debounce.0.0.out => plasmac.float-switch + net plasmac:ohmic-probe-out debounce.0.2.out => plasmac.ohmic-probe +} + +# COMPONENT OUTPUTS ########################################################## +net plasmac:adaptive-feed plasmac.adaptive-feed => motion.adaptive-feed +net plasmac:cutting-stop halui.spindle.0.stop => plasmac.cutting-stop +net plasmac:feed-hold plasmac.feed-hold => motion.feed-hold +net plasmac:jog-inhibit plasmac.jog-inhibit => motion.jog-inhibit motion.jog-stop +net plasmac:offset-scale plasmac.offset-scale => axis.x.eoffset-scale axis.y.eoffset-scale axis.z.eoffset-scale +net plasmac:program-pause plasmac.program-pause => halui.program.pause +net plasmac:program-resume plasmac.program-resume => halui.program.resume +net plasmac:program-run plasmac.program-run => halui.program.run +net plasmac:program-stop plasmac.program-stop => halui.program.stop +net plasmac:torch-on plasmac.torch-on +net plasmac:x-offset-counts plasmac.x-offset-counts => axis.x.eoffset-counts +net plasmac:y-offset-counts plasmac.y-offset-counts => axis.y.eoffset-counts +net plasmac:xy-offset-enable plasmac.xy-offset-enable => axis.x.eoffset-enable axis.y.eoffset-enable +net plasmac:z-offset-counts plasmac.z-offset-counts => axis.z.eoffset-counts +net plasmac:z-offset-enable plasmac.z-offset-enable => axis.z.eoffset-enable + +# multiple spindles +if [info exists ::TRAJ(SPINDLES)] { + set num_spindles [lindex $::TRAJ(SPINDLES) 0] + if {$num_spindles > 1} {net plasmac:scribe-start spindle.1.on => plasmac.scribe-start} + if {$num_spindles > 2} {net plasmac:spotting-start spindle.2.on => plasmac.spotting-start} +} + +# powermax serial communications +# for qtplasmac +if [info exists ::QTPLASMAC(PM_PORT)] {loadusr -Wn pmx485 pmx485 [lindex $::QTPLASMAC(PM_PORT) 0]} +# for plasmac +if [info exists ::PLASMAC(PM_PORT)] {loadusr -Wn pmx485 plasmac/pmx485.py [lindex $::PLASMAC(PM_PORT) 0]} diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/qtplasmac_comp.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/qtplasmac_comp.hal new file mode 100755 index 0000000..f3fc216 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/qtplasmac_comp.hal @@ -0,0 +1,51 @@ + +# ***** plasmac component connections for a QtPlasmaC configuration ***** + +# do not make any changes to this file, it may be overwritten by future updates +# make all customizations in custom.hal or custom_postgui.hal + +# ---PLASMAC COMPONENT INPUTS--- +net plasmac:arc-ok db_arc-ok.out => plasmac.arc-ok-in +net plasmac:axis-x-position axis.x.pos-cmd => plasmac.axis-x-position +net plasmac:axis-y-position axis.y.pos-cmd => plasmac.axis-y-position +net plasmac:breakaway-switch-out db_breakaway.out => plasmac.breakaway +net plasmac:current-velocity motion.current-vel => plasmac.current-velocity +net plasmac:cutting-start spindle.0.on => plasmac.cutting-start +net plasmac:cutting-stop halui.spindle.0.stop => plasmac.cutting-stop +net plasmac:feed-override halui.feed-override.value => plasmac.feed-override +net plasmac:feed-reduction motion.analog-out-03 => plasmac.feed-reduction +net plasmac:float-switch-out db_float.out => plasmac.float-switch +net plasmac:feed-upm motion.feed-upm => plasmac.feed-upm +net plasmac:homed motion.is-all-homed => plasmac.homed +net plasmac:ignore-arc-ok-0 motion.digital-out-01 => plasmac.ignore-arc-ok-0 +net machine-is-on halui.machine.is-on => plasmac.machine-is-on +net plasmac:motion-type motion.motion-type => plasmac.motion-type +net plasmac:offsets-active motion.eoffset-active => plasmac.offsets-active +net plasmac:ohmic-probe-out db_ohmic.out => plasmac.ohmic-probe +net plasmac:program-is-idle halui.program.is-idle => plasmac.program-is-idle +net plasmac:program-is-paused halui.program.is-paused => plasmac.program-is-paused +net plasmac:program-is-running halui.program.is-running => plasmac.program-is-running +net plasmac:scribe-start spindle.1.on => plasmac.scribe-start +net plasmac:spotting-start spindle.2.on => plasmac.spotting-start +net plasmac:thc-disable motion.digital-out-02 => plasmac.thc-disable +net plasmac:torch-off motion.digital-out-03 => plasmac.torch-off +net plasmac:units-per-mm halui.machine.units-per-mm => plasmac.units-per-mm +net plasmac:x-offset-current axis.x.eoffset => plasmac.x-offset-current +net plasmac:y-offset-current axis.y.eoffset => plasmac.y-offset-current +net plasmac:z-offset-current axis.z.eoffset => plasmac.z-offset-current + +# ---PLASMAC COMPONENT OUTPUTS--- +net plasmac:adaptive-feed plasmac.adaptive-feed => motion.adaptive-feed +net plasmac:feed-hold plasmac.feed-hold => motion.feed-hold +net plasmac:jog-inhibit plasmac.jog-inhibit => motion.jog-inhibit motion.jog-stop +net plasmac:offset-scale plasmac.offset-scale => axis.x.eoffset-scale axis.y.eoffset-scale axis.z.eoffset-scale +net plasmac:program-pause plasmac.program-pause => halui.program.pause +net plasmac:program-resume plasmac.program-resume => halui.program.resume +net plasmac:program-run plasmac.program-run => halui.program.run +net plasmac:program-stop plasmac.program-stop => halui.program.stop +net plasmac:torch-on plasmac.torch-on +net plasmac:x-offset-counts plasmac.x-offset-counts => axis.x.eoffset-counts +net plasmac:y-offset-counts plasmac.y-offset-counts => axis.y.eoffset-counts +net plasmac:xy-offset-enable plasmac.xy-offset-enable => axis.x.eoffset-enable axis.y.eoffset-enable +net plasmac:z-offset-counts plasmac.z-offset-counts => axis.z.eoffset-counts +net plasmac:z-offset-enable plasmac.z-offset-enable => axis.z.eoffset-enable diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/servo_sim.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/servo_sim.hal new file mode 100755 index 0000000..7e3ac85 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/servo_sim.hal @@ -0,0 +1,285 @@ +# HAL config file for simulated servo machine + +# first load all the RT modules that will be needed +# kinematics +loadrt [KINS]KINEMATICS +# motion controller, get name and thread periods from INI file +loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS +# PID module, for three PID loops +loadrt pid names=pid_x,pid_y,pid_z +# 6 differentiators (for velocity and accel sigs) +loadrt ddt names=ddt_x,ddt_xv,ddt_y,ddt_yv,ddt_z,ddt_zv +# three scale blocks (to simulate motor and leadscrew scaling) +loadrt scale names=scale_x,scale_y,scale_z +# three lowpass filters (to simulate motor inertia), and nine +loadrt lowpass names=lowpass_x,lowpass_y,lowpass_z +# window comparators (to simulate limit and home switches) +loadrt wcomp names=wcomp_xneg,wcomp_xpos,wcomp_xhome,wcomp_yneg,wcomp_ypos,wcomp_yhome,wcomp_zneg,wcomp_zpos,wcomp_zhome + +# simulated encoders +loadrt sim_encoder names=sim_encoder_px,sim_encoder_py,sim_encoder_pz +# software encoder counters, 3 for feedback, 3 for actual axis pos +loadrt encoder names=encoder_px,encoder_py,encoder_pz,encoder_x,encoder_y,encoder_z +# add encoder counter and simulator functions to high speed thread +addf sim-encoder.make-pulses base-thread +addf encoder.update-counters base-thread + +# add all required functions to servo thread +addf encoder.capture-position servo-thread +addf wcomp_xneg servo-thread +addf wcomp_xpos servo-thread +addf wcomp_xhome servo-thread +addf wcomp_yneg servo-thread +addf wcomp_ypos servo-thread +addf wcomp_yhome servo-thread +addf wcomp_zneg servo-thread +addf wcomp_zpos servo-thread +addf wcomp_zhome servo-thread +addf motion-command-handler servo-thread +addf motion-controller servo-thread +addf pid_x.do-pid-calcs servo-thread +addf pid_y.do-pid-calcs servo-thread +addf pid_z.do-pid-calcs servo-thread +addf scale_x servo-thread +addf scale_y servo-thread +addf scale_z servo-thread +addf lowpass_x servo-thread +addf lowpass_y servo-thread +addf lowpass_z servo-thread +addf sim-encoder.update-speed servo-thread + +# link the differentiator functions into the code +addf ddt_x servo-thread +addf ddt_xv servo-thread +addf ddt_y servo-thread +addf ddt_yv servo-thread +addf ddt_z servo-thread +addf ddt_zv servo-thread + +# get position feedback from encoder module +# connect position feedback to PID loop and motion module +net Xpos-fb encoder_px.position => pid_x.feedback joint.0.motor-pos-fb +net Ypos-fb encoder_py.position => pid_y.feedback joint.1.motor-pos-fb +net Zpos-fb encoder_pz.position => pid_z.feedback joint.2.motor-pos-fb + +# set position feedback scaling +setp encoder_px.position-scale [JOINT_0]INPUT_SCALE +setp encoder_py.position-scale [JOINT_1]INPUT_SCALE +setp encoder_pz.position-scale [JOINT_2]INPUT_SCALE + +# connect encoder index-enables for homing on index +net Xindex-enable encoder_px.index-enable <=> joint.0.index-enable pid_x.index-enable +net Yindex-enable encoder_py.index-enable <=> joint.1.index-enable +net Zindex-enable encoder_pz.index-enable <=> joint.2.index-enable + +# connect position commands from motion controller to PID input +net Xpos-cmd <= joint.0.motor-pos-cmd => pid_x.command +net Ypos-cmd <= joint.1.motor-pos-cmd => pid_y.command +net Zpos-cmd <= joint.2.motor-pos-cmd => pid_z.command + +# connect motion controller enables to PID blocks +net Xenable joint.0.amp-enable-out => pid_x.enable +net Yenable joint.1.amp-enable-out => pid_y.enable +net Zenable joint.2.amp-enable-out => pid_z.enable + +# connect PID loops to scale blocks that translate to motor revs per sec +net Xoutput pid_x.output => scale_x.in +net Youtput pid_y.output => scale_y.in +net Zoutput pid_z.output => scale_z.in + +# set scaling, number of motor revs needed to +# travel one inch +setp scale_x.gain [JOINT_0]DRIVE_RATIO +setp scale_y.gain [JOINT_1]DRIVE_RATIO +setp scale_z.gain [JOINT_2]DRIVE_RATIO + +# motor speed command sigs come from scale blocks +# motor speed commands go thru lowpass filters +# to simulate motor inertia +net Xmtr-cmd scale_x.out => lowpass_x.in +net Ymtr-cmd scale_y.out => lowpass_y.in +net Zmtr-cmd scale_z.out => lowpass_z.in + +# set "inertia" here, probably by trial and error +setp lowpass_x.gain 0.1 +setp lowpass_y.gain 0.1 +setp lowpass_z.gain 0.1 + +# "actual" motor speed signals +# output of lowpass is simulated motor speed +# speed goes to simulated encoders +net Xmtr-spd lowpass_x.out => sim_encoder_px.speed +net Ymtr-spd lowpass_y.out => sim_encoder_py.speed +net Zmtr-spd lowpass_z.out => sim_encoder_pz.speed + +# set simulated encoder scaling +setp sim_encoder_px.ppr [JOINT_0]MOTOR_PPR +setp sim_encoder_py.ppr [JOINT_1]MOTOR_PPR +setp sim_encoder_pz.ppr [JOINT_2]MOTOR_PPR + +# simulated encoder output signals +# connect them up +net XphA sim_encoder_px.phase-A => encoder_px.phase-A +net XphB sim_encoder_px.phase-B => encoder_px.phase-B +net XphZ sim_encoder_px.phase-Z => encoder_px.phase-Z +net YphA sim_encoder_py.phase-A => encoder_py.phase-A +net YphB sim_encoder_py.phase-B => encoder_py.phase-B +net YphZ sim_encoder_py.phase-Z => encoder_py.phase-Z +net ZphA sim_encoder_pz.phase-A => encoder_pz.phase-A +net ZphB sim_encoder_pz.phase-B => encoder_pz.phase-B +net ZphZ sim_encoder_pz.phase-Z => encoder_pz.phase-Z + +# set PID loop output limits to max velocity +setp pid_x.maxoutput [JOINT_0]MAX_VELOCITY +setp pid_y.maxoutput [JOINT_1]MAX_VELOCITY +setp pid_z.maxoutput [JOINT_2]MAX_VELOCITY + +# set PID loop gains +# NOTE: eventually these will be non-zero values as +# needed to tune the performance of each axis. The +# initial values shown here are extremely conservative +# to prevent unexpected behavior. After this file +# has been "executed" by halcmd, the gains can be +# interactively adjusted using commands like +# "halcmd setp pid..Pgain " +# Once the axis has been tuned to your satisfaction, +# do "halcmd show param | grep pid" to get a listing +# of the tuning parameters, and enter those values here. + +# the values below come from the INI +setp pid_x.Pgain [JOINT_0]PGAIN +setp pid_x.Igain [JOINT_0]IGAIN +setp pid_x.Dgain [JOINT_0]DGAIN +setp pid_x.bias [JOINT_0]BIAS +setp pid_x.FF0 [JOINT_0]FF0 +setp pid_x.FF1 [JOINT_0]FF1 +setp pid_x.FF2 [JOINT_0]FF2 +# deadband should be just over 1 count +setp pid_x.deadband [JOINT_0]DEADBAND + +setp pid_y.Pgain [JOINT_1]PGAIN +setp pid_y.Igain [JOINT_1]IGAIN +setp pid_y.Dgain [JOINT_1]DGAIN +setp pid_y.bias [JOINT_1]BIAS +setp pid_y.FF0 [JOINT_1]FF0 +setp pid_y.FF1 [JOINT_1]FF1 +setp pid_y.FF2 [JOINT_1]FF2 +# deadband should be just over 1 count +setp pid_y.deadband [JOINT_1]DEADBAND + +setp pid_z.Pgain [JOINT_2]PGAIN +setp pid_z.Igain [JOINT_2]IGAIN +setp pid_z.Dgain [JOINT_2]DGAIN +setp pid_z.bias [JOINT_2]BIAS +setp pid_z.FF0 [JOINT_2]FF0 +setp pid_z.FF1 [JOINT_2]FF1 +setp pid_z.FF2 [JOINT_2]FF2 +# deadband should be just over 1 count +setp pid_z.deadband [JOINT_2]DEADBAND + +# send the position commands thru differentiators to +# generate velocity and accel signals +net Xvel ddt_x.out => ddt_xv.in +net Xacc <= ddt_xv.out +net Yvel ddt_y.out => ddt_yv.in +net Yacc <= ddt_yv.out +net Zvel ddt_z.out => ddt_zv.in +net Zacc <= ddt_zv.out + +# estop loopback +net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in + +# create signals for tool loading loopback +net tool-prep-loop iocontrol.0.tool-prepare iocontrol.0.tool-prepared +net tool-change-loop iocontrol.0.tool-change iocontrol.0.tool-changed + +net xflt => joint.0.amp-fault-in +net yflt => joint.1.amp-fault-in +net zflt => joint.2.amp-fault-in + +# a second set of encoder counters keeps track of position +net XphA => encoder_x.phase-A +net XphB => encoder_x.phase-B +net YphA => encoder_y.phase-A +net YphB => encoder_y.phase-B +net ZphA => encoder_z.phase-A +net ZphB => encoder_z.phase-B + +setp encoder_x.position-scale [JOINT_0]INPUT_SCALE +setp encoder_y.position-scale [JOINT_1]INPUT_SCALE +setp encoder_z.position-scale [JOINT_2]INPUT_SCALE + +# connect "actual" position from encoders +# to window comparators +net Xaxis-pos encoder_x.position => wcomp_xneg.in wcomp_xpos.in wcomp_xhome.in +net Yaxis-pos encoder_y.position => wcomp_yneg.in wcomp_ypos.in wcomp_yhome.in +net Zaxis-pos encoder_z.position => wcomp_zneg.in wcomp_zpos.in wcomp_zhome.in + +# connect simulated switch outputs to motion controller +net Xminlim wcomp_xneg.out => joint.0.neg-lim-sw-in +net Xmaxlim wcomp_xpos.out => joint.0.pos-lim-sw-in +net Xhome wcomp_xhome.out => joint.0.home-sw-in + +net Yminlim wcomp_yneg.out => joint.1.neg-lim-sw-in +net Ymaxlim wcomp_ypos.out => joint.1.pos-lim-sw-in +net Yhome wcomp_yhome.out => joint.1.home-sw-in + +net Zminlim wcomp_zneg.out => joint.2.neg-lim-sw-in +net Zmaxlim wcomp_zpos.out => joint.2.pos-lim-sw-in +net Zhome wcomp_zhome.out => joint.2.home-sw-in + +# configure the points at which the simulated switches trip +# X axis first +# min limit switch +setp wcomp_xneg.max [JOINT_0]MIN_HARD_LIMIT +setp wcomp_xneg.min [JOINT_0]MIN_HARD_LIMIT_RELEASE +# max limit switch +setp wcomp_xpos.min [JOINT_0]MAX_HARD_LIMIT +setp wcomp_xpos.max [JOINT_0]MAX_HARD_LIMIT_RELEASE +# home switch +setp wcomp_xhome.min [JOINT_0]HOME_SW_MIN +setp wcomp_xhome.max [JOINT_0]HOME_SW_MAX + +# Y axis +# min limit switch +setp wcomp_yneg.max [JOINT_1]MIN_HARD_LIMIT +setp wcomp_yneg.min [JOINT_1]MIN_HARD_LIMIT_RELEASE +# max limit switch +setp wcomp_ypos.min [JOINT_1]MAX_HARD_LIMIT +setp wcomp_ypos.max [JOINT_1]MAX_HARD_LIMIT_RELEASE +# home switch +setp wcomp_yhome.min [JOINT_1]HOME_SW_MIN +setp wcomp_yhome.max [JOINT_1]HOME_SW_MAX + +# Z axis +# min limit switch +setp wcomp_zneg.max [JOINT_2]MIN_HARD_LIMIT +setp wcomp_zneg.min [JOINT_2]MIN_HARD_LIMIT_RELEASE +# max limit switch +setp wcomp_zpos.min [JOINT_2]MAX_HARD_LIMIT +setp wcomp_zpos.max [JOINT_2]MAX_HARD_LIMIT_RELEASE +# home switch +setp wcomp_zhome.min [JOINT_2]HOME_SW_MIN +setp wcomp_zhome.max [JOINT_2]HOME_SW_MAX + +# Configure fake probing +loadrt sphereprobe names=sphereprobe + +addf sphereprobe base-thread 2 + +setp sphereprobe.cx -2811 # this is where it ends up after homing +setp sphereprobe.cz -6000 # this is where it ends up after homing +setp sphereprobe.r 5000 # 5/6 inch +net px encoder_px.rawcounts => sphereprobe.px +net py encoder_py.rawcounts => sphereprobe.py +net pz encoder_pz.rawcounts => sphereprobe.pz +net probe-out sphereprobe.probe-out => motion.probe-input +net probe-out => encoder_px.latch-input encoder_py.latch-input +net probe-out => encoder_pz.latch-input + +setp encoder_px.latch-rising 1 +setp encoder_px.latch-falling 1 +setp encoder_py.latch-rising 1 +setp encoder_py.latch-falling 1 +setp encoder_pz.latch-rising 1 +setp encoder_pz.latch-falling 1 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_ldelta.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_ldelta.hal new file mode 100755 index 0000000..01a4248 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_ldelta.hal @@ -0,0 +1,43 @@ +# core HAL config file for simulation + +# first load all the RT modules that will be needed +# kinematics +loadrt [KINS]KINEMATICS +#loadrt lineardeltakins +# motion controller, get name and thread periods from INI file +loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS + +loadusr -W lineardelta MIN_JOINT=-420 + +# add motion controller functions to servo thread +addf motion-command-handler servo-thread +addf motion-controller servo-thread + +# create HAL signals for position commands from motion module +# loop position commands back to motion module feedback +net J0pos joint.0.motor-pos-cmd => joint.0.motor-pos-fb lineardelta.joint0 +net J1pos joint.1.motor-pos-cmd => joint.1.motor-pos-fb lineardelta.joint1 +net J2pos joint.2.motor-pos-cmd => joint.2.motor-pos-fb lineardelta.joint2 +net Apos joint.3.motor-pos-cmd => joint.3.motor-pos-fb + +net L lineardeltakins.L => lineardelta.L +net R lineardeltakins.R => lineardelta.R + +sets L 269 +sets R 130.25 + +# estop loopback +net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in + +# create signals for tool loading loopback +net tool-prep-loop iocontrol.0.tool-prepare iocontrol.0.tool-prepared +net tool-change-loop iocontrol.0.tool-change iocontrol.0.tool-changed + +net spindle-fwd spindle.0.forward +net spindle-rev spindle.0.reverse +#net spindle-speed spindle.0.speed-out + +net lube iocontrol.0.lube +net flood iocontrol.0.coolant-flood +net mist iocontrol.0.coolant-mist + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_lib.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_lib.tcl new file mode 100755 index 0000000..7d98add --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_lib.tcl @@ -0,0 +1,498 @@ +# sim_lib.tcl: haltcl procs for sim configurations + +#---------------------------------------------------------------------- +# Notes (Joints-Axes): +# 1) if ::KINS(KINEMATICS) exists: +# loadrt the kins using any included parameters +# example: for inifile item: +# [KINS]KINEMATICS = trivkins coordinates=XZ kinstype=BOTH +# use: +# loadrt trivkins coordinates=xz kinstype=BOTH +# else: +# loadrt trivkins +# +# 2) NB: If $::KINS(KINEMATICS) specifies coordinates=, the +# coordinates must agree with ::TRAJ(COORDINATES) +# +# 3) if known kins (trivkins) and xyz, make hypotenuse velocity +# pins for xy,xyz +#---------------------------------------------------------------------- + +proc indices_for_trivkins {axes} { + # ref: src/emc/kinematics/trivkins.c + if {"$axes" == ""} {set axes {x y z a b c u v w}} + set i 0 + foreach a [string tolower $axes] { + # assign to consecutive joints: + set ::SIM_LIB(jointidx,$a) $i + incr i + } +} ;# indices_for_trivkins + +proc get_traj_coordinates {} { + # initraj.cc: coordinates may be with or without spaces X Z or XZ + # convert either form to list like {x z} + set coordinates [lindex $::TRAJ(COORDINATES) 0] + set coordinates [string map {" " "" "\t" ""} $coordinates] + set coordinates [split $coordinates ""] + return [string tolower $coordinates] +} ;# get_traj_coordinates + +proc check_ini_items {} { + foreach {section item} {KINS KINEMATICS + KINS JOINTS + TRAJ COORDINATES + } { + if ![info exists ::${section}($item)] { + return -code error "Missing inifile item: \[$section\]$item" + } + } + + if { [info exists ::DISPLAY(LATHE)] + && [lsearch $::KINS(KINEMATICS) trivkins] >= 0 + } { + # reject historical lathe config using default trivkins coordinates (all) + if {[string first "=" $::KINS(KINEMATICS)] < 0} { + set msg "trivkins lathe config must specify coordinates= " + set msg "$msg\n(typically use \[KINS]KINEMATICS trivkins coordinates=XZ)" + return -code error "$msg" + } + } + + set n_extrajoints 0 + if [info exists ::EMCMOT(EMCMOT)] { + set mot [split [lindex $::EMCMOT(EMCMOT) 0]] + if {[string first motmod $mot] >= 0} { + foreach item $mot { + if {[string first num_extrajoints= $item] < 0} continue + set n_extrajoints [lindex [split $item =] end] + } ;# foreach + } + } + + set kins [split [lindex $::KINS(KINEMATICS) 0]] + if {[string first trivkins $kins] >= 0} { + foreach item $kins { + if {[string first coordinates= $item] < 0} continue + set tcoords [lindex [split $item =] end] + set len_tcoords [string len $tcoords] + set expected_joints [expr $len_tcoords + $n_extrajoints] + if {$expected_joints != $::KINS(JOINTS)} { + set m "\ncheck_ini_items: WARNING:\n" + set m "$m trivkins coordinates=$tcoords specifies $len_tcoords joints\n" + set m "$m trivkins extrajoints=$n_extrajoints\n" + set m "$m trivkins totaljoints=$expected_joints\n" + set m "$m !!! but \[KINS\]JOINTS=$::KINS(JOINTS)\n" + puts stderr $m + } + } ;# foreach + } + return +} ;# check_ini_items + +proc setup_kins {axes} { + if ![info exists ::KINS(KINEMATICS)] { + puts stderr "setup_kins: NO \[KINS\]KINEMATICS, trying default trivkins" + loadrt trivkins + return + } + set kins_kinematics [lindex $::KINS(KINEMATICS) end] + set cmd "loadrt $kins_kinematics" ;# may include parms + set kins_module [lindex $kins_kinematics 0] + + puts stderr "setup_kins: cmd=$cmd" + if [catch {eval $cmd} msg] { + puts stderr "\nmsg=$msg\n" + } + + # set up axis indices for known kins + switch $kins_module { + trivkins {indices_for_trivkins $axes} + default { + puts stderr "setup_kins: unknown \[KINS\]KINEMATICS=<$::KINS(KINEMATICS)>" + } + } +} ;# setup_kins + +proc core_sim {axes + number_of_joints + servo_period + {base_period 0} + {emcmot motmod} + } { + # adapted as haltcl proc from core_sim.hal + # note: with default emcmot==motmot, + # thread will not be added for (default) base_pariod == 0 + + setup_kins $axes + + if {"$emcmot" == "motmod"} { + if [catch {loadrt $emcmot \ + base_period_nsec=$base_period \ + servo_period_nsec=$servo_period \ + num_joints=$number_of_joints} msg + ] { + # typ: too many joints attempted + puts stderr "\n" + puts stderr "core_sim: loadrt $emcmot FAIL" + puts stderr " msg=$msg\n" + exit 1 + } + } else { + # known special case with additional parameter: + # unlock_joint_mask=0xNN + # num_extrajoints=n + set module [split [lindex $emcmot 0]] + set modname [lindex $module 0] + set modparm [lreplace $module 0 0] + if [catch {eval loadrt $modname $modparm \ + base_period_nsec=$base_period \ + servo_period_nsec=$servo_period \ + num_joints=$number_of_joints} msg + ] { + puts stderr "\n" + puts stderr "core_sim:unhandled emcmot<$emcmot>" + puts stderr " modname=$modname" + puts stderr " modparm=$modparm" + puts stderr " msg=$msg\n" + exit 1 + } + } + + addf motion-command-handler servo-thread + addf motion-controller servo-thread + + set pid_names "" + set mux_names "" + for {set jno 0} {$jno < $number_of_joints} {incr jno} { + set pid_names "${pid_names},J${jno}_pid" + set mux_names "${mux_names},J${jno}_mux" + } + set pid_names [string trimleft $pid_names ,] + set mux_names [string trimleft $mux_names ,] + loadrt pid names=$pid_names + loadrt mux2 names=$mux_names + + # pid components + # The pid comp is used as a pass-thru device (FF0=1,all other gains=0) + # to emulate the connectivity of a servo system + # (e.g., no short-circuit connection of motor-pos-cmd to motor-pos-fb) + foreach cname [split $pid_names ,] { + addf ${cname}.do-pid-calcs servo-thread + # FF0 == 1 for pass-thru, all others 0 + do_setp ${cname}.FF0 1.0 + foreach pin {Pgain Dgain Igain FF1 FF2} { do_setp ${cname}.$pin 0 } + } + + # mux components + # The mux comp is used as a sample-hold to simulate a machine + # with encoders that measure output position when power + # is not applied to the motors or controllers + foreach cname [split $mux_names ,] { + addf $cname servo-thread + } + + # signal connections: + net estop:loop <= iocontrol.0.user-enable-out + net estop:loop => iocontrol.0.emc-enable-in + + net tool:prep-loop <= iocontrol.0.tool-prepare + net tool:prep-loop => iocontrol.0.tool-prepared + + net tool:change-loop <= iocontrol.0.tool-change + net tool:change-loop => iocontrol.0.tool-changed + + net sample:enable <= motion.motion-enabled + + for {set jno 0} {$jno < $number_of_joints} {incr jno} { + net sample:enable => J${jno}_mux.sel + + net J${jno}:enable <= joint.$jno.amp-enable-out + net J${jno}:enable => J${jno}_pid.enable + + net J${jno}:pos-cmd <= joint.$jno.motor-pos-cmd + net J${jno}:pos-cmd => J${jno}_pid.command + + net J${jno}:on-pos <= J${jno}_pid.output + net J${jno}:on-pos => J${jno}_mux.in1 ;# pass thru when motion-enabled + + net J${jno}:pos-fb <= J${jno}_mux.out + net J${jno}:pos-fb => J${jno}_mux.in0 ;# hold position when !motion-enabled + net J${jno}:pos-fb => joint.$jno.motor-pos-fb + } +} ;# core_sim + +proc make_ddts {number_of_joints} { + # make vel,accel ddts and signals for all joints + # if xyz, make hypotenuse xy,xyz vels + + set ddt_names "" + set ddt_ct 0 + for {set jno 0} {$jno < $number_of_joints} {incr jno} { + incr ddt_ct 2 + set ddt_names "${ddt_names},J${jno}_vel,J${jno}_accel" + } + set ddt_names [string trimleft $ddt_names ,] + loadrt ddt names=$ddt_names + foreach cname [split $ddt_names ,] { + addf $cname servo-thread + } + + # joint vel,accel signal connections: + set ddt_ct 0 + for {set jno 0} {$jno < $number_of_joints} {incr jno} { + incr ddt_ct 2 + net J${jno}:pos-fb => J${jno}_vel.in ;# net presumed to exist + net J${jno}:vel <= J${jno}_vel.out + net J${jno}:vel => J${jno}_accel.in + net J${jno}:acc <= J${jno}_accel.out + } + + set has_xyz 1 + foreach letter {x y z} { + if ![info exists ::SIM_LIB(jointidx,$letter)] { + set has_xyz 0 + break + } + } + if $has_xyz { + loadrt hypot names=hyp_xy,hyp_xyz ;# vector velocities + addf hyp_xy servo-thread + addf hyp_xyz servo-thread + net J$::SIM_LIB(jointidx,x):vel <= J$::SIM_LIB(jointidx,x)_vel.out + net J$::SIM_LIB(jointidx,x):vel => hyp_xy.in0 + net J$::SIM_LIB(jointidx,x):vel => hyp_xyz.in0 + + net J$::SIM_LIB(jointidx,y):vel <= J$::SIM_LIB(jointidx,y)_vel.out + net J$::SIM_LIB(jointidx,y):vel => hyp_xy.in1 + net J$::SIM_LIB(jointidx,y):vel => hyp_xyz.in1 + + net J$::SIM_LIB(jointidx,z):vel <= J$::SIM_LIB(jointidx,z)_vel.out + net J$::SIM_LIB(jointidx,z):vel => hyp_xyz.in2 + + net xy:vel => hyp_xy.out + net xyz:vel <= hyp_xyz.out + } +} ;# make_ddts + +proc use_hal_manualtoolchange {} { + # adapted as haltcl proc from axis_manualtoolchange.hal + loadusr -W hal_manualtoolchange + + # disconnect if previously connected: + unlinkp iocontrol.0.tool-change + unlinkp iocontrol.0.tool-changed + # remove signal with no connections: + delsig tool:change-loop + + net tool:change <= iocontrol.0.tool-change + net tool:change => hal_manualtoolchange.change + + net tool:changed <= hal_manualtoolchange.changed + net tool:changed => iocontrol.0.tool-changed + + net tool:prep-number <= hal_manualtoolchange.number + net tool:prep-number => iocontrol.0.tool-prep-number +} ;# use_hal_manualtoolchange + +proc simulated_home {number_of_joints} { + # uses sim_home_switch component + set switch_names "" + for {set jno 0} {$jno < $number_of_joints} {incr jno} { + set switch_names "${switch_names},J${jno}_switch" + } + set switch_names [string trimleft $switch_names ,] + loadrt sim_home_switch names=$switch_names + foreach cname [split $switch_names ,] { + addf $cname servo-thread + } + + for {set jno 0} {$jno < $number_of_joints} {incr jno} { + # add pin to pre-existing signal: + net J${jno}:pos-fb => J${jno}_switch.cur-pos + + net J${jno}:homesw <= J${jno}_switch.home-sw + net J${jno}:homesw => joint.$jno.home-sw-in + + # set sim_home_switch .hysteresis,.home-pos pins + # according to traj units and joint type + if ![info exists ::JOINT_[set jno](TYPE)] { + # use component defaults + } else { + if {"[set ::JOINT_[set jno](TYPE)]" == "ANGULAR"} { + # use component defaults + } else { + if ![info exists ::TRAJ(LINEAR_UNITS)] { + # use component defaults + } else { + switch $::TRAJ(LINEAR_UNITS) { + in - inch - imperial { + do_setp J${jno}_switch.hysteresis 0.05 + do_setp J${jno}_switch.home-pos 0.10 + } + default { # use component default } + } + } + if { [info exists ::JOINT_[set jno](HOME_SEARCH_VEL)] + && [set ::JOINT_[set jno](HOME_SEARCH_VEL)] < 0} { + do_setp J${jno}_switch.home-pos -[getp J${jno}_switch.home-pos] + } + } + } ;# type + if [info exists ::JOINT_[set jno](HOME_USE_INDEX)] { + if [set ::JOINT_[set jno](HOME_USE_INDEX)] { + # Note: use default for joint.${jno}.index-delay-ms + net J${jno}:index-enable <= joint.${jno}.index-enable + net J${jno}:index-enable => J${jno}_switch.index-enable + } + } + } ;# for +} ;# simulated_home + +proc sim_spindle {} { + # adapted as haltcl proc from sim_spindle_encoder.hal + # simulated spindle encoder (for spindle-synced moves) + loadrt sim_spindle names=sim_spindle + do_setp sim_spindle.scale 0.01666667 + + loadrt limit2 names=limit_speed + loadrt lowpass names=spindle_mass + loadrt near names=near_speed + loadrt scale names=rpm_rps + + setp rpm_rps.gain .0167 + + # this limit doesn't make any sense to me: + do_setp limit_speed.maxv 5000.0 ;# rpm/second + + # encoder reset control + # hook up motion controller's sync output + net spindle-index-enable <=> spindle.0.index-enable + net spindle-index-enable <=> sim_spindle.index-enable + + # report our revolution count to the motion controller + net spindle-pos <= sim_spindle.position-fb + net spindle-pos => spindle.0.revs + + # simulate spindle mass + do_setp spindle_mass.gain .07 + + # spindle speed control + net spindle-speed-cmd <= spindle.0.speed-out + net spindle-speed-cmd => limit_speed.in + net spindle-speed-cmd => near_speed.in1 + + net spindle-speed-limited <= limit_speed.out + net spindle-speed-limited => sim_spindle.velocity-cmd + net spindle-speed-limited => spindle_mass.in + + # for spindle velocity estimate + net spindle-rpm-filtered <= spindle_mass.out + net spindle-rpm-filtered rpm_rps.in + net spindle-rps-filtered rpm_rps.out spindle.0.speed-in + net spindle-rpm-filtered => near_speed.in2 + + # at-speed detection + do_setp near_speed.scale 1.1 + do_setp near_speed.difference 10 + + net spindle-at-speed <= near_speed.out + net spindle-at-speed => spindle.0.at-speed + + net spindle-orient <= spindle.0.orient + net spindle-orient <= spindle.0.is-oriented + + addf limit_speed servo-thread + addf spindle_mass servo-thread + addf rpm_rps servo-thread + addf near_speed servo-thread + addf sim_spindle servo-thread +} ;# sim_spindle + +proc save_hal_cmds {savefilename {options ""} } { + set tmpfile /tmp/save_hal_cmds_tmp + set date [clock format [clock seconds]] + set script [info script] + set save_arg all ;# suffices if only basic_sim in use + if {[llength $::HAL(HALFILE)] > 1} { + set save_arg allu ;# do *all* unconnected pins including + ;# pins from other HALFILEs + } + set fd [open $savefilename w] ;# overwrite any existing file + puts $fd "# $date +# +# This file: $savefilename +# Created by: $script +# With options: $::argv +# From inifile: $::env(INI_FILE_NAME) +# Halfiles: $::HAL(HALFILE) +# +# This file contains the hal commands produced by [file tail $script] +# (and any hal commands executed prior to its execution). +# ------------------------------------------------------------------ +# To use $savefilename in the original inifile (or a copy of it), +# edit to change: +# \[HAL\] +# HALFILE = LIB:basic_sim.tcl parameters +# to: +# \[HAL\] +# HALFILE = $savefilename +# +# Notes: +# 1) Inifile Variables substitutions specified in the inifile +# and interpreted by halcmd are automatically substituted +# in the created halfile ($savefilename). +# 2) Input pins connected to a signal with no writer are +# not included in the setp listings herein so must be added +# manually +# +" + if {[lsearch $options use_hal_manualtoolchange] >= 0} { + puts $fd "# user space components" + puts $fd "loadusr -W hal_manualtoolchange" + puts $fd "" + } + + hal save $save_arg $tmpfile + + set ftmp [open $tmpfile r] + set gave_msg 0 + set setp_fmt "%-3s %-30s %s" + while {![eof $ftmp]} { + gets $ftmp line + if {([string first "unconnected pin values" $line] >0) && !$gave_msg} { + set gave_msg 1 + puts $fd "# Note: ALL unconnected pins follow" + puts $fd "# (includes pins using default with no explicit setp command)" + } else { + scan $line "%s %s %s" cmd arg1 remainder + switch $cmd { + setp {puts $fd [format $setp_fmt $cmd $arg1 $remainder]} + loadrt { + if { [string first tpmod [list $line]] >= 0 + || [string first homemod [list $line]] >= 0 + } { + puts $fd "#preloaded module: $line" + } else { + puts $fd $line + } + } + default {puts $fd $line} + } + } + } ;# while + close $ftmp + file delete $tmpfile + if {("$save_arg" != "allu") && [info exists ::SIM_LIB(setp_list)]} { + puts $fd "# setp commands for unconnected input pins" + foreach {pname value} $::SIM_LIB(setp_list) { + puts $fd [format $setp_fmt setp $pname $value] + } + } + close $fd +} ;# save_hal_cmds + +proc do_setp {pname value} { + setp $pname $value + lappend ::SIM_LIB(setp_list) $pname $value +} ;# do_setp diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_rdelta.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_rdelta.hal new file mode 100755 index 0000000..efe3b6b --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_rdelta.hal @@ -0,0 +1,42 @@ +loadrt [KINS]KINEMATICS +loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS + +loadusr -W rotarydelta + +# add motion controller functions to servo thread +addf motion-command-handler servo-thread +addf motion-controller servo-thread + +# create HAL signals for position commands from motion module +# loop position commands back to motion module feedback +net J0pos joint.0.motor-pos-cmd => joint.0.motor-pos-fb +net J1pos joint.1.motor-pos-cmd => joint.1.motor-pos-fb +net J2pos joint.2.motor-pos-cmd => joint.2.motor-pos-fb + +net J3pos joint.3.motor-pos-cmd => joint.3.motor-pos-fb +net J4pos joint.4.motor-pos-cmd => joint.4.motor-pos-fb +net J5pos joint.5.motor-pos-cmd => joint.5.motor-pos-fb +net J6pos joint.6.motor-pos-cmd => joint.6.motor-pos-fb +net J7pos joint.7.motor-pos-cmd => joint.7.motor-pos-fb +net J8pos joint.8.motor-pos-cmd => joint.8.motor-pos-fb + +net J0cmd joint.0.pos-cmd => rotarydelta.joint0 +net J1cmd joint.1.pos-cmd => rotarydelta.joint1 +net J2cmd joint.2.pos-cmd => rotarydelta.joint2 + +net pfr rotarydeltakins.platformradius => rotarydelta.pfr +net tl rotarydeltakins.thighlength => rotarydelta.tl +net sl rotarydeltakins.shinlength => rotarydelta.sl +net fr rotarydeltakins.footradius => rotarydelta.fr + +sets pfr 10 +sets tl 10 +sets sl 18 +sets fr 5 + +# estop loopback +net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in + +# create signals for tool loading loopback +net tool-prep-loop iocontrol.0.tool-prepare iocontrol.0.tool-prepared +net tool-change-loop iocontrol.0.tool-change iocontrol.0.tool-changed diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_spindle_encoder.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_spindle_encoder.hal new file mode 100755 index 0000000..e0fcde6 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/sim_spindle_encoder.hal @@ -0,0 +1,45 @@ +# simulated spindle encoder (for spindle-synced moves) +loadrt sim_spindle names=sim_spindle +setp sim_spindle.scale 0.01666667 +loadrt limit2 names=limit_speed +loadrt lowpass names=spindle_mass +loadrt near names=near_speed +loadrt scale names=rpm_rps + +setp rpm_rps.gain .0167 + +# this limit doesn't make any sense to me: +setp limit_speed.maxv 5000.0 # rpm/second + +# encoder reset control +# hook up motion controller's sync output +net spindle-index-enable spindle.0.index-enable <=> sim_spindle.index-enable + +# report our revolution count to the motion controller +net spindle-pos sim_spindle.position-fb => spindle.0.revs + +# simulate spindle mass +setp spindle_mass.gain .07 + +# spindle speed control +net spindle-speed-cmd spindle.0.speed-out => limit_speed.in +net spindle-speed-limited limit_speed.out => sim_spindle.velocity-cmd spindle_mass.in + +# for spindle velocity estimate +net spindle-rpm-filtered spindle_mass.out near_speed.in2 +net spindle-rpm-filtered rpm_rps.in +net spindle-rps-filtered rpm_rps.out spindle.0.speed-in + +# at-speed detection +setp near_speed.scale 1.1 +setp near_speed.difference 10 + +net spindle-speed-cmd => near_speed.in1 +net spindle-at-speed near_speed.out spindle.0.at-speed + +addf limit_speed servo-thread +addf spindle_mass servo-thread +addf rpm_rps servo-thread +addf near_speed servo-thread +addf sim_spindle servo-thread + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/simulated-gantry-home.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/simulated-gantry-home.hal new file mode 100755 index 0000000..dd31c9e --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/simulated-gantry-home.hal @@ -0,0 +1,47 @@ + +loadrt comp names=comp_j0,comp_j1,comp_j2,comp_j3 +loadrt or2 names=or_homesws + +# Joint 0 = X axis, home switch is on negative end +# Joint 1 = Y1 axis, home switch is on negative end +# Joint 2 = Z axis, home switch is on positive end +# Joint 3 = Y2 axis, home switch is on negative end +net J0homeswpos => comp_j0.in1 +net J1homeswpos => comp_j1.in1 +net J2homeswpos => comp_j2.in0 +net J3homeswpos => comp_j3.in1 + +sets J0homeswpos -0.1 +sets J1homeswpos -0.1 +sets J2homeswpos 0.1 +sets J3homeswpos -0.1 + +net J0pos => comp_j0.in0 +net J1pos => comp_j1.in0 +net J2pos => comp_j2.in1 +net J3pos => comp_j3.in0 + +setp comp_j0.hyst .02 +setp comp_j1.hyst .02 +setp comp_j2.hyst .02 +setp comp_j3.hyst .02 + +# the X and Z joints share a home switch +# the Y joints each have their own home switches +net J0homesw <= comp_j0.out +net J1homesw <= comp_j1.out => joint.1.home-sw-in +net J2homesw <= comp_j2.out +net J3homesw <= comp_j3.out => joint.3.home-sw-in + +net J0homesw => or_homesws.in0 +net J2homesw => or_homesws.in1 +net J0.J1homesw or_homesws.out => joint.0.home-sw-in joint.2.home-sw-in + + +addf comp_j0 servo-thread +addf comp_j1 servo-thread +addf comp_j2 servo-thread +addf comp_j3 servo-thread + +addf or_homesws servo-thread + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/simulated_home.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/simulated_home.hal new file mode 100755 index 0000000..3422569 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/simulated_home.hal @@ -0,0 +1,32 @@ +loadrt or2 names=or2_0 +loadrt comp names=comp_x,comp_y,comp_z + +net Xhomeswpos => comp_x.in0 +net Yhomeswpos => comp_y.in0 +net Zhomeswpos => comp_z.in0 + +sets Xhomeswpos 1 +sets Yhomeswpos .5 +sets Zhomeswpos 2 + +net Xpos => comp_x.in1 +net Ypos => comp_y.in1 +net Zpos => comp_z.in1 + +setp comp_x.hyst .02 +setp comp_y.hyst .02 +setp comp_z.hyst .02 + +net Xhomesw <= comp_x.out +net Yhomesw <= comp_y.out => joint.1.home-sw-in +net Zhomesw <= comp_z.out + +net Xhomesw => or2_0.in0 +net Zhomesw => or2_0.in1 +net XZhomesw or2_0.out => joint.0.home-sw-in joint.2.home-sw-in + +addf comp_x servo-thread +addf comp_y servo-thread +addf comp_z servo-thread + +addf or2_0 servo-thread diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/simulated_limits.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/simulated_limits.hal new file mode 100755 index 0000000..070051f --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/simulated_limits.hal @@ -0,0 +1,76 @@ +# HAL config file to simulate limit switches using window comparators +# +# first install nine comparators +loadrt wcomp names=wcomp_xmin,wcomp_xmax,wcomp_xhome,wcomp_ymin,wcomp_ymax,wcomp_yhome,wcomp_zmin,wcomp_zmax,wcomp_zhome + +# add comparators to servo thread so they will be evaluated +# every servo period +addf wcomp_xmin servo-thread +addf wcomp_xmax servo-thread +addf wcomp_xhome servo-thread +addf wcomp_ymin servo-thread +addf wcomp_ymax servo-thread +addf wcomp_yhome servo-thread +addf wcomp_zmin servo-thread +addf wcomp_zmax servo-thread +addf wcomp_zhome servo-thread + +# connect position feedback from step generators +# to window comparators +net Xpos-fb => wcomp_xmin.in +net Xpos-fb => wcomp_xmax.in +net Xpos-fb => wcomp_xhome.in +net Ypos-fb => wcomp_ymin.in +net Ypos-fb => wcomp_ymax.in +net Ypos-fb => wcomp_yhome.in +net Zpos-fb => wcomp_zmin.in +net Zpos-fb => wcomp_zmax.in +net Zpos-fb => wcomp_zhome.in + +# connect simulated switch outputs to motion controller +net Xminlim wcomp_xmin.out => joint.0.neg-lim-sw-in +net Xmaxlim wcomp_xmax.out => joint.0.pos-lim-sw-in +net Xhome wcomp_xhome.out => joint.0.home-sw-in + +net Yminlim wcomp_ymin.out => joint.1.neg-lim-sw-in +net Ymaxlim wcomp_ymax.out => joint.1.pos-lim-sw-in +net Yhome wcomp_yhome.out => joint.1.home-sw-in + +net Zminlim wcomp_zmin.out => joint.2.neg-lim-sw-in +net Zmaxlim wcomp_zmax.out => joint.2.pos-lim-sw-in +net Zhome wcomp_zhome.out => joint.2.home-sw-in + +# configure the points at which the simulated switches trip +# X axis first +# set min limit switch to trip at -10.2, release at -1000 +setp wcomp_xmin.max -10.2 +setp wcomp_xmin.min -1000 +# set max limit switch to trip at +10.2, release at +10.21 +setp wcomp_xmax.min 10.20 +setp wcomp_xmax.max 10.21 +# set home switch to trip at 9.5 and release at 9.75 +setp wcomp_xhome.min 9.5 +setp wcomp_xhome.max 9.75 + +# Y axis +# set min limit switch to trip at -10.2, release at -1000 +setp wcomp_ymin.max -10.2 +setp wcomp_ymin.min -1000 +# set max limit switch to trip at +10.2, release at +10.21 +setp wcomp_ymax.min 10.20 +setp wcomp_ymax.max 10.21 +# set home switch to trip at 9.5 and release at 9.75 +setp wcomp_yhome.min 9.5 +setp wcomp_yhome.max 9.75 + +# Z axis +# set min limit switch to trip at -2.1, release at -1000 +setp wcomp_zmin.max -2.1 +setp wcomp_zmin.min -1000 +# set max limit switch to trip at +4.05,release at +5 +setp wcomp_zmax.min 4.05 +setp wcomp_zmax.max 5 +# set home switch to trip at 3.9 and release at 4.1 +setp wcomp_zhome.min 3.9 +setp wcomp_zhome.max 4.1 + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/tripodsim.hal b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/tripodsim.hal new file mode 100755 index 0000000..2b29487 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/tripodsim.hal @@ -0,0 +1,55 @@ +# core HAL config file for simulation + +# first load all the RT modules that will be needed +# kinematics +loadrt [KINS]KINEMATICS +setp tripodkins.Bx 10 +setp tripodkins.Cx 5 +setp tripodkins.Cy 7.071 + +# motion controller, get name and thread periods from INI file +loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD +# 6 differentiators (for velocity and accel sigs) +loadrt ddt names=ddt_j0,ddt_j1,ddt_j2,ddt_j0v,ddt_j1v,ddt_j2v + +# add motion controller functions to servo thread +addf motion-command-handler servo-thread +addf motion-controller servo-thread +# link the differentiator functions into the code +addf ddt_j0 servo-thread +addf ddt_j0v servo-thread +addf ddt_j1 servo-thread +addf ddt_j1v servo-thread +addf ddt_j2 servo-thread +addf ddt_j2v servo-thread + +# create HAL signals for position commands from motion module +# loop position commands back to motion module feedback +net J0pos joint.0.motor-pos-cmd => joint.0.motor-pos-fb ddt_j0.in +net J1pos joint.1.motor-pos-cmd => joint.1.motor-pos-fb ddt_j1.in +net J2pos joint.2.motor-pos-cmd => joint.2.motor-pos-fb ddt_j2.in + +# send the position commands thru differentiators to +# generate velocity and accel signals +net J0vel ddt_j0.out => ddt_j0v.in +net J0acc <= ddt_j0v.out +net J1vel ddt_j1.out => ddt_j1v.in +net J1acc <= ddt_j1v.out +net J2vel ddt_j2.out => ddt_j2v.in +net J2acc <= ddt_j2v.out + +# estop loopback +net estop-loop iocontrol.0.user-enable-out => iocontrol.0.emc-enable-in + +# create signals for tool loading loopback +net tool-prep-loop iocontrol.0.tool-prepare => iocontrol.0.tool-prepared +net tool-change-loop iocontrol.0.tool-change => iocontrol.0.tool-changed + +# amp control +net J0ena <= joint.0.amp-enable-out +net J1ena <= joint.1.amp-enable-out +net J2ena <= joint.2.amp-enable-out + +net J0flt => joint.0.amp-fault-in +net J1flt => joint.1.amp-fault-in +net J2flt => joint.2.amp-fault-in diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/util_lib.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/util_lib.tcl new file mode 100755 index 0000000..6a0c731 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/util_lib.tcl @@ -0,0 +1,62 @@ +# util_lib.tcl -- utilities + +set ::util_lib_quiet 0 +# ::tp is the namespace for [HAL]TWOPASS processing +# quiet irrelevant messages in pass0 +if { [namespace exists ::tp] \ + && ([::tp::passnumber] == 0) } { set ::util_lib_quiet 1 } + +proc show_context {} { + if { $::util_lib_quiet } { return } + set pname show_context + puts "$pname: argv0=$::argv0" + puts "$pname: argv=$::argv" + foreach arg $::argv { + puts "$pname: arg=$arg" + } + puts "$pname: INI_FILE_NAME=$::env(INI_FILE_NAME)" +} ;# show_context + +proc show_ini {} { + if { $::util_lib_quiet } { return } + set vars [uplevel #0 {info vars}] + set exclude_list {TP auto_index tcl_platform env} + foreach v $vars { + if { [lsearch $exclude_list $v] >= 0 } {continue} + set vg ::$v + if [array exists $vg] { + parray $vg + } + } +} ;# show_ini_info + +proc show_env {} { + parray ::env +} ;# show_env + +proc joint_number_for_axis {axis_letter} { + # For JOINTS_AXES: + # Apply rule for known kins with KINEMATICS_IDENTITY + set kinematics [lindex $::env(KINS_KINEMATICS) 0] + set coordinates $::env(TRAJ_COORDINATES) + if {[ string first " " $coordinates] < 0} { + set coordinates [split $coordinates ""] + } + set coordinates [string toupper $coordinates] + set axis_letter [string toupper $axis_letter] + + # rules for known kinematics types + switch $kinematics { + trivkins {set joint_number [lsearch $coordinates $axis_letter]} + default {return -code error \ + "joint_number_for_axis: <$axis_letter> unavailable for kinematics:\ +<$::env(KINS_KINEMATICS)>" + } + } + #puts stderr "kins=$kinematics coords=$coordinates a=$axis_letter j=$joint_number" + if { $joint_number < 0} { + return -code error \ + "joint_number_for_axis <$axis_letter> not in $::env(TRAJ_COORDINATES)" + } + return $joint_number +} ;# joint_number_for_axis diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/var_show.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/var_show.tcl new file mode 100755 index 0000000..8ee7561 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/var_show.tcl @@ -0,0 +1,14 @@ +# var_show.tcl + +# this halfile can be used to show context and +# INI variable arrays available to tcl halfiles +# example: [HAL]LIB:var_show.tcl arg1 arg2 + +#begin----------------------------------------------------------------- +source [file join $::env(HALLIB_DIR) util_lib.tcl] + +show_ini +show_context + +puts ::argv=$::argv +puts ::arglen=[llength $::argv] diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/wheeljogpins.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/wheeljogpins.tcl new file mode 100755 index 0000000..18ea580 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/wheeljogpins.tcl @@ -0,0 +1,20 @@ +# tcl file to enable jog pins +# for all axis letters +# for up to 9 joints +# errors are ignored +# scale defaults to 1, use ::argv otherwise for all + +set scalevalue 1 ;# default +if {[llength $::argv] == 1} { + set scalevalue $::argv +} +catch { + foreach l {x y z a b c u v w} { + setp axis.$l.jog-enable 1 + setp axis.$l.jog-scale $::scalevalue + } + for {set i 0} {$i < 9} {incr i} { + setp joint.$i.jog-enable 1 + setp joint.$i.jog-scale $::scalevalue + } +} diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/xhc-hb04-layout1.cfg b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/xhc-hb04-layout1.cfg new file mode 100755 index 0000000..6a77415 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/xhc-hb04-layout1.cfg @@ -0,0 +1,17 @@ +[XHC-HB04] +BUTTON=01:button-stop +BUTTON=02:button-start-pause +BUTTON=03:button-rewind +BUTTON=04:button-safe-z +BUTTON=05:button-home +BUTTON=06:button-x2 +BUTTON=07:button-y2 +BUTTON=08:button-probe-z +BUTTON=09:button-x0 +BUTTON=0A:button-y0 +BUTTON=0B:button-z0 +BUTTON=0C:button-goto-zero +BUTTON=0D:button-step +BUTTON=0E:button-mode +BUTTON=0F:button-spindle +BUTTON=17:button-reset diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/xhc-hb04-layout2.cfg b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/xhc-hb04-layout2.cfg new file mode 100755 index 0000000..d844658 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/xhc-hb04-layout2.cfg @@ -0,0 +1,19 @@ +[XHC-HB04] +BUTTON=01:button-goto-zero +BUTTON=02:button-start-pause +BUTTON=03:button-rewind +BUTTON=04:button-probe-z +BUTTON=05:button-macro-3 +BUTTON=06:button-half +BUTTON=07:button-zero +BUTTON=08:button-safe-z +BUTTON=09:button-home +BUTTON=0A:button-macro-1 +BUTTON=0B:button-macro-2 +BUTTON=0C:button-spindle +BUTTON=0D:button-step +BUTTON=0E:button-mode +BUTTON=0F:button-macro-6 +BUTTON=10:button-macro-7 +BUTTON=16:button-stop +BUTTON=17:button-reset diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/hallib/xhc-hb04.tcl b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/xhc-hb04.tcl new file mode 100755 index 0000000..5232eb9 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/hallib/xhc-hb04.tcl @@ -0,0 +1,594 @@ +# xhc-hb04.tcl: HALFILE for xhc-hb04 pendant + +# library procs: +source [file join $::env(HALLIB_DIR) hal_procs_lib.tcl] +source [file join $::env(HALLIB_DIR) util_lib.tcl] + +# Usage: +# In INI file, include: +# [HAL] +# HALFILE = existing halfiles +# ... +# HALFILE = xhc-hb04.tcl +# +# [XHC_HB04_CONFIG] +# layout = 2 (required: 1|2 are supported) +# coords = x y z a (up to 4 unique letters from x y z a b c u v w) +# coefs = 1 1 1 1 (optional, filter coefs, 0 < coef < 1, not usually reqd) +# scales = 1 1 1 1 (optional) +# mpg_accels = 50 75 30 75 (optional, less than axis max accel) +# threadname = servo-thread (optional) +# sequence = 1 (optional: 1|2) +# jogmode = normal (optional: normal|vnormal) +# require_pendant = yes (optional: yes|no) +# inch_or_mm = in (optional: in|mm, default is mm) + +# [XHC_HB04_BUTTONS] +# name = pin (connect button to hal pin) +# name = "" (no connect button) +# special cases: +# start-pause = std_start_pause (for usual behavior) +# step = xhc-hb04.stepsize-up (for usual behavior) +# (see INI files for more exanples) + +# Notes: +# 1) the 'start-pause' pin can be set to "std_start_pause" to +# implement default behavior +# 2) the 'step' pin is normally connected to xhc-hb04.stepsize-up +# 3) non-root access to the usb device requires an additional +# udev rule. Typically, create /etc/udev/rules.d/90-xhc.rules: +# SYSFS{idProduct}=="eb70", SYSFS{idVendor}=="10ce", MODE="666", OWNER="root", GROUP="users" +# or (for ubuntu12 and up): +# ATTR{idProduct}=="eb70", ATTR{idVendor}=="10ce", MODE="666", OWNER="root", GROUP="users" +# 4) For jogmode==vnormal (man motion -- see joint.N.jog-vel-mode), +# the max movement is limited by the machine velocity and acceleration limits +# such that delta_x = 0.5 * vmax**2/accelmx +# so for sim example: +# inch: vmax= 1.2 accelmax= 20 delta_x=0.036 +# mm: vmax=30.48 acclemax=508 delta_x=0.9144 +# Typically: +# (-s1) sequence 1 (1,10,100,1000) is ok for mm-based machines +# (-s2) sequence 2 (1,5,10,20) is ok for inch-based machines +# +# 5) updated for joints_axes: support only configs with known kins +# and they must be KINEMATICS_IDENTITY (trivkins) +# a) connect axis.L.jog-counts to joint.N.jog-counts +# axis.L.jog-scale to joint.L.jog-scale +# c) use [AXIS_N]MAX_ACCELERATION for both axis.L, joint.N + +#----------------------------------------------------------------------- +# Copyright: 2014-16 +# Author: Dewey Garrett +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +#----------------------------------------------------------------------- + +proc is_uniq {list_name} { + set tmp(xxxxxxxx) "" ;# make an array first + foreach item $list_name { + if {[array names tmp $item] == $item} { + return 0 ;# not unique + } + set tmp($item) $item + } + return 1 ;# unique +} ;# is_uniq + +proc connect_pins {} { + foreach bname [lsort [array names ::XHC_HB04_BUTTONS]] { + set thepin $::XHC_HB04_BUTTONS($bname) + set thepin [lindex $thepin 0] + + if {"$thepin" == "\"\""} { + #puts stderr "$::progname: no pin defined for <$bname>" + continue + } + # this pin is can specify std behavior + if { ([string tolower $bname] == "start-pause") + && ([string tolower $thepin] == "std_start_pause") + } { + std_start_pause_button + puts stderr "$::progname: using std_start_pause_button" + continue + } + # these are warnings in the INI file examples but aren't real pins + if {[string tolower "$thepin"] == "caution"} { + puts stderr "$::progname: skipping button $bname marked <$thepin>" + continue + } + set fullbname xhc-hb04.button-$bname + if !$::xhc_hb04_quiet { + if ![pin_exists $fullbname] { + puts stderr "$::progname: !!! <$fullbname> pin does not exist, continuing" + continue + } + if ![pin_exists $thepin] { + puts stderr "$::progname: !!! <$thepin> target pin does not exist, continuing" + continue + } + } + + makenet pendant:$bname <= $fullbname => $thepin + } +} ;# connect_pins + +proc wheel_setup {jogmode} { + + if [info exists ::XHC_HB04_CONFIG(mpg_accels)] { + set idx 0 + foreach g $::XHC_HB04_CONFIG(mpg_accels) { + set g1 $g + if {$g < 0} { + set g [expr -1 * $g] + puts stderr "$::progname: mpg_accel #$idx must be positive was:$g1, is:$g" + } + set ::XHC_HB04_CONFIG(accel,$idx) [format %f $g] ;# ensure floatingpt + incr idx + } + } + + # defaults if not in INI file: + set ::XHC_HB04_CONFIG(coef,0) 1.0 + set ::XHC_HB04_CONFIG(coef,1) 1.0 + set ::XHC_HB04_CONFIG(coef,2) 1.0 + set ::XHC_HB04_CONFIG(coef,3) 1.0 + if [info exists ::XHC_HB04_CONFIG(coefs)] { + set idx 0 + foreach g $::XHC_HB04_CONFIG(coefs) { + set g1 $g + if {$g < 0} { + set g [expr -1 * $g] + puts stderr "$::progname: coef #$idx must be positive was:$g1, is:$g" + } + if {$g > 1} { + set g .5 + puts stderr "$::progname: coef #$idx must < 1 coef was:$g1, is:$g" + } + set ::XHC_HB04_CONFIG(coef,$idx) $g + incr idx + } + } + # defaults if not in INI file: + set ::XHC_HB04_CONFIG(scale,0) 1.0 + set ::XHC_HB04_CONFIG(scale,1) 1.0 + set ::XHC_HB04_CONFIG(scale,2) 1.0 + set ::XHC_HB04_CONFIG(scale,3) 1.0 + if [info exists ::XHC_HB04_CONFIG(scales)] { + set idx 0 + foreach g $::XHC_HB04_CONFIG(scales) { + set ::XHC_HB04_CONFIG(scale,$idx) $g + incr idx + } + } + + # to support fractional scales: + # divide the xhc-hb04.jog.scale by $kvalue + # and + # multiply the pendant_util.scale$idx by $kvalue + # to manipulate the integer (s32) joint.N.jog-counts + + set kvalue 100.0; # allow fractional scales (.1, .01) + # Note: larger values not advised as the + # jog-counts are type s32 (~ +/-2e9) + setp pendant_util.k $kvalue + + makenet pendant:jog-prescale <= xhc-hb04.jog.scale + makenet pendant:jog-prescale => pendant_util.divide-by-k-in + + makenet pendant:jog-scale <= pendant_util.divide-by-k-out + # pendant:jog-scale connects to each: + # and axis.$coord.jog-scale + # joint.$jnum.jog-scale (if applicable) + + makenet pendant:wheel-counts <= xhc-hb04.jog.counts + makenet pendant:wheel-counts-neg <= xhc-hb04.jog.counts-neg + + set anames {x y z a} + set available_idx {0 1 2 3} + # The pendant has fixed labels and displays for letters: x y z a + # and xhc-hb04.cc hardcodes pin names for these letters: x y z a + # Herein: Use label corresponding to coord if possible. + # Otherwise, use next available label. When this occurs, + # pin names will be a little confusing but the signal names will + # align correctly. + # + # With this method, any coord (xyzabcuvw) can be controlled by + # the wheel (providing it exists) + # + set unassigned_coords {} + + foreach coord $::XHC_HB04_CONFIG(coords) { + set i [lsearch $anames $coord] + if {$i >= 0} { + set i [lsearch $available_idx $i] + # use idx corresponding to coord + set use_idx($coord) [lindex $available_idx $i] + set available_idx [lreplace $available_idx $i $i] + } else { + lappend unassigned_coords $coord + } + } + foreach coord $unassigned_coords { + # use next available_idx + set use_idx($coord) [lindex $available_idx 0] + set available_idx [lreplace $available_idx 0 0] + } + + set mapmsg "" + foreach coord $::XHC_HB04_CONFIG(coords) { + if [catch {set jnum [joint_number_for_axis $coord]} msg] { + puts stderr "$::progname: $msg" + set has_jnum 0 + } else { + set has_jnum 1 + } + set use_lbl($coord) [lindex $anames $use_idx($coord)] + set idx $use_idx($coord) + if {"$use_lbl($coord)" != "$coord"} { + set mapmsg "$mapmsg\ + coord: $coord is mapped to pendant switch/display:\ + $use_lbl($coord) index: $idx\n" + } + setp pendant_util.coef$idx $::XHC_HB04_CONFIG(coef,$idx) + setp pendant_util.scale$idx [expr $kvalue * $::XHC_HB04_CONFIG(scale,$idx)] + + set acoord [lindex $anames $idx] + # accommodate existing signames for halui outpins: + makenet [existing_outpin_signame halui.axis.$coord.pos-feedback pendant:pos-$coord] \ + <= halui.axis.$coord.pos-feedback \ + => xhc-hb04.$acoord.pos-absolute + + makenet [existing_outpin_signame halui.axis.$coord.pos-relative pendant:pos-rel-$coord] \ + <= halui.axis.$coord.pos-relative \ + => xhc-hb04.$acoord.pos-relative + + makenet pendant:jog-scale => axis.$coord.jog-scale + + makenet pendant:wheel-counts => pendant_util.in$idx + makenet pendant:wheel-counts-$coord-filtered <= pendant_util.out$idx \ + => axis.$coord.jog-counts + + + set COORD [string toupper $coord] + makenet pendant:jog-$coord <= xhc-hb04.jog.enable-$acoord \ + => axis.$coord.jog-enable + switch $jogmode { + vnormal { + setp axis.$coord.jog-vel-mode 1 + } + } + + set afraction 1.0 ;# default + # Only calculate an afraction IF we have specified mpg_accels in the INI file + if [info exists ::XHC_HB04_CONFIG(mpg_accels)] { + if [catch { + set afraction [expr $::XHC_HB04_CONFIG(accel,$idx)\ + /[set ::AXIS_[set COORD](MAX_ACCELERATION)] ] + } msg] { + err_exit "<$msg>\n\nMissing INI setting: \[AXIS_$COORD\]MAX_ACCELERATION" + } + } + setp axis.$coord.jog-accel-fraction $afraction + + # connect for joint pins if known (trivkins) + if $has_jnum { + if ![pin_exists joint.$jnum.jog-scale] { + err_exit "Not configured for coords = $::XHC_HB04_CONFIG(coords),\ + missing joint.$jnum.* pins" + } + makenet pendant:jog-scale => joint.$jnum.jog-scale + makenet pendant:wheel-counts-$coord-filtered => joint.$jnum.jog-counts + if [catch {set std_accel [set ::JOINT_[set jnum](MAX_ACCELERATION)]} msg] { + err_exit "Error: missing \[JOINT_[set jnum]\]MAX_ACCELERATION" + } + if { [set ::JOINT_[set jnum](MAX_ACCELERATION)] + != [set ::AXIS_[set COORD](MAX_ACCELERATION)] } { + puts stderr "$::progname: Warning accel values differ:" + puts stderr " \[JOINT_[set jnum]\]MAX_ACCELERATION=[set ::JOINT_[set jnum](MAX_ACCELERATION)]" + puts stderr " \[AXIS_[set COORD]\]MAX_ACCELERATION=[set ::AXIS_[set COORD](MAX_ACCELERATION)]" + } + makenet pendant:jog-$coord => joint.$jnum.jog-enable + + set jfraction 1.0 ;# default + if [info exists ::XHC_HB04_CONFIG(mpg_accels)] { + if [catch { + set jfraction [expr $::XHC_HB04_CONFIG(accel,$idx)\ + /[set ::JOINT_[set jnum](MAX_ACCELERATION)] ] + } msg] { + err_exit "<$msg>\n\nMissing INI setting: \[JOINT_$jnum\]MAX_ACCELERATION" + } + } + setp joint.$jnum.jog-accel-fraction $jfraction + + switch $jogmode { + vnormal { + setp joint.$jnum.jog-vel-mode 1 + } + } + + } + } ;# for coord + if {"$mapmsg" != ""} { + puts "\n$::progname:\n$mapmsg" + } + + setp halui.feed-override.scale 0.01 + makenet pendant:wheel-counts => halui.feed-override.counts + + setp halui.spindle.0.override.scale 0.01 + makenet pendant:wheel-counts => halui.spindle.0.override.counts + + makenet pendant:feed-override-enable => halui.feed-override.count-enable \ + <= xhc-hb04.jog.enable-feed-override + + makenet pendant:spindle-override-enable => halui.spindle.0.override.count-enable \ + <= xhc-hb04.jog.enable-spindle-override + + + # accommodate existing signames for motion outpins + makenet [existing_outpin_signame motion.current-vel pendant:feed-value] \ + <= motion.current-vel \ + => xhc-hb04.feed-value + + makenet [existing_outpin_signame spindle.0.speed-out-rps-abs pendant:spindle-rps] \ + <= spindle.0.speed-out-rps-abs \ + => xhc-hb04.spindle-rps + + # accommodate existing signames for halui outpins: + makenet [existing_outpin_signame halui.max-velocity.value pendant:jog-speed] \ + <= halui.max-velocity.value + + makenet [existing_outpin_signame halui.feed-overide.value pendant:feed-override] \ + <= halui.feed-override.value \ + => xhc-hb04.feed-override + + makenet [existing_outpin_signame halui.spindle.0.override.value pendant:spindle-override] \ + <= halui.spindle.0.override.value \ + => xhc-hb04.spindle-override + +} ;# wheel_setup + +proc existing_outpin_signame {pinname newsigname} { + # return existing outpin signame if it exists, else newsigname + set answer [is_connected $pinname signame] + switch $answer { + not_connected {return $newsigname} + is_output {puts "$::progname: Using existing outpin signame: $signame" + return "$signame" + } + default {return -code error \ + "existing_outpin_signame:UNEXPECTED $answer" + } + } +} ;# existing_outpin_signame + +proc std_start_pause_button {} { + # hardcoded setup for button-start-pause + makenet pendant:start-or-pause <= xhc-hb04.button-start-pause \ + => pendant_util.start-or-pause + + makenet pendant:program-resume <= pendant_util.resume \ + => halui.program.resume + makenet pendant:program-pause <= pendant_util.pause \ + => halui.program.pause + makenet pendant:program-run <= pendant_util.run \ + => halui.program.run \ + => halui.mode.auto + + # accommodate existing signames for halui outpins: + makenet [existing_outpin_signame halui.program.is-idle pendant:is-idle] \ + <= halui.program.is-idle \ + => pendant_util.is-idle + + makenet [existing_outpin_signame halui.program.is-paused pendant:is-paused] \ + <= halui.program.is-paused \ + => pendant_util.is-paused + + makenet [existing_outpin_signame halui.program.is-running pendant:is-running] \ + <= halui.program.is-running \ + => pendant_util.is-running +} ;# std_start_pause_button + +proc popup_msg {msg} { + puts stderr "$msg" + if [catch {package require Tk + wm withdraw . + tk_messageBox \ + -title "$::progname" \ + -type ok \ + -message "$msg" + destroy . + } msg] { + puts stderr "$msg" + } +} ;# popup_msg + +proc err_exit {msg} { + popup_msg $msg + puts stderr "\n$::progname: $msg\n" + exit 1 +} ;# err_exit + +proc makenet {args} { + if [catch {eval net $args} msg] { + if ![info exists ::makenet_msg] { + set ::makenet_msg \ + "Failed to make some required connections" + } + set sig "Signal: <[lindex $args 0]>:" + set ::makenet_msg "$::makenet_msg\n\n$sig\n$msg" + } +} ;# makenet + +# begin------------------------------------------------------------------------ +set ::progname "xhc-hb04.tcl" + +set ::xhc_hb04_quiet 0 +# ::tp is the namespace for [HAL]TWOPASS processing +if { [namespace exists ::tp] && ([::tp::passnumber] == 0) } { + set ::xhc_hb04_quiet 1 + puts "$::progname: suppressing messages in twopass pass0" +} + +set libtag "LIB:" +set cfg ${libtag}xhc-hb04-layout2.cfg ;# default + +if ![info exists ::HAL(HALUI)] { + err_exit "\[HAL\]HALUI is not set" +} +if {[array names ::XHC_HB04_CONFIG] == ""} { + err_exit "Missing stanza: \[XHC_HB04_CONFIG\]" +} +if {[array names ::XHC_HB04_BUTTONS] == ""} { + err_exit "Missing stanza: \[XHC_HB04_BUTTONS\]" +} + +foreach name [array names ::XHC_HB04_CONFIG] { + set ::XHC_HB04_CONFIG($name) [string trim $::XHC_HB04_CONFIG($name) "{}"] +} + +if [info exists ::XHC_HB04_CONFIG(layout)] { + switch ${::XHC_HB04_CONFIG(layout)} { + 1 {set cfg ${libtag}xhc-hb04-layout1.cfg} + 2 {set cfg ${libtag}xhc-hb04-layout2.cfg} + default { + set msg "Nonstandard layout:<$::XHC_HB04_CONFIG(layout)>" + set cfg $::XHC_HB04_CONFIG(layout) + set msg "$msg\ntrying: $cfg" + popup_msg "$msg" + # keep going + } + } +} + +# .cfg files use same search path as halfiles +set cfg [find_file_in_hallib_path $cfg] + +if ![file exists $cfg] { + set msg "Cannot find file: <$cfg>\nCannot configure pendant\n" + set msg "$msg\nContinuing without xhc-hb04" + popup_msg "$msg" + return ;# not an exit +} + +# handle keywords with either upper or lower case +foreach name [array names ::XHC_HB04_CONFIG] { + set lname [string tolower $name] + set uname [string toupper $name] + if ![info exists ::XHC_HB04_CONFIG($uname)] { + continue + } else { + if { [info exists ::XHC_HB04_CONFIG($lname)] + && "$::XHC_HB04_CONFIG($lname)" != "$::XHC_HB04_CONFIG($uname)"} { + puts "duplicated item: \[XHC_HB04_CONFIG\]$uname = $::XHC_HB04_CONFIG($uname)" + puts "superseded with: \[XHC_HB04_CONFIG\]$lname = $::XHC_HB04_CONFIG($lname)" + unset ::XHC_HB04_CONFIG($uname) + } + } +} +foreach name [array names ::XHC_HB04_BUTTONS] { + set lname [string tolower $name] + set uname [string toupper $name] + if ![info exists ::XHC_HB04_BUTTONS($uname)] { + continue + } else { + if { [info exists ::XHC_HB04_BUTTONS($lname)] + && "$::XHC_HB04_BUTTONS($lname)" != "$::XHC_HB04_BUTTONS($uname)"} { + puts "duplicated item: \[XHC_HB04_BUTTONS\]$uname = $::XHC_HB04_BUTTONS($uname)" + puts "superseded with: \[XHC_HB04_BUTTONS\]$lname = $::XHC_HB04_BUTTONS($lname)" + unset ::XHC_HB04_BUTTONS($uname) + } + } +} +# require_pendant==yes: use -x, dont create pins unless connected +# require_pendant==no: create pins if not connected +if ![info exists ::XHC_HB04_CONFIG(require_pendant)] { + set ::XHC_HB04_CONFIG(require_pendant) yes ;# default +} +set dashx -x +switch $::XHC_HB04_CONFIG(require_pendant) { + no {set dashx ""} +} + +if [info exists ::XHC_HB04_CONFIG(sequence)] { + set dashs "-s $::XHC_HB04_CONFIG(sequence)" +} else { + set dashs "" +} + +set cmd "loadusr -W xhc-hb04 $dashx $dashs -I $cfg -H" +if [catch {eval $cmd} msg] { + set msg "\n$::progname: loadusr xhc-hb04:\n<$msg>\n\n" + set msg "$msg Is it plugged in?\n\n" + set msg "$msg Are permissions correct?\n\n" + set msg "$msg Continuing without xhc-hb04\n" + set msg "$msg \nFailing cmd:\n$cmd" + popup_msg "$msg" + return ;# not an exit +} + +if ![info exists ::XHC_HB04_CONFIG(inch_or_mm)] { + set ::XHC_HB04_CONFIG(inch_or_mm) mm +} +switch -glob $::XHC_HB04_CONFIG(inch_or_mm) { + in* {setp xhc-hb04.inch-icon 1} + default {} +} + +if ![info exists ::XHC_HB04_CONFIG(jogmode)] { + set ::XHC_HB04_CONFIG(jogmode) normal ;# default +} + +set jogmode $::XHC_HB04_CONFIG(jogmode) +switch $jogmode { + normal {} + vnormal {} + default { + set ::XHC_HB04_CONFIG(jogmode) normal + set msg "Unkknown jogmode <$jogmode>" + set msg "$msg Using $::XHC_HB04_CONFIG(jogmode)" + popup_msg "$msg" + } +} + +if [info exists ::XHC_HB04_CONFIG(coords)] { + if ![is_uniq $::XHC_HB04_CONFIG(coords)] { + err_exit "coords must be unique, not: <$::XHC_HB04_CONFIG(coords)>" + } + if {[llength $::XHC_HB04_CONFIG(coords)] > 4} { + err_exit "max no.of coords is 4 <$::XHC_HB04_CONFIG(coords)>" + } +} else { + set ::XHC_HB04_CONFIG(coords) {x y z a} ;# default +} + +if ![info exists ::XHC_HB04_CONFIG(threadname)] { + set ::XHC_HB04_CONFIG(threadname) "servo-thread" ;# default +} +loadrt xhc_hb04_util names=pendant_util +addf pendant_util $::XHC_HB04_CONFIG(threadname) + +# If twopass, do not call procs in pass0 that test pin +# connections since components not yet loaded +if { ![namespace exists ::tp] || ([::tp::passnumber] != 0) } { + connect_pins ;# per INI file items: [XHC_HB04_BUTTONS]buttonname=pin + wheel_setup $::XHC_HB04_CONFIG(jogmode) + # jog wheel per INI file items: + # [XHC_HB04_CONFIG]coords,coefs,scales +} +if [info exists ::makenet_msg] { + popup_msg $::makenet_msg +} +#parray ::XHC_HB04_CONFIG diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/halshow.preferences b/linuxcnc/sim.gmoccapy.lathe_configs/halshow.preferences new file mode 100755 index 0000000..310fce1 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/halshow.preferences @@ -0,0 +1,24 @@ +# Halshow settings +# This file is generated automatically. +wm geometry . 953x382+810+114 +placeFrames 0.4680232558139535 +set ::ratio 0.4680232558139535 +set ::old_w_leftf 160 +set ::watchlist { + pin+lcec.0.0.actual-position + pin+lcec.0.0.commanded-position + pin+lcec.0.0.enc-frequency + pin+lcec.0.0.enc-pos-scale + pin+lcec.0.0.enc-position + pin+lcec.0.0.index-byte + pin+lcec.0.0.DiffT + pin+lcec.0.read.time + pin+lcec.0.write.time +} +set ::workmode watchhal +set ::watchInterval 100 +set ::col1_width 100 +set ::ffmts +set ::ifmts +set ::alwaysOnTop 0 +set ::autoSaveWatchlist 1 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe.ini b/linuxcnc/sim.gmoccapy.lathe_configs/lathe.ini new file mode 100755 index 0000000..e6cffcb --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe.ini @@ -0,0 +1,160 @@ +# EMC controller parameters for a simulated machine. +# General note: Comments can either be preceded with a # or ; - either is +# acceptable, although # is in keeping with most linux config files. + +# General section ------------------------------------------------------------- +[EMC] +VERSION = 1.1 +MACHINE = gmoccapy_lathe +#DEBUG = 0x7FFFFFFF +DEBUG = 0 + +# for details see nc_files/subroutines/maco_instructions.txt +[DISPLAY] +DISPLAY = gmoccapy +LATHE = 1 +BACK_TOOL_LATHE = 0 + +# Cycle time, in milliseconds, that display will sleep between polls +CYCLE_TIME = 100 + +# Highest value that will be allowed for feed override, 1.0 = 100% +MAX_FEED_OVERRIDE = 1.5 +MAX_SPINDLE_OVERRIDE = 1.2 +MIN_SPINDLE_OVERRIDE = .5 + +# Prefix to be used +PROGRAM_PREFIX = /home/debian/linuxcnc/nc_files + +# Introductory graphic +INTRO_GRAPHIC = linuxcnc.gif +INTRO_TIME = 5 + +# list of selectable jog increments +INCREMENTS = 1.000 mm, 0.100 mm, 0.010 mm, 0.001 mm + +[FILTER] +PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image +PROGRAM_EXTENSION = .py Python Script +png = image-to-gcode +gif = image-to-gcode +jpg = image-to-gcode +py = python + +# Task controller section ----------------------------------------------------- +[RS274NGC] +RS274NGC_STARTUP_CODE = G18 G21 G40 G49 G54 G80 G90 G94 G8 M9 M5 G64 P0.005 +PARAMETER_FILE = sim.var +SUBROUTINE_PATH = macros + +# Motion control section ------------------------------------------------------ +[EMCMOT] +EMCMOT = motmod +COMM_TIMEOUT = 1.0 +BASE_PERIOD = 100000 +SERVO_PERIOD = 1000000 + +# Hardware Abstraction Layer section -------------------------------------------------- +[TASK] +TASK = milltask +CYCLE_TIME = 0.001 + +# Part program interpreter section -------------------------------------------- +[HAL] +HALFILE = core_sim_lathe.hal +HALFILE = spindle_sim.hal +HALFILE = simulated_home_lathe.hal +HALFILE = ethercat_end.hal + +# Single file that is executed after the GUI has started. +POSTGUI_HALFILE = gmoccapy_postgui.hal + +HALUI = halui + +# Trajectory planner section -------------------------------------------------- +[HALUI] +#No Content + +[TRAJ] +COORDINATES = X Z +LINEAR_UNITS = mm +ANGULAR_UNITS = degree +DEFAULT_LINEAR_VELOCITY = 50 +MAX_LINEAR_VELOCITY = 234 +POSITION_FILE = position.txt +#NO_FORCE_HOMING = 1 + +# First axis +[EMCIO] +EMCIO = io +CYCLE_TIME = 0.100 + +# tool table file +TOOL_TABLE = lathe.tbl + +[KINS] +KINEMATICS = trivkins coordinates=XZ +JOINTS = 2 + +[AXIS_X] +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_0] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 0.0 +HOME = 100 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 1 +HOME_IS_SHARED = 1 + +# Third axis +[AXIS_Z] +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_1] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 1.0 +HOME = 250 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 0 +HOME_IS_SHARED = 1 + +# section for main IO controller parameters ----------------------------------- +[MACROS] +MACRO = i_am_lost +MACRO = halo_world +MACRO = jog_around +MACRO = increment xinc yinc +MACRO = go_to_position X-pos Y-pos Z-pos + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe.pref b/linuxcnc/sim.gmoccapy.lathe_configs/lathe.pref new file mode 100755 index 0000000..d58a1da --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe.pref @@ -0,0 +1,74 @@ +[DEFAULT] +dro_size = 28 +abs_color = #0000FF +rel_color = #000000 +dtg_color = #FFFF00 +homed_color = #00FF00 +unhomed_color = #FF0000 +spindle_bar_min = 0.0 +spindle_bar_max = 6000.0 +unlock_code = 123 +gremlin_view = rbt_view_y2 +blockheight = 0.0 +spindle_start_rpm = 300.0 +scale_jog_vel = 140.4 +scale_spindle_override = 1 +scale_feed_override = 1 +scale_rapid_override = 1 +hide_turtle_jog_button = False +turtle_jog_factor = 20 +open_file = +screen1 = window +x_pos = 40 +y_pos = 30 +width = 979 +height = 750 +use_screen2 = False +gtk_theme = Follow System Theme +audio_alert = /usr/share/sounds/freedesktop/stereo/dialog-warning.oga +audio_error = /usr/share/sounds/freedesktop/stereo/dialog-error.oga +grid_size = 1.0 +view = p +mouse_btn_mode = 4 +hide_cursor = False +system_name_tool = Tool +system_name_g5x = G5x +system_name_rot = Rot +system_name_g92 = G92 +system_name_g54 = G54 +system_name_g55 = G55 +system_name_g56 = G56 +system_name_g57 = G57 +system_name_g58 = G58 +system_name_g59 = G59 +system_name_g59.1 = G59.1 +system_name_g59.2 = G59.2 +system_name_g59.3 = G59.3 +jump_to_dir = /home/emcmesa +show_keyboard_on_offset = False +show_keyboard_on_tooledit = False +show_keyboard_on_edit = True +show_keyboard_on_mdi = True +show_keyboard_on_file_selection = False +x_pos_popup = 45.0 +y_pos_popup = 55 +width_popup = 250.0 +max_messages = 10 +message_font = sans 10 +use_frames = True +reload_tool = True +blockdel = False +opstop = False +enable_dro = False +show_offsets = False +show_dtg = False +view_tool_path = True +view_dimension = True +run_from_line = no_run +unlock_way = use +show_preview_on_offset = False +use_keyboard_shortcuts = False +dro_digits = 3 +toggle_readout = True +tool_in_spindle = 0 + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe.tbl b/linuxcnc/sim.gmoccapy.lathe_configs/lathe.tbl new file mode 100755 index 0000000..bd538b5 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe.tbl @@ -0,0 +1,5 @@ +T1 P1 X-12.0 Y0.0 Z-25.0 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.4 I26.0 J86.0 Q2.0 ;60 Grad vorn +T2 P2 X-10.356 Y0.0 Z12.123 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.1 I50.0 J85.0 Q2.0 ;35 Grad vorn +T3 P3 X1.123 Y0.0 Z25.456 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.4 I-80.0 J-25.0 Q3.0 ;55 Grad vorn +T4 P4 X0.0 Y0.0 Z0.0 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.1 I94.0 J154.0 Q1.0 ;60 Grad Rück +T5 P5 X5.737 Y0.0 Z12.2399 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.1 I0.0 J0.0 Q6.0 ;Einstichstahl diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe_C.ini b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_C.ini new file mode 100755 index 0000000..6adbccb --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_C.ini @@ -0,0 +1,182 @@ +# EMC controller parameters for a simulated machine. +# General note: Comments can either be preceded with a # or ; - either is +# acceptable, although # is in keeping with most linux config files. + +# General section ------------------------------------------------------------- +[EMC] +VERSION = 1.1 +MACHINE = lathe_c +#DEBUG = 0x7FFFFFFF +DEBUG = 0 + +# for details see nc_files/subroutines/maco_instructions.txt +[DISPLAY] +DISPLAY = gmoccapy +LATHE = 1 +BACK_TOOL_LATHE = 0 + +# Cycle time, in milliseconds, that display will sleep between polls +CYCLE_TIME = 100 + +# Highest value that will be allowed for feed override, 1.0 = 100% +MAX_FEED_OVERRIDE = 1.5 +MAX_SPINDLE_OVERRIDE = 1.2 +MIN_SPINDLE_OVERRIDE = .5 + + +# Prefix to be used +PROGRAM_PREFIX = /home/debian/linuxcnc/nc_files + +# Introductory graphic +INTRO_GRAPHIC = linuxcnc.gif +INTRO_TIME = 5 + +# list of selectable jog increments +INCREMENTS = 1.000 mm, 0.100 mm, 0.010 mm, 0.001 mm + +[FILTER] +PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image +PROGRAM_EXTENSION = .py Python Script +png = image-to-gcode +gif = image-to-gcode +jpg = image-to-gcode +py = python + +# Task controller section ----------------------------------------------------- +[RS274NGC] +RS274NGC_STARTUP_CODE = G18 G21 G40 G49 G54 G80 G90 G94 G8 M9 M5 G64 P0.005 +PARAMETER_FILE = sim.var +SUBROUTINE_PATH = macros + +# Motion control section ------------------------------------------------------ +[EMCMOT] +EMCMOT = motmod +COMM_TIMEOUT = 1.0 +BASE_PERIOD = 100000 +SERVO_PERIOD = 1000000 + +# Hardware Abstraction Layer section -------------------------------------------------- +[TASK] +TASK = milltask +CYCLE_TIME = 0.001 + +# Part program interpreter section -------------------------------------------- +[HAL] +HALFILE = core_sim_lathe_C.hal +HALFILE = spindle_sim.hal +HALFILE = simulated_home_lathe.hal + +# Single file that is executed after the GUI has started. +POSTGUI_HALFILE = gmoccapy_postgui.hal + +HALUI = halui + +# Trajectory planner section -------------------------------------------------- +[HALUI] +#No Content + +[TRAJ] +COORDINATES = X Z C +LINEAR_UNITS = mm +ANGULAR_UNITS = degree +DEFAULT_LINEAR_VELOCITY = 50 +MAX_LINEAR_VELOCITY = 234 +POSITION_FILE = position.txt +#NO_FORCE_HOMING = 1 + +# First axis +[EMCIO] +EMCIO = io +CYCLE_TIME = 0.100 + +# tool table file +TOOL_TABLE = lathe.tbl + +[KINS] +KINEMATICS = trivkins coordinates=XZC +JOINTS = 3 + +[AXIS_X] +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_0] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 0.0 +HOME = 10 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 1 +HOME_IS_SHARED = 1 + +# Third axis +[AXIS_Z] +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_1] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 1.0 +HOME = -10 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 0 +HOME_IS_SHARED = 1 + + +[AXIS_C] +MAX_VELOCITY = 90.0 +MAX_ACCELERATION = 1200.0 + +[JOINT_2] +TYPE = ANGULAR +HOME = 0.0 +MAX_VELOCITY = 90.0 +MAX_ACCELERATION = 1200.0 +BACKLASH = 0.000 +INPUT_SCALE = 40 +OUTPUT_SCALE = 1.000 +FERROR = 5.0 +MIN_FERROR = 1.0 +HOME_OFFSET = 0.0 +HOME_SEARCH_VEL = 0.0 +HOME_LATCH_VEL = 0.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 1 + +# section for main IO controller parameters ----------------------------------- +[MACROS] +MACRO = i_am_lost +MACRO = halo_world +MACRO = jog_around +MACRO = increment xinc yinc +MACRO = go_to_position X-pos Y-pos Z-pos + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe_CW.ini b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_CW.ini new file mode 100755 index 0000000..7b16666 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_CW.ini @@ -0,0 +1,210 @@ +# EMC controller parameters for a simulated machine. +# General note: Comments can either be preceded with a # or ; - either is +# acceptable, although # is in keeping with most linux config files. + +# General section ------------------------------------------------------------- +[EMC] +VERSION = 1.1 +MACHINE = lathe_cw +#DEBUG = 0x7FFFFFFF +DEBUG = 0 + +# for details see nc_files/subroutines/maco_instructions.txt +[DISPLAY] +DISPLAY = gmoccapy +LATHE = 1 +BACK_TOOL_LATHE = 0 + +# Cycle time, in milliseconds, that display will sleep between polls +CYCLE_TIME = 100 + +# Highest value that will be allowed for feed override, 1.0 = 100% +MAX_FEED_OVERRIDE = 1.5 +MAX_SPINDLE_OVERRIDE = 1.2 +MIN_SPINDLE_OVERRIDE = .5 + + +# Prefix to be used +PROGRAM_PREFIX = /home/debian/linuxcnc/nc_files + +# Introductory graphic +INTRO_GRAPHIC = linuxcnc.gif +INTRO_TIME = 5 + +# list of selectable jog increments +INCREMENTS = 1.000 mm, 0.100 mm, 0.010 mm, 0.001 mm + +[FILTER] +PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image +PROGRAM_EXTENSION = .py Python Script +png = image-to-gcode +gif = image-to-gcode +jpg = image-to-gcode +py = python + +# Task controller section ----------------------------------------------------- +[RS274NGC] +RS274NGC_STARTUP_CODE = G18 G21 G40 G49 G54 G80 G90 G94 G8 M9 M5 G64 P0.005 +PARAMETER_FILE = sim.var +SUBROUTINE_PATH = macros + +# Motion control section ------------------------------------------------------ +[EMCMOT] +EMCMOT = motmod +COMM_TIMEOUT = 1.0 +BASE_PERIOD = 100000 +SERVO_PERIOD = 1000000 + +# Hardware Abstraction Layer section -------------------------------------------------- +[TASK] +TASK = milltask +CYCLE_TIME = 0.001 + +# Part program interpreter section -------------------------------------------- +[HAL] +HALFILE = core_sim_lathe_CW.hal +HALFILE = spindle_sim.hal +HALFILE = simulated_home_lathe.hal + +# Single file that is executed after the GUI has started. +POSTGUI_HALFILE = gmoccapy_postgui.hal + +HALUI = halui + +# Trajectory planner section -------------------------------------------------- +[HALUI] +#No Content + +[TRAJ] +COORDINATES = X Z C W +LINEAR_UNITS = mm +ANGULAR_UNITS = degree +DEFAULT_LINEAR_VELOCITY = 50 +MAX_LINEAR_VELOCITY = 234 +POSITION_FILE = position.txt +#NO_FORCE_HOMING = 1 + +# First axis +[EMCIO] +EMCIO = io +CYCLE_TIME = 0.100 + +# tool table file +TOOL_TABLE = lathe.tbl + +[KINS] +KINEMATICS = trivkins coordinates=XZCW +JOINTS = 4 + +[AXIS_X] +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_0] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 0.0 +HOME = 10 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 1 +HOME_IS_SHARED = 1 + +# Third axis +[AXIS_Z] +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_1] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 1.0 +HOME = -10 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 0 +HOME_IS_SHARED = 1 + + +[AXIS_C] +MAX_VELOCITY = 90.0 +MAX_ACCELERATION = 1200.0 + +[JOINT_2] +TYPE = ANGULAR +HOME = 0.0 +MAX_VELOCITY = 90.0 +MAX_ACCELERATION = 1200.0 +BACKLASH = 0.000 +INPUT_SCALE = 40 +OUTPUT_SCALE = 1.000 +FERROR = 5.0 +MIN_FERROR = 1.0 +HOME_OFFSET = 0.0 +HOME_SEARCH_VEL = 0.0 +HOME_LATCH_VEL = 0.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 1 + + +[AXIS_W] +MIN_LIMIT = -200.0 +MAX_LIMIT = 0.0 +MAX_VELOCITY = 66 +MAX_ACCELERATION = 150.0 + +[JOINT_3] +TYPE = LINEAR +MAX_VELOCITY = 66 +MAX_ACCELERATION = 150.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -200.0 +MAX_LIMIT = 0.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 0.0 +HOME = 0.0 +HOME_SEARCH_VEL = 0.0 +HOME_LATCH_VEL = 0.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 1 + + + +# section for main IO controller parameters ----------------------------------- +[MACROS] +MACRO = i_am_lost +MACRO = halo_world +MACRO = jog_around +MACRO = increment xinc yinc +MACRO = go_to_position X-pos Y-pos Z-pos + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe_backtool.ini b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_backtool.ini new file mode 100755 index 0000000..3ec2f6a --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_backtool.ini @@ -0,0 +1,160 @@ +# EMC controller parameters for a simulated machine. +# General note: Comments can either be preceded with a # or ; - either is +# acceptable, although # is in keeping with most linux config files. + +# General section ------------------------------------------------------------- +[EMC] +VERSION = 1.1 +MACHINE = gmoccapy_lathe +#DEBUG = 0x7FFFFFFF +DEBUG = 0 + +# for details see nc_files/subroutines/maco_instructions.txt +[DISPLAY] +DISPLAY = gmoccapy +LATHE = 1 +BACK_TOOL_LATHE = 1 + +# Cycle time, in milliseconds, that display will sleep between polls +CYCLE_TIME = 100 + +# Highest value that will be allowed for feed override, 1.0 = 100% +MAX_FEED_OVERRIDE = 1.5 +MAX_SPINDLE_OVERRIDE = 1.2 +MIN_SPINDLE_OVERRIDE = .5 + + +# Prefix to be used +PROGRAM_PREFIX = /home/debian/linuxcnc/nc_files + +# Introductory graphic +INTRO_GRAPHIC = linuxcnc.gif +INTRO_TIME = 5 + +# list of selectable jog increments +INCREMENTS = 1.000 mm, 0.100 mm, 0.010 mm, 0.001 mm + +[FILTER] +PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image +PROGRAM_EXTENSION = .py Python Script +png = image-to-gcode +gif = image-to-gcode +jpg = image-to-gcode +py = python + +# Task controller section ----------------------------------------------------- +[RS274NGC] +RS274NGC_STARTUP_CODE = G18 G21 G40 G49 G54 G80 G90 G94 G8 M9 M5 G64 P0.005 +PARAMETER_FILE = sim.var +SUBROUTINE_PATH = macros + +# Motion control section ------------------------------------------------------ +[EMCMOT] +EMCMOT = motmod +COMM_TIMEOUT = 1.0 +BASE_PERIOD = 100000 +SERVO_PERIOD = 1000000 + +# Hardware Abstraction Layer section -------------------------------------------------- +[TASK] +TASK = milltask +CYCLE_TIME = 0.001 + +# Part program interpreter section -------------------------------------------- +[HAL] +HALFILE = core_sim_lathe.hal +HALFILE = spindle_sim.hal +HALFILE = simulated_home_lathe.hal + +# Single file that is executed after the GUI has started. +POSTGUI_HALFILE = gmoccapy_postgui.hal + +HALUI = halui + +# Trajectory planner section -------------------------------------------------- +[HALUI] +#No Content + +[TRAJ] +COORDINATES = X Z +LINEAR_UNITS = mm +ANGULAR_UNITS = degree +DEFAULT_LINEAR_VELOCITY = 50 +MAX_LINEAR_VELOCITY = 234 +POSITION_FILE = position.txt +#NO_FORCE_HOMING = 1 + +# First axis +[EMCIO] +EMCIO = io +CYCLE_TIME = 0.100 + +# tool table file +TOOL_TABLE = lathe.tbl + +[KINS] +KINEMATICS = trivkins coordinates=XZ +JOINTS = 2 + +[AXIS_X] +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_0] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 0.0 +HOME = 10 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 1 +HOME_IS_SHARED = 1 + +# Third axis +[AXIS_Z] +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_1] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 1.0 +HOME = -10 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 0 +HOME_IS_SHARED = 1 + +# section for main IO controller parameters ----------------------------------- +[MACROS] +MACRO = i_am_lost +MACRO = halo_world +MACRO = jog_around +MACRO = increment xinc yinc +MACRO = go_to_position X-pos Y-pos Z-pos + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe_c.pref b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_c.pref new file mode 100755 index 0000000..c4dadc1 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_c.pref @@ -0,0 +1,73 @@ +[DEFAULT] +dro_size = 28 +abs_color = #0000FF +rel_color = #000000 +dtg_color = #FFFF00 +homed_color = #00FF00 +unhomed_color = #FF0000 +spindle_bar_min = 0.0 +spindle_bar_max = 6000.0 +unlock_code = 123 +open_file = +screen1 = window +x_pos = 40 +y_pos = 30 +width = 979 +height = 750 +reload_tool = True +enable_dro = False +show_offsets = False +show_dtg = False +view_tool_path = True +view_dimension = True +mouse_btn_mode = 4 +x_pos_popup = 45.0 +y_pos_popup = 55 +width_popup = 250.0 +max_messages = 10 +message_font = sans 10 +use_frames = True +show_keyboard_on_offset = False +show_keyboard_on_tooledit = False +show_keyboard_on_edit = True +show_keyboard_on_mdi = False +show_keyboard_on_file_selection = False +system_name_tool = Tool +system_name_g5x = G5x +system_name_rot = Rotation of Z +system_name_g92 = G92 +system_name_g54 = G54 +system_name_g55 = G55 +system_name_g56 = G56 +system_name_g57 = G57 +system_name_g58 = G58 +system_name_g59 = G59 +system_name_g59.1 = G59.1 +system_name_g59.2 = G59.2 +system_name_g59.3 = G59.3 +unlock_way = no +grid_size = 1.0 +view = y2 +gremlin_view = rbt_view_y +tool_in_spindle = 0 +blockheight = 0.0 +spindle_start_rpm = 300.0 +scale_jog_vel = 140.4 +scale_spindle_override = 1 +scale_feed_override = 1 +scale_rapid_override = 1 +hide_turtle_jog_button = False +turtle_jog_factor = 20 +gtk_theme = Follow System Theme +audio_alert = /usr/share/sounds/freedesktop/stereo/dialog-warning.oga +audio_error = /usr/share/sounds/freedesktop/stereo/dialog-error.oga +hide_cursor = False +jump_to_dir = /home/emcmesa +blockdel = False +opstop = False +run_from_line = run +show_preview_on_offset = True +use_keyboard_shortcuts = True +dro_digits = 3 +toggle_readout = True + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe_cw.pref b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_cw.pref new file mode 100755 index 0000000..6ca7186 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_cw.pref @@ -0,0 +1,72 @@ +[DEFAULT] +dro_size = 28 +abs_color = #0000FF +rel_color = #000000 +dtg_color = #FFFF00 +homed_color = #00FF00 +unhomed_color = #FF0000 +spindle_bar_min = 0.0 +spindle_bar_max = 6000.0 +unlock_code = 123 +view = y2 +blockheight = 0.0 +spindle_start_rpm = 300.0 +scale_jog_vel = 140.4 +scale_spindle_override = 1 +scale_feed_override = 1 +scale_rapid_override = 1 +hide_turtle_jog_button = False +turtle_jog_factor = 20 +open_file = +screen1 = window +x_pos = 40 +y_pos = 30 +width = 979 +height = 750 +gtk_theme = Follow System Theme +audio_alert = /usr/share/sounds/freedesktop/stereo/dialog-warning.oga +audio_error = /usr/share/sounds/freedesktop/stereo/dialog-error.oga +grid_size = 1.0 +mouse_btn_mode = 4 +hide_cursor = False +system_name_tool = Tool +system_name_g5x = G5x +system_name_rot = Rot +system_name_g92 = G92 +system_name_g54 = G54 +system_name_g55 = G55 +system_name_g56 = G56 +system_name_g57 = G57 +system_name_g58 = G58 +system_name_g59 = G59 +system_name_g59.1 = G59.1 +system_name_g59.2 = G59.2 +system_name_g59.3 = G59.3 +jump_to_dir = /home/emcmesa +show_keyboard_on_offset = False +show_keyboard_on_tooledit = False +show_keyboard_on_edit = False +show_keyboard_on_mdi = False +show_keyboard_on_file_selection = False +x_pos_popup = 45.0 +y_pos_popup = 55 +width_popup = 250.0 +max_messages = 10 +message_font = sans 10 +use_frames = True +reload_tool = True +blockdel = False +opstop = False +enable_dro = False +show_offsets = False +show_dtg = False +view_tool_path = True +view_dimension = True +run_from_line = no_run +unlock_way = no +show_preview_on_offset = False +use_keyboard_shortcuts = True +dro_digits = 3 +toggle_readout = True +tool_in_spindle = 2 + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe_imperial.ini b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_imperial.ini new file mode 100755 index 0000000..4629d00 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_imperial.ini @@ -0,0 +1,160 @@ +# EMC controller parameters for a simulated machine. +# General note: Comments can either be preceded with a # or ; - either is +# acceptable, although # is in keeping with most linux config files. + +# General section ------------------------------------------------------------- +[EMC] +VERSION = 1.1 +MACHINE = lathe_imperial +#DEBUG = 0x7FFFFFFF +DEBUG = 0 + +# for details see nc_files/subroutines/maco_instructions.txt +[DISPLAY] +DISPLAY = gmoccapy + +LATHE = 1 +BACK_TOOL_LATHE = 0 + +# Cycle time, in milliseconds, that display will sleep between polls +CYCLE_TIME = 100 + +# Highest value that will be allowed for feed override, 1.0 = 100% +MAX_FEED_OVERRIDE = 1.5 +MAX_SPINDLE_OVERRIDE = 1.2 +MIN_SPINDLE_OVERRIDE = .5 + +# Prefix to be used +PROGRAM_PREFIX = /home/debian/linuxcnc/nc_files + +# Introductory graphic +INTRO_GRAPHIC = linuxcnc.gif +INTRO_TIME = 5 + +# list of selectable jog increments +INCREMENTS = 0.4 inch, 0.04 inch , 0.004 inch, 0.0004 inch + +[FILTER] +PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image +PROGRAM_EXTENSION = .py Python Script +png = image-to-gcode +gif = image-to-gcode +jpg = image-to-gcode +py = python + +# Task controller section ----------------------------------------------------- +[RS274NGC] +RS274NGC_STARTUP_CODE = G18 G20 G40 G49 G54 G80 G90 G94 G8 M9 M5 G64 P0.001 +PARAMETER_FILE = sim.var +SUBROUTINE_PATH = macros + +# Motion control section ------------------------------------------------------ +[EMCMOT] +EMCMOT = motmod +COMM_TIMEOUT = 1.0 +BASE_PERIOD = 100000 +SERVO_PERIOD = 1000000 + +# Hardware Abstraction Layer section -------------------------------------------------- +[TASK] +TASK = milltask +CYCLE_TIME = 0.001 + +# Part program interpreter section -------------------------------------------- +[HAL] +HALFILE = core_sim_lathe.hal +HALFILE = spindle_sim.hal +HALFILE = simulated_home_lathe.hal + +# Single file that is executed after the GUI has started. +POSTGUI_HALFILE = gmoccapy_postgui.hal + +HALUI = halui + +# Trajectory planner section -------------------------------------------------- +[HALUI] +#No Content + +[TRAJ] +COORDINATES = X Z +LINEAR_UNITS = inch +ANGULAR_UNITS = degree +DEFAULT_LINEAR_VELOCITY = 1.6 +MAX_LINEAR_VELOCITY = 10 +POSITION_FILE = position.txt + +# First axis +[EMCIO] +EMCIO = io +CYCLE_TIME = 0.100 + +# tool table file +TOOL_TABLE = lathe.tbl + +[KINS] +KINEMATICS = trivkins coordinates=XZ +JOINTS = 2 + +[AXIS_X] +MIN_LIMIT = -2.0 +MAX_LIMIT = 40.0 +MAX_VELOCITY = 6.5 +MAX_ACCELERATION = 59.0 + +[JOINT_0] +TYPE = LINEAR +MAX_VELOCITY = 6.5 +MAX_ACCELERATION = 59.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -2.0 +MAX_LIMIT = 40.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 0.0 +HOME = 4 +HOME_SEARCH_VEL = 40.0 +HOME_LATCH_VEL = 2.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 1 +HOME_IS_SHARED = 1 + + +# Third axis +[AXIS_Z] +MIN_LIMIT = -3.0 +MAX_LIMIT = 400.0 +MAX_VELOCITY = 6.5 +MAX_ACCELERATION = 59.0 + +[JOINT_1] +TYPE = LINEAR +MAX_VELOCITY = 6.5 +MAX_ACCELERATION = 59.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -3.0 +MAX_LIMIT = 400.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 1.0 +HOME = -4 +HOME_SEARCH_VEL = 40.0 +HOME_LATCH_VEL = 2.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 0 +HOME_IS_SHARED = 1 + +# section for main IO controller parameters ----------------------------------- +[MACROS] +MACRO = i_am_lost +MACRO = halo_world +MACRO = jog_around +MACRO = increment xinc yinc +MACRO = go_to_position X-pos Y-pos Z-pos + +# Sections for display options ------------------------------------------------ diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe_imperial.pref b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_imperial.pref new file mode 100755 index 0000000..d261f5c --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_imperial.pref @@ -0,0 +1,71 @@ +[DEFAULT] +dro_size = 28 +abs_color = #0000FF +rel_color = #000000 +dtg_color = #FFFF00 +homed_color = #00FF00 +unhomed_color = #FF0000 +spindle_bar_min = 0.0 +spindle_bar_max = 6000.0 +unlock_code = 123 +blockheight = 0.0 +spindle_start_rpm = 300.0 +scale_jog_vel = 6.0 +scale_spindle_override = 1 +scale_feed_override = 1 +scale_rapid_override = 1 +hide_turtle_jog_button = False +turtle_jog_factor = 20 +open_file = +screen1 = window +x_pos = 40 +y_pos = 30 +width = 979 +height = 750 +gtk_theme = Follow System Theme +audio_alert = /usr/share/sounds/freedesktop/stereo/dialog-warning.oga +audio_error = /usr/share/sounds/freedesktop/stereo/dialog-error.oga +grid_size = 1.0 +mouse_btn_mode = 4 +hide_cursor = False +system_name_tool = Tool +system_name_g5x = G5x +system_name_rot = Rot +system_name_g92 = G92 +system_name_g54 = G54 +system_name_g55 = G55 +system_name_g56 = G56 +system_name_g57 = G57 +system_name_g58 = G58 +system_name_g59 = G59 +system_name_g59.1 = G59.1 +system_name_g59.2 = G59.2 +system_name_g59.3 = G59.3 +jump_to_dir = /home/emcmesa +show_keyboard_on_offset = False +show_keyboard_on_tooledit = False +show_keyboard_on_edit = True +show_keyboard_on_mdi = True +show_keyboard_on_file_selection = False +x_pos_popup = 45.0 +y_pos_popup = 55 +width_popup = 250.0 +max_messages = 10 +message_font = sans 10 +use_frames = True +reload_tool = True +blockdel = False +opstop = False +enable_dro = False +show_offsets = False +show_dtg = False +view_tool_path = True +view_dimension = True +run_from_line = no_run +unlock_way = use +show_preview_on_offset = False +use_keyboard_shortcuts = False +dro_digits = 4 +toggle_readout = True +view = y + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathe_macros.ini b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_macros.ini new file mode 100755 index 0000000..ca358f6 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathe_macros.ini @@ -0,0 +1,165 @@ +# EMC controller parameters for a simulated machine. +# General note: Comments can either be preceded with a # or ; - either is +# acceptable, although # is in keeping with most linux config files. + +# General section ------------------------------------------------------------- +[EMC] +VERSION = 1.1 +MACHINE = gmoccapy_lathe +#DEBUG = 0x7FFFFFFF +DEBUG = 0 + +# for details see nc_files/subroutines/maco_instructions.txt +[DISPLAY] +DISPLAY = gmoccapy +LATHE = 1 +BACK_TOOL_LATHE = 0 + +# Cycle time, in milliseconds, that display will sleep between polls +CYCLE_TIME = 100 + +# Highest value that will be allowed for feed override, 1.0 = 100% +MAX_FEED_OVERRIDE = 1.5 +MAX_SPINDLE_OVERRIDE = 1.2 +MIN_SPINDLE_OVERRIDE = .5 + + +# Prefix to be used +PROGRAM_PREFIX = /home/debian/linuxcnc/nc_files + +# Introductory graphic +INTRO_GRAPHIC = linuxcnc.gif +INTRO_TIME = 5 + +# list of selectable jog increments +INCREMENTS = 1.000 mm, 0.100 mm, 0.010 mm, 0.001 mm + +EMBED_TAB_NAME = Cycles +EMBED_TAB_LOCATION = ntb_preview +#EMBED_TAB_LOCATION = ntb_user_tabs +EMBED_TAB_COMMAND = halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -U notouch=1 -U norun=0 -u lathehandler.py -x {XID} lathemacro.ui + +[FILTER] +PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image +PROGRAM_EXTENSION = .py Python Script +png = image-to-gcode +gif = image-to-gcode +jpg = image-to-gcode +py = python + +# Task controller section ----------------------------------------------------- +[RS274NGC] +RS274NGC_STARTUP_CODE = G18 G21 G40 G49 G54 G80 G90 G94 G8 M9 M5 G64 P0.005 +PARAMETER_FILE = sim.var +SUBROUTINE_PATH = macros:./ + +# Motion control section ------------------------------------------------------ +[EMCMOT] +EMCMOT = motmod +COMM_TIMEOUT = 1.0 +BASE_PERIOD = 100000 +SERVO_PERIOD = 1000000 + +# Hardware Abstraction Layer section -------------------------------------------------- +[TASK] +TASK = milltask +CYCLE_TIME = 0.001 + +# Part program interpreter section -------------------------------------------- +[HAL] +HALFILE = core_sim_lathe.hal +HALFILE = spindle_sim.hal +HALFILE = simulated_home_lathe.hal + +# Single file that is executed after the GUI has started. +#POSTGUI_HALFILE = gmoccapy_postgui.hal + +HALUI = halui + +# Trajectory planner section -------------------------------------------------- +[HALUI] +#No Content + +[TRAJ] +COORDINATES = X Z +LINEAR_UNITS = mm +ANGULAR_UNITS = degree +DEFAULT_LINEAR_VELOCITY = 50 +MAX_LINEAR_VELOCITY = 234 +POSITION_FILE = position.txt +#NO_FORCE_HOMING = 1 + +# First axis +[EMCIO] +EMCIO = io +CYCLE_TIME = 0.100 + +# tool table file +TOOL_TABLE = lathe.tbl + +[KINS] +KINEMATICS = trivkins coordinates=XZ +JOINTS = 2 + +[AXIS_X] +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_0] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -50.0 +MAX_LIMIT = 200.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 0.0 +HOME = 10 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 1 +HOME_IS_SHARED = 1 + +# Third axis +[AXIS_Z] +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 + +[JOINT_1] +TYPE = LINEAR +MAX_VELOCITY = 166 +MAX_ACCELERATION = 1500.0 +BACKLASH = 0.000 +INPUT_SCALE = 4000 +OUTPUT_SCALE = 1.000 +MIN_LIMIT = -75.0 +MAX_LIMIT = 1000.0 +FERROR = 0.050 +MIN_FERROR = 0.010 +HOME_OFFSET = 1.0 +HOME = -10 +HOME_SEARCH_VEL = 200.0 +HOME_LATCH_VEL = 20.0 +HOME_USE_INDEX = NO +HOME_IGNORE_LIMITS = NO +HOME_SEQUENCE = 0 +HOME_IS_SHARED = 1 + +# section for main IO controller parameters ----------------------------------- +[MACROS] +MACRO = i_am_lost +MACRO = halo_world +MACRO = jog_around +MACRO = increment xinc yinc +MACRO = go_to_position X-pos Y-pos Z-pos + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathehandler.py b/linuxcnc/sim.gmoccapy.lathe_configs/lathehandler.py new file mode 100755 index 0000000..86a2091 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathehandler.py @@ -0,0 +1,217 @@ +#!/usr/bin/env python3 +# vim: sts=4 sw=4 et +# This is a component of EMC +# savestate.py copyright 2013 Andy Pugh +# based on code from +# probe.py Copyright 2010 Michael Haberler +# +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA'''''' + +import os,sys +from gladevcp.persistence import IniFile,widget_defaults,set_debug,select_widgets +import hal +import hal_glib +import glib +import linuxcnc +import cairo +import signal +import re +import gi +gi.require_version('Rsvg', '2.0') +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk +from gi.repository import Gdk +from gi.repository import GObject +from gi.repository import Pango +from gi.repository import Rsvg +from gi.repository import GdkPixbuf +debug = 0 +notouch = 0 +norun = 0 + +class HandlerClass: + active = False + tab_num = 0 + + def on_expose(self,nb,data=None): + tab_num = nb.get_current_page() + tab = nb.get_nth_page(tab_num) + alloc = tab.get_allocation() + x, y, w, h = (alloc.x, alloc.y, alloc.width, alloc.height) + pixbuf = self.svg.get_pixbuf_sub(f'#layer{tab_num}').scale_simple(w-10, h-10, GdkPixbuf.InterpType.BILINEAR) + im = self.builder.get_object(f'Image{tab_num}') + im.set_from_pixbuf(pixbuf) + for c in im.get_parent().get_children(): + if c.get_has_tooltip(): + m = re.findall(r'', c.get_tooltip_markup()) + if len(m) > 0: + x1 = int(m[0][0]); y1 = int(m[0][1]) + c.set_margin_left(max(0, w * x1/1500)) + c.set_margin_top(max(0, h * y1/1000)) + + + # decide if our window is active to mask the cycle-start hardware button + # FIXME: This is probably not as reliable as one might wish. + def event(self,w,event): + if w.is_active(): + if w.has_toplevel_focus() : + self.active = True + else: + self.active = False + + # Capture notify events + def on_map_event(self, widget, data=None): + top = widget.get_toplevel() + top.connect('notify', self.event) + + def on_destroy(self,obj,data=None): + self.ini.save_state(self) + + def on_restore_defaults(self,button,data=None): + ''' + example callback for 'Reset to defaults' button + currently unused + ''' + self.ini.create_default_ini() + self.ini.restore_state(self) + + def __init__(self, halcomp,builder,useropts): + self.halcomp = halcomp + self.builder = builder + self.ini_filename = 'savestate.sav' + self.defaults = { IniFile.vars: dict(), + IniFile.widgets : widget_defaults(select_widgets(self.builder.get_objects(), + hal_only=False,output_only = True)) + } + self.ini = IniFile(self.ini_filename,self.defaults,self.builder) + self.ini.restore_state(self) + + # A pin to use a physical switch to start the cycle + self.cycle_start = hal_glib.GPin(halcomp.newpin('cycle-start', hal.HAL_BIT, hal.HAL_IN)) + self.cycle_start.connect('value-changed', self.cycle_pin) + + # This catches the signal from Touchy to say that the tab is exposed + t = self.builder.get_object('macrobox') + t.connect('map-event',self.on_map_event) + t.add_events(Gdk.EventMask.STRUCTURE_MASK) + + self.cmd = linuxcnc.command() + + # This connects the expose event to re-draw and scale the SVG frames + t = self.builder.get_object('tabs1') + t.connect_after("draw", self.on_expose) + t.connect("destroy", Gtk.main_quit) + t.add_events(Gdk.EventMask.STRUCTURE_MASK) + self.svg = Rsvg.Handle().new_from_file('LatheMacro.svg') + self.active = True + + # handle Useropts + if norun: + for c in range(0,6): + print(c) + print( f'tab{c}.action') + self.builder.get_object(f'tab{c}.action').set_visible(False) + + def show_keyb(self, obj, data=None): + if notouch: return False + self.active_ctrl = obj + self.keyb = self.builder.get_object('keyboard') + self.entry = self.builder.get_object('entry1') + self.entry.modify_font(Pango.FontDescription("courier 42")) + self.entry.set_text("") + resp = self.keyb.run() + return True + + def keyb_prev_click(self, obj, data=None): + self.entry.set_text(self.active_ctrl.get_text()) + + def keyb_number_click(self, obj, data=None): + data = self.entry.get_text() + data = data + obj.get_label() + if any( x in data for x in [ '/2', '/4', '/8', '/16', '/32', '/64', '/128']): + v = [0] + [float(x) for x in data.replace('/','.').split('.')] + data = f'{v[-3] + v[-2]/v[-1]:6.7}' + self.entry.set_text(data) + + def keyb_pm_click(self, obj, data=None): + data = self.entry.get_text() + if data[0] == '-': + data = data[1:] + else: + data = '-' + data + self.entry.set_text(data) + + def keyb_convert_click(self, obj, data=None): + v = float(self.entry.get_text()) + op = obj.get_label() + if op == 'in->mm': + self.entry.set_text(f'{v * 25.4:6.4}') + elif op == 'mm->in': + self.entry.set_text(f'{v / 25.4:6.4}') + elif op == 'tpi->pitch': + self.entry.set_text(f'{25.4 / v:6.4}') + elif op == 'pitch->tpi': + self.entry.set_text(f'{25.4 / v:6.4}') + + def keyb_del_click(self, obj, data=None): + data = self.entry.get_text() + data = data[:-1] + self.entry.set_text(data) + + def keyb_clear_click(self, obj, data=None): + self.entry.set_text('') + + def keyb_cancel_click(self, obj, data=None): + self.keyb.hide() + + def keyb_ok_click(self, obj, data=None): + if self.entry.get_text() != '': + self.active_ctrl.set_value(float(self.entry.get_text())) + self.keyb.hide() + + def set_alpha(self, obj, data = None): + cr = obj.get_property('window').cairo_create() + cr.set_source_rgba(1.0, 1.0, 1.0, 0.0) + + def cycle_pin(self, pin, data = None): + if pin.get() == 0: + return + if self.active: + nb = self.builder.get_object('tabs1') + print('current tab', nb.get_current_page()) + c = self.builder.get_object(f"tab{nb.get_current_page()}.action") + if c is not None: + self.cmd.abort() + self.cmd.mode(linuxcnc.MODE_MDI) + self.cmd.wait_complete() + c.emit('clicked') + print(c.get_name(), "clicked") + + def testing(self, obj, data = None): + print('event', data) + +def get_handlers(halcomp,builder,useropts): + + global debug + for cmd in useropts: + print(cmd) + exec(cmd, globals()) + + set_debug(debug) + return [HandlerClass(halcomp,builder,useropts)] + + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/lathemacro.ui b/linuxcnc/sim.gmoccapy.lathe_configs/lathemacro.ui new file mode 100755 index 0000000..f9261e8 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/lathemacro.ui @@ -0,0 +1,2937 @@ + + + + + + + -89 + 89 + 1 + 10 + + + 100 + 1 + 10 + + + 6 + 0.14999999999999999 + 0.029999999999999999 + + + 100 + 10 + + + 200 + 100 + 10 + 10 + + + 100 + 1 + 1 + 10 + + + -1000 + 1000 + 10 + + + -1000 + 1000 + 1 + 10 + + + 250 + 1 + 0.25 + 10 + + + -20 + 250 + 1 + 10 + + + 200 + 100 + 10 + 10 + + + 100 + 1 + 1 + 10 + + + -2000 + 2000 + 1 + + + -2000 + 2000 + 10 + 1 + + + 2 + 0.050000000000000003 + 0.029999999999999999 + + + 2 + 50 + 2 + 0.5 + + + 200 + 100 + 10 + 10 + + + 100 + 1 + 1 + 10 + + + -2000 + 2000 + 1 + + + -89 + 89 + 1 + 10 + + + 20 + 1 + 0.050000000000000003 + 10 + + + 6 + 0.14999999999999999 + 0.02 + 10 + + + 100 + 250 + 10 + 10 + + + 100 + 1 + 1 + 10 + + + -1000 + 1000 + 1 + 10 + + + -1000 + 1000 + 1 + 10 + + + 2 + 0.029999999999999999 + 0.029999999999999999 + + + 200 + 100 + 10 + 10 + + + 100 + 9 + 1 + 10 + + + -2000 + 2000 + 1 + + + 250 + 1 + 0.25 + 10 + + + -20 + 250 + 1 + 10 + + + 200 + 100 + 10 + 10 + + + 100 + 1 + 1 + 10 + + + -2000 + 2000 + 1 + + + 25 + 1 + 0.25 + + + 200 + 50 + 10 + 10 + + + 100 + 5 + 1 + 10 + + + -2000 + 2000 + 1 + + + -2000 + 2000 + 1 + + + -90 + 90 + 1 + 10 + + + 3 + 1 + 0.01 + 10 + + + 2 + 0.14999999999999999 + 0.029999999999999999 + + + 100 + 1 + 10 + + + 20 + 500 + 100 + 10 + 10 + + + 100 + 1 + 1 + 10 + + + -20 + 250 + 15 + 1 + 10 + + + -2000 + 2000 + 1 + + + gtk-media-play + O<boring> call [${bore.x-f}] [${bore.sf-f}] [${bore.cut-f}] [${bore.feed-f}] [${bore.z-f}] [${bore.rad-f}] [${bore.angle-f}] [${bore.tool-s}] [${bore.coolant}] + + + Set Tool + M61 Q${bore.tool-s} G43 H${bore.tool-s} + + + O<chamfer>call [${chamfer.x-f}] [${chamfer.sf-f}] [0.5] [0] [${chamfer.z-f}] [${chamfer.tool-s}] [0] [${chamfer.size-f}] [${chamfer.fo}] [${chamfer.fi}] [${chamfer.bo}] [${chamfer.coolant}] + + + M61 Q${chamfer.tool-s} G43 H${chamfer.tool-s} + + + O<drilling> call [${drill.dia-f}] [${drill.sf-f}] [${drill.feed-f}] [${drill.z-f}] [${drill.peck-f}] [${drill.tool-s}] [${drill.coolant}] + + + Set Tool + Set Tool + M61 Q${drill.tool-s} G43 H${drill.tool-s} + + + O<facing>call [${face.x-f}] [${face.sf-f}] [${face.cut-f}] [${face.feed-f}] [${face.z-f}] [${face.angle-s}] [${face.tool-s}] [${face.coolant}] + + + Set Tool + M61 Q${face.tool-s} G43 H${face.tool-s} + + + O<grooving> call [${groove.x-f}] [${groove.sf-f}] [${groove.feed-f}] [${groove.tool-s}] [${groove.coolant}] + + + Set Tool + Set Tool + M61 Q${groove.tool-s} G43 H${groove.tool-s} + + + False + 5 + dialog + + + + + + True + False + 2 + + + True + False + end + + + OK + 100 + 50 + True + True + True + + + + False + False + 0 + + + + + Cancel + 100 + 50 + True + True + True + + + + False + False + 1 + + + + + False + True + end + 0 + + + + + 60 + True + True + + False + False + + + False + False + 1 + + + + + True + False + 5 + 4 + + + 1 + 50 + 50 + True + True + True + + + + + + 2 + 50 + 20 + True + True + True + + + + 1 + 2 + + + + + 3 + 50 + 20 + True + True + True + + + + 2 + 3 + + + + + DEL + 50 + 20 + True + True + True + + + + 3 + 4 + + + + + 4 + 50 + 50 + True + True + True + + + + 1 + 2 + + + + + 5 + 50 + 20 + True + True + True + + + + 1 + 2 + 1 + 2 + + + + + 6 + 50 + 20 + True + True + True + + + + 2 + 3 + 1 + 2 + + + + + CLR + 50 + 20 + True + True + True + + + + 3 + 4 + 1 + 2 + + + + + 7 + 50 + 50 + True + True + True + + + + 2 + 3 + + + + + 8 + 50 + 20 + True + True + True + + + + 1 + 2 + 2 + 3 + + + + + 9 + 50 + 20 + True + True + True + + + + 2 + 3 + 2 + 3 + + + + + PREV + 50 + 20 + True + True + True + + + + 3 + 4 + 2 + 3 + + + + + +/- + 50 + 50 + True + True + True + + + + 3 + 4 + + + + + 0 + 50 + 20 + True + True + True + + + + 1 + 2 + 3 + 4 + + + + + . + 50 + 20 + True + True + True + + + + 2 + 3 + 3 + 4 + + + + + / + 50 + 20 + True + True + True + + + + 3 + 4 + 3 + 4 + + + + + in->mm + 80 + 40 + True + True + True + + + + 4 + 5 + 4 + 4 + + + + + mm->in + 80 + 40 + True + True + True + + + + 1 + 2 + 4 + 5 + 4 + 4 + + + + + pitch->tpi + 80 + 40 + True + True + True + + + + 2 + 3 + 4 + 5 + 4 + 4 + + + + + tpi->pitch + 80 + 40 + True + True + True + + + + 3 + 4 + 4 + 5 + 4 + 4 + + + + + True + True + 2 + + + + + + button23 + button24 + + + + O<radius> call [${radius.x-f}] [${radius.sf-f}] [0.5] [0][${radius.z-f}] [${radius.tool-s}] [0] [${radius.rad-f}] [${radius.fo}] [${radius.fi}] [${radius.bo}] [${radius.coolant}] + + + Set Tool + M61 Q${radius.tool-s} G43 H${radius.tool-s} + + + O<threading>call [${thread.x-f}] [${thread.sf-f}] [${thread.tool-s}] [${thread.pitch-f}] [${thread.z-f}] [${thread.internal}] [${thread.external}] [${thread.coolant}] + + + M61 Q${thread.tool-s} G43 H${thread.tool-s} + + + O<turning> call [${turn.x-f}] [${turn.sf-f}] [${turn.cut-f}] [${turn.feed-f}] [${turn.z-f}] [${turn.rad-f}] [${turn.angle-f}] [${turn.tool-s}] [${turn.coolant}] + + + Set Tool + M61 Q${turn.tool-s} G43 H${turn.tool-s} + + + False + GDK_EXPOSURE_MASK | GDK_STRUCTURE_MASK + 200 + 100 + False + + + + + + True + False + + False + + + True + True + GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK + left + + + + True + False + + + True + False + gtk-missing-image + + + -1 + + + + + 50 + 20 + True + True + <!--1000,654-->Finish Diameter + start + start + + 7 + 0.000 + False + False + False + TurnXAdj + 4 + True + + + + + + 50 + 20 + True + True + <!--635,687-->Feed per Rev + start + start + + 5 + 0.000 + False + False + TurnFeedAdj + 3 + True + + + + 1 + + + + + 50 + 20 + True + True + <!--800,230-->End Radius + start + start + + 5 + 0.000 + False + False + TurnRadAdj + 4 + True + + + + 2 + + + + + 50 + 20 + True + True + <!--821,863-->Cut per pass + start + start + + 5 + 0.000 + False + False + TurnCutAdj + 3 + True + + + + 3 + + + + + 50 + 20 + True + True + <!--125,424-->Finish Z + start + start + + 7 + 0.000 + False + False + TurnZAdj + 4 + True + + + + 4 + + + + + 50 + 20 + True + True + <!--520,474-->Taper angle + start + start + + 5 + 0.0000 + False + False + False + TurnAngAdj + 3 + True + + + + 5 + + + + + 100 + 40 + True + False + end + end + + + gtk-media-play + False + turn.go + 50 + 20 + True + True + True + True + + + + + 10 + + + + + True + False + end + start + + + 50 + 20 + True + True + + 0 + False + False + TurnToolAdj + + + + 1 + 0 + + + + + Set Tool + turn.toolchange + 50 + 20 + True + True + True + True + + + 0 + 0 + + + + + True + False + center + Speed + 1 + + + 0 + 1 + + + + + 50 + 20 + True + True + end + start + + 5 + 20 + False + False + TurnSFAdj + 20 + + + + 1 + 1 + + + + + Coolant + True + True + False + True + + + 1 + 2 + + + + + + + + 11 + + + + + False + + + + + True + False + Turning + + + False + + + + + True + False + + + True + False + gtk-missing-image + + + -1 + + + + + 50 + 20 + True + True + <!--700,280-->Taper Angle + start + start + + 5 + 0.0000 + False + False + BoreAngleAdj + 3 + + + + + + 50 + 20 + True + True + <!--421,520-->Run-out radius + start + start + + 5 + 0.000 + False + False + BoreRadAdj + 4 + + + + 1 + + + + + 50 + 20 + True + True + <!--1080,616-->Finish Diameter + start + start + + 7 + 0.000 + False + False + BoreXAdj + 4 + + + + 2 + + + + + 50 + 20 + True + True + <!--900,825-->Diameter Increment + start + start + + 5 + 0.000 + False + False + BoreCutAdj + 4 + + + + 3 + + + + + 50 + 20 + True + True + <!--530,820-->Feed per rev + start + start + + 5 + 0.000 + False + False + BoreFeedAdj + 4 + + + + 4 + + + + + 100 + 40 + True + False + end + end + + + gtk-media-play + False + bore.go + 50 + 20 + True + True + True + True + True + + + + + 7 + + + + + 50 + 20 + True + True + <!--273,267-->Finish Z + start + start + + 7 + 0.000 + False + False + BoreZAdj + 4 + + + + 9 + + + + + True + False + end + start + + + 50 + 20 + True + True + end + start + + 5 + 0 + False + False + BoreSFAdj + + + + 1 + 1 + + + + + 50 + 20 + True + True + + 0 + False + False + BoreToolAdj + + + + 1 + 0 + + + + + Set Tool + bore.toolchange + 50 + 20 + True + True + True + True + + + 0 + 0 + + + + + True + False + center + Speed + 1 + + + 0 + 1 + + + + + Coolant + True + True + False + True + + + 1 + 2 + + + + + + + + 11 + + + + + 1 + False + + + + + True + False + Boring + + + 1 + False + + + + + True + False + + + True + False + gtk-missing-image + + + -1 + + + + + 50 + 20 + True + True + <!--156,404-->Finish Z + start + start + + 7 + 0.000 + False + False + FaceZAdj + 4 + + + + 2 + + + + + 50 + 20 + True + True + <!--1115,626-->Finish Diameter + start + start + + 7 + 0.000 + False + False + FaceXAdj + 4 + + + + 3 + + + + + 50 + 20 + True + True + <!--876,886-->Feed per Rev + start + start + + 5 + 0.0000 + False + False + FaceFeedAdj + 3 + + + + 4 + + + + + 50 + 20 + True + True + <!--408,760-->Cut per pass + start + start + + 5 + 0.000 + False + False + FaceCutAdj + 3 + + + + 5 + + + + + 50 + 20 + True + True + <!--1044,364-->Face Angle + start + start + + 5 + 0.0000 + False + False + FaceAngleAdj + 3 + + + + 6 + + + + + 100 + 40 + True + False + end + end + False + + + gtk-media-play + False + face.go + 50 + 20 + True + True + True + True + True + + + + + 9 + + + + + True + False + end + start + + + 50 + 20 + True + True + end + start + + 5 + 0 + False + False + FaceSFAdj + + + + 1 + 1 + + + + + 50 + 20 + True + True + + 0 + False + False + FaceToolAdj + + + + 1 + 0 + + + + + Set Tool + face.toolchange + 50 + 20 + True + True + True + True + + + 0 + 0 + + + + + True + False + center + Speed + 1 + + + 0 + 1 + + + + + Coolant + True + True + False + True + + + 1 + 2 + + + + + + + + 10 + + + + + Face + 2 + False + + + + + True + False + Facing + + + 2 + False + + + + + True + False + + + True + False + gtk-missing-image + + + -1 + + + + + 50 + 20 + True + True + <!--1018,674-->Radius Inner or Outer Diameter + start + start + + 7 + 0.000 + False + False + RadXAdj + 4 + + + + + + 50 + 20 + True + True + <!--202,334-->Radius Z position + start + start + + 7 + 0.000 + False + False + RadiusZAdj + 4 + + + + 1 + + + + + 50 + 20 + True + True + <!--848,451-->Radius + start + start + + 5 + 0.000 + False + False + RadRadAdj + 3 + + + + 2 + + + + + 100 + 40 + True + False + <!--863,629-->Front Inside Radius + start + start + + + 50 + 20 + True + True + False + True + True + + + + + 3 + + + + + 100 + 40 + True + False + <!--763,680-->Front Outside Radius + start + start + + + 50 + 20 + True + True + False + True + radius.fi + + + + + 4 + + + + + 100 + 40 + True + False + <!--335,448-->Back Outside Radius + start + start + + + 50 + 20 + True + True + False + True + radius.fi + + + + + 5 + + + + + 100 + 40 + True + False + end + end + + + radius.go + 50 + 20 + True + True + True + True + + + True + False + gtk-media-play + + + + + + + 10 + + + + + True + False + end + start + + + 50 + 20 + True + True + end + start + + 5 + 0 + False + False + RadiusSFAdj + + + + 1 + 1 + + + + + 50 + 20 + True + True + + 5 + 0 + False + False + RadiusToolAdj + + + + 1 + 0 + + + + + Set Tool + radius.toolchange + 50 + 20 + True + True + True + True + + + 0 + 0 + + + + + True + False + center + Speed + 1 + + + 0 + 1 + + + + + Coolant + True + True + False + True + + + 1 + 2 + + + + + + + + 11 + + + + + Radius + 3 + False + + + + + True + False + Radius + + + 3 + False + + + + + True + False + + + True + False + gtk-missing-image + + + -1 + + + + + 50 + 20 + True + True + <!--202,334-->Chamfer Z position + start + start + + 7 + 0.000 + False + False + ChamferZAdj + 4 + + + + + + 50 + 20 + True + True + <!--1112,287-->Chamfer size + start + start + + 5 + 0.0000 + False + False + ChamChamAdj + 3 + + + + 1 + + + + + 50 + 20 + True + True + <!--1033,678-->Chamfer Diametric position + start + start + + 7 + 0.000 + False + False + ChamXAdj + 4 + + + + 2 + + + + + 100 + 40 + True + False + <!--335,448-->Back outside chamfer + start + start + + + 50 + 20 + True + True + False + <!--335,448-->Chamfer Z position + True + True + + + + + 3 + + + + + 100 + 40 + True + False + <!--763,680-->Front Outside Chamfer + start + start + + + 50 + 20 + True + True + False + True + chamfer.bo + + + + + 4 + + + + + 100 + 40 + True + False + <!--863,629-->Front Inside Chamfer + start + start + + + 50 + 16 + True + True + False + 0 + True + chamfer.bo + + + + + 5 + + + + + 100 + 40 + True + False + end + end + + + False + chamfer.go + 50 + 20 + True + True + True + True + + + True + False + gtk-media-play + + + + + + + 10 + + + + + True + False + end + start + + + True + False + center + Speed + 1 + + + 0 + 1 + + + + + Coolant + True + True + False + True + + + 1 + 2 + + + + + Set Tool + False + chamfer.toolchange + 50 + 20 + True + True + True + True + + + 0 + 0 + + + + + 50 + 20 + True + True + start + start + + 5 + 0 + False + False + ChamferSFAdj + + + + 1 + 1 + + + + + 50 + 20 + True + True + start + start + + 0 + False + False + ChamferToolAdj + + + + 1 + 0 + + + + + + + + 11 + + + + + Chamfer + 4 + False + + + + + True + False + Chamfer + + + 4 + False + + + + + True + False + + + True + False + gtk-missing-image + + + -1 + + + + + 50 + 20 + True + True + <!--268,341-->Finish Z position + start + start + + 7 + 0.000 + False + False + ThreadZAdj + 4 + + + + + + 50 + 20 + True + True + <!--1010,753-->Radius Z position + start + start + + 7 + 0.000 + False + False + ThreadXAdj + 4 + + + + 1 + + + + + 50 + 20 + True + False + <!--652,737-->External Thread + start + start + + + True + True + False + True + True + + + + + 2 + + + + + 50 + 20 + True + True + <!--192,616-->Radius Z position + start + start + + 7 + 0.0000 + False + False + ThreadPitchAdj + 4 + + + + 4 + + + + + 50 + 20 + True + False + <!--754,603-->Internal Thread + start + start + + + True + True + False + True + thread.external + + + + + 6 + + + + + 50 + 20 + True + False + end + end + + + False + thread.go + 50 + 20 + True + True + True + True + + + True + False + gtk-media-play + + + + + + + 7 + + + + + True + False + end + start + + + True + False + center + Speed + 1 + + + 0 + 1 + + + + + Coolant + True + True + False + True + + + 1 + 2 + + + + + 50 + 20 + True + True + start + start + + 5 + 20 + False + False + ThreadSFAdj + 20 + + + + 1 + 1 + + + + + Set Tool + False + thread.toolchange + 50 + 20 + True + True + True + True + + + 0 + 0 + + + + + 50 + 20 + True + True + start + start + + 0 + False + False + ThreadToolAdj + + + + 1 + 0 + + + + + + + + 9 + + + + + 5 + False + + + + + True + False + Thread + + + 5 + False + + + + + True + False + + + True + False + gtk-missing-image + + + -1 + + + + + 100 + 40 + True + False + end + end + + + False + groove.go + 50 + 20 + True + True + True + True + + + True + False + gtk-media-play + + + + + + + 4 + + + + + 50 + 20 + True + True + <!--1084,672-->Finish Diameter + start + start + + 7 + 0.000 + False + False + GrooveXAdj + 4 + + + + 5 + + + + + True + False + end + start + + + 50 + 20 + True + True + + 0 + False + False + GrooveToolAdj + + + + 1 + 0 + + + + + Set Tool + groove.toolchange + 50 + 20 + True + True + True + True + + + 0 + 0 + + + + + True + False + center + Speed + 1 + + + 0 + 1 + + + + + Coolant + True + True + False + True + + + 1 + 2 + + + + + 50 + 20 + True + True + end + start + + 5 + 20 + False + False + GrooveSFAdj + 20 + + + + 1 + 1 + + + + + + + + 8 + + + + + 50 + 20 + True + True + <!--648,864-->Feed per rev + start + start + + 5 + 0.0000 + False + False + GrooveFeedAdj + 3 + + + + 4 + + + + + 6 + + + + + True + False + Groove + + + 6 + False + + + + + True + False + + + True + False + gtk-missing-image + + + -1 + + + + + 100 + 40 + True + False + end + end + + + False + drill.go + 50 + 20 + True + True + True + True + + + True + False + gtk-media-play + + + + + + + 3 + + + + + True + False + end + start + + + 50 + 20 + True + True + end + start + + 5 + 0 + False + False + DrillSFAdj + + + + 1 + 1 + + + + + 50 + 20 + True + True + + 0 + False + False + DrillToolAdj + + + + 1 + 0 + + + + + Set Tool + drill.toolchange + 50 + 20 + True + True + True + True + + + 0 + 0 + + + + + True + False + center + Speed + 1 + + + 0 + 1 + + + + + Coolant + True + True + False + True + + + 1 + 2 + + + + + + + + 3 + + + + + 50 + 20 + True + True + <!--770,900-->Feed per Rev + start + start + + 5 + 0.0000 + False + False + DrillFeedAdj + 3 + + + + 2 + + + + + 50 + 20 + True + True + <!--260,250-->Finish Z + start + start + + 7 + 0.000 + False + False + DrillZAdj + 4 + + + + 3 + + + + + 50 + 20 + True + True + <!--1200,270-->Drill Diameter + start + start + + 7 + 0.000 + False + False + DrillDiaAdj + 4 + + + + 4 + + + + + 50 + 20 + True + True + <!--300,711-->Peck distance + start + start + + 5 + 0.000 + False + False + DrillPeckAdj + 0.25 + 3 + 2 + + + + 5 + + + + + 7 + + + + + True + False + Drill + + + 7 + False + + + + + + + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/linuxcnc.var b/linuxcnc/sim.gmoccapy.lathe_configs/linuxcnc.var new file mode 100755 index 0000000..1776377 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/linuxcnc.var @@ -0,0 +1,119 @@ +5161 0.000000 +5162 0.000000 +5163 0.000000 +5164 0.000000 +5165 0.000000 +5166 0.000000 +5167 0.000000 +5168 0.000000 +5169 0.000000 +5181 0.000000 +5182 0.000000 +5183 0.000000 +5184 0.000000 +5185 0.000000 +5186 0.000000 +5187 0.000000 +5188 0.000000 +5189 0.000000 +5210 0.000000 +5211 0.000000 +5212 0.000000 +5213 0.000000 +5214 0.000000 +5215 0.000000 +5216 0.000000 +5217 0.000000 +5218 0.000000 +5219 0.000000 +5220 1.000000 +5221 0.000000 +5222 0.000000 +5223 0.000000 +5224 0.000000 +5225 0.000000 +5226 0.000000 +5227 0.000000 +5228 0.000000 +5229 0.000000 +5230 0.000000 +5241 0.000000 +5242 0.000000 +5243 0.000000 +5244 0.000000 +5245 0.000000 +5246 0.000000 +5247 0.000000 +5248 0.000000 +5249 0.000000 +5250 0.000000 +5261 0.000000 +5262 0.000000 +5263 0.000000 +5264 0.000000 +5265 0.000000 +5266 0.000000 +5267 0.000000 +5268 0.000000 +5269 0.000000 +5270 0.000000 +5281 0.000000 +5282 0.000000 +5283 0.000000 +5284 0.000000 +5285 0.000000 +5286 0.000000 +5287 0.000000 +5288 0.000000 +5289 0.000000 +5290 0.000000 +5301 0.000000 +5302 0.000000 +5303 0.000000 +5304 0.000000 +5305 0.000000 +5306 0.000000 +5307 0.000000 +5308 0.000000 +5309 0.000000 +5310 0.000000 +5321 0.000000 +5322 0.000000 +5323 0.000000 +5324 0.000000 +5325 0.000000 +5326 0.000000 +5327 0.000000 +5328 0.000000 +5329 0.000000 +5330 0.000000 +5341 0.000000 +5342 0.000000 +5343 0.000000 +5344 0.000000 +5345 0.000000 +5346 0.000000 +5347 0.000000 +5348 0.000000 +5349 0.000000 +5350 0.000000 +5361 0.000000 +5362 0.000000 +5363 0.000000 +5364 0.000000 +5365 0.000000 +5366 0.000000 +5367 0.000000 +5368 0.000000 +5369 0.000000 +5370 0.000000 +5381 0.000000 +5382 0.000000 +5383 0.000000 +5384 0.000000 +5385 0.000000 +5386 0.000000 +5387 0.000000 +5388 0.000000 +5389 0.000000 +5390 0.000000 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/linuxcnc.var.bak b/linuxcnc/sim.gmoccapy.lathe_configs/linuxcnc.var.bak new file mode 100755 index 0000000..1776377 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/linuxcnc.var.bak @@ -0,0 +1,119 @@ +5161 0.000000 +5162 0.000000 +5163 0.000000 +5164 0.000000 +5165 0.000000 +5166 0.000000 +5167 0.000000 +5168 0.000000 +5169 0.000000 +5181 0.000000 +5182 0.000000 +5183 0.000000 +5184 0.000000 +5185 0.000000 +5186 0.000000 +5187 0.000000 +5188 0.000000 +5189 0.000000 +5210 0.000000 +5211 0.000000 +5212 0.000000 +5213 0.000000 +5214 0.000000 +5215 0.000000 +5216 0.000000 +5217 0.000000 +5218 0.000000 +5219 0.000000 +5220 1.000000 +5221 0.000000 +5222 0.000000 +5223 0.000000 +5224 0.000000 +5225 0.000000 +5226 0.000000 +5227 0.000000 +5228 0.000000 +5229 0.000000 +5230 0.000000 +5241 0.000000 +5242 0.000000 +5243 0.000000 +5244 0.000000 +5245 0.000000 +5246 0.000000 +5247 0.000000 +5248 0.000000 +5249 0.000000 +5250 0.000000 +5261 0.000000 +5262 0.000000 +5263 0.000000 +5264 0.000000 +5265 0.000000 +5266 0.000000 +5267 0.000000 +5268 0.000000 +5269 0.000000 +5270 0.000000 +5281 0.000000 +5282 0.000000 +5283 0.000000 +5284 0.000000 +5285 0.000000 +5286 0.000000 +5287 0.000000 +5288 0.000000 +5289 0.000000 +5290 0.000000 +5301 0.000000 +5302 0.000000 +5303 0.000000 +5304 0.000000 +5305 0.000000 +5306 0.000000 +5307 0.000000 +5308 0.000000 +5309 0.000000 +5310 0.000000 +5321 0.000000 +5322 0.000000 +5323 0.000000 +5324 0.000000 +5325 0.000000 +5326 0.000000 +5327 0.000000 +5328 0.000000 +5329 0.000000 +5330 0.000000 +5341 0.000000 +5342 0.000000 +5343 0.000000 +5344 0.000000 +5345 0.000000 +5346 0.000000 +5347 0.000000 +5348 0.000000 +5349 0.000000 +5350 0.000000 +5361 0.000000 +5362 0.000000 +5363 0.000000 +5364 0.000000 +5365 0.000000 +5366 0.000000 +5367 0.000000 +5368 0.000000 +5369 0.000000 +5370 0.000000 +5381 0.000000 +5382 0.000000 +5383 0.000000 +5384 0.000000 +5385 0.000000 +5386 0.000000 +5387 0.000000 +5388 0.000000 +5389 0.000000 +5390 0.000000 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M101 b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M101 new file mode 100755 index 0000000..db40680 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M101 @@ -0,0 +1,6 @@ +#!/bin/bash +R=0.1923 +MAXRPM=380 +halcmd setp scale.0.gain $R +halcmd setp scale.1.gain $(echo "scale=5;1.0 / $R"| bc -q) +exit 0 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M102 b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M102 new file mode 100755 index 0000000..a846012 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M102 @@ -0,0 +1,6 @@ +#!/bin/bash +R=0.3189 +MAXRPM=630 +halcmd setp scale.0.gain $R +halcmd setp scale.1.gain $(echo "scale=5;1.0 / $R"| bc -q) +exit 0 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M103 b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M103 new file mode 100755 index 0000000..7789473 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M103 @@ -0,0 +1,6 @@ +#!/bin/bash +R=0.4638 +MAXRPM=920 +halcmd setp scale.0.gain $R +halcmd setp scale.1.gain $(echo "scale=5;1.0 / $R"| bc -q) +exit 0 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M104 b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M104 new file mode 100755 index 0000000..ab7f331 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M104 @@ -0,0 +1,6 @@ +#!/bin/bash +R=0.8846 +MAXRPM=1770 +halcmd setp scale.0.gain $R +halcmd setp scale.1.gain $(echo "scale=5;1.0 / $R"| bc -q) +exit 0 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M105 b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M105 new file mode 100755 index 0000000..d9c332f --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M105 @@ -0,0 +1,6 @@ +#!/bin/bash +R=1.4672 +MAXRPM=2930 +halcmd setp scale.0.gain $R +halcmd setp scale.1.gain $(echo "scale=5;1.0 / $R"| bc -q) +exit 0 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M106 b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M106 new file mode 100755 index 0000000..c53798f --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/nc_files/M106 @@ -0,0 +1,6 @@ +#!/bin/bash +R=2.1334 +MAXRPM=4260 +halcmd setp scale.0.gain $R +halcmd setp scale.1.gain $(echo "scale=5;1.0 / $R"| bc -q) +exit 0 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/position.txt b/linuxcnc/sim.gmoccapy.lathe_configs/position.txt new file mode 100755 index 0000000..bdc031f --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/position.txt @@ -0,0 +1,16 @@ +92.85000059605819445 +249.99999999908729365 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 +0.00000000000000000 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/postgui_call_list.hal b/linuxcnc/sim.gmoccapy.lathe_configs/postgui_call_list.hal new file mode 100755 index 0000000..c048069 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/postgui_call_list.hal @@ -0,0 +1,3 @@ +# These files are loaded post GUI, in the order they appear + +source custom_postgui.hal diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/radius.ngc b/linuxcnc/sim.gmoccapy.lathe_configs/radius.ngc new file mode 100755 index 0000000..4ba6e52 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/radius.ngc @@ -0,0 +1,76 @@ +;radius + +O sub + +G8 ; Lathe radius Mode +G18 ; XZ Plane +G21 ; Metric Units +G90 ; Absolute Distance + + +M6 T#6 G43 + +#1 = [#1 / 2] ; because of radius mode +#14 = [#<_x>] (starting X) +#13 = [#<_z>] (starting Z) + +G96 D2400 S#2 ; Constant Surface Speed Mode +M3 +g95 F0.1 ; Feed-Per-Rev Mode + +O90 IF [#12 GT 0.5] + M8 +O90 ENDIF + +#20 = 0 +O101 if [#9 GT 0.5] ; Front outside + o100 while [[#20 + #3] lt #8] + #20 = [#20 + #3] + g0 x[#1 - #20] z#13 + g1 z#5 + g3 x#1 z[#5 - #20] K[-#20] + g1 x #14 + g0 z#13 + o100 endwhile + g0 x#14 z#13 + g0 x[#1 - #8] + g1 z#5 + g3 x#1 z[#5 - #8] K[-#8] + g1 x #14 + g0 z#13 +O101 elseif [#10 GT 0.5] ; front inside + o102 while [[#20 + #3] lt #8] + #20 = [#20 + #3] + g0 x[#1 + #20] z#13 + g1 z#5 + g2 x#1 z[#5 - #20] K[-#20] + g1 x #14 + g0 z#13 + o102 endwhile + g0 x#14 z#13 + g0 x[#1 + #8] + g1 z#5 + g2 x#1 z[#5 - #8] K[-#8] + g1 x #14 + g0 z#13 +O101 elseif [#11 GT 0.5] ; back outside + o103 while [[#20 + #3] lt #8] + #20 = [#20 + #3] + g0 x[#1 - #20] z#13 + g1 z#5 + g2 x#1 z[#5 + #20] K#20 + g1 x #14 + g0 z#13 + o103 endwhile + g0 x#14 z#13 + g0 x[#1 - #8] + g1 z#5 + g2 x#1 z[#5 + #8] K#8 + g1 x #14 + g0 z#13 +O101 endif +M5 M9 +G7 +O endsub +m2 +% diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/savestate.sav b/linuxcnc/sim.gmoccapy.lathe_configs/savestate.sav new file mode 100755 index 0000000..c1d61dd --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/savestate.sav @@ -0,0 +1,71 @@ +# generated by gladevcp.persistence.create_default_ini() on Tue Jul 12 01:49:47 2022 +[ini] + signature = a9fe768b61bb9201e86d89ad226616650f20e7ac + version = 1 +[vars] +[widgets] + chamfer.fi = False + chamfer.fo = False + turn.rad = 3.0 + groove.coolant = True + turn.z = 120.0 + turn.x = 15.0 + drill.dia = 10.0 + radius.x = 0.0 + radius.z = 0.0 + thread.pitch = 1.0 + turn.feed = 0.15 + thread.x = 6.0 + bore.rad = 0.0 + radius.coolant = False + radius.bo = False + thread.z = 0.0 + face.coolant = False + drill.peck = 2.0 + face.cut = 2.8999999999999977 + radius.rad = 1.0 + thread.internal = False + face.sf = 0.0 + bore.sf = 100.0 + turn.tool = 1.0 + face.feed = 0.15 + chamfer.tool = 1.0 + chamfer.bo = True + groove.sf = 100.0 + thread.tool = 5.0 + groove.feed = 0.03 + bore.feed = 0.15 + radius.sf = 100.0 + chamfer.x = 0.0 + chamfer.z = 0.0 + thread.external = True + turn.coolant = True + face.z = 0.0 + bore.x = 0.0 + bore.z = 0.0 + groove.x = 0.0 + face.tool = 1.0 + face.x = 0.0 + chamfer.size = 1.0 + turn.cut = 1.0 + drill.coolant = True + chamfer.sf = 100.0 + bore.tool = 1.0 + groove.tool = 4.0 + face.angle = 0.0 + bore.coolant = True + drill.feed = 0.020000000000000004 + drill.z = 0.0 + turn.sf = 60.0 + thread.sf = 60.0 + radius.fo = False + turn.angle = 0.0 + thread.coolant = False + bore.cut = 1.0 + radius.fi = True + drill.tool = 3.0 + drill.sf = 100.0 + radius.tool = 1.0 + bore.angle = 0.0 + chamfer.coolant = False +# last update by gladevcp.persistence.save_state() on Thu Dec 28 23:36:07 2023 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/shutdown.hal b/linuxcnc/sim.gmoccapy.lathe_configs/shutdown.hal new file mode 100755 index 0000000..8766c9e --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/shutdown.hal @@ -0,0 +1,2 @@ +# Include your shutdown HAL commands here +# This file will not be overwritten when you run PNCconf again diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/sim.var b/linuxcnc/sim.gmoccapy.lathe_configs/sim.var new file mode 100755 index 0000000..1776377 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/sim.var @@ -0,0 +1,119 @@ +5161 0.000000 +5162 0.000000 +5163 0.000000 +5164 0.000000 +5165 0.000000 +5166 0.000000 +5167 0.000000 +5168 0.000000 +5169 0.000000 +5181 0.000000 +5182 0.000000 +5183 0.000000 +5184 0.000000 +5185 0.000000 +5186 0.000000 +5187 0.000000 +5188 0.000000 +5189 0.000000 +5210 0.000000 +5211 0.000000 +5212 0.000000 +5213 0.000000 +5214 0.000000 +5215 0.000000 +5216 0.000000 +5217 0.000000 +5218 0.000000 +5219 0.000000 +5220 1.000000 +5221 0.000000 +5222 0.000000 +5223 0.000000 +5224 0.000000 +5225 0.000000 +5226 0.000000 +5227 0.000000 +5228 0.000000 +5229 0.000000 +5230 0.000000 +5241 0.000000 +5242 0.000000 +5243 0.000000 +5244 0.000000 +5245 0.000000 +5246 0.000000 +5247 0.000000 +5248 0.000000 +5249 0.000000 +5250 0.000000 +5261 0.000000 +5262 0.000000 +5263 0.000000 +5264 0.000000 +5265 0.000000 +5266 0.000000 +5267 0.000000 +5268 0.000000 +5269 0.000000 +5270 0.000000 +5281 0.000000 +5282 0.000000 +5283 0.000000 +5284 0.000000 +5285 0.000000 +5286 0.000000 +5287 0.000000 +5288 0.000000 +5289 0.000000 +5290 0.000000 +5301 0.000000 +5302 0.000000 +5303 0.000000 +5304 0.000000 +5305 0.000000 +5306 0.000000 +5307 0.000000 +5308 0.000000 +5309 0.000000 +5310 0.000000 +5321 0.000000 +5322 0.000000 +5323 0.000000 +5324 0.000000 +5325 0.000000 +5326 0.000000 +5327 0.000000 +5328 0.000000 +5329 0.000000 +5330 0.000000 +5341 0.000000 +5342 0.000000 +5343 0.000000 +5344 0.000000 +5345 0.000000 +5346 0.000000 +5347 0.000000 +5348 0.000000 +5349 0.000000 +5350 0.000000 +5361 0.000000 +5362 0.000000 +5363 0.000000 +5364 0.000000 +5365 0.000000 +5366 0.000000 +5367 0.000000 +5368 0.000000 +5369 0.000000 +5370 0.000000 +5381 0.000000 +5382 0.000000 +5383 0.000000 +5384 0.000000 +5385 0.000000 +5386 0.000000 +5387 0.000000 +5388 0.000000 +5389 0.000000 +5390 0.000000 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/sim.var.bak b/linuxcnc/sim.gmoccapy.lathe_configs/sim.var.bak new file mode 100755 index 0000000..1776377 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/sim.var.bak @@ -0,0 +1,119 @@ +5161 0.000000 +5162 0.000000 +5163 0.000000 +5164 0.000000 +5165 0.000000 +5166 0.000000 +5167 0.000000 +5168 0.000000 +5169 0.000000 +5181 0.000000 +5182 0.000000 +5183 0.000000 +5184 0.000000 +5185 0.000000 +5186 0.000000 +5187 0.000000 +5188 0.000000 +5189 0.000000 +5210 0.000000 +5211 0.000000 +5212 0.000000 +5213 0.000000 +5214 0.000000 +5215 0.000000 +5216 0.000000 +5217 0.000000 +5218 0.000000 +5219 0.000000 +5220 1.000000 +5221 0.000000 +5222 0.000000 +5223 0.000000 +5224 0.000000 +5225 0.000000 +5226 0.000000 +5227 0.000000 +5228 0.000000 +5229 0.000000 +5230 0.000000 +5241 0.000000 +5242 0.000000 +5243 0.000000 +5244 0.000000 +5245 0.000000 +5246 0.000000 +5247 0.000000 +5248 0.000000 +5249 0.000000 +5250 0.000000 +5261 0.000000 +5262 0.000000 +5263 0.000000 +5264 0.000000 +5265 0.000000 +5266 0.000000 +5267 0.000000 +5268 0.000000 +5269 0.000000 +5270 0.000000 +5281 0.000000 +5282 0.000000 +5283 0.000000 +5284 0.000000 +5285 0.000000 +5286 0.000000 +5287 0.000000 +5288 0.000000 +5289 0.000000 +5290 0.000000 +5301 0.000000 +5302 0.000000 +5303 0.000000 +5304 0.000000 +5305 0.000000 +5306 0.000000 +5307 0.000000 +5308 0.000000 +5309 0.000000 +5310 0.000000 +5321 0.000000 +5322 0.000000 +5323 0.000000 +5324 0.000000 +5325 0.000000 +5326 0.000000 +5327 0.000000 +5328 0.000000 +5329 0.000000 +5330 0.000000 +5341 0.000000 +5342 0.000000 +5343 0.000000 +5344 0.000000 +5345 0.000000 +5346 0.000000 +5347 0.000000 +5348 0.000000 +5349 0.000000 +5350 0.000000 +5361 0.000000 +5362 0.000000 +5363 0.000000 +5364 0.000000 +5365 0.000000 +5366 0.000000 +5367 0.000000 +5368 0.000000 +5369 0.000000 +5370 0.000000 +5381 0.000000 +5382 0.000000 +5383 0.000000 +5384 0.000000 +5385 0.000000 +5386 0.000000 +5387 0.000000 +5388 0.000000 +5389 0.000000 +5390 0.000000 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/simulated_home_lathe.hal b/linuxcnc/sim.gmoccapy.lathe_configs/simulated_home_lathe.hal new file mode 100755 index 0000000..24410d8 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/simulated_home_lathe.hal @@ -0,0 +1,21 @@ +loadrt comp names=comp_x,comp_z + +addf comp_x servo-thread +addf comp_z servo-thread + +net Xhomeswpos => comp_x.in0 +net Zhomeswpos => comp_z.in0 + +sets Xhomeswpos 1 +sets Zhomeswpos 2 + +net Xpos => comp_x.in1 +net Zpos => comp_z.in1 + +setp comp_x.hyst .02 +setp comp_z.hyst .02 + +net Xhomesw <= comp_x.out => joint.0.home-sw-in +net Zhomesw <= comp_z.out => joint.1.home-sw-in + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/simulated_home_lathe_CW.hal b/linuxcnc/sim.gmoccapy.lathe_configs/simulated_home_lathe_CW.hal new file mode 100755 index 0000000..24410d8 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/simulated_home_lathe_CW.hal @@ -0,0 +1,21 @@ +loadrt comp names=comp_x,comp_z + +addf comp_x servo-thread +addf comp_z servo-thread + +net Xhomeswpos => comp_x.in0 +net Zhomeswpos => comp_z.in0 + +sets Xhomeswpos 1 +sets Zhomeswpos 2 + +net Xpos => comp_x.in1 +net Zpos => comp_z.in1 + +setp comp_x.hyst .02 +setp comp_z.hyst .02 + +net Xhomesw <= comp_x.out => joint.0.home-sw-in +net Zhomesw <= comp_z.out => joint.1.home-sw-in + + diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/spindle_sim.hal b/linuxcnc/sim.gmoccapy.lathe_configs/spindle_sim.hal new file mode 100755 index 0000000..7b97c3d --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/spindle_sim.hal @@ -0,0 +1,69 @@ +# counting the spindle encoder in software +loadrt encoder names=encoder_0 +# simulate the encoder +loadrt sim_encoder names=sim_encoder_0 +loadrt limit2 names=limit_speed + +addf limit_speed servo-thread + +####################################################### +# Beginning of threading related stuff +####################################################### + +# spindle speed control +net spindle-speed-cmd spindle.0.speed-out => limit_speed.in +net spindle-speed-limited limit_speed.out => sim_encoder_0.speed + +# simulate spindle mass +setp limit_speed.maxv 3000.0 # rpm/second + +# spindle encoder +# connect encoder signals to encoder counter +net spindle-phase-A sim_encoder_0.phase-A => encoder_0.phase-A +net spindle-phase-B sim_encoder_0.phase-B => encoder_0.phase-B +net spindle-phase-Z sim_encoder_0.phase-Z => encoder_0.phase-Z + +# assume 120 ppr = 480 counts/rev for the spindle +setp sim_encoder_0.ppr 12 +# iocontrol output is in rpm, but sim-encoder speed is rps +setp sim_encoder_0.scale 60 +# scale encoder output to read in revolutions +# (that way thread pitches can be straightforward, +# a 20 tpi thread would multiply the encoder output +# by 1/20, etc) +setp encoder_0.position-scale 48 + +# encoder reset control +# hook up motion controller's sync output +net spindle-index-enable spindle.0.index-enable <=> encoder_0.index-enable + +# report our revolution count to the motion controller +net spindle-pos encoder_0.position => spindle.0.revs + +# for spindle velocity estimate +loadrt lowpass names=lowpass_velocity +loadrt scale names=scale_to_rpm +net spindle-rps-raw encoder_0.velocity lowpass_velocity.in +net spindle-rps-filtered lowpass_velocity.out scale_to_rpm.in spindle.0.speed-in +net spindle-rpm-filtered scale_to_rpm.out +setp scale_to_rpm.gain 60 +setp lowpass_velocity.gain .07 +addf lowpass_velocity servo-thread +addf scale_to_rpm servo-thread + +# for at-speed detection +loadrt near names=near_speed +addf near_speed servo-thread +setp near_speed.scale 1.1 +setp near_speed.difference 10 +net spindle-speed-cmd => near_speed.in1 +net spindle-rpm-filtered => near_speed.in2 +net spindle-at-speed near_speed.out spindle.0.at-speed + +net spindle-fwd <= spindle.0.forward + +addf encoder.capture-position servo-thread +addf sim-encoder.update-speed servo-thread + +addf sim-encoder.make-pulses base-thread +addf encoder.update-counters base-thread diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/threading.ngc b/linuxcnc/sim.gmoccapy.lathe_configs/threading.ngc new file mode 100755 index 0000000..71c05ef --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/threading.ngc @@ -0,0 +1,59 @@ +;threading + +O sub + +G7 ; Lathe Diameter Mode +G18 ; XZ Plane +G21 ; Metric Units +G90 ; Absolute Distance + + +M6 T#3 G43 + +#14 = [#<_x> * 2] (starting X) +#13 = #<_z> (starting Z) + +G96 D200 S#2 ; Constant Surface Speed Mode +M3 +g95 F0.25 ; Feed-Per-Rev Mode + +O90 IF [#8 GT 0.5] + M8 +O90 ENDIF + +g4p1 ; Wait to reach speed + +;Threading + O51 IF [#6 GT 0.5] + # = [#1] + # = [#1 - 1.3 * #4] + ;g1X [# - 1] ;thread truncation + ;g0 Z #13 + ;g1 X # + ;g1 Z #5 + G0 X[# - 1] + g0 Z #13 + #3 = [#4 * 1.3] + (debug, INTERNAL Threading thread dia-#1 start-#13 finish-#5 Pitch-#4 Depth-#3) + g1X [# - 1] + g76 p#4 z#5 i1 j1 k#3 h3 r1.5 q29.5 e0 l0 + + O51 ELSE + # = [#1 - 0.108 * #4] + # = [#1 - 1.0825 * #4] + (debug, EXTERNAL Threading OD = # ID = #) + #3 = [#4 * 1.0825] + g1X [# + 1] ;final thread truncation + g0 z#13 + g1 X # + g1 Z #5 + G0 X[# +1] + G0 Z #13 + g76 p#4 z#5 i-1 j1 k#3 h3 r1.5 q29.5 e0 l0 + + O51 ENDIF + G0 Z #13 + m5 M9 +O endsub + +M2 diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/tool.tbl b/linuxcnc/sim.gmoccapy.lathe_configs/tool.tbl new file mode 100755 index 0000000..32d8777 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/tool.tbl @@ -0,0 +1,19 @@ +T1 P1 X0.0 Y0.0 Z0.0 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I0.0 J0.0 Q9.0 ;# rh turning +T2 P2 X-25.3242 Y0.0 Z15.924 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I80.0 J20.0 Q3.0 ; +T3 P3 X-15.4825 Y0.0 Z258.6854 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D3.0 I90.0 J90.0 Q6.0 ; +T4 P4 X-0.5336 Y0.0 Z54.9583 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I87.0 J40.0 Q2.0 ; +T5 P5 X-15.0582 Y0.0 Z117.9963 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.1 I60.0 J200.0 Q5.0 ; +T6 P6 X2.6969 Y0.0 Z0.0 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.5 I120.0 J70.0 Q6.0 ;# threading +T7 P7 X-8.408 Y0.0 Z13.7459 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.8 I107.5 J77.5 Q6.0 ;# vcmt110304 +T8 P8 X-11.16 Y0.0 Z-31.05 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.1 I200.0 J300.0 Q8.0 ; +T9 P9 X0.0 Y0.0 Z0.0 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.1 I0.0 J0.0 Q9.0 ; +T10 P10 X-0.07 Y0.0 Z0.0 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I0.0 J0.0 Q9.0 ; +T11 P11 X-23.0718 Y0.0 Z-3.7292 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I0.0 J0.0 Q9.0 ; +T12 P12 X-1.8392 Y0.0 Z-3.8279 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I0.0 J0.0 Q9.0 ; +T13 P13 X-10.8533 Y0.0 Z-6.2652 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I0.0 J0.0 Q9.0 ; +T14 P14 X0.0 Y0.0 Z0.0 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I300.0 J200.0 Q4.0 ; +T15 P15 X0.0 Y0.0 Z0.0 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I200.0 J200.0 Q5.0 ; +T16 P16 X-15.13 Y0.0 Z14.91 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I100.0 J60.0 Q6.0 ; +T17 P17 X-15.14 Y0.0 Z5.992 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I-30.0 J30.0 Q7.0 ; +T18 P18 X0.0 Y0.0 Z0.0 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I200.0 J300.0 Q8.0 ; +T19 P19 X29.7817 Y0.0 Z-21.8231 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D0.0 I0.0 J0.0 Q9.0 ; diff --git a/linuxcnc/sim.gmoccapy.lathe_configs/turning.ngc b/linuxcnc/sim.gmoccapy.lathe_configs/turning.ngc new file mode 100755 index 0000000..8dc3ec0 --- /dev/null +++ b/linuxcnc/sim.gmoccapy.lathe_configs/turning.ngc @@ -0,0 +1,66 @@ +;Turning + +O sub + +G8 ; Radius mode (easier maths) +G18 ; XZ Plane +G21 ; Metric Units +G90 ; Absolute Distance +G91.1 ; but not for arcs + +M6 T#8 G43 + +#1 = [#1 / 2] ; because of radius mode +#14 = [#<_x>] (starting X) +#13 = #<_z> (starting Z) + +#20 = [#6 * SIN[#7]] +#21 = [#6 * COS[#7]] +#22 = [#6 / COS[#7]] +#23 = [#5 + #6 - #20] +#24 = [[#13 - #23] * TAN[#7]] + +G96 D2500 S#2 ; Constant Surface Speed Mode +m3 ;Start Spindle +g95 F#4 ; Feed-Per-Rev Mode + +O90 IF [#9 GT 0.5] + M8 +O90 ENDIF +g4p1 ; Wait to reach speed + + O100 WHILE [#14 GT [#1 + #3 / 2]] + g0 X #14 + #14=[#14-#3 / 2] + G1 X #14 + G1 Z #23 X[#14 + #24] + O101 IF [#6 GT 0] + G2 Z#5 X[#14 + #24 + #21] I#21 K#20 + G1 X[#14 + #24 + #21 + #3/2] + O101 ELSE + G1 X[#14 + #24 + [#3 * .6]] + O101 ENDIF + O104 IF [#7 LT 0] + G0 X#14 + O104 ENDIF + G0 Z[#13] + O100 ENDWHILE + + G0 x#1 + G1 Z #23 X[#1 + #24] + O102 IF [#6 GT 0] + G2 Z#5 X[#1 + #24 + #21] I#21 K#20 + G1 X[#1 + #24 + #21 + #3] + O102 ELSE + G1 X[#1 + #24 + #3] + O102 ENDIF + O106 IF [#7 LT 0] + G0 X#14 + O106 ENDIF + M9 + G0 Z #13 + G0 X #1 ; For touch-off + M5 + G7 +O endsub +M2