Subj : PowerShell RF conditions source code To : All From : Sean Dennis Date : Wed Aug 12 2026 06:10 pm (I have not tried this one yet.) # ------------------------------------------------------------- # HF Propagation Data Fetcher for Windows BBS Bulletins # ------------------------------------------------------------- # Configure this path to point straight to your local BBS text bulletin folder $OutputFile = "C:\BBS\Files\hfprop.txt" $Url = "https://hamqsl.com" try { # Set Security Protocol to handle modern TLS web handshakes seamlessly [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 # Download and parse the raw live XML data structure $xml = Invoke-RestMethod -Uri $Url -UserAgent "Mozilla/5.0" $solarData = $xml.solardata # Extract primary solar parameters $updated = $solarData.updated.Trim() $sfi = $solarData.solarflux.Trim() $ssn = $solarData.sunspots.Trim() $aIndex = $solarData.aindex.Trim() $kIndex = $solarData.kindex.Trim() # Create a hash map table to store calculated daytime/nighttime band states $bands = @{} foreach ($band in $solarData.calculatedconditions.band) { $name = $band.name $time = $band.time $status = $band.'#text'.Trim() if (-not $bands.ContainsKey($name)) { $bands[$name] = @{} } $bands[$name][$time] = $status } # Construct the fixed-width ASCII grid layout strings $lines = @( "+-----------------------------------------------+", "| CURRENT HF BAND PROPAGATION |", "| Updated: {0,-36} |" -f $updated, "+-----------------------+--------------+--------+", "| Band / Frequency | Daytime | Night |", "+-----------------------+--------------+--------+" ) # Standard band sequence loop mirroring solar.w5mmw.net $targetBands = @("80m-40m", "30m-20m", "17m-15m", "12m-10m") foreach ($b in $targetBands) { $day = if ($bands[$b].ContainsKey('day')) { $bands[$b]['day'] } else { "---" } $night = if ($bands[$b].ContainsKey('night')) { $bands[$b]['night'] } else { "---" } $lines += "| {0,-21} | {1,-12} | {2,-6} |" -f $b, $day, $night } $lines += "+-----------------------+--------------+--------+" $lines += "| Solar Flux Index: {0,-4} Sunspot Number: {1,-4} |" -f $sfi, $ssn $lines += "| Geomag A-Index: {0,-4} Geomag K-Index: {1,-4} |" -f $aIndex, $kIndex $lines += "+-----------------------------------------------+" # Force a clean write straight out to disk in standard ASCII text encoding $lines | Out-File -FilePath $OutputFile -Encoding ascii -Force } catch { Write-Error "Failed to retrieve or generate HF propagation ASCII file: $_" Exit 1 } -- Sean KS4TD .... The motor will rotate in the wrong direction. --- MultiMail/Win * Origin: Outpost BBS * Johnson City, TN (1:18/200) .