Skip to main content

Posts

Showing posts with the label AI

Today I Learned: Samsung S23 One UI Closes WebSocket Connections on Task Switch from Chrome Browser

 During yesterday's POTA activations, I kept losing my control panel connection to Project TouCans. I restarted the rig's Pico-W several times to re-establish the connection before it occurred to me to think through the symptoms which were: Productively using the control panel to key the rig Switch to any other app on the phone besides the Chrome browser Return to control panel on Chrome browser and the connection is gone. On my implementation, the control panel's On button first opens a WebSocket to Project TouCans' Pico-W. As an experiment, rather than power cycling the Pico-W, I simply hit the 'On' button again even though the rig was already on. Sure enough, that did it. The connection was back up and running. I asked ChatGPT what might have caused this. I mentioned that the phone, as Samsung Galaxy 23 had forced an update of One UI. The answer that came back was that versions of One UI newer than 6, (I'm on 7 now), do indeed cut socket connections when...

Adding Elevation Control to QSO Maps with ChatGPT and Cesium

When making our QSO skip maps one of the issues we encounter is that the lines from our station to the F2 layer don't always start right at the ground. This seems to be an artifact of CZML and the fact that the Earth is not a sphere, but rather an ellipsoid, and even then, there are all those hills and mountains. The initial QSOs can wind mapped as up coming from underground: or, they can wind up starting from above the surface of the Earth In any event, it's been necessary with each map to adjust the elevation height of our station. I've yet to find a parameter to set in a czml that makes the starting point always be on the ground. "clampToGround" works for polylines that are always on the ground, but not polylines whose next point has an altitude greater than zero as the ground station to F2 layer polylines do. I added a feature into the JavaScript mapping application this week that allows me to adjust the height of all of the QSO's starting points at...

Things I Learned: OpenAI To Create CSS, HTML, and JavaScript for a YouTube QSO Video Deck

  I used ChatGPT to crank out a new blog feature: a slide deck that shows all the QSO videos from an activation.  Before I get started, allow me to admit that I just found out that YouTube provides code to embed a playlist on an html page. I didn't know this when I started this project, and frankly, I'm kinda happy about that. If I found an embedded playlist, it would not have been obvious to me that there was more than one video. I would have missd all the others. An example of the resulting video deck can be seen on the field report from my latest POTA activation. I asked ChatGPT to create the CSS and HTML for a video deck presented on a statically served HTML page. It got really close on the first attempt. I only had to refince the code a bit to get exactly what I wanted. The AI even dumped out JavaScript code I hadn't remembered to ask for to control the deck. Later I realized that adding video links one at a time to my blog page was a bit tiresome. I asked the AI to w...

Digging Through NetCDF4 Data Using Google Gemini AI

 I wanted to take a look at the ionosphere over North America late last week, and that meant I needed to explore ionospheric readings via radio occultation from the satellite constelations launched by Spire and PlanetIQ. Spoiler: I haven't been able to get ionospheric data from either constellation yet, but that's a data publishing issue, not a data file structure issue. Exploring the availabel data was a bit clunky at first to say the least. Then, it occurred to me that I could probably ask an AI to write Python code to pull out the strucutre of each netCDF file somewhat automatically. Sure enough, the Google Gemini search enginee version gave me an immediate answer I modified the code just a bit per my personal taste. The complete code can be seen here . From there, with only the filename, I could get output like Where to get the data I was having the best luck with PlanetIQ data as published by UCAR at  https://data.cosmic.ucar.edu/gnss-ro/planetiq/noaa/nrt/level2/2024/ How...

Creating a CW Sidetone With ChatGPT

 I'm still plugging away on the straight key for Project TouCans. It's still a tossup at this point how many of the keying issues are my keying speed, and how many are due to various delays in the system. I got a nice little boost from ChatGPT over the weekend though! It cranked out a straight key enabling web page that it took me about two hours to massage into what I wanted. You can see the finished code here . You'll notice that the sidetone uses a .wav file. There wasn't a more simple way to get JavaScript to generate a tone that I could find than using a .wav file. (Remember when computers beeped when you told them to beep? Sigh...)  But, that meant I needed a constant tone .wav file. I, of course, did not have one. I asked ChatGPT to create one for me and the direct results were underwhelming. It produced nothing that I could easily use.  Then! I noticed the analysis button on the chat results. I clicked there and was presented with the Python code that ChatGPT w...

Reading jpeg metadata with ChatGPT

 Hot on the heels of the night-vision Google pixel articles, Simon Willison clears up something I've often wondered about. Some of the metadata in jpeg IS in binary! Even better though, Simon mentioned that Chat GPT can help read a photo's binary metadata fields.

Another Cool Tool from Simon Willison via Claude

 Image quality compare from Simon Willison and Claude! One of the many aspects of Simon Willison's blog that I've enjoyed is the set of posts about coding tools with LLMs (AIs.) The latest one was handier than most for me. It takes an image and downsizes more and more, presenting the different version on a web page so you can judge which one will work best for your website's view while cutting down on the amount of data your web site serves for that image. So, here's the faster version of this blog's occasional header Chosen from a variety of options: You might wonder if I went meta on this and used the tool to reduce the size of the screenshot of the tool, and I aboslutely did!  Cool stuff!

ChatGPT helped us rescue Pennelope, or How to Use Python over Telnet to Filter Ham Radio CQs over the RBN

I used ChatGPT to code a ham radio reverse beacon network filter for the Rockmite using telnet and Python this morning. It was my first really productive coding session with ChatGPT , and I loved it. Maybe the most fun part of it for me is that I get to make up stories as I code: And then, after I'd introduced Penelope, I got to explain her and, more to the point, my plight. ChatGPT proceeded to dump out very useful code that put me and the 12 year-old here who's learning to code in Python on our way. Later, we needed help sending in commands to the telnet server, so I asked ChatGPT what Penelope would do: There was a little confusion about how to get the exception handling to close the program on Ctrl+C just right, so I asked ChatGPT for more help: A few hours later, after we got home from the coffee shop, the kid and I had a script up and running: I'll tell you more about it in another post, but you can look at it here .