From 2e744cb35b2cb0979232b470ae968478e371fa89 Mon Sep 17 00:00:00 2001 From: alchemistake Date: Sat, 11 Apr 2020 02:05:59 +0200 Subject: [PATCH 1/6] All caps on lib table causes errors on lib linking on KiCAD side --- templates/fp-lib-table | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/fp-lib-table b/templates/fp-lib-table index d8e5cf5..98c1da3 100644 --- a/templates/fp-lib-table +++ b/templates/fp-lib-table @@ -1,4 +1,4 @@ (fp_lib_table - (lib (name MX_ALPS_Hybrid)(type KiCad)(uri ${KIPRJMOD}/MX_ALPS_Hybrid.pretty)(options "")(descr "")) + (lib (name MX_Alps_Hybrid)(type KiCad)(uri ${KIPRJMOD}/MX_Alps_Hybrid.pretty)(options "")(descr "")) (lib (name keyboard_parts)(type KiCad)(uri ${KIPRJMOD}/keyboard_parts.pretty)(options "")(descr "")) ) From 4931145cae6e05c3253f30f242c0f7165d38dd83 Mon Sep 17 00:00:00 2001 From: alchemistake Date: Sat, 11 Apr 2020 02:06:25 +0200 Subject: [PATCH 2/6] Added idea files to gitignore --- .gitignore | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.gitignore b/.gitignore index f696f72..a3c4586 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,10 @@ node_modules output .DS_Store yarn-error.log + +.idea/.gitignore +.idea/kbpcb.iml +.idea/misc.xml +.idea/modules.xml +.idea/vcs.xml +package-lock.json From 803092e9621635bf1b54a5613f6a7ba585a55e77 Mon Sep 17 00:00:00 2001 From: alchemistake Date: Sat, 11 Apr 2020 02:11:26 +0200 Subject: [PATCH 3/6] Special characters breaks the eeschema annotations --- src/kicad.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/kicad.js b/src/kicad.js index 6198ae6..736c1af 100644 --- a/src/kicad.js +++ b/src/kicad.js @@ -34,6 +34,8 @@ class KiCad { [...Array(keyboard.rows+1)].forEach((_, i) => NetRepo.add(`/row${i}`)); keyboard.forEach(k => { + k.name.replace(/[^\x00-\x7F]/g, ""); + const theSwitch = new Switch(k, this.leds); const diode = new Diode(k); theSwitch.connectPads(2, diode, 2); From a7abe397ef7c073d4244a60faab7249669ce8105 Mon Sep 17 00:00:00 2001 From: alchemistake Date: Sat, 11 Apr 2020 02:14:55 +0200 Subject: [PATCH 4/6] Pre-adding numbers to end of the key definitions to fix annotation problems. --- src/kicad.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/kicad.js b/src/kicad.js index 736c1af..cd8b626 100644 --- a/src/kicad.js +++ b/src/kicad.js @@ -33,9 +33,19 @@ class KiCad { [...Array(keyboard.cols+1)].forEach((_, i) => NetRepo.add(`/col${i}`)); [...Array(keyboard.rows+1)].forEach((_, i) => NetRepo.add(`/row${i}`)); + let uniques = new Set(); + keyboard.forEach(k => { k.name.replace(/[^\x00-\x7F]/g, ""); + let i = 1; + let candidate = `${k.name}_${i}`; + while(uniques.has(candidate)){ + i++; + candidate = `${k.name}_${i}`; + } + k.name = candidate; + const theSwitch = new Switch(k, this.leds); const diode = new Diode(k); theSwitch.connectPads(2, diode, 2); From 51a188236be768afe2d7fee7503501d82b3aeb8e Mon Sep 17 00:00:00 2001 From: alchemistake Date: Sat, 11 Apr 2020 03:55:46 +0200 Subject: [PATCH 5/6] Zip was putting libs stuff into wrong path --- src/zip.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/zip.js b/src/zip.js index 3fb887f..7452306 100644 --- a/src/zip.js +++ b/src/zip.js @@ -4,10 +4,11 @@ const JSZip = require('jszip'); const addFolder = (files, folder) => { fs.readdirSync(`${folder}`).forEach(file => { const fileName = `${folder}/${file}`; + const fileNameWithoutFootprint = fileName.replace("footprints/", ""); if (fs.lstatSync(`${fileName}`).isDirectory()) { addFolder(files, fileName); } else { - files.push([fileName, fs.readFileSync(`${fileName}`, 'utf8')]); + files.push([fileNameWithoutFootprint, fs.readFileSync(`${fileName}`, 'utf8')]); } }); } From 2a50ccf6a6a5cd94f14ed118369fe10389ab1d7e Mon Sep 17 00:00:00 2001 From: alchemistake Date: Sat, 11 Apr 2020 04:00:17 +0200 Subject: [PATCH 6/6] Changed annotations to numbering eliminate complicated annotation clashes. --- src/kicad.js | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/src/kicad.js b/src/kicad.js index cd8b626..e304b4f 100644 --- a/src/kicad.js +++ b/src/kicad.js @@ -33,18 +33,9 @@ class KiCad { [...Array(keyboard.cols+1)].forEach((_, i) => NetRepo.add(`/col${i}`)); [...Array(keyboard.rows+1)].forEach((_, i) => NetRepo.add(`/row${i}`)); - let uniques = new Set(); - + let i = 1 keyboard.forEach(k => { - k.name.replace(/[^\x00-\x7F]/g, ""); - - let i = 1; - let candidate = `${k.name}_${i}`; - while(uniques.has(candidate)){ - i++; - candidate = `${k.name}_${i}`; - } - k.name = candidate; + k.name = `${i++}`; const theSwitch = new Switch(k, this.leds); const diode = new Diode(k);