Skip to main content

Posts

Showing posts with the label CesiumJS

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...

Things I Learned: Using URLs to Store Web App State in Cesium Sandcastle

 With Cesium Ion Sandcastle users can try out various parts of the Cesium JS library to create maps. Once their code is working, they can also share those maps with the code. I initially wondered about the infrastructure that required to store and then serve every single map examples code. Then, I realized that the code isn't stored in a server, it's in the share URL! I originally started to put this together when I noticed how long a typical Cesium Sandcastle is. They tend to look like this: except longer. The seemingly random characters are a base64 encoded transcript of the JavaScript code along with the html and styling for the Sandcastle project. The fact that everything was encoded in the URL made me wonder what else could be achieved with the URL. A lot, it turns out. NOTE : I discovered it's important to place your additional URL args before the #c anchor that contains the Sandcastle code. Otherwise, your args get interpreted as being part of the JavaScript that...