Added alt text to every image, bumped up archive page pagination
This commit is contained in:
@@ -55,7 +55,7 @@ params:
|
||||
description: "A random assortment of my personal projects."
|
||||
|
||||
# paginate of archives, tags and categories
|
||||
archivePaginate: 5
|
||||
archivePaginate: 20
|
||||
|
||||
# show 'xx Posts In Total' in archive page ?
|
||||
showArchiveCount: true
|
||||
|
||||
@@ -10,7 +10,9 @@ deminishing returns. Simply put: it makes the image look "soft", or otherwise
|
||||
out-of-focus. In this post I aim to find out find the best *acceptable* aperture
|
||||
setting for a specific lens.
|
||||
|
||||
{{< thumb src="/static/img/aperture-study/f17-f40-comp.jpg" sub="f/1.7 vs. f/4.0" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f17-f40-comp.jpg"
|
||||
sub="f/1.7 vs. f/4.0"
|
||||
alt="Photo comparing aperture depth-of-field of f/1.7 versus f/4.0 (sharper)" >}}
|
||||
<!--more-->
|
||||
|
||||
# The Setup
|
||||
@@ -39,7 +41,9 @@ lost at that target distance of 1 meter.
|
||||
The biggest difference can be seen between the *f/1.7* and *f/4.0* shots. Note
|
||||
the increase in clarity on the pillows fabric.
|
||||
|
||||
{{< thumb src="/static/img/aperture-study/f17-f40-comp.jpg" sub="f/1.7 vs. f/4.0" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f17-f40-comp.jpg"
|
||||
sub="f/1.7 vs. f/4.0"
|
||||
alt="Photo comparing aperture depth-of-field of f/1.7 versus f/4.0 (sharper)" >}}
|
||||
|
||||
---
|
||||
|
||||
@@ -48,7 +52,9 @@ At *f/2.8* and above I started noticing less increase in perceived sharpness of
|
||||
the image, though the difference in comparison to *f/1.7* was still fairly
|
||||
noticeable
|
||||
|
||||
{{< thumb src="/static/img/aperture-study/f17-f28-comp.jpg" sub="f/1.7 vs f/2.8" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f17-f28-comp.jpg"
|
||||
sub="f/1.7 vs f/2.8"
|
||||
alt="Photo comparing aperture depth-of-field of f/1.7 versus f/2.8 (sharper)" >}}
|
||||
|
||||
---
|
||||
|
||||
@@ -58,7 +64,9 @@ difference in shutter speed, the overall difference does not seem as dramatic
|
||||
from *f/2.8* to *f/4.0*. Personally, I'd say that *f/2.8* is the clear winner in
|
||||
finding the best middle-ground between maximum aperture and image quality.
|
||||
|
||||
{{< thumb src="/static/img/aperture-study/f28-f40-comp.jpg" sub="f/2.8 vs. f/4.0" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f28-f40-comp.jpg"
|
||||
sub="f/2.8 vs. f/4.0"
|
||||
alt="Photo comparing aperture depth-of-field of f/2.8 versus f/4.0 (sharper)" >}}
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -11,7 +11,8 @@ With some minor dependencies, it's fairly straightforward in setting up your
|
||||
Emacs workflow to include IntelliSense-like auto-completion!
|
||||
|
||||
{{< img src="/static/img/emacs-clang-libopencm3/header-completion.png"
|
||||
sub="Header Completion" >}}
|
||||
sub="Header Completion"
|
||||
alt="Screenshot showing auto-completion for C header files in emacs" >}}
|
||||
|
||||
<!--more-->
|
||||
|
||||
@@ -105,7 +106,8 @@ fairly uninvolved workaround.
|
||||
|
||||
## Example
|
||||
{{< img src="/static/img/emacs-clang-libopencm3/completion.png"
|
||||
sub="Completion" >}}
|
||||
sub="Completion"
|
||||
alt= "Screenshot showing auto completion for C functions in emacs">}}
|
||||
|
||||
[^1]: [Emacs Initialization File]
|
||||
(https://www.gnu.org/software/emacs/manual/html_node/emacs/Init-File.html)
|
||||
|
||||
@@ -8,7 +8,8 @@ tags: ["electronics"]
|
||||
A colleague offered a pair of Bern Bluetooth drop-in headphones to me fore free,
|
||||
with the catch being: _I had to fix them_
|
||||
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7505.jpg" >}}
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7505.jpg"
|
||||
alt="Photo of Bern brand headphones under magnifying glass" >}}
|
||||
<!--more-->
|
||||
|
||||
# Don't Turn It On, Take It Apart!
|
||||
@@ -28,8 +29,10 @@ right speaker put out no sound._ I checked the known-good left speaker using my
|
||||
wanted to find out what to expect when troubleshooting the right channel.
|
||||
|
||||
{{< thumbgallery >}}
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7506.jpg" sub="Left Speaker" >}}
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7511.jpg" sub="Right Speaker" >}}
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7506.jpg" sub="Left Speaker"
|
||||
alt="Photo of oscilloscope showing working left-speaker analog signal" >}}
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7511.jpg" sub="Right Speaker"
|
||||
alt="Photo of oscilloscope showing broken right-speaker analog signal" >}}
|
||||
{{< /thumbgallery >}}
|
||||
|
||||
Knowing what to expect on the oscilloscope, I hooked up the probe to the right,
|
||||
@@ -42,7 +45,8 @@ disconnected at this point in time to ease the troubleshooting process.
|
||||
Lucky for me the PCB pads were labeled -- even better `SPKL+` (_left_) and
|
||||
`SPKR+` (_right_) were easy to find.
|
||||
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7507.jpg" >}}
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7507.jpg"
|
||||
alt="Photo of close-up magnified view of broken right speaker PCB" >}}
|
||||
|
||||
Outside of the bluetooth board hidden under the piece of tape, there's not a
|
||||
whole lot going on in the circuit. It was my guess that the visible surface
|
||||
@@ -57,7 +61,8 @@ which verified that to be the case.
|
||||
115_) to test continuity of the circuit from the known-good and the now
|
||||
known-bad speaker traces back to the `OUTL` and `OUTR` outputs of the amplifier.
|
||||
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7514.jpg" >}}
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7514.jpg"
|
||||
alt="Photo of right speaker PCB hanging out of casing" >}}
|
||||
|
||||
Removing the board from the housing required a bit of finesse. I didn't want to
|
||||
bother desoldering the left speaker connections to make removal easier. So, with
|
||||
@@ -81,7 +86,8 @@ Using the 3.5mm mini-jack's solder pads, I found continuity to be true from the
|
||||
chips left and right outputs to the conveniently accessible solder pads. _A
|
||||
bodge wire was in order_..
|
||||
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7515.jpg" sub="Note the bodge wire" >}}
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7515.jpg" sub="Note the bodge wire"
|
||||
alt="Photo of close-up magnified view with soldered fix wire in right speaker PCB" >}}
|
||||
|
||||
|
||||
# All's Well That Ends Well
|
||||
@@ -90,7 +96,8 @@ pin to `SPKR+`. Lo and behold it was now closed-circuit! I was very happy to see
|
||||
the expected waveform from the known-good left channel now also appearing on the
|
||||
right channel.
|
||||
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7516.jpg" >}}
|
||||
{{< thumb src="/static/img/headphone-fix/IMG_7516.jpg"
|
||||
alt="Photo of oscilloscope showing fixed right-speaker analog signal">}}
|
||||
|
||||
At this point I quickly re-soldered the wires to the speaker and enjoyed music
|
||||
now coming into both ears!
|
||||
|
||||
@@ -10,7 +10,8 @@ hideHeaderAndFooter: false
|
||||
One of the simplest projects to get started with the STM32 microcontroller
|
||||
series: turn on the lights!
|
||||
|
||||
{{< thumb src="/static/img/stm32-examples/part0/stm32-basic-gpio-leds.jpeg" >}}
|
||||
{{< thumb src="/static/img/stm32-examples/part0/stm32-basic-gpio-leds.jpeg"
|
||||
alt="Photo of STM32 discovery board with illuminated green and blue LEDs" >}}
|
||||
|
||||
<!--more-->
|
||||
|
||||
@@ -130,7 +131,8 @@ For starters, why were pins `GPIO8` and `GPIO9` on the `GPIOC` port being used?
|
||||
The answer can be found after a quick review of the STM32F0 Discovery User Manual[^4]:
|
||||
|
||||
{{< img src="/static/img/stm32-examples/part0/stm32f0-discover-led-diagram.png"
|
||||
sub="LEDs shown on circuit diagram connected to PC8 and PC9">}}
|
||||
sub="LEDs shown on circuit diagram connected to PC8 and PC9"
|
||||
alt="Screenshot of circuit diagram showing green and blue LED connections" >}}
|
||||
|
||||
The Discovery board comes with two LEDs for use by the user, tied to Port C pins
|
||||
8 (blue LED), and 9 (green LED).
|
||||
|
||||
@@ -14,7 +14,8 @@ LED. However, it is my belief that this leads to confusion for beginners and
|
||||
only opens the door to misunderstandings. That being said, we will be using
|
||||
timers and their associated GPIO ports with Alternate Function modes.
|
||||
|
||||
{{< img src="/static/img/stm32-examples/part1/blinky.gif" >}}
|
||||
{{< img src="/static/img/stm32-examples/part1/blinky.gif"
|
||||
alt="Animated picture showing alternating blinking green and blue LEDs" >}}
|
||||
|
||||
<!--more-->
|
||||
|
||||
@@ -92,7 +93,8 @@ The STM32 microcontroller's GPIO has a hardware feature allowing you to tie
|
||||
certain port's pins to a different register as part of the output or input
|
||||
control:
|
||||
{{< img src="/static/img/stm32-examples/part1/stm32-af-diagram.png"
|
||||
sub="GPIO Alternate Function Diagram" >}}
|
||||
sub="GPIO Alternate Function Diagram"
|
||||
alt="Screenshots of alternate function circuit diagram for the STM32F0" >}}
|
||||
|
||||
For accomplishing this, a few things need to happen:
|
||||
|
||||
@@ -110,7 +112,8 @@ For the STM32F0 we are using in this series, the Alternate Function selection
|
||||
number desired is `GPIO_AF0` for use with `TIM3_CH3` (_timer 3, channel 3_) and
|
||||
`TIM3_CH4` (_timer 3, channel 4_):
|
||||
{{< img src="/static/img/stm32-examples/part1/stm32-af-gpiomap.png"
|
||||
sub="STM32F051 Alternate Function Mapping" >}}
|
||||
sub="STM32F051 Alternate Function Mapping"
|
||||
alt="Screenshot of alternate function pin definition table for STM32F0" >}}
|
||||
|
||||
|
||||
Ultimately, the code with `libopencm3` becomes the following for our use case:
|
||||
|
||||
@@ -10,7 +10,9 @@ port nearest to the SD card reader had been broken. The pad (_or bolster_) was
|
||||
missing, along with 3 out of 4 pins having been completely broken off. Needless
|
||||
to say this required fixing.
|
||||
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04781.jpg" sub="Final result" >}}
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04781.jpg"
|
||||
sub="Final result"
|
||||
alt="Photo showing fixed USB receptacle on ThinkPad laptop" >}}
|
||||
<!--more-->
|
||||
|
||||
# Damage Assessment
|
||||
@@ -18,7 +20,9 @@ The first step was to look at the PCB to assess how this could be, if at all,
|
||||
replaced. From the outside you could see the damage done. Note the single
|
||||
pin left and lack of the inner pad (_bolster?_).
|
||||
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04722.jpg" sub="One pin remains" >}}
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04722.jpg"
|
||||
sub="One pin remains"
|
||||
alt="Photo showing one pin remaining on a damaged USB receptacle ">}}
|
||||
|
||||
|
||||
# Measure Twice
|
||||
@@ -27,8 +31,10 @@ needed to have the relevant dimensions in comparing to receptacle part drawings
|
||||
of those available for sale.
|
||||
|
||||
{{< thumbgallery >}}
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04714.jpg" >}}
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04718.jpg" >}}
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04714.jpg"
|
||||
alt="Photo showing front side of USB receptacle on motherboard PCB" >}}
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04718.jpg"
|
||||
alt="Photo showing back side of USB receptacle on motherboard PCB" >}}
|
||||
{{< /thumbgallery >}}
|
||||
|
||||
Using generic, non-branded digital calipers I was able to get the following
|
||||
@@ -65,7 +71,8 @@ unbranded digital caliper. Those values are nearly spot-on.
|
||||
The part was ordered, and arrived quickly at my doorstep. Stacked on top of each
|
||||
other the two receptacles matched up just as I had hoped.. **Fantastic!**
|
||||
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04773.jpg" >}}
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04773.jpg"
|
||||
alt="Photo showing new USB receptacle on top of damaged one for comparison" >}}
|
||||
|
||||
# It's not over yet
|
||||
Initial attempts at desoldering the existing (_broken_) receptacle proved
|
||||
@@ -90,7 +97,8 @@ the modification "process"_. Cutting and bending the pins, I was able to get it
|
||||
soldered on (poorly). There wasn't much wiggle room for cleaning up the
|
||||
bodged-in replacement; this will have to do.
|
||||
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04774.jpg" >}}
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04774.jpg"
|
||||
alt="Photo showing new, undamaged USB receptacle soldered on to motherboard PCB" >}}
|
||||
|
||||
The part was essentially soldered as a wholly surface mount part, which it is
|
||||
not. This could have future issues due to a lack of solder-terminated strain
|
||||
@@ -106,7 +114,9 @@ motherboard from correctly fitting. This was quickly solved by using a Dremel
|
||||
with a low-grit sanding drum and removing material off of the receptacle. The
|
||||
result was acceptable, and provided a tight fitment into the laptop case.
|
||||
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04775.jpg" sub="End of the journey" >}}
|
||||
{{< thumb src="/static/img/thinkpad-usb-fix/DSC04775.jpg"
|
||||
sub="End of the journey"
|
||||
alt="Photo showing undamaged, new USB receptacle inside casing of ThinkPad laptop" >}}
|
||||
|
||||
[^1]: [Molex Part No. 482580002](https://www.molex.com/molex/products/datasheet.jsp?part=active/0482580002_IO_CONNECTORS.xml&channel=Products)
|
||||
[^2]: [Digi-Key Part No. WM7087CT-ND](https://www.digikey.com/products/en?keywords=WM7087CT-ND)
|
||||
|
||||
Reference in New Issue
Block a user