diff --git a/_config.yml b/_config.yml index 6167096..eb12193 100644 --- a/_config.yml +++ b/_config.yml @@ -11,7 +11,7 @@ baseurl: "/" url: "https://andrewconl.in" author: Andrew Conlin -version: v25.3.PU0306 +version: v25.4.U0414 defaults: # blog diff --git a/_includes/categoryList.html b/_includes/categoryList.html new file mode 100644 index 0000000..8464c64 --- /dev/null +++ b/_includes/categoryList.html @@ -0,0 +1,11 @@ + +
diff --git a/_includes/defaultFooter.html b/_includes/defaultFooter.html index 4b3017b..15d3299 100644 --- a/_includes/defaultFooter.html +++ b/_includes/defaultFooter.html @@ -1,8 +1,16 @@
-
-Be nice to each other!
+
+Be nice to each other!

+ + + + + + +

+Last updated: {{ site.time }}
+{{ site.version }}
+
© {{ site.author }} 2023-2025
All rights reverse engineered
-Last updated: {{ site.time }}
-{{ site.version }}
diff --git a/_includes/header.html b/_includes/header.html index 4b7d507..6fbcc83 100644 --- a/_includes/header.html +++ b/_includes/header.html @@ -1,5 +1,4 @@ -

andrewconl.in is tinkering

-
-

blog   til   projects   meta   feed   [archive]

-
+andrewconl.in is CSSing
+blog til projects meta feed [archive] +

diff --git a/_includes/pageTitle.html b/_includes/pageTitle.html new file mode 100644 index 0000000..758b4c0 --- /dev/null +++ b/_includes/pageTitle.html @@ -0,0 +1 @@ +~ / {{page.title}}
diff --git a/_layouts/post.html b/_layouts/post.html index e3abba8..6ed4107 100644 --- a/_layouts/post.html +++ b/_layouts/post.html @@ -1,10 +1,9 @@ --- layout: default --- -~ > {{page.category}} > {{page.title}}
-
- - {{ page.date | date: "%Y-%m-%d" }}
+~ / {{page.category}} / {{page.title}}
+ + {{ page.date | date: "%Y-%m-%d" }}
{{ content | reading_time | pluralize: "minute" }}

