From 85abe789769d9b27a01ae38d40d4bf03635849be Mon Sep 17 00:00:00 2001 From: William Floyd Date: Thu, 17 Mar 2022 02:17:58 -0500 Subject: [PATCH] content: Move all images to WEBP due to size reduction and quality improvement. --- content/posts/coffee/index.md | 16 ++--- .../posts/coffee/media/20200610_204856.jpg | 3 - .../posts/coffee/media/20200610_204856.webp | 3 + .../posts/coffee/media/20200610_205351.jpg | 3 - .../posts/coffee/media/20200610_205351.webp | 3 + .../posts/coffee/media/20200610_205841.jpg | 3 - .../posts/coffee/media/20200610_205841.webp | 3 + .../posts/coffee/media/20200610_205847.jpg | 3 - .../posts/coffee/media/20200610_205847.webp | 3 + .../posts/coffee/media/20200702_120123.jpg | 3 - .../posts/coffee/media/20200702_120123.webp | 3 + .../posts/coffee/media/20200702_120302.jpg | 3 - .../posts/coffee/media/20200702_120302.webp | 3 + .../posts/coffee/media/20200702_120309.jpg | 3 - .../posts/coffee/media/20200702_120309.webp | 3 + .../posts/coffee/media/20200702_120328.jpg | 3 - .../posts/coffee/media/20200702_120328.webp | 3 + .../posts/coffee/media/20200702_120334.jpg | 3 - .../posts/coffee/media/20200702_120334.webp | 3 + .../posts/home-automation-at-school/index.md | 2 +- .../media/20200813_023018.jpg | 3 - .../media/20200813_023018.webp | 3 + content/posts/nissan-keyfob/index.md | 18 ++--- content/posts/nissan-keyfob/media/4_locks.png | 3 - .../posts/nissan-keyfob/media/4_locks.webp | 3 + content/posts/nissan-keyfob/media/decoded.png | 3 - .../posts/nissan-keyfob/media/decoded.webp | 3 + .../posts/nissan-keyfob/media/fob/closed.jpg | 3 - .../posts/nissan-keyfob/media/fob/closed.webp | 3 + .../posts/nissan-keyfob/media/fob/closeup.jpg | 3 - .../nissan-keyfob/media/fob/closeup.webp | 3 + .../posts/nissan-keyfob/media/fob/opened.jpg | 3 - .../posts/nissan-keyfob/media/fob/opened.webp | 3 + .../nissan-keyfob/media/fob/pcb_back.jpg | 3 - .../nissan-keyfob/media/fob/pcb_back.webp | 3 + .../nissan-keyfob/media/fob/pcb_front.jpg | 3 - .../nissan-keyfob/media/fob/pcb_front.webp | 3 + .../nissan-keyfob/media/research/alt_1.webp | 3 + .../nissan-keyfob/media/research/alt_2.webp | 3 + .../nissan-keyfob/media/research/alt_3.webp | 3 + .../media/{ => src}/research/alt_1.jpg | 0 .../media/src/research/alt_1.jpg.hash | 1 + .../media/{ => src}/research/alt_2.jpg | 0 .../media/src/research/alt_2.jpg.hash | 1 + .../media/{ => src}/research/alt_3.jpg | 0 .../media/src/research/alt_3.jpg.hash | 1 + .../posts/smart-yogurt-maker-part-01/index.md | 18 +++-- .../media/IMG-20220125-WA0001.jpeg | 3 - .../media/IMG-20220125-WA0001.webp | 3 + .../media/IMG_20220124_174144.jpg | 3 - .../media/IMG_20220124_174144.webp | 3 + .../media/IMG_20220124_180143.jpg | 3 - .../media/IMG_20220124_180143.webp | 3 + .../media/IMG_20220125_105918.jpg | 3 - .../media/IMG_20220125_105918.webp | 3 + .../media/IMG_20220125_105924.jpg | 3 - .../media/IMG_20220125_105924.webp | 3 + .../media/IMG_20220125_113949.jpg | 3 - .../media/IMG_20220125_113949.webp | 3 + .../media/IMG_20220125_113949_cleaned.jpg | 3 - .../media/IMG_20220125_113949_cleaned.webp | 3 + .../media/IMG_20220125_114006.jpg | 3 - .../media/IMG_20220125_114006.webp | 3 + .../media/IMG_20220125_114006_cleaned.jpg | 3 - .../media/IMG_20220125_114006_cleaned.webp | 3 + .../media/IMG_20220125_175809.jpg | 3 - .../media/IMG_20220125_175809.webp | 3 + .../media/IMG_20220125_180035.jpg | 3 - .../media/IMG_20220125_180035.webp | 3 + .../smart-yogurt-maker-part-01/media/calc.png | 3 - .../media/calc.webp | 3 + .../smart-yogurt-maker-part-01/media/log.png | 3 - .../smart-yogurt-maker-part-01/media/log.webp | 3 + content/projects/clickbait/index.md | 22 +++--- .../clickbait/media/20190919_143530.jpg | 3 - .../clickbait/media/20190919_143530.webp | 3 + .../clickbait/media/20190919_213947.jpg | 3 - .../clickbait/media/20190919_213947.webp | 3 + .../clickbait/media/20190919_224711.jpg | 3 - .../clickbait/media/20190919_224711.webp | 3 + .../clickbait/media/20191003_000323.jpg | 3 - .../clickbait/media/20191003_000323.webp | 3 + .../clickbait/media/20191004_160107.jpg | 3 - .../clickbait/media/20191004_160107.webp | 3 + .../clickbait/media/20191010_152148.jpg | 3 - .../clickbait/media/20191010_152148.webp | 3 + .../clickbait/media/20191025_194859.jpg | 3 - .../clickbait/media/20191025_194859.webp | 3 + .../clickbait/media/20191102_144426.jpg | 3 - .../clickbait/media/20191102_144426.webp | 3 + .../clickbait/media/20191110_014623.jpg | 3 - .../clickbait/media/20191110_014623.webp | 3 + .../clickbait/media/20191110_072012.jpg | 3 - .../clickbait/media/20191110_072012.webp | 3 + .../clickbait/media/20191115_090125.jpg | 3 - .../clickbait/media/20191115_090125.webp | 3 + .../clickbait/media/20191118_032416.jpg | 3 - .../clickbait/media/20191118_032416.webp | 3 + .../clickbait/media/20191120_224129.jpg | 3 - .../clickbait/media/20191120_224129.webp | 3 + content/projects/midiMixerV1/index.md | 22 +++--- .../media/handwired/20190811_004928.jpg | 3 - .../media/handwired/20190811_004928.webp | 3 + .../media/handwired/20190811_005806.jpg | 3 - .../media/handwired/20190811_005806.webp | 3 + .../media/handwired/20190811_195900.jpg | 3 - .../media/handwired/20190811_195900.webp | 3 + .../media/handwired/20190811_200447.jpg | 3 - .../media/handwired/20190811_200447.webp | 3 + .../media/handwired/20190812_175132.jpg | 3 - .../media/handwired/20190812_175132.webp | 3 + .../media/handwired/20190812_181606.jpg | 3 - .../media/handwired/20190812_181606.webp | 3 + .../midiMixerV1/media/v1/20200506_151852.jpg | 3 - .../midiMixerV1/media/v1/20200506_151852.webp | 3 + .../midiMixerV1/media/v1/20200506_151901.jpg | 3 - .../midiMixerV1/media/v1/20200506_151901.webp | 3 + .../midiMixerV1/media/v1/20200506_151909.jpg | 3 - .../midiMixerV1/media/v1/20200506_151909.webp | 3 + .../midiMixerV1/media/v1/20200506_151947.jpg | 3 - .../midiMixerV1/media/v1/20200506_151947.webp | 3 + .../midiMixerV1/media/v1/20200506_152003.jpg | 3 - .../midiMixerV1/media/v1/20200506_152003.webp | 3 + .../midiMixerV1/media/v1/20200506_152016.jpg | 3 - .../midiMixerV1/media/v1/20200506_152016.webp | 3 + .../midiMixerV1/media/v1/20200506_152023.jpg | 3 - .../midiMixerV1/media/v1/20200506_152023.webp | 3 + .../midiMixerV1/media/v1/20200506_152248.jpg | 3 - .../midiMixerV1/media/v1/20200506_152248.webp | 3 + .../midiMixerV1/media/v1/20200506_152317.jpg | 3 - .../midiMixerV1/media/v1/20200506_152317.webp | 3 + .../midiMixerV1/media/v1/20200506_152328.jpg | 3 - .../midiMixerV1/media/v1/20200506_152328.webp | 3 + .../midiMixerV1/media/v1/20200506_152408.jpg | 3 - .../midiMixerV1/media/v1/20200506_152408.webp | 3 + content/projects/pen-plotter/index.md | 8 +-- .../pen-plotter/media/20190430_053503.jpg | 3 - .../pen-plotter/media/20190430_053503.webp | 3 + .../pen-plotter/media/20190430_053508.jpg | 3 - .../pen-plotter/media/20190430_053508.webp | 3 + .../pen-plotter/media/20190430_062452.jpg | 3 - .../pen-plotter/media/20190430_062452.webp | 3 + src/images_build.sh | 69 ++++++------------- 143 files changed, 276 insertions(+), 289 deletions(-) delete mode 100644 content/posts/coffee/media/20200610_204856.jpg create mode 100644 content/posts/coffee/media/20200610_204856.webp delete mode 100644 content/posts/coffee/media/20200610_205351.jpg create mode 100644 content/posts/coffee/media/20200610_205351.webp delete mode 100644 content/posts/coffee/media/20200610_205841.jpg create mode 100644 content/posts/coffee/media/20200610_205841.webp delete mode 100644 content/posts/coffee/media/20200610_205847.jpg create mode 100644 content/posts/coffee/media/20200610_205847.webp delete mode 100644 content/posts/coffee/media/20200702_120123.jpg create mode 100644 content/posts/coffee/media/20200702_120123.webp delete mode 100644 content/posts/coffee/media/20200702_120302.jpg create mode 100644 content/posts/coffee/media/20200702_120302.webp delete mode 100644 content/posts/coffee/media/20200702_120309.jpg create mode 100644 content/posts/coffee/media/20200702_120309.webp delete mode 100644 content/posts/coffee/media/20200702_120328.jpg create mode 100644 content/posts/coffee/media/20200702_120328.webp delete mode 100644 content/posts/coffee/media/20200702_120334.jpg create mode 100644 content/posts/coffee/media/20200702_120334.webp delete mode 100644 content/posts/home-automation-at-school/media/20200813_023018.jpg create mode 100644 content/posts/home-automation-at-school/media/20200813_023018.webp delete mode 100644 content/posts/nissan-keyfob/media/4_locks.png create mode 100644 content/posts/nissan-keyfob/media/4_locks.webp delete mode 100644 content/posts/nissan-keyfob/media/decoded.png create mode 100644 content/posts/nissan-keyfob/media/decoded.webp delete mode 100644 content/posts/nissan-keyfob/media/fob/closed.jpg create mode 100644 content/posts/nissan-keyfob/media/fob/closed.webp delete mode 100644 content/posts/nissan-keyfob/media/fob/closeup.jpg create mode 100644 content/posts/nissan-keyfob/media/fob/closeup.webp delete mode 100644 content/posts/nissan-keyfob/media/fob/opened.jpg create mode 100644 content/posts/nissan-keyfob/media/fob/opened.webp delete mode 100644 content/posts/nissan-keyfob/media/fob/pcb_back.jpg create mode 100644 content/posts/nissan-keyfob/media/fob/pcb_back.webp delete mode 100644 content/posts/nissan-keyfob/media/fob/pcb_front.jpg create mode 100644 content/posts/nissan-keyfob/media/fob/pcb_front.webp create mode 100644 content/posts/nissan-keyfob/media/research/alt_1.webp create mode 100644 content/posts/nissan-keyfob/media/research/alt_2.webp create mode 100644 content/posts/nissan-keyfob/media/research/alt_3.webp rename content/posts/nissan-keyfob/media/{ => src}/research/alt_1.jpg (100%) create mode 100644 content/posts/nissan-keyfob/media/src/research/alt_1.jpg.hash rename content/posts/nissan-keyfob/media/{ => src}/research/alt_2.jpg (100%) create mode 100644 content/posts/nissan-keyfob/media/src/research/alt_2.jpg.hash rename content/posts/nissan-keyfob/media/{ => src}/research/alt_3.jpg (100%) create mode 100644 content/posts/nissan-keyfob/media/src/research/alt_3.jpg.hash delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG-20220125-WA0001.jpeg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG-20220125-WA0001.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_174144.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_174144.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_180143.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_180143.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105918.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105918.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105924.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105924.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949_cleaned.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949_cleaned.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006_cleaned.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006_cleaned.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_175809.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_175809.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_180035.jpg create mode 100644 content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_180035.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/calc.png create mode 100644 content/posts/smart-yogurt-maker-part-01/media/calc.webp delete mode 100644 content/posts/smart-yogurt-maker-part-01/media/log.png create mode 100644 content/posts/smart-yogurt-maker-part-01/media/log.webp delete mode 100644 content/projects/clickbait/media/20190919_143530.jpg create mode 100644 content/projects/clickbait/media/20190919_143530.webp delete mode 100644 content/projects/clickbait/media/20190919_213947.jpg create mode 100644 content/projects/clickbait/media/20190919_213947.webp delete mode 100644 content/projects/clickbait/media/20190919_224711.jpg create mode 100644 content/projects/clickbait/media/20190919_224711.webp delete mode 100644 content/projects/clickbait/media/20191003_000323.jpg create mode 100644 content/projects/clickbait/media/20191003_000323.webp delete mode 100644 content/projects/clickbait/media/20191004_160107.jpg create mode 100644 content/projects/clickbait/media/20191004_160107.webp delete mode 100644 content/projects/clickbait/media/20191010_152148.jpg create mode 100644 content/projects/clickbait/media/20191010_152148.webp delete mode 100644 content/projects/clickbait/media/20191025_194859.jpg create mode 100644 content/projects/clickbait/media/20191025_194859.webp delete mode 100644 content/projects/clickbait/media/20191102_144426.jpg create mode 100644 content/projects/clickbait/media/20191102_144426.webp delete mode 100644 content/projects/clickbait/media/20191110_014623.jpg create mode 100644 content/projects/clickbait/media/20191110_014623.webp delete mode 100644 content/projects/clickbait/media/20191110_072012.jpg create mode 100644 content/projects/clickbait/media/20191110_072012.webp delete mode 100644 content/projects/clickbait/media/20191115_090125.jpg create mode 100644 content/projects/clickbait/media/20191115_090125.webp delete mode 100644 content/projects/clickbait/media/20191118_032416.jpg create mode 100644 content/projects/clickbait/media/20191118_032416.webp delete mode 100644 content/projects/clickbait/media/20191120_224129.jpg create mode 100644 content/projects/clickbait/media/20191120_224129.webp delete mode 100644 content/projects/midiMixerV1/media/handwired/20190811_004928.jpg create mode 100644 content/projects/midiMixerV1/media/handwired/20190811_004928.webp delete mode 100644 content/projects/midiMixerV1/media/handwired/20190811_005806.jpg create mode 100644 content/projects/midiMixerV1/media/handwired/20190811_005806.webp delete mode 100644 content/projects/midiMixerV1/media/handwired/20190811_195900.jpg create mode 100644 content/projects/midiMixerV1/media/handwired/20190811_195900.webp delete mode 100644 content/projects/midiMixerV1/media/handwired/20190811_200447.jpg create mode 100644 content/projects/midiMixerV1/media/handwired/20190811_200447.webp delete mode 100644 content/projects/midiMixerV1/media/handwired/20190812_175132.jpg create mode 100644 content/projects/midiMixerV1/media/handwired/20190812_175132.webp delete mode 100644 content/projects/midiMixerV1/media/handwired/20190812_181606.jpg create mode 100644 content/projects/midiMixerV1/media/handwired/20190812_181606.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_151852.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_151852.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_151901.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_151901.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_151909.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_151909.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_151947.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_151947.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_152003.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_152003.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_152016.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_152016.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_152023.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_152023.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_152248.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_152248.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_152317.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_152317.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_152328.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_152328.webp delete mode 100644 content/projects/midiMixerV1/media/v1/20200506_152408.jpg create mode 100644 content/projects/midiMixerV1/media/v1/20200506_152408.webp delete mode 100644 content/projects/pen-plotter/media/20190430_053503.jpg create mode 100644 content/projects/pen-plotter/media/20190430_053503.webp delete mode 100644 content/projects/pen-plotter/media/20190430_053508.jpg create mode 100644 content/projects/pen-plotter/media/20190430_053508.webp delete mode 100644 content/projects/pen-plotter/media/20190430_062452.jpg create mode 100644 content/projects/pen-plotter/media/20190430_062452.webp diff --git a/content/posts/coffee/index.md b/content/posts/coffee/index.md index 44fb410..1fe3dd0 100644 --- a/content/posts/coffee/index.md +++ b/content/posts/coffee/index.md @@ -2,7 +2,7 @@ title: "DIY 'Smart' Coffee Maker" date: "2020-07-05" author: "William Floyd" -featured_image: "media/20200702_120123.jpg" +featured_image: "media/20200702_120123.webp" categories: [ "Hardware", "Electronics", @@ -27,30 +27,30 @@ I got so far as adding a sleek new brand name model to my Amazon cart, but thank Instead, I opted to swing by the local Goodwill the next day, to see what secondhand options might be available. As luck would have it, I found a no-frills, single button coffee maker for the princely sum of $4, and I was on my merry way. -[![The Spoils of Goodwill](media/20200610_204856.jpg)](media/src/20200610_204856.jpg) +[![The Spoils of Goodwill](media/20200610_204856.webp)](media/src/20200610_204856.jpg) *** Later that evening, opening the black box up (thankfully I had the correct triangular screwdriver head), I found very easily hackable innards. -[![Poor lighting is the worst...](media/20200610_205351.jpg)](media/src/20200610_205351.jpg) +[![Poor lighting is the worst...](media/20200610_205351.webp)](media/src/20200610_205351.jpg) -The control board ([front](media/20200610_205847.jpg), [back](media/20200610_205841.jpg)) is very simple - two buttons in parallel, an LED, and a couple resistors. +The control board ([front](media/20200610_205847.webp), [back](media/20200610_205841.webp)) is very simple - two buttons in parallel, an LED, and a couple resistors. I'm not quite sure what the logic is upstream (it un/latches on each press), but the buttons short to ground, and this is something I can work with. The control board has wires for ground, signal, and 5V, in that order. The ordeal of hacking into the thing, and my missteps trying to do so, is rather boring really, but it produced this: -[![Interception!](media/20200702_120309.jpg)](media/src/20200702_120309.jpg) +[![Interception!](media/20200702_120309.webp)](media/src/20200702_120309.jpg) -[![Perfboard](media/20200702_120302.jpg)](media/src/20200702_120302.jpg) +[![Perfboard](media/20200702_120302.webp)](media/src/20200702_120302.jpg) -[![D1 Mini](media/20200702_120328.jpg)](media/src/20200702_120328.jpg) +[![D1 Mini](media/20200702_120328.webp)](media/src/20200702_120328.jpg) The brains I added was a Wemos D1 Mini (thanks, Aliexpress!), with a 3.3V<->5V converter between to sense when the coffee maker is on, and also turn on a mosfet to short the button to ground. I initially had issues with the coffee maker turning on whenever I plugger the D1 Mini in, but a pulldown resistor solved this. -[![External USB Plug](media/20200702_120334.jpg)](media/src/20200702_120334.jpg) +[![External USB Plug](media/20200702_120334.webp)](media/src/20200702_120334.jpg) I also opted for an external USB plug - this allows me to possibly reflash this without opening the enclosure, and also meant I did not need to splice into the mains line inside, which I was reluctant to do. diff --git a/content/posts/coffee/media/20200610_204856.jpg b/content/posts/coffee/media/20200610_204856.jpg deleted file mode 100644 index 9e76838..0000000 --- a/content/posts/coffee/media/20200610_204856.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:73b69714220c471216dce70cc0c9a64064db6d324929823f9ba910dce51351af -size 96912 diff --git a/content/posts/coffee/media/20200610_204856.webp b/content/posts/coffee/media/20200610_204856.webp new file mode 100644 index 0000000..8e96808 --- /dev/null +++ b/content/posts/coffee/media/20200610_204856.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbedd5636a79840200d3d21d86c2408f489b0aad50ad7b34955a67d07f02c401 +size 72788 diff --git a/content/posts/coffee/media/20200610_205351.jpg b/content/posts/coffee/media/20200610_205351.jpg deleted file mode 100644 index 06cb05a..0000000 --- a/content/posts/coffee/media/20200610_205351.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:79387800d740ab68cee020afd2e657cc48f205ba75c5d2c7322f1aa4bc83cd0d -size 78728 diff --git a/content/posts/coffee/media/20200610_205351.webp b/content/posts/coffee/media/20200610_205351.webp new file mode 100644 index 0000000..60e5ed7 --- /dev/null +++ b/content/posts/coffee/media/20200610_205351.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:583f9c63c389f3bb7567204814a9e7971523c3c51962c0ec75323fc89749d15e +size 55396 diff --git a/content/posts/coffee/media/20200610_205841.jpg b/content/posts/coffee/media/20200610_205841.jpg deleted file mode 100644 index a90fc7c..0000000 --- a/content/posts/coffee/media/20200610_205841.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:295000d5f811f18c49ddb16412daff4e04ed1c3726c414bc38e67fec3bc28181 -size 62766 diff --git a/content/posts/coffee/media/20200610_205841.webp b/content/posts/coffee/media/20200610_205841.webp new file mode 100644 index 0000000..abe733c --- /dev/null +++ b/content/posts/coffee/media/20200610_205841.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34a48de717a1697e022157304bbc608f44cce15687ef02c574f84bdbd2a82386 +size 40292 diff --git a/content/posts/coffee/media/20200610_205847.jpg b/content/posts/coffee/media/20200610_205847.jpg deleted file mode 100644 index 75ee7d4..0000000 --- a/content/posts/coffee/media/20200610_205847.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ca313404201bc675441834b6d0d34c2d3cbaa69041f1bf30ae9465f5faf2edc2 -size 66634 diff --git a/content/posts/coffee/media/20200610_205847.webp b/content/posts/coffee/media/20200610_205847.webp new file mode 100644 index 0000000..8302a8d --- /dev/null +++ b/content/posts/coffee/media/20200610_205847.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f3cd26df619676105150f7faca7fd6f981fa85d8c202b8584fe0e56d37773d0 +size 44746 diff --git a/content/posts/coffee/media/20200702_120123.jpg b/content/posts/coffee/media/20200702_120123.jpg deleted file mode 100644 index 1e70a3c..0000000 --- a/content/posts/coffee/media/20200702_120123.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:69f07c7554a93d0f1c54cf2b9715f65597e4e989001fbde8e11fc65d2b0870c0 -size 109012 diff --git a/content/posts/coffee/media/20200702_120123.webp b/content/posts/coffee/media/20200702_120123.webp new file mode 100644 index 0000000..e077bcc --- /dev/null +++ b/content/posts/coffee/media/20200702_120123.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d146fabb1dc8184b58fa4cfe03a667111d7ba2b05baece4c48dda3efccb5543 +size 83638 diff --git a/content/posts/coffee/media/20200702_120302.jpg b/content/posts/coffee/media/20200702_120302.jpg deleted file mode 100644 index 0110274..0000000 --- a/content/posts/coffee/media/20200702_120302.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ec84ec8adf50fe3203d8bf5237b8b591036b2533b8515128b35156e7e4c6bfec -size 88143 diff --git a/content/posts/coffee/media/20200702_120302.webp b/content/posts/coffee/media/20200702_120302.webp new file mode 100644 index 0000000..a11ac35 --- /dev/null +++ b/content/posts/coffee/media/20200702_120302.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3c7f5fb1bcc16059b552b9a3fd6ec09f65b024a3ec602e889cf8009ced70871 +size 63958 diff --git a/content/posts/coffee/media/20200702_120309.jpg b/content/posts/coffee/media/20200702_120309.jpg deleted file mode 100644 index 5a03239..0000000 --- a/content/posts/coffee/media/20200702_120309.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c58b65bb37c636e555ad7b811ba4908d0eaa0b835c109589831a9330b8e90267 -size 66679 diff --git a/content/posts/coffee/media/20200702_120309.webp b/content/posts/coffee/media/20200702_120309.webp new file mode 100644 index 0000000..7f742a0 --- /dev/null +++ b/content/posts/coffee/media/20200702_120309.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4987bda7bb661ef6629c4014e113222a9651d4485f64e3bd7bec71b88f631a74 +size 40222 diff --git a/content/posts/coffee/media/20200702_120328.jpg b/content/posts/coffee/media/20200702_120328.jpg deleted file mode 100644 index d0ce6bd..0000000 --- a/content/posts/coffee/media/20200702_120328.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5184392df7721b6178afafebbc0709f059ff7c7b3edaa33b169c9cd5bc7a8ce2 -size 90726 diff --git a/content/posts/coffee/media/20200702_120328.webp b/content/posts/coffee/media/20200702_120328.webp new file mode 100644 index 0000000..b9bc6b4 --- /dev/null +++ b/content/posts/coffee/media/20200702_120328.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1da1bdc5d495fe1c0a608dcf8d28a8267bc4400d6e378b1402d9851ec870c46 +size 61456 diff --git a/content/posts/coffee/media/20200702_120334.jpg b/content/posts/coffee/media/20200702_120334.jpg deleted file mode 100644 index 1e69933..0000000 --- a/content/posts/coffee/media/20200702_120334.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c00c04bc0edfdaa74bc8726d8387bb1c86eb9c8d56203c809206197bc3e8708f -size 73050 diff --git a/content/posts/coffee/media/20200702_120334.webp b/content/posts/coffee/media/20200702_120334.webp new file mode 100644 index 0000000..bc818af --- /dev/null +++ b/content/posts/coffee/media/20200702_120334.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91e641f4c37f0157474b71b897aea56d541b72f5c6db18b2b6f8846b6a7620d8 +size 50058 diff --git a/content/posts/home-automation-at-school/index.md b/content/posts/home-automation-at-school/index.md index e8e4216..29afd9f 100644 --- a/content/posts/home-automation-at-school/index.md +++ b/content/posts/home-automation-at-school/index.md @@ -2,7 +2,7 @@ title: "Home Automation at School" date: "2021-04-21" author: "William Floyd" -featured_image: "media/20200813_023018.jpg" +featured_image: "media/20200813_023018.webp" categories: [ "Software" ] diff --git a/content/posts/home-automation-at-school/media/20200813_023018.jpg b/content/posts/home-automation-at-school/media/20200813_023018.jpg deleted file mode 100644 index 5e2df25..0000000 --- a/content/posts/home-automation-at-school/media/20200813_023018.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bc5115c96d70071bc134893b68db5cc99ab25941dac81088337bcdc9f29a4cde -size 120031 diff --git a/content/posts/home-automation-at-school/media/20200813_023018.webp b/content/posts/home-automation-at-school/media/20200813_023018.webp new file mode 100644 index 0000000..f33cd09 --- /dev/null +++ b/content/posts/home-automation-at-school/media/20200813_023018.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b103d3385f10c9abe1757efeb6e1f2e884d2abcfeb442c4b06fa81defa60a1e6 +size 113178 diff --git a/content/posts/nissan-keyfob/index.md b/content/posts/nissan-keyfob/index.md index 8282bd6..595d6ed 100644 --- a/content/posts/nissan-keyfob/index.md +++ b/content/posts/nissan-keyfob/index.md @@ -2,7 +2,7 @@ title: "Analysis of a 2005 Nissan Altima Remote Keyfob" date: "2021-01-08" author: "William Floyd" -featured_image: "media/fob/closed.jpg" +featured_image: "media/fob/closed.webp" categories: [ "Hardware", "Electronics", @@ -30,12 +30,12 @@ I am reluctant to tap into the CAN bus directly, so instead I am going to invest # The Hardware -[![Opened remote](media/fob/opened.jpg)](media/src/fob/opened.jpg) +[![Opened remote](media/fob/opened.webp)](media/src/fob/opened.jpg) While I may analyze the original fob at some point, for the time being I shall work from the aftermarket fob. -Opening the casing reveals a rather simple circuit ([front](media/fob/pcb_front.jpg), [back](media/fob/pcb_back.jpg)) - battery contacts, four buttons, a smattering of passives, an oscillator, the main control chip, 8 test points, and an antenna trace running around the perimeter of the PCB. +Opening the casing reveals a rather simple circuit ([front](media/fob/pcb_front.webp), [back](media/fob/pcb_back.webp)) - battery contacts, four buttons, a smattering of passives, an oscillator, the main control chip, 8 test points, and an antenna trace running around the perimeter of the PCB. -[![Closeup](media/fob/closeup.jpg)](media/src/fob/closeup.jpg) +[![Closeup](media/fob/closeup.webp)](media/src/fob/closeup.jpg) Rather unhelpfully, the control IC is unmarked, so either I'll need to wait until I can look at the original fob to find any clues, or try to find what I need online. @@ -62,7 +62,7 @@ With this information in hand, I ordered a cheap RTL-SDR (a Nooelec NESDR Mini 2 # SDR Analysis -[![4 Presses of the Locking Key](media/4_locks.png)](media/4_locks.png) +[![4 Presses of the Locking Key](media/4_locks.webp)](media/4_locks.webp) The radio, being a North American model, operates at 315MHz. Using Universal [Radio Hacker](https://github.com/jopohl/urh), I began capturing examples of locking and unlocking signals. @@ -112,7 +112,7 @@ In any case, this extra trailing bit is always 0. Finally we have something like this: -[![Decoded data](media/decoded.png)](media/decoded.png) +[![Decoded data](media/decoded.webp)](media/decoded.webp) The top four entries are when locking, the bottom four when unlocking. The highlighted segments from left to right, as per the technical document, are: @@ -131,9 +131,9 @@ What we know now is that the keyfob does indeed use a rolling code algorithm, th I do not have access to the original keyfob at this time, so some image searching may be in order. Several leads appeared, but the main one was this: - -[![Pre-owned OEM fob](media/research/alt_2.jpg)](media/research/alt_2.jpg) - + +[![Pre-owned OEM fob](media/research/alt_2.webp)](media/src/research/alt_2.jpg) + None of text appears especially legible, so the first thing I can do is compare the logo on the OEM fob to existing rolling code chip manufacturers. As it happens, Microchip is the company in question, producing the widely documented KeeLoq product line ([leaked spec sheet](http://keeloq.narod.ru/decryption.pdf)). diff --git a/content/posts/nissan-keyfob/media/4_locks.png b/content/posts/nissan-keyfob/media/4_locks.png deleted file mode 100644 index 777fb0c..0000000 --- a/content/posts/nissan-keyfob/media/4_locks.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44bf8983131f719430c0f610070fd0876a357724d40e9c56178ac0923bcbe67d -size 4722 diff --git a/content/posts/nissan-keyfob/media/4_locks.webp b/content/posts/nissan-keyfob/media/4_locks.webp new file mode 100644 index 0000000..ee000be --- /dev/null +++ b/content/posts/nissan-keyfob/media/4_locks.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:adc85230016f4cbf27ba9e8d57f7244ff1d2a30d156affdcdcb60c8fcaf0d628 +size 4642 diff --git a/content/posts/nissan-keyfob/media/decoded.png b/content/posts/nissan-keyfob/media/decoded.png deleted file mode 100644 index bed8499..0000000 --- a/content/posts/nissan-keyfob/media/decoded.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:aa28c9af09706b2a8883abd18f61feeab0ae5cde46de58c23c7ade69aafbecf5 -size 22557 diff --git a/content/posts/nissan-keyfob/media/decoded.webp b/content/posts/nissan-keyfob/media/decoded.webp new file mode 100644 index 0000000..7ee4b3b --- /dev/null +++ b/content/posts/nissan-keyfob/media/decoded.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28903ba14dbfaa08ea62ccbc4a697e6db3f05397ebcc8741c82ad166d14b8d58 +size 10194 diff --git a/content/posts/nissan-keyfob/media/fob/closed.jpg b/content/posts/nissan-keyfob/media/fob/closed.jpg deleted file mode 100644 index 43962c7..0000000 --- a/content/posts/nissan-keyfob/media/fob/closed.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:34c85b97150781d666ef3195530dc7b7f308f42303ca400217330422c972f10f -size 37154 diff --git a/content/posts/nissan-keyfob/media/fob/closed.webp b/content/posts/nissan-keyfob/media/fob/closed.webp new file mode 100644 index 0000000..744df4c --- /dev/null +++ b/content/posts/nissan-keyfob/media/fob/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3037998a0441ff41bb4a4c4d7d8b1bb0abf65098d66d49dc92fd44228988ab1f +size 24572 diff --git a/content/posts/nissan-keyfob/media/fob/closeup.jpg b/content/posts/nissan-keyfob/media/fob/closeup.jpg deleted file mode 100644 index f089b6e..0000000 --- a/content/posts/nissan-keyfob/media/fob/closeup.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e14a8a063de48df6476f8c82051c7f4ff367f37a89438267c729a802183104a1 -size 51663 diff --git a/content/posts/nissan-keyfob/media/fob/closeup.webp b/content/posts/nissan-keyfob/media/fob/closeup.webp new file mode 100644 index 0000000..9171884 --- /dev/null +++ b/content/posts/nissan-keyfob/media/fob/closeup.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e4b93441a6bcf353993ca973012e3717d00e9ce66b4743cabe96fbc81028758 +size 30000 diff --git a/content/posts/nissan-keyfob/media/fob/opened.jpg b/content/posts/nissan-keyfob/media/fob/opened.jpg deleted file mode 100644 index 9343553..0000000 --- a/content/posts/nissan-keyfob/media/fob/opened.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e5ec2d419b1758f65e3ff13e367b7afcf29e5d82c9a670b65291a2a956e60b57 -size 44796 diff --git a/content/posts/nissan-keyfob/media/fob/opened.webp b/content/posts/nissan-keyfob/media/fob/opened.webp new file mode 100644 index 0000000..0078ab9 --- /dev/null +++ b/content/posts/nissan-keyfob/media/fob/opened.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb91c93cca039ff903d8f8620f66833bbde837e021ec92dccc895160b58b62fd +size 28482 diff --git a/content/posts/nissan-keyfob/media/fob/pcb_back.jpg b/content/posts/nissan-keyfob/media/fob/pcb_back.jpg deleted file mode 100644 index 8d1b5db..0000000 --- a/content/posts/nissan-keyfob/media/fob/pcb_back.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:93587c889ed50d6e2cdd3f8bc682c5c67fd1a804014a95e197f63bf0c0ec3e69 -size 32277 diff --git a/content/posts/nissan-keyfob/media/fob/pcb_back.webp b/content/posts/nissan-keyfob/media/fob/pcb_back.webp new file mode 100644 index 0000000..5e02246 --- /dev/null +++ b/content/posts/nissan-keyfob/media/fob/pcb_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c2bdbcdde8da1cffd58b4f0131d013a1e7dcfd6f6e32149b1b0bdfa43c72b86 +size 19238 diff --git a/content/posts/nissan-keyfob/media/fob/pcb_front.jpg b/content/posts/nissan-keyfob/media/fob/pcb_front.jpg deleted file mode 100644 index fc8fb83..0000000 --- a/content/posts/nissan-keyfob/media/fob/pcb_front.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d43a5b60a84ab2b73f07803a7da84deb7e9475a2c3a1a3b6c13e4984a1d24a55 -size 35815 diff --git a/content/posts/nissan-keyfob/media/fob/pcb_front.webp b/content/posts/nissan-keyfob/media/fob/pcb_front.webp new file mode 100644 index 0000000..9dc84eb --- /dev/null +++ b/content/posts/nissan-keyfob/media/fob/pcb_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a99f6e04e62d0f3d943cd06ff3a9bfb7d93fe8c6d8c4d3f071c29b7deba508b1 +size 20572 diff --git a/content/posts/nissan-keyfob/media/research/alt_1.webp b/content/posts/nissan-keyfob/media/research/alt_1.webp new file mode 100644 index 0000000..bcfd687 --- /dev/null +++ b/content/posts/nissan-keyfob/media/research/alt_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:190fed5a03b3f3b7b84c19c7192a89d356b9d2672fdbefc88a5d1b708b5c9424 +size 21448 diff --git a/content/posts/nissan-keyfob/media/research/alt_2.webp b/content/posts/nissan-keyfob/media/research/alt_2.webp new file mode 100644 index 0000000..27e4cc7 --- /dev/null +++ b/content/posts/nissan-keyfob/media/research/alt_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:643d2965e307a5844d7b81bc1191f731f4adcf592d41cf1b2aab3b0755bf55ce +size 37904 diff --git a/content/posts/nissan-keyfob/media/research/alt_3.webp b/content/posts/nissan-keyfob/media/research/alt_3.webp new file mode 100644 index 0000000..4429a9c --- /dev/null +++ b/content/posts/nissan-keyfob/media/research/alt_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa03928f17cae5cb2fee2296684f6db3c434957d3f954e1f8d61a2892f8fa77c +size 16810 diff --git a/content/posts/nissan-keyfob/media/research/alt_1.jpg b/content/posts/nissan-keyfob/media/src/research/alt_1.jpg similarity index 100% rename from content/posts/nissan-keyfob/media/research/alt_1.jpg rename to content/posts/nissan-keyfob/media/src/research/alt_1.jpg diff --git a/content/posts/nissan-keyfob/media/src/research/alt_1.jpg.hash b/content/posts/nissan-keyfob/media/src/research/alt_1.jpg.hash new file mode 100644 index 0000000..4568aa2 --- /dev/null +++ b/content/posts/nissan-keyfob/media/src/research/alt_1.jpg.hash @@ -0,0 +1 @@ +0c5dab9c716b6d76382a75765ca35597 diff --git a/content/posts/nissan-keyfob/media/research/alt_2.jpg b/content/posts/nissan-keyfob/media/src/research/alt_2.jpg similarity index 100% rename from content/posts/nissan-keyfob/media/research/alt_2.jpg rename to content/posts/nissan-keyfob/media/src/research/alt_2.jpg diff --git a/content/posts/nissan-keyfob/media/src/research/alt_2.jpg.hash b/content/posts/nissan-keyfob/media/src/research/alt_2.jpg.hash new file mode 100644 index 0000000..39a0c3b --- /dev/null +++ b/content/posts/nissan-keyfob/media/src/research/alt_2.jpg.hash @@ -0,0 +1 @@ +f715aae112e3cc887738f7cadcdfbd96 diff --git a/content/posts/nissan-keyfob/media/research/alt_3.jpg b/content/posts/nissan-keyfob/media/src/research/alt_3.jpg similarity index 100% rename from content/posts/nissan-keyfob/media/research/alt_3.jpg rename to content/posts/nissan-keyfob/media/src/research/alt_3.jpg diff --git a/content/posts/nissan-keyfob/media/src/research/alt_3.jpg.hash b/content/posts/nissan-keyfob/media/src/research/alt_3.jpg.hash new file mode 100644 index 0000000..b2904ad --- /dev/null +++ b/content/posts/nissan-keyfob/media/src/research/alt_3.jpg.hash @@ -0,0 +1 @@ +952703b2c11f53810cb99271d55929ad diff --git a/content/posts/smart-yogurt-maker-part-01/index.md b/content/posts/smart-yogurt-maker-part-01/index.md index e3e0b3f..c898011 100644 --- a/content/posts/smart-yogurt-maker-part-01/index.md +++ b/content/posts/smart-yogurt-maker-part-01/index.md @@ -2,7 +2,7 @@ title: "Smart Yogurt Maker Part 1" date: "2022-01-25" author: "William Floyd" -featured_image: "media/IMG_20220125_113949_cleaned.jpg" +featured_image: "media/IMG_20220125_113949_cleaned.webp" categories: [ "Development", "Hardware", @@ -18,6 +18,10 @@ tags: [ ] --- +Part 1 | [Part 2](../smart-yogurt-maker-part-02) + +*** + A certain [Rice](/2018/smart-rice-cooker) [Cooker](/2018/dumb-rice-cooker) has been languishing in a box for the last several years - now it is time to revisit it. It is a tale of Solder, Software, and Streptococcus thermophilus. @@ -76,13 +80,13 @@ $$ In my case, I found the points of reference using a setup like so: -![Measuring water temperature and thermistor resistance](media/IMG_20220124_174144.jpg) +![Measuring water temperature and thermistor resistance](media/IMG_20220124_174144.webp) Do note that in order to reach a full boil (and $100^\circ \text{C}$ on the thermocouple), the lid of the rice cooker was attached. While I could show the calculations, and they wouldn't be difficult, I'll be honest: I used an [online calculator](https://www.thinksrs.com/downloads/programs/therm%20calc/ntccalibrator/ntccalculator.html). -![Calculator results](media/calc.png) +![Calculator results](media/calc.webp) Using the measurements: @@ -128,7 +132,7 @@ In the meantime, a Wemos D1 Mini on a breadboard is ready to go (they're cheap a I wire it up with a $6.8\text{k}\Omega$ resistor (what I had handy), and away I went. The circuit looks something like this, where the two trailing wires connect to the thermistor bank: -![Wired breadboard](media/IMG_20220125_114006_cleaned.jpg) +![Wired breadboard](media/IMG_20220125_114006_cleaned.webp) To prevent confusion, here is my final working config, then I'll explain. @@ -211,7 +215,7 @@ $$ Further tuning is required, but this held well overnight - mostly... -![First overnight test](media/log.png) +![First overnight test](media/log.webp) I did change the set point from $105^\circ\text{F}$ to $107^\circ\text{F}$ halfway through, as well as tweaked some of the PID tuning. The concerning spike at 9:00 is marked by a momentary loss of connection with the ESP board - my automation failed to account for a loss of connection and so allowed the heat to continue rising. @@ -225,13 +229,13 @@ I am notoriously _not_ picky when it comes to food, but I think it turned out gr Filling the rice cooker about halfway with whole milk, I heated it to $180^\circ \text{F}$ for a few minutes (I read I ought to go for longer...), cooled to about $110^\circ \text{F}$, then added a liberal few spoonfuls (think 1/5 volume of milk) of plain Dannon yogurt. I let it proof in the rice cooker for 7.5 hours, with the lid sealed. -![First batch, still warm](media/IMG_20220125_105918.jpg) +![First batch, still warm](media/IMG_20220125_105918.webp) I put the whole rice cooker in the fridge to cool, with the lid sealed. Trying it later that same evening, I quite enjoyed it. I'll start my next batch from this one, and hopefully it'll be even better. -![Spoonful of the good stuff](media/IMG_20220125_180035.jpg) +![Spoonful of the good stuff](media/IMG_20220125_180035.webp) # "Next time, on Rice Cooker Adventures" diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG-20220125-WA0001.jpeg b/content/posts/smart-yogurt-maker-part-01/media/IMG-20220125-WA0001.jpeg deleted file mode 100644 index 00cbcd6..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG-20220125-WA0001.jpeg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b16af600f8f8ee3259c70060b5893c1979ade38064aa3c09f6ce54c43e91bd77 -size 63394 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG-20220125-WA0001.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG-20220125-WA0001.webp new file mode 100644 index 0000000..291241e --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG-20220125-WA0001.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5e552d63ef8938a4b2fc33f3a744f9994447f456a83c181427797c53ab4c135 +size 52364 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_174144.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_174144.jpg deleted file mode 100644 index 362ce1d..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_174144.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:07e23f7d7e256ad0f44f08f6f50ecab7b2c0d44426a6955f7384d0a9dfeea313 -size 110591 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_174144.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_174144.webp new file mode 100644 index 0000000..cc3aeeb --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_174144.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddd6e8ce1ff9b0e40108fe07763998ff20312c3f4a6d2c16f27bc9f2c02f49dd +size 80788 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_180143.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_180143.jpg deleted file mode 100644 index 6a49665..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_180143.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9077fb676a7bc4a22f75da8c85ec1337bdde031508dd9959cc8d2168dc5e3046 -size 104384 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_180143.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_180143.webp new file mode 100644 index 0000000..229df10 --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220124_180143.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e46e9e14e08e4359f7131f675dd4b99dc1dfdfa9b2346725fdb22fca62c2080 +size 75650 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105918.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105918.jpg deleted file mode 100644 index f8c740a..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105918.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a2fecc99f7bf51d35f5efce1083c2c2756d2190273858230459cb261fd6e294c -size 100508 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105918.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105918.webp new file mode 100644 index 0000000..89b8b12 --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105918.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8834138d9a5b18de89cb10450b44b4f8b7e45b21ce0ea5332f99364df402a129 +size 70756 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105924.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105924.jpg deleted file mode 100644 index 54f569a..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105924.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:624a92c72c8f42fbd464cefe0d3d10a91175e3c9764a75a4059712c9cad7db04 -size 58150 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105924.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105924.webp new file mode 100644 index 0000000..7b01a89 --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_105924.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7877278ea70fd6c8e1cb17005dfab8216b49238cb4a7b1b43ca680f3a22a22a5 +size 35210 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949.jpg deleted file mode 100644 index 0ab5a04..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b628f16a3faef2d36121191b0c91e6d422a10d214d906df888b8a00d81ff4f90 -size 33189 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949.webp new file mode 100644 index 0000000..7f02e92 --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fa6d840c1c26369206e065ce7a32a417f79d2093310ece5a6adb7d1c75c5670 +size 18100 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949_cleaned.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949_cleaned.jpg deleted file mode 100644 index 2ea288f..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949_cleaned.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d8dbba87e3607187083257ada00c466c13ffb253f65be0f32dc5c49be29e523d -size 46840 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949_cleaned.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949_cleaned.webp new file mode 100644 index 0000000..b0b8f85 --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_113949_cleaned.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81cec728e5901bacb90f01cbfca1e239c2b1b5199bdfafbdf5fbde843f06c7d3 +size 17682 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006.jpg deleted file mode 100644 index ac3d9ca..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ffabd7969dc2f0a85aa7f2798d2b7431ab34e2e05c1676a9dcd6311c53764d0d -size 44376 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006.webp new file mode 100644 index 0000000..0ff2b4c --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11839f2d289e1dfcee75998459beabb96e8c7d5324abca009beeee3165546a99 +size 26462 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006_cleaned.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006_cleaned.jpg deleted file mode 100644 index df62f42..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006_cleaned.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7f7b02ecbab4e94167f4d7011954a677581cb166d5f402fb6f0c3ac024c960e7 -size 60728 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006_cleaned.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006_cleaned.webp new file mode 100644 index 0000000..3dc4935 --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_114006_cleaned.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41ebb56c778f70f1f33acd4c29a0f7d0c8d87056128c66011caed792198de0ff +size 27118 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_175809.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_175809.jpg deleted file mode 100644 index 3483b46..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_175809.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c067561633f76774b5f24a76d73905030332c3e5925f67b235f6de2f54381d19 -size 69297 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_175809.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_175809.webp new file mode 100644 index 0000000..8290a73 --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_175809.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d00a2cad2d2a1593831907c96a469044cc0daa2842344fcbed5f568f4388b30f +size 44180 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_180035.jpg b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_180035.jpg deleted file mode 100644 index 2835976..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_180035.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e7659e569335479d9546dc4ac7956781d3a4d391a6bceb3acbdb702a10d2b182 -size 63765 diff --git a/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_180035.webp b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_180035.webp new file mode 100644 index 0000000..87c11e4 --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/IMG_20220125_180035.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:279eb93b6a84eb97c89b1d81d39e3af8ad75f55a18ec913267e7e623c1ce62da +size 38220 diff --git a/content/posts/smart-yogurt-maker-part-01/media/calc.png b/content/posts/smart-yogurt-maker-part-01/media/calc.png deleted file mode 100644 index 20bab9d..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/calc.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2d036c858fda239d081ddb59370ad49f41f0c7e08f8f85df43e3b9888d8af285 -size 65374 diff --git a/content/posts/smart-yogurt-maker-part-01/media/calc.webp b/content/posts/smart-yogurt-maker-part-01/media/calc.webp new file mode 100644 index 0000000..eb1b22a --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/calc.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a13a01ca5620dbcf16e8d5e168c91b495b6da0d6a77510cdf9661506c4e4507 +size 55954 diff --git a/content/posts/smart-yogurt-maker-part-01/media/log.png b/content/posts/smart-yogurt-maker-part-01/media/log.png deleted file mode 100644 index 5f65922..0000000 --- a/content/posts/smart-yogurt-maker-part-01/media/log.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:595fc4b6963f1926e4cc3d11aa22d49fa40414c0f2deccc23310e3ea2dfe6e01 -size 30075 diff --git a/content/posts/smart-yogurt-maker-part-01/media/log.webp b/content/posts/smart-yogurt-maker-part-01/media/log.webp new file mode 100644 index 0000000..fec92f7 --- /dev/null +++ b/content/posts/smart-yogurt-maker-part-01/media/log.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b49206063f1c260cffd490b4d34b11b6853a496e97356a4335207e630050d3a0 +size 16564 diff --git a/content/projects/clickbait/index.md b/content/projects/clickbait/index.md index 02a2951..7c748a5 100644 --- a/content/projects/clickbait/index.md +++ b/content/projects/clickbait/index.md @@ -2,7 +2,7 @@ title: "Clickbait - The Automatic Fishing Caster" date: "2020-03-13" author: "William Floyd" -featured_image: "media/20191120_224129.jpg" +featured_image: "media/20191120_224129.webp" categories: [ "Hardware", "Engineering", @@ -38,7 +38,7 @@ And so it was that we began brainstorming. *** -[![Laying the groundwork](media/20190919_143530.jpg)](media/src/20190919_143530.jpg) +[![Laying the groundwork](media/20190919_143530.webp)](media/src/20190919_143530.jpg) The idea was fairly simple - use two smooth rods and a leadscrew to pull a carriage against springs that would then somehow fire the fishing weight. The choice of this mechanism was, for the most part, due to availability of parts. @@ -46,9 +46,9 @@ I already owned the necessary rods and bearings, and springs were readily availa *** -[![First print](media/20190919_224711.jpg)](media/src/20190919_224711.jpg) +[![First print](media/20190919_224711.webp)](media/src/20190919_224711.jpg) -Soon, we had [some](media/20190919_213947.jpg) basic 3D printed parts in order - for it was 3D printing that was most accessible to us, and allowed largely unattended manufacturing while classes continued. +Soon, we had [some](media/20190919_213947.webp) basic 3D printed parts in order - for it was 3D printing that was most accessible to us, and allowed largely unattended manufacturing while classes continued. Despite this early start of progress, however, the ever present tendency toward procrastination crept in. The usual array of excuses were made by all, and little actual work was accomplished. @@ -61,22 +61,22 @@ Nor was it realistic for us to budget a baitcasting reel instead of a much cheap *** -[![T'was but a Fanta-sea](media/20191010_152148.jpg)](media/src/20191010_152148.jpg) +[![T'was but a Fanta-sea](media/20191010_152148.webp)](media/src/20191010_152148.jpg) Eventually, however, some progress was made - progress in something of a wrong direction, but progress nonetheless. As the shape of our ungainly creation began to emerge, it was clear progress needed to be made quickly. Once we coupled our stepper motor to the leadscrew and power tested the unit, it was also clear that change was in order. So a decision was made: a cheap cordless drill would be pilfered for a battery, motor and chuck. -A H-Bridge would need to be bought for the drill motor (I [tried to](media/20191025_194859.jpg) [make one](media/20191102_144426.jpg), but the magic smoke was released...), and a latching system needed to be made. +A H-Bridge would need to be bought for the drill motor (I [tried to](media/20191025_194859.webp) [make one](media/20191102_144426.webp), but the magic smoke was released...), and a latching system needed to be made. *** -[![Latching Track Installed](media/20191110_014623.jpg)](media/src/20191110_014623.jpg) +[![Latching Track Installed](media/20191110_014623.webp)](media/src/20191110_014623.jpg) The next week or so resulted in the beginnings of a working launch mechanism. With the aid of a rubber band, a latching track was put under the rods and springs, such that the motor would tension the launching carriage, then return to the front of the mechanism to allow the eventual release of the catch using a servo. -Soon after this, the motor was [appropriately mounted to the frame](media/20191110_072012.jpg), with a carefully fit 3D printed socket. +Soon after this, the motor was [appropriately mounted to the frame](media/20191110_072012.webp), with a carefully fit 3D printed socket. It was, it seemed, all coming together. *** @@ -89,7 +89,7 @@ The end was near, or so it seemed. *** -[![Reel Mounted](media/20191115_090125.jpg)](media/src/20191115_090125.jpg) +[![Reel Mounted](media/20191115_090125.webp)](media/src/20191115_090125.jpg) Following soon after was the reel being mounted to the device also. Attempts were made to use a small DC motor, but with no luck. @@ -100,7 +100,7 @@ Remaining at this point was a means of reeling in the line, a means of depressin *** -[![Plenty of Torque](media/20191118_032416.jpg)](media/src/20191118_032416.jpg) +[![Plenty of Torque](media/20191118_032416.webp)](media/src/20191118_032416.jpg) As it turned out, the very same stepper motor that had once tried to turn our leadscrew now instead would be pressed into service reeling in the line. Overkill, to be sure, and it's power most wastefully used, it did indeed reliably turn our reel, albeit slowly. @@ -110,7 +110,7 @@ This saved the most time 3D printed as compared to a smaller pulley with other p *** -[![It'll Send You Reeling!](media/20191120_224129.jpg)](media/src/20191120_224129.jpg) +[![It'll Send You Reeling!](media/20191120_224129.webp)](media/src/20191120_224129.jpg) Finally, the mechanics of the project were completed, with each component individually power tested, though not yet in tandem with one another. As all of this was coming about, I had also begun getting the electronics in order. diff --git a/content/projects/clickbait/media/20190919_143530.jpg b/content/projects/clickbait/media/20190919_143530.jpg deleted file mode 100644 index 307e4cd..0000000 --- a/content/projects/clickbait/media/20190919_143530.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1cae7acaf11868918e1725445c7bb6ac2de60aeec8dbc48ef7069f7f32ddabf2 -size 140831 diff --git a/content/projects/clickbait/media/20190919_143530.webp b/content/projects/clickbait/media/20190919_143530.webp new file mode 100644 index 0000000..806f2cc --- /dev/null +++ b/content/projects/clickbait/media/20190919_143530.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:385c2886a09f0cd6342c8a1f416dc219e0268b806f628d2713b866e16abe12e5 +size 130746 diff --git a/content/projects/clickbait/media/20190919_213947.jpg b/content/projects/clickbait/media/20190919_213947.jpg deleted file mode 100644 index 8917d59..0000000 --- a/content/projects/clickbait/media/20190919_213947.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b76dbaa8546bf94b17fa0bf8c0c9dac541168a4ff2a8416817bac661fed31103 -size 86734 diff --git a/content/projects/clickbait/media/20190919_213947.webp b/content/projects/clickbait/media/20190919_213947.webp new file mode 100644 index 0000000..57cbb15 --- /dev/null +++ b/content/projects/clickbait/media/20190919_213947.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7554bb595b679dcdc1cd8ce69cfed1ae38497440326d5f7ca3e4833698e9bd9 +size 64690 diff --git a/content/projects/clickbait/media/20190919_224711.jpg b/content/projects/clickbait/media/20190919_224711.jpg deleted file mode 100644 index 27bb22d..0000000 --- a/content/projects/clickbait/media/20190919_224711.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b88c0210b43e6defcf8da52ddda430da468882b73a916a5837f020a59ccc0144 -size 103040 diff --git a/content/projects/clickbait/media/20190919_224711.webp b/content/projects/clickbait/media/20190919_224711.webp new file mode 100644 index 0000000..fb4c50a --- /dev/null +++ b/content/projects/clickbait/media/20190919_224711.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29e65e5651ffec68ab7354376b6e14e60932e67a61115d69bce1ae021638d02e +size 86124 diff --git a/content/projects/clickbait/media/20191003_000323.jpg b/content/projects/clickbait/media/20191003_000323.jpg deleted file mode 100644 index 150a51a..0000000 --- a/content/projects/clickbait/media/20191003_000323.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5025d428017b5f635a58da9660cef6c03d818eed5ade9d2442bb2a75fccd0c2e -size 54177 diff --git a/content/projects/clickbait/media/20191003_000323.webp b/content/projects/clickbait/media/20191003_000323.webp new file mode 100644 index 0000000..f495abf --- /dev/null +++ b/content/projects/clickbait/media/20191003_000323.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fab39c54ad4d2467997ef6889c4af19f7e9dbf9e746ba4e8dfbd3f07c77d7fe4 +size 36438 diff --git a/content/projects/clickbait/media/20191004_160107.jpg b/content/projects/clickbait/media/20191004_160107.jpg deleted file mode 100644 index 62dba7f..0000000 --- a/content/projects/clickbait/media/20191004_160107.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2711cd62acb551ad33f03b7e8bba455efcaffd521cf884cbd70b6f05a7f5eee5 -size 169553 diff --git a/content/projects/clickbait/media/20191004_160107.webp b/content/projects/clickbait/media/20191004_160107.webp new file mode 100644 index 0000000..86b41ef --- /dev/null +++ b/content/projects/clickbait/media/20191004_160107.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc9c8f806658fddb25a0389215f5aaa600d7fe69e2f1f7c51e54462c293ae895 +size 160780 diff --git a/content/projects/clickbait/media/20191010_152148.jpg b/content/projects/clickbait/media/20191010_152148.jpg deleted file mode 100644 index 560c9d7..0000000 --- a/content/projects/clickbait/media/20191010_152148.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fbe63e3d57adcd9402d789af050c486a30c49d2be7ff0966bae160ea1e2e41c6 -size 108934 diff --git a/content/projects/clickbait/media/20191010_152148.webp b/content/projects/clickbait/media/20191010_152148.webp new file mode 100644 index 0000000..f7fe1d1 --- /dev/null +++ b/content/projects/clickbait/media/20191010_152148.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cffcd019569ee550c8215a221f5671e319a67cdf9fb8c18b8714932582c8733f +size 104412 diff --git a/content/projects/clickbait/media/20191025_194859.jpg b/content/projects/clickbait/media/20191025_194859.jpg deleted file mode 100644 index 5212179..0000000 --- a/content/projects/clickbait/media/20191025_194859.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:198678ab6d0614e12493b01bcd4ccd50d98402dca61604088d6ec2cbf0a0feaa -size 112987 diff --git a/content/projects/clickbait/media/20191025_194859.webp b/content/projects/clickbait/media/20191025_194859.webp new file mode 100644 index 0000000..6f21363 --- /dev/null +++ b/content/projects/clickbait/media/20191025_194859.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:214de8aa76f412d5aef542bd460922c63b41b09df390ce902f03f7ae7664bca4 +size 96152 diff --git a/content/projects/clickbait/media/20191102_144426.jpg b/content/projects/clickbait/media/20191102_144426.jpg deleted file mode 100644 index 1f3ebc2..0000000 --- a/content/projects/clickbait/media/20191102_144426.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1b7a48ada611f7d10871cb085f95f866e876da0484e957bcfee9bef0e5f57622 -size 86486 diff --git a/content/projects/clickbait/media/20191102_144426.webp b/content/projects/clickbait/media/20191102_144426.webp new file mode 100644 index 0000000..85acfb1 --- /dev/null +++ b/content/projects/clickbait/media/20191102_144426.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b2668b43702094e4654015b6250f2e6c3c26936219560abb3f4abd33c0f372b +size 62408 diff --git a/content/projects/clickbait/media/20191110_014623.jpg b/content/projects/clickbait/media/20191110_014623.jpg deleted file mode 100644 index 2a58dbe..0000000 --- a/content/projects/clickbait/media/20191110_014623.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f86f0cfbc7ef0c5daab38b43b3039b8aec9aaba95809760b1752957966b9a57b -size 81327 diff --git a/content/projects/clickbait/media/20191110_014623.webp b/content/projects/clickbait/media/20191110_014623.webp new file mode 100644 index 0000000..f871252 --- /dev/null +++ b/content/projects/clickbait/media/20191110_014623.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c68e0d275d0dc4ca8e2dfa8cefdd8eaf8ddc64b5e6905525fd0d0bee6ef4a290 +size 62324 diff --git a/content/projects/clickbait/media/20191110_072012.jpg b/content/projects/clickbait/media/20191110_072012.jpg deleted file mode 100644 index e8ddb98..0000000 --- a/content/projects/clickbait/media/20191110_072012.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bbbd9e6dc23f23a0e55660415e412c7ee661dca85bf00cb0293273f4f71b0003 -size 68525 diff --git a/content/projects/clickbait/media/20191110_072012.webp b/content/projects/clickbait/media/20191110_072012.webp new file mode 100644 index 0000000..6498783 --- /dev/null +++ b/content/projects/clickbait/media/20191110_072012.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b7d077e91e8a071c9bb17a750e6ec7d3ec8dbf3024cbcdfde1af082b7edc314 +size 42354 diff --git a/content/projects/clickbait/media/20191115_090125.jpg b/content/projects/clickbait/media/20191115_090125.jpg deleted file mode 100644 index 2cd71ca..0000000 --- a/content/projects/clickbait/media/20191115_090125.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1f7716962300633d38468746730303545b9575d7fd14701f5bcc27083c8be22b -size 318285 diff --git a/content/projects/clickbait/media/20191115_090125.webp b/content/projects/clickbait/media/20191115_090125.webp new file mode 100644 index 0000000..2c1cf25 --- /dev/null +++ b/content/projects/clickbait/media/20191115_090125.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61487127dead20eedb314b4908c01e680bd6854fda59377a2a209c1021bf5c37 +size 378218 diff --git a/content/projects/clickbait/media/20191118_032416.jpg b/content/projects/clickbait/media/20191118_032416.jpg deleted file mode 100644 index 4fc6897..0000000 --- a/content/projects/clickbait/media/20191118_032416.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:566b21ffc13fb06331edf490ca21ac2dabcdbed5421c75a275d023a745a57a69 -size 155925 diff --git a/content/projects/clickbait/media/20191118_032416.webp b/content/projects/clickbait/media/20191118_032416.webp new file mode 100644 index 0000000..df2b111 --- /dev/null +++ b/content/projects/clickbait/media/20191118_032416.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c196531795142cff21044b93c98cb41cb79de6ae0ad23f56b351fa1ad0c5980 +size 134898 diff --git a/content/projects/clickbait/media/20191120_224129.jpg b/content/projects/clickbait/media/20191120_224129.jpg deleted file mode 100644 index 65fc522..0000000 --- a/content/projects/clickbait/media/20191120_224129.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:753dbf6c9d9dd3bfccb44222a56e2d0d10f9dfc9b99644e9c0f6499066b2417a -size 126789 diff --git a/content/projects/clickbait/media/20191120_224129.webp b/content/projects/clickbait/media/20191120_224129.webp new file mode 100644 index 0000000..d55e6bc --- /dev/null +++ b/content/projects/clickbait/media/20191120_224129.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d57fbdc4c5a14d113c78d9f61d71739a01c0c48f9cf6f5a663db24624e75748 +size 106018 diff --git a/content/projects/midiMixerV1/index.md b/content/projects/midiMixerV1/index.md index 4cecda9..e3f28d7 100644 --- a/content/projects/midiMixerV1/index.md +++ b/content/projects/midiMixerV1/index.md @@ -2,7 +2,7 @@ title: "midiMixer - A simple Arduino powered MIDI potentiometer bank" date: "2020-05-06" author: "William Floyd" -featured_image: "media/v1/20200506_152408.jpg" +featured_image: "media/v1/20200506_152408.webp" categories: [ "Hardware", "PCB", @@ -27,12 +27,12 @@ But in the back of my head I still wanted to build some hardware to help with th *** -[![Orange Sherbert Dreams](media/handwired/20190811_004928.jpg)](media/src/handwired/20190811_004928.jpg) +[![Orange Sherbert Dreams](media/handwired/20190811_004928.webp)](media/src/handwired/20190811_004928.jpg) This eventually came about in the summer of 2019, when I finally hand-wired a simple 8 knob control surface. Truth be told, I actually built two. -The [first one](media/handwired/20190811_005806.jpg) had some issues (I wonder why...?), and would sporadically jitter values. -The [second one](media/handwired/20190812_181606.jpg) worked correctly, having been [wired](media/handwired/20190811_195900.jpg) much more [carefully](media/handwired/20190811_200447.jpg). +The [first one](media/handwired/20190811_005806.webp) had some issues (I wonder why...?), and would sporadically jitter values. +The [second one](media/handwired/20190812_181606.webp) worked correctly, having been [wired](media/handwired/20190811_195900.webp) much more [carefully](media/handwired/20190811_200447.webp). Still, it was lacking professionalism, polish, and most importantly, robustness. The sandwich of 22AWG wire, cardstock and PCB was less than sturdy, so I promptly packed it away and never used it. @@ -41,28 +41,28 @@ This would come to change, however, in April of 2020. *** -[![It's Not Easy, Being Green](media/v1/20200506_152328.jpg)](media/src/v1/20200506_152328.jpg) +[![It's Not Easy, Being Green](media/v1/20200506_152328.webp)](media/src/v1/20200506_152328.jpg) -[![Look Mum, Open Hardware!](media/v1/20200506_152317.jpg)](media/src/v1/20200506_152317.jpg) +[![Look Mum, Open Hardware!](media/v1/20200506_152317.webp)](media/src/v1/20200506_152317.jpg) Fast forward close to a year, and here we are - toilet paper is the currency of the quickly collapsing Covid19 crazed world, and I'm back with my grandparents for the remainder of my semester (which, as of writing, is all but concluded). Finding my lack of a social life leaving me with a little bit more free time, and being home yielding a *lot* more distractions, I learned the basics of KiCAD from YouTube, and set out to design a simple PCB. My old MIDI controller project came to mind, so I set myself to it, and within a few days had my first Gerber files sent off to JLCPCB. In reality, I should have waited a bit and done a couple more design iterations before committing, but I guess $7 is the price of impatience. -[![One In Hand](media/v1/20200506_151852.jpg)](media/src/v1/20200506_151852.jpg) +[![One In Hand](media/v1/20200506_151852.webp)](media/src/v1/20200506_151852.jpg) So it was that my crisp PCBs showed up 3 weeks later - I had one assembled within the hour, and my old code dusted off and flashed within two hours. -It's really as simple as it gets - a [Pro Micro](media/v1/20200506_152023.jpg) hooked up to a [4051 analogue multiplexer](media/v1/20200506_152016.jpg), in turn hooked up to 8 potentiometers. +It's really as simple as it gets - a [Pro Micro](media/v1/20200506_152023.webp) hooked up to a [4051 analogue multiplexer](media/v1/20200506_152016.webp), in turn hooked up to 8 potentiometers. The potentiometers I had on hand ended up being a bit different than the footprints I had used, so I ended up having to clip the mounting tabs off of them. -This, as one might imagine, made them extraordinarily flimsy, so I designed and printed a couple clamps to [align](media/v1/20200506_151947.jpg) and [hold solid](media/v1/20200506_152003.jpg) the potentiometers. +This, as one might imagine, made them extraordinarily flimsy, so I designed and printed a couple clamps to [align](media/v1/20200506_151947.webp) and [hold solid](media/v1/20200506_152003.webp) the potentiometers. These also have the added benefit of keeping the soldered pins off of whatever surface the mixer is on. Should the correct potentiometers be used, these would not be needed, though some feet or a case for the PCB would still be best. *** -[![It Ain't Much, But I'm Proud](media/v1/20200506_152248.jpg)](media/src/v1/20200506_152248.jpg) +[![It Ain't Much, But I'm Proud](media/v1/20200506_152248.webp)](media/src/v1/20200506_152248.jpg) This being my first PCB design, I am quite happy it worked out so well - I am studying for Mechanical Engineering, not Electrical... However, I see room for improvement. @@ -71,4 +71,4 @@ The knobs barely clear the Arduino, and the Arduino is mounted far higher off th I see myself making a v2 in due course - perhaps next time I will try JLCPCB's SMT assembly? I imagine adding indicator LEDs, improving the layout, and adding a button to switch between banks would make this much more useful. -[![That Hair Is Bothering Me](media/v1/20200506_151947.jpg)](media/src/v1/20200506_151947.jpg) \ No newline at end of file +[![That Hair Is Bothering Me](media/v1/20200506_151947.webp)](media/src/v1/20200506_151947.jpg) \ No newline at end of file diff --git a/content/projects/midiMixerV1/media/handwired/20190811_004928.jpg b/content/projects/midiMixerV1/media/handwired/20190811_004928.jpg deleted file mode 100644 index 79d68aa..0000000 --- a/content/projects/midiMixerV1/media/handwired/20190811_004928.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5e18fe67bc44e5c327b0d879c56f527e406a9cbb72927c8de1b6ec6d20c5949e -size 48206 diff --git a/content/projects/midiMixerV1/media/handwired/20190811_004928.webp b/content/projects/midiMixerV1/media/handwired/20190811_004928.webp new file mode 100644 index 0000000..83aded0 --- /dev/null +++ b/content/projects/midiMixerV1/media/handwired/20190811_004928.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14deba1bf3ad919a7d8f69ab1f6c9affd5b8fd1e26ab2391a94f1b7ac5fbc5e0 +size 30062 diff --git a/content/projects/midiMixerV1/media/handwired/20190811_005806.jpg b/content/projects/midiMixerV1/media/handwired/20190811_005806.jpg deleted file mode 100644 index 651b87d..0000000 --- a/content/projects/midiMixerV1/media/handwired/20190811_005806.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:18fb3d16a68267734f44e3d1bd76477aa5388efc7bf9ae1fc3ba7a22d7ec0a91 -size 106041 diff --git a/content/projects/midiMixerV1/media/handwired/20190811_005806.webp b/content/projects/midiMixerV1/media/handwired/20190811_005806.webp new file mode 100644 index 0000000..8c459dd --- /dev/null +++ b/content/projects/midiMixerV1/media/handwired/20190811_005806.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e6240f8af82aa4c826018d5bde853e1493f96b7fc027b3bea195f90f00cd555 +size 77932 diff --git a/content/projects/midiMixerV1/media/handwired/20190811_195900.jpg b/content/projects/midiMixerV1/media/handwired/20190811_195900.jpg deleted file mode 100644 index ab6ffbf..0000000 --- a/content/projects/midiMixerV1/media/handwired/20190811_195900.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1a77d3f15c524d4e80d186de67615517bb33a2148dd0b0ea770d5f0f551b22aa -size 65215 diff --git a/content/projects/midiMixerV1/media/handwired/20190811_195900.webp b/content/projects/midiMixerV1/media/handwired/20190811_195900.webp new file mode 100644 index 0000000..f57cc8f --- /dev/null +++ b/content/projects/midiMixerV1/media/handwired/20190811_195900.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3aa194a3d8bd39efaec417c654c315a64fe122a3698ddd1432543045fe6c1d26 +size 44156 diff --git a/content/projects/midiMixerV1/media/handwired/20190811_200447.jpg b/content/projects/midiMixerV1/media/handwired/20190811_200447.jpg deleted file mode 100644 index dbf6f1e..0000000 --- a/content/projects/midiMixerV1/media/handwired/20190811_200447.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1560a1db9950c2672049d18f2f5c6f265241d383e77a8ec938fcbf39e8578c3d -size 75144 diff --git a/content/projects/midiMixerV1/media/handwired/20190811_200447.webp b/content/projects/midiMixerV1/media/handwired/20190811_200447.webp new file mode 100644 index 0000000..864cba5 --- /dev/null +++ b/content/projects/midiMixerV1/media/handwired/20190811_200447.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b982685dd834fe3634e5a2a055498502d8e641b33fbea1ce016c764422ded18 +size 52846 diff --git a/content/projects/midiMixerV1/media/handwired/20190812_175132.jpg b/content/projects/midiMixerV1/media/handwired/20190812_175132.jpg deleted file mode 100644 index 8739ac6..0000000 --- a/content/projects/midiMixerV1/media/handwired/20190812_175132.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a7fe85abfb8223d048b5616571c3e0f432f3b394f2e30f0222b1c9b1b2106ebd -size 127714 diff --git a/content/projects/midiMixerV1/media/handwired/20190812_175132.webp b/content/projects/midiMixerV1/media/handwired/20190812_175132.webp new file mode 100644 index 0000000..560af51 --- /dev/null +++ b/content/projects/midiMixerV1/media/handwired/20190812_175132.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f269fb189365a652052e93c09b5c6cb2b6101e0b58e4056e55033d65fe0dd2b8 +size 111370 diff --git a/content/projects/midiMixerV1/media/handwired/20190812_181606.jpg b/content/projects/midiMixerV1/media/handwired/20190812_181606.jpg deleted file mode 100644 index d2768f8..0000000 --- a/content/projects/midiMixerV1/media/handwired/20190812_181606.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a54a1b545e0b0018c6e772cf2922927a54f2f6024af2e6f31e58f85e81dad519 -size 72855 diff --git a/content/projects/midiMixerV1/media/handwired/20190812_181606.webp b/content/projects/midiMixerV1/media/handwired/20190812_181606.webp new file mode 100644 index 0000000..633561e --- /dev/null +++ b/content/projects/midiMixerV1/media/handwired/20190812_181606.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8747733319541776c1237c299cf073060bbc00963bdf6af59546567678a430c3 +size 49218 diff --git a/content/projects/midiMixerV1/media/v1/20200506_151852.jpg b/content/projects/midiMixerV1/media/v1/20200506_151852.jpg deleted file mode 100644 index df93dcb..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_151852.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9925363befb2723ee8db86c1368e706e3b0231246d8c05463ea2f5c9abf5a0ee -size 65354 diff --git a/content/projects/midiMixerV1/media/v1/20200506_151852.webp b/content/projects/midiMixerV1/media/v1/20200506_151852.webp new file mode 100644 index 0000000..a9e90bf --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_151852.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48c4874a87115c035e53e682b9cf95b99eccb0bd84318ca4209a9056a46aa2f9 +size 49784 diff --git a/content/projects/midiMixerV1/media/v1/20200506_151901.jpg b/content/projects/midiMixerV1/media/v1/20200506_151901.jpg deleted file mode 100644 index 1f5e9ac..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_151901.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4ad571fcfdff77c25cea2eba6d38bac8f34af59077b565024314997b5ccac31e -size 36838 diff --git a/content/projects/midiMixerV1/media/v1/20200506_151901.webp b/content/projects/midiMixerV1/media/v1/20200506_151901.webp new file mode 100644 index 0000000..37548a7 --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_151901.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a628be367a2e6db15e81b912234337ffa4ce9bc54bd963d20d67e84c57894f6d +size 25008 diff --git a/content/projects/midiMixerV1/media/v1/20200506_151909.jpg b/content/projects/midiMixerV1/media/v1/20200506_151909.jpg deleted file mode 100644 index 3eeb008..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_151909.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bb571ea477809bd1f8058891334564dfc84b24855fff9244e13b2267910a79bc -size 40884 diff --git a/content/projects/midiMixerV1/media/v1/20200506_151909.webp b/content/projects/midiMixerV1/media/v1/20200506_151909.webp new file mode 100644 index 0000000..aca1dfd --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_151909.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:597f618c07ec8d31d2e16389cf8ce941f179bc85e71b4024154e0d7b86c84517 +size 28472 diff --git a/content/projects/midiMixerV1/media/v1/20200506_151947.jpg b/content/projects/midiMixerV1/media/v1/20200506_151947.jpg deleted file mode 100644 index 011f46c..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_151947.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:903ce23fec3724b92daa6585dcce0e75e84d671c52a14a9695a19beef9721ef8 -size 39888 diff --git a/content/projects/midiMixerV1/media/v1/20200506_151947.webp b/content/projects/midiMixerV1/media/v1/20200506_151947.webp new file mode 100644 index 0000000..fc31b0c --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_151947.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca50b577fbbb20994d5d90d9f33584350403c8186c0238f124ddf3eb0116d266 +size 26182 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152003.jpg b/content/projects/midiMixerV1/media/v1/20200506_152003.jpg deleted file mode 100644 index 5f09c32..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_152003.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a5236d8a4b20dae2e6f9e3d289beea54b2e7789d496506743697c72844a2031d -size 40327 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152003.webp b/content/projects/midiMixerV1/media/v1/20200506_152003.webp new file mode 100644 index 0000000..6ec8bb7 --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_152003.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:427b07f2b137ab0bf90ba41513c821f52426ab61089018dc406ec3bcde061e36 +size 24602 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152016.jpg b/content/projects/midiMixerV1/media/v1/20200506_152016.jpg deleted file mode 100644 index e5ea834..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_152016.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:df0d86c900f3556da0973f41c6ae8b7d6c7527a2d12e0950af45fb13101198d7 -size 77067 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152016.webp b/content/projects/midiMixerV1/media/v1/20200506_152016.webp new file mode 100644 index 0000000..4d66bd7 --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_152016.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15a964d6c9ea519abe3d09cdfa3f07a415ca1e48f866f619c3f4fae8ab48a576 +size 51114 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152023.jpg b/content/projects/midiMixerV1/media/v1/20200506_152023.jpg deleted file mode 100644 index 655f057..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_152023.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5f96525ad6a8553cdece3529fc93a5c449619382ae328558929a038c4d2bb243 -size 83923 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152023.webp b/content/projects/midiMixerV1/media/v1/20200506_152023.webp new file mode 100644 index 0000000..4cbeee3 --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_152023.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05f786d1aebe8d669faf27a1e1563a7730b877ca0c9743cd9af8b0a28050239a +size 69548 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152248.jpg b/content/projects/midiMixerV1/media/v1/20200506_152248.jpg deleted file mode 100644 index 3bb6c5a..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_152248.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7b566f6d2f47c3acc9fee5f8e7aaf28e71c2a573b205ed06300b68415b0cb62c -size 56718 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152248.webp b/content/projects/midiMixerV1/media/v1/20200506_152248.webp new file mode 100644 index 0000000..285073d --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_152248.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0f89873aa91cbb1ae1efafaf7c8b8551a11fb3ec9baa5bb8d0a96e279f0cd3a +size 38706 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152317.jpg b/content/projects/midiMixerV1/media/v1/20200506_152317.jpg deleted file mode 100644 index 5dbbf92..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_152317.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bfd0d0cefbed81a77327b5f2e547cdb130f9f11dce64e939d88adae0b77cdaca -size 48471 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152317.webp b/content/projects/midiMixerV1/media/v1/20200506_152317.webp new file mode 100644 index 0000000..92be9ed --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_152317.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b0a105368cb0ab70b58986aae7bb913167a35d4d2c341336d11357080cc845d +size 30444 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152328.jpg b/content/projects/midiMixerV1/media/v1/20200506_152328.jpg deleted file mode 100644 index eb15f0c..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_152328.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:50aa49474ebe148cf57ab120398baf0ca9b4e9e446304713a56d48461c1b632c -size 60798 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152328.webp b/content/projects/midiMixerV1/media/v1/20200506_152328.webp new file mode 100644 index 0000000..162a1e4 --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_152328.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35f6deac41f0a4ce035a28c7ee486b5633599e816fd6384a08f156bc52888df7 +size 37446 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152408.jpg b/content/projects/midiMixerV1/media/v1/20200506_152408.jpg deleted file mode 100644 index dae8cd1..0000000 --- a/content/projects/midiMixerV1/media/v1/20200506_152408.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8e5c93ecd429272c92d7b29eba9ac54163eb7d31665627bb60dd9e756e1cd695 -size 77133 diff --git a/content/projects/midiMixerV1/media/v1/20200506_152408.webp b/content/projects/midiMixerV1/media/v1/20200506_152408.webp new file mode 100644 index 0000000..a339f5a --- /dev/null +++ b/content/projects/midiMixerV1/media/v1/20200506_152408.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3141d8f8bd81c78a1336bfa934e5ff8d490597ad3ec44981b83dbf81c5d13329 +size 63116 diff --git a/content/projects/pen-plotter/index.md b/content/projects/pen-plotter/index.md index b0eed77..30b96cc 100644 --- a/content/projects/pen-plotter/index.md +++ b/content/projects/pen-plotter/index.md @@ -2,7 +2,7 @@ title: "$20 pen plotter" date: "2021-12-26" author: "William Floyd" -featured_image: "media/20190430_053508.jpg" +featured_image: "media/20190430_053508.webp" categories: [ "Hardware", "Electronics", @@ -23,8 +23,8 @@ Here are some photos mostly of the final results *** -[![](media/20190430_053508.jpg)](media/src/20190430_053508.jpg) +[![](media/20190430_053508.webp)](media/src/20190430_053508.jpg) -[![](media/20190430_062452.jpg)](media/src/20190430_062452.jpg) +[![](media/20190430_062452.webp)](media/src/20190430_062452.jpg) -[![](media/20190430_053503.jpg)](media/src/20190430_053503.jpg) \ No newline at end of file +[![](media/20190430_053503.webp)](media/src/20190430_053503.jpg) \ No newline at end of file diff --git a/content/projects/pen-plotter/media/20190430_053503.jpg b/content/projects/pen-plotter/media/20190430_053503.jpg deleted file mode 100644 index dd73440..0000000 --- a/content/projects/pen-plotter/media/20190430_053503.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0a88e22f020f3894547564c09b971778c8623da0f3aabd8748962448dd4bd882 -size 184261 diff --git a/content/projects/pen-plotter/media/20190430_053503.webp b/content/projects/pen-plotter/media/20190430_053503.webp new file mode 100644 index 0000000..789b931 --- /dev/null +++ b/content/projects/pen-plotter/media/20190430_053503.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1039382ec9d379e2105f62280b8ff3df73209479a73c9ab80d7588aa05918bab +size 165282 diff --git a/content/projects/pen-plotter/media/20190430_053508.jpg b/content/projects/pen-plotter/media/20190430_053508.jpg deleted file mode 100644 index 9fb4f32..0000000 --- a/content/projects/pen-plotter/media/20190430_053508.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ad733312f51d696b4bc5114b3fef849b199303410b069d470dd7ff569016cec3 -size 174157 diff --git a/content/projects/pen-plotter/media/20190430_053508.webp b/content/projects/pen-plotter/media/20190430_053508.webp new file mode 100644 index 0000000..71b0528 --- /dev/null +++ b/content/projects/pen-plotter/media/20190430_053508.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b11ed1ebc044537d668e9848e5a650e3a4da3f6725eb25852fc36707e0fb007a +size 156094 diff --git a/content/projects/pen-plotter/media/20190430_062452.jpg b/content/projects/pen-plotter/media/20190430_062452.jpg deleted file mode 100644 index 5208b81..0000000 --- a/content/projects/pen-plotter/media/20190430_062452.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e641cb1d620e1ecb6d2fb6a186e5803fbfa3bb15b3b945eb07b57b632eb9b6e7 -size 185166 diff --git a/content/projects/pen-plotter/media/20190430_062452.webp b/content/projects/pen-plotter/media/20190430_062452.webp new file mode 100644 index 0000000..bae71ee --- /dev/null +++ b/content/projects/pen-plotter/media/20190430_062452.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:045c372b7411ba52912cd3b49a6cd9d0d1543e046f44f5be59e8e7da1e27eec8 +size 180954 diff --git a/src/images_build.sh b/src/images_build.sh index a50cee3..9c84ead 100755 --- a/src/images_build.sh +++ b/src/images_build.sh @@ -11,6 +11,7 @@ export PATH __needed_programs='convert identify jpegoptim +img2webp fdp zopflipng bc' @@ -254,11 +255,11 @@ __process() { __process_scripts if [ "${PROCESS_JPEG}" == 'true' ]; then - __process_generic_image jpeg + __process_generic_image jpeg lossy fi if [ "${PROCESS_PNG}" == 'true' ]; then - __process_generic_image png + __process_generic_image png lossless fi } @@ -273,13 +274,15 @@ __find_png() { __process_generic_image() { + __mode="${2}" + __unset_unused "${1}" "__find_${1}" | while read -r __source_file; do export FILE_HASH="$(md5sum "${__source_file}")" - __target="$(sed 's|^\./src/|./|' <<<"${__source_file}")" + __target="$(sed -e 's|^\./src/|./|' -e 's/[^\.]*$/webp/' <<<"${__source_file}")" if ! __check_file "${__source_file}"; then @@ -300,22 +303,28 @@ __process_generic_image() { __print_env + __convert_options=("-auto-orient" "-quality" "50") + + if [ "${__mode}" == 'lossless' ]; then + __convert_options+=("-define" "webp:lossless=true") + else + __convert_options+=() + fi + if ( [ "${!__img_rescale}" == 'true' ] ) || ( [ "${!__img_rescale}" == 'auto' ] && [ "$(identify -format '(%w*%h)/1000\n' "${__source_file}" | bc)" -gt "${!__img_rescale_threshold}" ] ); then - "__rescale_${1}" "${__source_file}" "${__target}" - else - cp "${__source_file}" "${__target}" + + __convert_options+=("-resize" "$((__img_rescale_threshold*1000))@>") + fi - __img_optimize="${1^^}_OPTIMIZE" + echo "${__convert_options[@]}" - if [ "${!__img_optimize}" == 'true' ]; then - "__optimize_${1}" "${__target}" - fi + convert "${__source_file}" ${__convert_options[@]} "${__target}" fi @@ -327,44 +336,6 @@ __process_generic_image() { } -__rescale_jpeg() { - convert "${1}" -quality "${JPEG_QUALITY}" -auto-orient -resize "${JPEG_SCALE}"% "${2}" -} - -__optimize_jpeg() { - jpegoptim -s "${1}" 1>/dev/null -} - -__rescale_png() { - convert "${1}" -quality "${PNG_QUALITY}" -auto-orient -resize "${PNG_SCALE}"% "${2}" -} - -__optimize_png() { - - local __options='' - - case "${PNG_EFFORT}" in - 'quick') - __options='-q' - ;; - 'default') - __options='' - ;; - 'more') - __options='-m' - ;; - 'placebo') - __options='--iterations=500 --filters=01234mepb --lossy_8bit --lossy_transparent' - ;; - *) - echo "Unknown PNG_EFFORT option '${PNG_EFFORT}', defaulting to 'quick'" - __options='-q' - ;; - esac - - zopflipng -y ${__options} "${1}" "${1}" -} - __process_scripts() { __unset_unused SCRIPT @@ -433,7 +404,7 @@ __check_file() { if [ "${#}" == '0' ]; then - __targets="$(sed 's|^\./src/|./|' <<<"${__source}")" + __targets="$(sed -e 's|^\./src/|./|' -e 's/[^\.]*$/webp/' <<<"${__source_file}")" else