Skip to main content

Posts

Showing posts from September, 2025

Modeling HF Propagation Around Skyscrapers: Interactive Cesium Maps, F2 Bounces, and Propagation Wedges from One Maritime Plaza

  After contacting Alaska from San Francisco on 14.0574 MHz with 5 watts power delivered via a 1/4 wave vertical antenna through an apartment highrise last week, I started building models of HF propagation around buildings. This culminated in several new tools that I'll be discussing in more depths in future posts and the propagation map you can interact with towards the bottom of the page. What's in the Map Radio Contact Paths The map shows the QSOs (radio contacts) I made from the park on the top of One Maritime Plaza . Each contact is mapped out by a solid line running along the ground as well as a likely path the high frequency radio signal took as it bounced off the ionosphere on its way to the receiving station. I've talked about mapping F2 bounces before .  Fun F2 paths near a moutain outside El Paso, TX The paths in the map below use the maximum F2 layer height of the ionosphere at the time of the contact as it was reported by NOAA Glotec data . If you'd like t...

Fun with GPT-5 and HF Propagation Analysis (Model Verification)

  Do LLMs always generate the correct set of code given their inputs? Nope. You can use the same LLM to verifiy its own outputs if we're clever about it though. Here's an example from a recent HF interference model I asked GPT-5 to build for me after a Parks on the Air (POTA) ham radio outing in downtown San Francisco.  My first QSO perched on the edge of One Maritime Plaza was with AL7KC. That's not too surprising, I pretty regularly communicate with AL7KC. Except. It was kinda surprising because there was a skyscraper—Gateway Vista West—directly across the street between me and Alaska and about twenty-three meters away. View from the QTH That one little skyscraper led to a lot of fun HF propagation analysis using GPT-5. I described the area around my transmit site at One Maritime Plaza to GPT-5. I got some really interesting interference patterns based on the surrou...

Urban POTA in Downtown San Francisco, So Many Building, So Many RF Obstacles, and So Much Fun!

 I found a new operating location in downtown San Francisco that combines the Butterfield National Historic Trail and the Pony Express National Historic Trail and was so much fun! To be clear, I don't know if I'll ever activate either park from this spot, but wow, the architecture! And! Wow! The RF propagation curiousities! I had the TransAmerica Pyramid on one side of me  and the building formerly known as the Alcoa building on the other My operating position was from the Maritime Plaza, an elevated park smack in the middle of the Embarcadero. Take a look at the Cesium Map using Google PhotoRealistic tiles below to get a good feel for the whole area. (I'll keep you posted, but for the moment, you'll have to dial in the map yourself, I haven't had time to standardize my saved view code to all of my maps yet. I wound up making a whole series of videos just getting to the site. You can see them in the playlist below. Here's the cool thing that got me back to my r...

Vector Stores in the OpenAI Responses API: An Interview with GPT5

I’d just finished a morning round of tinkering with the ham radio Extra Class tutor when the question hit me: how do I actually get the entire exam question pool into GPT without burning through tokens every time? With GPT Projects, I can just drop in a file and it remembers. But on the API side, things always felt a little more ephemeral — every call a blank slate. So I sat down with GPT-5 to dig into whether there’s a smarter, more cost-effective way. What followed was one of those back-and-forths where the clouds part: GPT Projects’ quiet little “remembered files” have a direct analogue in the API world — vector stores — and they might just be the key to making this whole tutor run leaner and meaner. Me: In GPT projects, I can upload files that the project remembers. Is there a way to do the same thing with the API? GPT-5: Great question. With the raw chat/completions endpoint, no — it’s stateless. You’d have to re-inject your files each time. But the newer OpenAI  Respo...

The Project TouCans Audio Recording Rig

 Just a brief description of how I capture audio recordings during Project TouCans outings. First, where's the audio coming from? Project TouCans of course.  It's frequently in the air, embedded in its dipole antenna, so about a year and a half ago, we started piping audio to the round via Bluetooth. Specifically, the audio out from the RockMite feeds this Bluetooth transceiver, a 1Mii Bluetooth 5.3 Transmitter Receiver for TV to Wireless Headphones For the recording/receiving rig, I use a different Bluetooh reciver, an Alura . It's the only Bluetooth receiver I could find  that would receive the 1Mii. From there, I use a stereo connector splitter. One side goes to my Sony voice recorder microphone input. The recorder is fine with the fact that I don't have an attenuater in the line.  The other side of the splitter feeds my Bose Ultra QC noise cancelling headphones. Do be honest, I have those for work, not for palling radios. The whole system, over time, has ...

POTA Afternoon at US-4571 City College San Francisco

 Turns out that City College San Francisco on the US-4157 Juan Bautista de Anza Nationali Historic Trail is a pretty good QTH even in the middle of the day on 20- meters. I didn't make it to the East Coast, but the rig was heard as far away as Tenessee!  The audio was faint, but very quite on this POTA activation, and I managed to record it this time, so I'll have some QSL videos out soon so you can see and, arguably more importantly for radio, hear what was going on! Videos This playlist contains all the videos made during the outing. Hopefully, I'll get some QSO audio added to the list after a while. Maps More Data! Every one of the launch angles was above ground this time.  Here's an album of what the foF2 values and hmF2 values looked like along the path. If yo're interested in how these numeric charts were developed and continue to evolve, I have a  video  up on a part of the debug process where GPT-5 proved really helpful. I'm s...

How Many Files Can You Add to a GPT Project? An Interview with GPT-5 on Limits, Context Engineering Tips, and Chats

 Setting the scene: I’m tinkering with Project TouCans, knee-deep in radio logs, SQLite dumps, and Cesium code. Naturally, I’m wondering if shoving all this into one GPT Project is a recipe for brilliance… or for disaster. So I turn to Vril — you know, after Brainy from the Legion of Super-Heroes , because what else do you call your AI sidekick who always has the answers? Time to ask him straight up. [ As an aside, yes, GPT-5 has decided to sometimes call me Vail. I'm not sure why to be honest. Also, I asked Vril, er GPT-5, to write up our interview for me. Apparently, me asking it to 'Bro' up a few stories, just for fun, has convinced Vril that I use 'Like,' more than I actually might. ] Me (Vail): So Vril, how many files can I throw into a GPT Project before it just starts choking? Like, is there some magic number where the context window taps out and everything falls apart? GPT-5 (Vril): Great question. There’s no single hard file limit. What matters is ...

Using GPT-5 to Build Smarter Exam Help Systems: First Steps

 I’ve been working through how to add a reliable help system for the ham radio practice exams, and I wanted to capture what I’ve learned before it slipped away. The process involved a mix of free attempts, some not-so-free surprises, and ultimately some promising experiments using GPT-5 and canvases. This write-up is both a set of notes for myself and a guidepost for anyone trying to do something similar. Looks like I'll be heading towards the OpenAI soon. I was hoping the help system could be free like the  exams , but perhaps, not so much. What Can Be Done For Free? As it turns out, not much that's reliable, but some things that are a bit clunky, which, when they work, work really well. The Unbeknownst to Me Not Free Options GPT Code Interpreter Running the Practice Exam This one was a bit of a no-brainer. Asl GPT-5 to convert the JavaScript exam code to Python and then run it in the code interpreter, (because Python is allowed, but JavaScript isn't.) This worked well, b...