diff --git a/_posts/blog/2024-02-28-microzig-display-driver.md b/_posts/blog/2024-02-28-microzig-display-driver.md index b99e412..40a8311 100644 --- a/_posts/blog/2024-02-28-microzig-display-driver.md +++ b/_posts/blog/2024-02-28-microzig-display-driver.md @@ -4,7 +4,7 @@ category: blog title: Writing an OLED display driver in MicroZig --- -**Update 2025-03-06** / There is now an SDD1306 driver available in the [official MicroZig repository](https://github.com/ZigEmbeddedGroup/microzig/blob/main/drivers/display/ssd1306.zig). +**Update 2025-03-06** / There is now an SSD1306 driver available in the [official MicroZig repository](https://github.com/ZigEmbeddedGroup/microzig/blob/main/drivers/display/ssd1306.zig). # # Beginnings Recently, I have been messing around with a Rapsberry Pi Pico. Initially, I started out with MicroPython, as this is what most of the documentation for working with the Pico uses. However, this was honestly a little boring, as I seem to end up doing every project in Python. I wanted something a little more engaging for my brain, a little *spicier*. It's Friday afternoon! @@ -17,7 +17,7 @@ This project is great. It is still in the early-ish stages, with full support on This is exactly what I needed, so I jumped right in. Following along with the [Raspberry Pi examples](https://github.com/ZigEmbeddedGroup/microzig/tree/main/examples/raspberrypi-rp2040), I quickly had some working code for flashing some LEDs. Cool! -At this point, I remembered about a small OLED screen that I had, perfect for exactly this kind of tinkering. Time to get to work on on driving this bad boy. As is always the first step with hardware, I went off on a datasheet hunt. It took me an embarassingly long time to find, but I eventually figured out that I was the proud owner of an [SDD1306 OLED screen](https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf). (This is the datasheet for the 128x64 version, but I have the 128x32). +At this point, I remembered about a small OLED screen that I had, perfect for exactly this kind of tinkering. Time to get to work on on driving this bad boy. As is always the first step with hardware, I went off on a datasheet hunt. It took me an embarassingly long time to find, but I eventually figured out that I was the proud owner of an [SSD1306 OLED screen](https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf). (This is the datasheet for the 128x64 version, but I have the 128x32). Now, as datasheets go, this is pretty good. We have all of the available commands, and instructions for how to write to the display RAM (for showing stuff on the screen). But how do we send these commands? This is also in the datasheet: [I2C](https://en.wikipedia.org/wiki/I%C2%B2C). There is a brief explanation in there about what the device is expecting, but I needed to do some more digging, as this is my first time dabbling directly in I2C communication. @@ -53,7 +53,7 @@ pub fn send(bytes: []const u8) !void { } ``` -The SDD1306, stood firm, resolutely denying me even a single pixel. There is no feedback for any of this, except a single flashing LED to let me know my code is running. I am shooting from the hip (and missing). +The SSD1306, stood firm, resolutely denying me even a single pixel. There is no feedback for any of this, except a single flashing LED to let me know my code is running. I am shooting from the hip (and missing). It was at this point that I became really impressed with Zig's compilation, and in particular the caching. As part of this process, I was messing around a lot with my code, and then building and loading onto the Pico with the following command: diff --git a/archive.html b/archive.html index 09671a5..f1399f0 100644 --- a/archive.html +++ b/archive.html @@ -3,15 +3,5 @@ layout: default title: archive --- -~ > [{{page.title}}]
- -
+{% include pageTitle.html %} +{% include categoryList.html %} diff --git a/assets/css/default.css b/assets/css/default.css index 58e1ecc..fa9a7a4 100644 --- a/assets/css/default.css +++ b/assets/css/default.css @@ -22,6 +22,7 @@ code { div.container { margin: 0 auto; + zoom: 1.5; } div.content { @@ -38,6 +39,10 @@ div.content { margin: 0 auto; position: relative; } + div.container { + margin: 0 auto; + zoom: 1.4 + } } @media screen and (max-width: 1080px) { @@ -47,6 +52,10 @@ div.content { margin: 0 auto; position: relative; } + div.container { + margin: 0 auto; + zoom: 1.2 + } } @media screen and (max-width: 768px) { @@ -56,6 +65,10 @@ div.content { margin: 0 auto; position: relative; } + div.container { + margin: 0 auto; + zoom: 1.0 + } } body { @@ -75,16 +88,16 @@ pre { a { color: #E7D7AD; text-decoration: none; - border-bottom: 3px solid #FABD2F; - border-radius: 2px; + border-bottom: 2px solid #FABD2F; + border-radius: 1px; } a:hover { color: #000000; background: #FABD2F; text-decoration: none; - border-bottom: 3px solid #FABD2F; - border-radius: 2px; + border-bottom: 2px solid #FABD2F; + border-radius: 1px; } img { @@ -118,3 +131,11 @@ span.growshrink { color: #FABD2F; } } + +p { + font-size: 14px +} + +h1 { + font-size: 24px +} diff --git a/assets/images/88x31/apache-powered.gif b/assets/images/88x31/apache-powered.gif new file mode 100644 index 0000000..603ab4b Binary files /dev/null and b/assets/images/88x31/apache-powered.gif differ diff --git a/assets/images/88x31/bestviewedcomp.gif b/assets/images/88x31/bestviewedcomp.gif new file mode 100644 index 0000000..0b43d5a Binary files /dev/null and b/assets/images/88x31/bestviewedcomp.gif differ diff --git a/assets/images/88x31/debian.gif b/assets/images/88x31/debian.gif new file mode 100644 index 0000000..eaf7001 Binary files /dev/null and b/assets/images/88x31/debian.gif differ diff --git a/assets/images/88x31/firefox3.gif b/assets/images/88x31/firefox3.gif new file mode 100644 index 0000000..80e7e85 Binary files /dev/null and b/assets/images/88x31/firefox3.gif differ diff --git a/assets/images/88x31/internetprivacy.gif b/assets/images/88x31/internetprivacy.gif new file mode 100644 index 0000000..4f371b8 Binary files /dev/null and b/assets/images/88x31/internetprivacy.gif differ diff --git a/assets/images/88x31/neovim.gif b/assets/images/88x31/neovim.gif new file mode 100644 index 0000000..c3670e2 Binary files /dev/null and b/assets/images/88x31/neovim.gif differ diff --git a/blog.html b/blog.html index 658031b..f07bf11 100644 --- a/blog.html +++ b/blog.html @@ -4,15 +4,5 @@ title: blog backlink: false --- -~ > {{page.title}}
- -
+{% include pageTitle.html %} +{% include categoryList.html %} diff --git a/index.html b/index.html index 96f89c8..0e88ee4 100644 --- a/index.html +++ b/index.html @@ -6,7 +6,6 @@ permalink: / “Man is said to be a reasoning animal. I do not know why he has not been defined as an affective or feeling animal. Perhaps that which differentiates him from other animals is feeling rather than reason. More often I have seen a cat reason than laugh or weep. Perhaps it weeps or laughs inwardly — but then perhaps, also inwardly, the crab resolves equations of the second degree.”
― Miguel de Unamuno, Tragic Sense of Life

Email: andrew@andrewconl.in
-Mastodon: andrwcnln@mastodon.scot
-GitHub: @andrwcnln
+Git forge: git.cnln.dev
RSS: /feed.xml

diff --git a/meta.html b/meta.html index e4fff4c..d974a18 100644 --- a/meta.html +++ b/meta.html @@ -3,8 +3,9 @@ layout: default title: meta --- -~ > {{page.title}}
+{% include pageTitle.html %}

Both the Sans Serif and Monospace fonts used on this site are Geist, by Vercel.

Background colour is #000000, text colour is #E7D7AD, accent colour is #FABD2F.

The site is built using Jekyll. Source is available here.

+

The 88x31 buttons in the footer were sourced from here.


diff --git a/projects.html b/projects.html index b7e7ee5..41e33f6 100644 --- a/projects.html +++ b/projects.html @@ -2,8 +2,10 @@ layout: default title: projects --- -~ > {{page.title}}
-