Added the ESP Medicine post for a Monday morning release.

This commit is contained in:
Norm Rasmussen
2023-10-16 12:47:54 -04:00
parent 64816d8c0d
commit 281a95d3fc
22 changed files with 1181 additions and 18 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

View File

@ -141,6 +141,20 @@ if (!doNotTrack) {
</footer>
</article>
<article class="post-entry">
<figure class="entry-cover"><img loading="lazy" src="./esp_medicine_indicator.png" alt="ESP8266 Logo with a Medicine Icon, Colorized">
</figure>
<header class="entry-header">
<h2>ESP8266 Medicine Indicator Light
</h2>
</header>
<div class="entry-content">
<p>This is a quick treat! We recently learned that one of our children needs to take medicine twice a day for the foreseeable future. Hes too young to take it on his own, so the twice-a-day responsibility is split up between my partner and I. However, sometimes our schedules dont overlap so succinctly, so we needed some sort of indicator to let the other know if the previous dose was (or wasnt!...</p>
</div>
<footer class="entry-footer"><span title='2023-10-16 11:34:14 -0400 EDT'>October 16, 2023</span>&nbsp;·&nbsp;6 min&nbsp;·&nbsp;1170 words&nbsp;·&nbsp;Me</footer>
<a class="entry-link" aria-label="post link to ESP8266 Medicine Indicator Light" href="./posts/medicine_indicator_light.html"></a>
</article>
<article class="post-entry">
<figure class="entry-cover"><img loading="lazy" src="./birdnet-homeassistant-part2.png" alt="Part 2 of my foray into HomeAssistant dashboard featuring BirdNET-Pi Sensors">
</figure>

View File

@ -6,7 +6,16 @@
<description>Recent content on Norm-working Packets 💾</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<lastBuildDate>Wed, 04 Oct 2023 10:35:23 -0400</lastBuildDate><atom:link href="/index.xml" rel="self" type="application/rss+xml" />
<lastBuildDate>Mon, 16 Oct 2023 11:34:14 -0400</lastBuildDate><atom:link href="/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>ESP8266 Medicine Indicator Light</title>
<link>/posts/medicine_indicator_light.html</link>
<pubDate>Mon, 16 Oct 2023 11:34:14 -0400</pubDate>
<guid>/posts/medicine_indicator_light.html</guid>
<description>Learn how to make an ESP8266 and a few simple components into an indicator light.</description>
</item>
<item>
<title>BirdNET-PI &amp; HomeAssistant: Part 2</title>
<link>/posts/birdnet_homeassistant_part2.html</link>

View File

@ -115,6 +115,20 @@ if (!doNotTrack) {
</h1>
</header>
<article class="post-entry">
<figure class="entry-cover"><img loading="lazy" src="./esp_medicine_indicator.png" alt="ESP8266 Logo with a Medicine Icon, Colorized">
</figure>
<header class="entry-header">
<h2>ESP8266 Medicine Indicator Light
</h2>
</header>
<div class="entry-content">
<p>This is a quick treat! We recently learned that one of our children needs to take medicine twice a day for the foreseeable future. Hes too young to take it on his own, so the twice-a-day responsibility is split up between my partner and I. However, sometimes our schedules dont overlap so succinctly, so we needed some sort of indicator to let the other know if the previous dose was (or wasnt!...</p>
</div>
<footer class="entry-footer"><span title='2023-10-16 11:34:14 -0400 EDT'>October 16, 2023</span>&nbsp;·&nbsp;6 min&nbsp;·&nbsp;1170 words&nbsp;·&nbsp;Me</footer>
<a class="entry-link" aria-label="post link to ESP8266 Medicine Indicator Light" href="./posts/medicine_indicator_light.html"></a>
</article>
<article class="post-entry">
<figure class="entry-cover"><img loading="lazy" src="./birdnet-homeassistant-part2.png" alt="Part 2 of my foray into HomeAssistant dashboard featuring BirdNET-Pi Sensors">
</figure>

View File

@ -822,6 +822,11 @@ anywhere!</p>
<li><a href="../tags/selfhosted.html">selfhosted</a></li>
</ul>
<nav class="paginav">
<a class="prev" href="../posts/medicine_indicator_light.html">
<span class="title">« Prev</span>
<br>
<span>ESP8266 Medicine Indicator Light</span>
</a>
<a class="next" href="../posts/birdnet_homeassistant.html">
<span class="title">Next »</span>
<br>

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 MiB

View File

@ -6,7 +6,16 @@
<description>Recent content in Posts on Norm-working Packets 💾</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<lastBuildDate>Wed, 04 Oct 2023 10:35:23 -0400</lastBuildDate><atom:link href="/posts/index.xml" rel="self" type="application/rss+xml" />
<lastBuildDate>Mon, 16 Oct 2023 11:34:14 -0400</lastBuildDate><atom:link href="/posts/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>ESP8266 Medicine Indicator Light</title>
<link>/posts/medicine_indicator_light.html</link>
<pubDate>Mon, 16 Oct 2023 11:34:14 -0400</pubDate>
<guid>/posts/medicine_indicator_light.html</guid>
<description>Learn how to make an ESP8266 and a few simple components into an indicator light.</description>
</item>
<item>
<title>BirdNET-PI &amp; HomeAssistant: Part 2</title>
<link>/posts/birdnet_homeassistant_part2.html</link>

File diff suppressed because one or more lines are too long

View File

@ -2,29 +2,38 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>/tags/diy.html</loc>
<lastmod>2023-10-16T11:34:14-04:00</lastmod>
</url><url>
<loc>/tags/esp.html</loc>
<lastmod>2023-10-16T11:34:14-04:00</lastmod>
</url><url>
<loc>/posts/medicine_indicator_light.html</loc>
<lastmod>2023-10-16T11:34:14-04:00</lastmod>
</url><url>
<loc>/</loc>
<lastmod>2023-10-16T11:34:14-04:00</lastmod>
</url><url>
<loc>/posts.html</loc>
<lastmod>2023-10-16T11:34:14-04:00</lastmod>
</url><url>
<loc>/tags.html</loc>
<lastmod>2023-10-16T11:34:14-04:00</lastmod>
</url><url>
<loc>/tags/tutorial.html</loc>
<lastmod>2023-10-16T11:34:14-04:00</lastmod>
</url><url>
<loc>/posts/birdnet_homeassistant_part2.html</loc>
<lastmod>2023-10-04T10:35:23-04:00</lastmod>
</url><url>
<loc>/categories.html</loc>
<lastmod>2023-10-04T10:35:23-04:00</lastmod>
</url><url>
<loc>/tags/diy.html</loc>
<lastmod>2023-10-04T10:35:23-04:00</lastmod>
</url><url>
<loc>/tags/homeassistant.html</loc>
<lastmod>2023-10-04T10:35:23-04:00</lastmod>
</url><url>
<loc>/</loc>
<lastmod>2023-10-04T10:35:23-04:00</lastmod>
</url><url>
<loc>/posts.html</loc>
<lastmod>2023-10-04T10:35:23-04:00</lastmod>
</url><url>
<loc>/tags/selfhosted.html</loc>
<lastmod>2023-10-04T10:35:23-04:00</lastmod>
</url><url>
<loc>/tags.html</loc>
<lastmod>2023-10-04T10:35:23-04:00</lastmod>
</url><url>
<loc>/categories/tutorial.html</loc>
<lastmod>2023-10-04T10:35:23-04:00</lastmod>

View File

@ -106,7 +106,10 @@ if (!doNotTrack) {
<a href="./tags/commandline.html">commandline <sup><strong><sup>3</sup></strong></sup> </a>
</li>
<li>
<a href="./tags/diy.html">diy <sup><strong><sup>3</sup></strong></sup> </a>
<a href="./tags/diy.html">diy <sup><strong><sup>4</sup></strong></sup> </a>
</li>
<li>
<a href="./tags/esp.html">esp <sup><strong><sup>1</sup></strong></sup> </a>
</li>
<li>
<a href="./tags/git.html">git <sup><strong><sup>4</sup></strong></sup> </a>
@ -123,6 +126,9 @@ if (!doNotTrack) {
<li>
<a href="./tags/selfhosted.html">selfhosted <sup><strong><sup>1</sup></strong></sup> </a>
</li>
<li>
<a href="./tags/tutorial.html">tutorial <sup><strong><sup>1</sup></strong></sup> </a>
</li>
</ul>
</main>

View File

@ -100,6 +100,20 @@ if (!doNotTrack) {
</h1>
</header>
<article class="post-entry tag-entry">
<figure class="entry-cover"><img loading="lazy" src="../esp_medicine_indicator.png" alt="ESP8266 Logo with a Medicine Icon, Colorized">
</figure>
<header class="entry-header">
<h2>ESP8266 Medicine Indicator Light
</h2>
</header>
<div class="entry-content">
<p>This is a quick treat! We recently learned that one of our children needs to take medicine twice a day for the foreseeable future. Hes too young to take it on his own, so the twice-a-day responsibility is split up between my partner and I. However, sometimes our schedules dont overlap so succinctly, so we needed some sort of indicator to let the other know if the previous dose was (or wasnt!...</p>
</div>
<footer class="entry-footer"><span title='2023-10-16 11:34:14 -0400 EDT'>October 16, 2023</span>&nbsp;·&nbsp;6 min&nbsp;·&nbsp;1170 words&nbsp;·&nbsp;Me</footer>
<a class="entry-link" aria-label="post link to ESP8266 Medicine Indicator Light" href="../posts/medicine_indicator_light.html"></a>
</article>
<article class="post-entry tag-entry">
<figure class="entry-cover"><img loading="lazy" src="../birdnet-homeassistant-part2.png" alt="Part 2 of my foray into HomeAssistant dashboard featuring BirdNET-Pi Sensors">
</figure>

View File

@ -6,7 +6,16 @@
<description>Recent content in diy on Norm-working Packets 💾</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<lastBuildDate>Wed, 04 Oct 2023 10:35:23 -0400</lastBuildDate><atom:link href="/tags/diy/index.xml" rel="self" type="application/rss+xml" />
<lastBuildDate>Mon, 16 Oct 2023 11:34:14 -0400</lastBuildDate><atom:link href="/tags/diy/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>ESP8266 Medicine Indicator Light</title>
<link>/posts/medicine_indicator_light.html</link>
<pubDate>Mon, 16 Oct 2023 11:34:14 -0400</pubDate>
<guid>/posts/medicine_indicator_light.html</guid>
<description>Learn how to make an ESP8266 and a few simple components into an indicator light.</description>
</item>
<item>
<title>BirdNET-PI &amp; HomeAssistant: Part 2</title>
<link>/posts/birdnet_homeassistant_part2.html</link>

188
public/tags/esp.html Normal file
View File

@ -0,0 +1,188 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>esp | Norm-working Packets 💾</title>
<meta name="keywords" content="">
<meta name="description" content="A semi-technical blog &amp; series of experiences working in tech and my homelab">
<meta name="author" content="Norm Rasmussen">
<link rel="canonical" href="../tags/esp.html">
<link crossorigin="anonymous" href="../assets/css/stylesheet.5cfc680b1eeaeef9efbced92d46c2a9e876b72ee14fba85846afc4cff9e6e6f8.css" integrity="sha256-XPxoCx7q7vnvvO2S1Gwqnodrcu4U&#43;6hYRq/Ez/nm5vg=" rel="preload stylesheet" as="style">
<link rel="icon" href="../favicon.ico">
<link rel="icon" type="image/png" sizes="16x16" href="../favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="../rsmsncircles.ico">
<link rel="apple-touch-icon" href="../apple-touch-icon.png">
<link rel="mask-icon" href="../safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" type="application/rss+xml" href="../tags/esp/index.xml">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
</noscript>
<script async src="https://www.googletagmanager.com/gtag/js?id=G-X8VR5M0K20"></script>
<script>
var doNotTrack = false;
if (!doNotTrack) {
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-X8VR5M0K20', { 'anonymize_ip': false });
}
</script>
<meta property="og:title" content="esp" />
<meta property="og:description" content="A semi-technical blog &amp; series of experiences working in tech and my homelab" />
<meta property="og:type" content="website" />
<meta property="og:url" content="/tags/esp.html" /><meta property="og:site_name" content="Norm-working Packets" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="esp"/>
<meta name="twitter:description" content="A semi-technical blog &amp; series of experiences working in tech and my homelab"/>
</head>
<body class="list dark" id="top">
<script>
if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="../" accesskey="h" title="Norm-working Packets 💾 (Alt + H)">Norm-working Packets 💾</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
</div>
</div>
<ul id="menu">
<li>
<a href="../posts.html" title="Posts">
<span>Posts</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<header class="page-header"><div class="breadcrumbs"><a href="../">Home</a></div>
<h1>
esp
</h1>
</header>
<article class="post-entry tag-entry">
<figure class="entry-cover"><img loading="lazy" src="../esp_medicine_indicator.png" alt="ESP8266 Logo with a Medicine Icon, Colorized">
</figure>
<header class="entry-header">
<h2>ESP8266 Medicine Indicator Light
</h2>
</header>
<div class="entry-content">
<p>This is a quick treat! We recently learned that one of our children needs to take medicine twice a day for the foreseeable future. Hes too young to take it on his own, so the twice-a-day responsibility is split up between my partner and I. However, sometimes our schedules dont overlap so succinctly, so we needed some sort of indicator to let the other know if the previous dose was (or wasnt!...</p>
</div>
<footer class="entry-footer"><span title='2023-10-16 11:34:14 -0400 EDT'>October 16, 2023</span>&nbsp;·&nbsp;6 min&nbsp;·&nbsp;1170 words&nbsp;·&nbsp;Me</footer>
<a class="entry-link" aria-label="post link to ESP8266 Medicine Indicator Light" href="../posts/medicine_indicator_light.html"></a>
</article>
</main>
<footer class="footer">
<span>&copy; 2023 <a href="../">Norm-working Packets 💾</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
</body>
</html>

20
public/tags/esp/index.xml Normal file
View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>esp on Norm-working Packets 💾</title>
<link>/tags/esp.html</link>
<description>Recent content in esp on Norm-working Packets 💾</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<lastBuildDate>Mon, 16 Oct 2023 11:34:14 -0400</lastBuildDate><atom:link href="/tags/esp/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>ESP8266 Medicine Indicator Light</title>
<link>/posts/medicine_indicator_light.html</link>
<pubDate>Mon, 16 Oct 2023 11:34:14 -0400</pubDate>
<guid>/posts/medicine_indicator_light.html</guid>
<description>Learn how to make an ESP8266 and a few simple components into an indicator light.</description>
</item>
</channel>
</rss>

View File

@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en-us">
<head>
<title>/tags/esp.html</title>
<link rel="canonical" href="../../../tags/esp.html">
<meta name="robots" content="noindex">
<meta charset="utf-8">
<meta http-equiv="refresh" content="0; url=../../../tags/esp.html">
</head>
</html>

View File

@ -6,16 +6,34 @@
<description>Recent content in Tags on Norm-working Packets 💾</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<lastBuildDate>Wed, 04 Oct 2023 10:35:23 -0400</lastBuildDate><atom:link href="/tags/index.xml" rel="self" type="application/rss+xml" />
<lastBuildDate>Mon, 16 Oct 2023 11:34:14 -0400</lastBuildDate><atom:link href="/tags/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>diy</title>
<link>/tags/diy.html</link>
<pubDate>Wed, 04 Oct 2023 10:35:23 -0400</pubDate>
<pubDate>Mon, 16 Oct 2023 11:34:14 -0400</pubDate>
<guid>/tags/diy.html</guid>
<description></description>
</item>
<item>
<title>esp</title>
<link>/tags/esp.html</link>
<pubDate>Mon, 16 Oct 2023 11:34:14 -0400</pubDate>
<guid>/tags/esp.html</guid>
<description></description>
</item>
<item>
<title>tutorial</title>
<link>/tags/tutorial.html</link>
<pubDate>Mon, 16 Oct 2023 11:34:14 -0400</pubDate>
<guid>/tags/tutorial.html</guid>
<description></description>
</item>
<item>
<title>homeassistant</title>
<link>/tags/homeassistant.html</link>

188
public/tags/tutorial.html Normal file
View File

@ -0,0 +1,188 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>tutorial | Norm-working Packets 💾</title>
<meta name="keywords" content="">
<meta name="description" content="A semi-technical blog &amp; series of experiences working in tech and my homelab">
<meta name="author" content="Norm Rasmussen">
<link rel="canonical" href="../tags/tutorial.html">
<link crossorigin="anonymous" href="../assets/css/stylesheet.5cfc680b1eeaeef9efbced92d46c2a9e876b72ee14fba85846afc4cff9e6e6f8.css" integrity="sha256-XPxoCx7q7vnvvO2S1Gwqnodrcu4U&#43;6hYRq/Ez/nm5vg=" rel="preload stylesheet" as="style">
<link rel="icon" href="../favicon.ico">
<link rel="icon" type="image/png" sizes="16x16" href="../favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="../rsmsncircles.ico">
<link rel="apple-touch-icon" href="../apple-touch-icon.png">
<link rel="mask-icon" href="../safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" type="application/rss+xml" href="../tags/tutorial/index.xml">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
</noscript>
<script async src="https://www.googletagmanager.com/gtag/js?id=G-X8VR5M0K20"></script>
<script>
var doNotTrack = false;
if (!doNotTrack) {
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-X8VR5M0K20', { 'anonymize_ip': false });
}
</script>
<meta property="og:title" content="tutorial" />
<meta property="og:description" content="A semi-technical blog &amp; series of experiences working in tech and my homelab" />
<meta property="og:type" content="website" />
<meta property="og:url" content="/tags/tutorial.html" /><meta property="og:site_name" content="Norm-working Packets" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="tutorial"/>
<meta name="twitter:description" content="A semi-technical blog &amp; series of experiences working in tech and my homelab"/>
</head>
<body class="list dark" id="top">
<script>
if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="../" accesskey="h" title="Norm-working Packets 💾 (Alt + H)">Norm-working Packets 💾</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
</div>
</div>
<ul id="menu">
<li>
<a href="../posts.html" title="Posts">
<span>Posts</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<header class="page-header"><div class="breadcrumbs"><a href="../">Home</a></div>
<h1>
tutorial
</h1>
</header>
<article class="post-entry tag-entry">
<figure class="entry-cover"><img loading="lazy" src="../esp_medicine_indicator.png" alt="ESP8266 Logo with a Medicine Icon, Colorized">
</figure>
<header class="entry-header">
<h2>ESP8266 Medicine Indicator Light
</h2>
</header>
<div class="entry-content">
<p>This is a quick treat! We recently learned that one of our children needs to take medicine twice a day for the foreseeable future. Hes too young to take it on his own, so the twice-a-day responsibility is split up between my partner and I. However, sometimes our schedules dont overlap so succinctly, so we needed some sort of indicator to let the other know if the previous dose was (or wasnt!...</p>
</div>
<footer class="entry-footer"><span title='2023-10-16 11:34:14 -0400 EDT'>October 16, 2023</span>&nbsp;·&nbsp;6 min&nbsp;·&nbsp;1170 words&nbsp;·&nbsp;Me</footer>
<a class="entry-link" aria-label="post link to ESP8266 Medicine Indicator Light" href="../posts/medicine_indicator_light.html"></a>
</article>
</main>
<footer class="footer">
<span>&copy; 2023 <a href="../">Norm-working Packets 💾</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
</body>
</html>

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>tutorial on Norm-working Packets 💾</title>
<link>/tags/tutorial.html</link>
<description>Recent content in tutorial on Norm-working Packets 💾</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<lastBuildDate>Mon, 16 Oct 2023 11:34:14 -0400</lastBuildDate><atom:link href="/tags/tutorial/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>ESP8266 Medicine Indicator Light</title>
<link>/posts/medicine_indicator_light.html</link>
<pubDate>Mon, 16 Oct 2023 11:34:14 -0400</pubDate>
<guid>/posts/medicine_indicator_light.html</guid>
<description>Learn how to make an ESP8266 and a few simple components into an indicator light.</description>
</item>
</channel>
</rss>

View File

@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en-us">
<head>
<title>/tags/tutorial.html</title>
<link rel="canonical" href="../../../tags/tutorial.html">
<meta name="robots" content="noindex">
<meta charset="utf-8">
<meta http-equiv="refresh" content="0; url=../../../tags/tutorial.html">
</head>
</html>