Compare commits

..

No commits in common. "main" and "ham-post" have entirely different histories.

14 changed files with 134 additions and 222 deletions

View file

@ -5,74 +5,16 @@ date: 2026-03-12
tags: ["radio"]
---
In February I bit the bullet and booked the exam for the UK Amateur Radio
Licence (Foundation Level).
In February I finally bit the bullet and booked the exam for the UK Amateur
Radio Licence (Foundation Level).
Having the exam in the calendar helped me concentrate and remain focused, as my
learning style is naturally quite slow and meandering. I really wanted to earn
my licence so that I could get on the air and begin to advance my practical
knowledge.
My natural learning style is both meandering and thorough. I like to work at my
own pace and pursue rabbit holes and tangents. I dislike exams and any aspect of
competition injected into the learning process. At school my grades were always
lower than my actual knowledge level because I never studied for the test, I
pursued what was interesting to me to depths not required by the exams.
I used the official Radio Society of Great Britain (RSGB) textbook and a
simplified syllabus from [Essex Ham Train](https://www.essexham.co.uk/train/).
![Flash cards from my studying](./img/flash-cards.jpg)
In the mocks, I was averaging an 80% pass rate but in the exam itself I did
particularly well and scored 92%, getting only two questions wrong (one of which
didn't come up at all in the training materials). I completed the exam remotely
but there was an RSGB invigilator observing my screen and environment to check I
wasn't cheating! (Thank you Malcolm, G3ZNU.)
Having received my certificate I was able to apply to Ofcom for my callsign. I
chose **M7SYO**. The first two characters are mandatory and denote my
qualification level ("Foundation") and the last three are your personal choice,
based on what is available. Luckily I was able to choose letters reflecting
"Systems Obscure". When appropriate to do so, I can add "E" as my regional
secondary locator to indicate that I am operating from England (e.g. ME7SYO).
The Foundation level is pretty generous given that it is the entry-level. I can
transmit up to 25W and am permitted to use most of the amateur bands (10m, 12m,
15m, 17m, 20m, 30m, 40m, 80m) at HF, apart from 60m, and many of the VHF/UHF
bands.
I am lucky that my uncle, Greg, is an experienced amateur operator and secretary
of his local amateur radio club in Macclesfield. He has been helping me with my
practical knowledge and advising on what gear to start with. For now, I have
ordered the affordable and well-regarded
[Baofeng UV-5RM Plus](https://www.baofengradio.com/products/uv-5rm-plus-8w-multi-band-radio)
handheld along with a NA-771 antenna. This will enable me to connect to
repeaters and hopefully make my first QSOs (contacts). I also plan to construct
some home-made antennas that I can attach to the handheld and experiment with.
![Monitoring over SDR](./img/monitoring-sdr.jpg)
As I'm still waiting for the radio to arrive, I am currently limited to
monitoring transmissions via my
[SDR](https://en.wikipedia.org/wiki/Software-defined_radio#Amateur_and_home_use)
(RTL-SDR v.4). I've been able to pick up some Morse conversations and a faint
read of the strange - possibly Iranian - number station that is currently
[perplexing the amateur community](https://youtu.be/ErmbTpxAM7Q?si=auxTnY8HSSnu1xZ5).
In order to access the HF band and reach contacts further afield by exploiting
[ionospheric propagation](https://www.qsl.net/4x4xm/Propagation/Ionosphere-propagation-of-radio-waves.htm),
I will need a better and more powerful tranceiver. I am looking into getting a
second-hand portable Yaesu through one of Greg's contacts. My plan is to drive
or cycle to good spots locally and work in the field. I also eventually want to
communicate over CW using Morse code and experiment with some radio astronomy.
The possibilities are pretty limitless with this hobby!
![The new to me X1 and some light reading](./img/thinkpad-x1-carbon.jpg)
To facilitate my field work I wanted a small and robust laptop so I bought a
second hand ThinkPad X1 Carbon (Gen.9). It's very sleek compared to my T15 which
I mainly use as a desktop device. I'm running Fedora Workstation for a
hassle-free and easily maintainable Linux environment.
Finally, I joined the RSGB. This gives me access to lots of useful radio
resources, free access to the
[National Radio Center](https://rsgb.org/main/about-us/national-radio-centre-gb3rs/)
at Bletchley Park, and the print edition of the monthly _RadCom_ magazine which
is a really good read.
Once I start transmitting I will report here on my progress...
I think all people who love learning for its own sake are like this but I did
actually _need_ the licence in order to be able to transmit and start gaining
practical knowledge. Having the test booked for the end of the month helped me
concentrate and stay on target.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 565 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 483 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 467 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -1,149 +1,128 @@
@media (min-width: 768px) {
main {
max-width: 768px;
margin: 0 1.5rem;
}
main {
max-width: 768px;
margin: 0 1.5rem;
}
.post-listing-item {
display: flex;
flex-direction: row;
}
.post-listing-item {
display: flex;
flex-direction: row;
}
}
@media (max-width: 768px) {
.post-listing-item {
display: flex;
flex-direction: column;
}
.post-listing-item {
display: flex;
flex-direction: column;
}
.title-link {
letter-spacing: 0 !important;
}
.title-link {
letter-spacing: 0 !important;
}
}
.post-listing-item {
display: flex;
display: flex;
}
html {
font-family: "DejaVu Sans", sans-serif;
font-family:
system-ui,
-apple-system,
BlinkMacSystemFont,
"Segoe UI",
Roboto,
Oxygen,
Ubuntu,
Cantarell,
"Open Sans",
"Helvetica Neue",
sans-serif;
}
.header-links {
display: flex;
list-style: none;
gap: 1rem;
margin: 0;
padding: 0;
display: flex;
list-style: none;
gap: 1rem;
margin: 0;
padding: 0;
}
.plain-link {
color: inherit;
text-decoration: none;
color: inherit;
text-decoration: none;
}
.no-bullets {
list-style: none;
padding-left: 0;
list-style: none;
padding-left: 0;
}
blockquote {
font-style: italic;
font-style: italic;
}
figcaption {
text-align: center;
font-style: italic;
font-size: 14px;
text-align: center;
font-style: italic;
font-size: 14px;
}
figure {
text-align: center;
text-align: center;
}
figure img {
width: 100%;
max-width: 500px;
min-width: 300px;
height: auto;
width: 100%;
max-width: 500px;
min-width: 300px;
height: auto;
}
.shiki {
padding: 1rem;
/* border: 1pt solid black; */
background-color: whitesmoke !important;
overflow: auto;
padding: 1rem;
/* border: 1pt solid black; */
background-color: whitesmoke !important;
overflow: auto;
}
.code-stats-sect {
font-family: sans-serif !important;
font-family: sans-serif !important;
}
.code-stat-grid {
display: flex;
flex-direction: row;
justify-content: space-between;
margin-bottom: 0.5rem;
display: flex;
flex-direction: row;
justify-content: space-between;
margin-bottom: 0.5rem;
}
.code-stat-label {
font-weight: bold;
font-family: sans-serif;
font-weight: bold;
font-family: sans-serif;
}
.code-stats-disclaimer {
font-style: italic;
font-size: 14px;
text-align: center;
font-style: italic;
font-size: 14px;
text-align: center;
}
.about-li-padding {
padding-right: 1rem;
padding-right: 1rem;
}
h1.site-title,
h1.post-title {
margin-bottom: 0.75rem;
margin-bottom: 0.75rem;
}
.big-title {
padding-bottom: 0.5rem;
margin-bottom: 0.5rem;
border-bottom: 1px solid black;
padding-bottom: 0.5rem;
margin-bottom: 0.5rem;
border-bottom: 1px solid black;
}
.blog-meta {
font-size: 14px;
}
@font-face {
font-family: "DejaVu Sans";
src: url("/fonts/DejaVuSans.woff2") format("woff2");
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "DejaVu Sans";
src: url("/fonts/DejaVuSans-Bold.woff2") format("woff2");
font-weight: 700;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "DejaVu Sans";
src: url("/fonts/DejaVuSans-Oblique.woff2") format("woff2");
font-weight: 400;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "DejaVu Sans";
src: url("/fonts/DejaVuSans-BoldOblique.woff2") format("woff2");
font-weight: 700;
font-style: italic;
font-display: swap;
font-size: 14px;
}

View file

@ -2,80 +2,71 @@
import { Link } from "react-router"
const Header = () => {
return (
<header>
<nav className="">
<h1 className="site-title">
<Link className="title-link plain-link" to="/">
Systems Obscure
</Link>
</h1>
<ul className="header-links">
<li>
<Link to="/">Home</Link>
</li>
return (
<header>
<nav className="">
<h1 className="site-title">
<Link className="title-link plain-link" to="/">
Systems Obscure
</Link>
</h1>
<ul className="header-links">
<li>
<Link to="/">Home</Link>
</li>
<li>
<Link to="/posts">Posts</Link>
</li>
<li>
<Link to="/about">About</Link>
</li>
<li className="flex flex-col items-center justify-center">
<a
className=""
href="https://forgejo.systemsobscure.net/thomasabishop"
target="blank"
>
Code
</a>
</li>
<li className="flex flex-col items-center justify-center">
<a
className=""
href="https://fosstodon.org/@systemsobscure"
rel="me"
target="blank"
>
Fosstodon
</a>
</li>
</ul>
</nav>
</header>
)
<li>
<Link to="/posts">Posts</Link>
</li>
<li>
<Link to="/about">About</Link>
</li>
<li className="flex flex-col items-center justify-center">
<a
className=""
href="https://forgejo.systemsobscure.net/thomasabishop"
target="blank"
>
Code
</a>
</li>
</ul>
</nav>
</header>
)
}
const Footer = () => {
return (
<footer className="mx-auto">
<nav>
<ul className="">
<li className="flex flex-col items-center justify-center">
<a
className=""
href="https://forgejo.systemsobscure.net/thomasabishop"
target="blank"
>
Forgejo
</a>
</li>
</ul>
</nav>
</footer>
)
return (
<footer className="mx-auto">
<nav>
<ul className="">
<li className="flex flex-col items-center justify-center">
<a
className=""
href="https://forgejo.systemsobscure.net/thomasabishop"
target="blank"
>
Forgejo
</a>
</li>
</ul>
</nav>
</footer>
)
}
const MainTemplate = ({ children }) => {
return (
<div className="">
<main className="">
<Header />
<div>{children}</div>
</main>
</div>
)
return (
<div className="">
<main className="">
<Header />
<div>{children}</div>
</main>
</div>
)
}
export default MainTemplate
//antialiased max-w-3xl mt-3 mx-auto bg-[#282828] no-scanlines wrapper
//main: flex-auto min-w-0 mt-0 flex flex-col px-2 md:px-0