Hi Colin,

Could you please check in weewx.conf if your setting for group_distance is 
set to km? Like this:

    [[Defaults]]        
        [[[Units]]]            
            # The following section sets what unit to use for each unit 
group.
            # NB: The unit is always in the singular. I.e., 'mile_per_hour',
            # NOT 'miles_per_hour'
            [[[[Groups]]]]                
                group_altitude = meter    # Options are 'foot' or 'meter'
                group_degree_day = degree_C_day    # Options are 
'degree_F_day' or 'degree_C_day'
                *group_distance = km    # Options are 'mile' or 'km'*
                group_pressure = hPa    # Options are 'inHg', 'mmHg', 
'mbar', or 'hPa'
                group_rain = mm    # Options are 'inch', 'cm', or 'mm'
                group_rainrate = mm_per_hour    # Options are 
'inch_per_hour', 'cm_per_hour', or 'mm_per_hour'
                group_speed = km_per_hour    # Options are 'mile_per_hour', 
'km_per_hour', 'knot', or 'meter_per_second'
                group_speed2 = km_per_hour2    # Options are 
'mile_per_hour2', 'km_per_hour2', 'knot2', or 'meter_per_second2'
                group_temperature = degree_C    # Options are 'degree_F' or 
'degree_C'

Regards, Arend
Op vrijdag 25 december 2020 om 19:40:31 UTC+1 schreef [email protected]:

> With the GeoNet problem I had now fixed I am also getting distances to 
> earthquake locations in miles, when the rest of my site is km
>
> Thanks
> Colin
>
> On Fri, 25 Dec 2020, 23:35 [email protected], <[email protected]> wrote:
>
>> yes, it works, thanks for the adjustment.
>> Ton
>> http://weerstationnibbixwoud.nl/
>>
>> Op woensdag 28 oktober 2020 om 18:45:37 UTC+1 schreef [email protected]:
>>
>>> Hallo Arend,
>>>
>>> Yes, it's working!
>>>
>>> Just aligning the new line after #25-10.4 solved the problem, manymany 
>>> thanks! 
>>>
>>> Best regards, Keimpe
>>>
>>> Op woensdag 28 oktober 2020 om 15:31:29 UTC+1 schreef Arend:
>>>
>>>> Hi Keimpe,
>>>>
>>>> I have a suspicion why it didn't work out for you. Copying your code 
>>>> from your previous post into a text editor revealed that the changes you 
>>>> made were not properly alligned. The Python language is sensitive to 
>>>> indentation. The screenshot below shows a green and red line. The second 
>>>> eqmag (#25-10.4) should have been lined up to the green line like the 
>>>> first 
>>>> eqmag (#25-10.3). But instead it was lined up to the red line, probably 
>>>> causing an exception (error) which would result in displaying that there 
>>>> was no earthquake data available.
>>>>
>>>> [image: Toelichting uitlijning code.png]
>>>>
>>>> I have included a new version of belchertown.py that has already been 
>>>> modified with the correct changes. Could you be so kind to download this 
>>>> file and use it to replace the existing belchertown.py. If this works then 
>>>> I will use this file for a pull request.
>>>>
>>>>
>>>> Mvg, Arend
>>>>
>>>>
>>>> Op woensdag 28 oktober 2020 om 11:38:34 UTC+1 schreef [email protected]
>>>> :
>>>>
>>>>> Hoi Arend,
>>>>>
>>>>> Thanks for your efforts.
>>>>>
>>>>> Now changed back to the original file and (of cours) the EQ data is 
>>>>> back, as expected in 'mijl'.
>>>>> In the log there is no related error, the only recursive error is a 
>>>>> Failed to publish record .... to WOW.
>>>>> Undermentioned you may find the earthquake section of belchertown.py 
>>>>> with the recommended changes. Between empty lines the original lines ar 
>>>>> commented out with #25-10.1 (#date and 1 is the line-number as suggested 
>>>>> in 
>>>>> your GitHub post), following the line copied from GitHub.
>>>>>
>>>>> Regards, Keimpe
>>>>>
>>>>>  
>>>>>         """
>>>>>         Earthquake Data
>>>>>         """
>>>>>         # Only process if Earthquake data is enabled
>>>>>         if self.generator.skin_dict['Extras']['earthquake_enabled'] == 
>>>>> "1":
>>>>>             earthquake_file = html_root + "/json/earthquake.json"
>>>>>             earthquake_stale_timer = 
>>>>> self.generator.skin_dict['Extras']['earthquake_stale']
>>>>>             latitude = 
>>>>> self.generator.config_dict['Station']['latitude']
>>>>>             longitude = 
>>>>> self.generator.config_dict['Station']['longitude']
>>>>>
>>>>> #25-10.1    distance_unit = converter.group_unit_dict["group_distance"]
>>>>>             distance_unit = 
>>>>> self.generator.converter.group_unit_dict["group_distance"]
>>>>>
>>>>>             eq_distance_label = 
>>>>> self.generator.skin_dict['Units']['Labels'].get(distance_unit, "")
>>>>>             eq_distance_round = 
>>>>> self.generator.skin_dict['Units']['StringFormats'].get(distance_unit, 
>>>>> "%.1f")
>>>>>             earthquake_maxradiuskm = 
>>>>> self.generator.skin_dict['Extras']['earthquake_maxradiuskm']
>>>>>             #Sample URL from Belchertown Weather: 
>>>>> http://earthquake.usgs.gov/fdsnws/event/1/query?limit=1&lat=42.223&lon=-72.374&maxradiuskm=1000&format=geojson&nodata=204&minmag=2
>>>>>             if self.generator.skin_dict['Extras']['earthquake_server'] 
>>>>> == "USGS":
>>>>>                 earthquake_url = "
>>>>> http://earthquake.usgs.gov/fdsnws/event/1/query?limit=1&lat=%s&lon=%s&maxradiuskm=%s&format=geojson&nodata=204&minmag=2";
>>>>>  
>>>>> % ( latitude, longitude, earthquake_maxradiuskm )
>>>>>             elif 
>>>>> self.generator.skin_dict['Extras']['earthquake_server'] == "GeoNet":
>>>>>                 earthquake_url = "
>>>>> https://api.geonet.org.nz/quake?MMI=4";
>>>>>             earthquake_is_stale = False
>>>>>             
>>>>>             # Determine if the file exists and get it's modified time
>>>>>             if os.path.isfile( earthquake_file ):
>>>>>                 if ( int( time.time() ) - int( os.path.getmtime( 
>>>>> earthquake_file ) ) ) > int( earthquake_stale_timer ):
>>>>>                     earthquake_is_stale = True
>>>>>             else:
>>>>>                 # File doesn't exist, download a new copy
>>>>>                 earthquake_is_stale = True
>>>>>             
>>>>>             # File is stale, download a new copy
>>>>>             if earthquake_is_stale:
>>>>>                 # Download new earthquake data
>>>>>                 try:
>>>>>                     try:
>>>>>                         # Python 3
>>>>>                         from urllib.request import Request, urlopen
>>>>>                     except ImportError:
>>>>>                         # Python 2
>>>>>                         from urllib2 import Request, urlopen
>>>>>                     user_agent = 'Mozilla/5.0 (Macintosh; U; Intel Mac 
>>>>> OS X 10_6_4; en-US) AppleWebKit/534.3 (KHTML, like Gecko) 
>>>>> Chrome/6.0.472.63 
>>>>> Safari/534.3'
>>>>>                     headers = { 'User-Agent' : user_agent }
>>>>>                     req = Request( earthquake_url, None, headers )
>>>>>                     response = urlopen( req )
>>>>>                     page = response.read()
>>>>>                     response.close()
>>>>>                     if weewx.debug:
>>>>>                         logdbg( "Downloading earthquake data using 
>>>>> urllib2 was successful" )
>>>>>                 except Exception as forecast_error:
>>>>>                     if weewx.debug:
>>>>>                         logdbg( "Error downloading earthquake data 
>>>>> with urllib2, reverting to curl and subprocess. Full error: %s" % 
>>>>> forecast_error )
>>>>>                     # Nested try - only execute if the urllib2 method 
>>>>> fails
>>>>>                     try:
>>>>>                         import subprocess
>>>>>                         command = 'curl -L --silent "%s"' % 
>>>>> earthquake_url
>>>>>                         p = subprocess.Popen(command, shell=True, 
>>>>> stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
>>>>>                         page = p.communicate()[0]
>>>>>                         if weewx.debug:
>>>>>                             logdbg( "Downloading earthquake data with 
>>>>> curl was successful." )
>>>>>                     except Exception as error:
>>>>>                         raise Warning( "Error downloading earthquake 
>>>>> data using urllib2 and subprocess curl. Your software may need to be 
>>>>> updated, or the URL is incorrect. You are trying to use URL: %s, and the 
>>>>> error is: %s" % ( earthquake_url, error ) )
>>>>>
>>>>>                 # Save earthquake data to file. w+ creates the file if 
>>>>> it doesn't exist, and truncates the file and re-writes it everytime
>>>>>                 try:
>>>>>                     with open( earthquake_file, 'wb+' ) as file:
>>>>>                         # Python 2/3
>>>>>                         try:
>>>>>                             file.write( page.encode('utf-8') )
>>>>>                         except:
>>>>>                             file.write( page )
>>>>>                         if weewx.debug:
>>>>>                             logdbg( "Earthquake data saved to %s" % 
>>>>> earthquake_file )
>>>>>                 except IOError as e:
>>>>>                     raise Warning( "Error writing earthquake data to 
>>>>> %s. Reason: %s" % ( earthquake_file, e) )
>>>>>
>>>>>             # Process the earthquake file        
>>>>>             with open( earthquake_file, "r" ) as read_file:
>>>>>                 try:
>>>>>                     eqdata = json.load( read_file )
>>>>>                 except:
>>>>>                     eqdata = ""
>>>>>             
>>>>>             try:
>>>>>                 if 
>>>>> self.generator.skin_dict['Extras']['earthquake_server'] == "USGS":
>>>>>                     eqtime = 
>>>>> eqdata["features"][0]["properties"]["time"] / 1000
>>>>>                     equrl = eqdata["features"][0]["properties"]["url"]
>>>>>                     eqplace = 
>>>>> eqdata["features"][0]["properties"]["place"]
>>>>>
>>>>> #25-10.3            eqmag = eqdata["features"][0]["properties"]["mag"]
>>>>>                     eqmag = locale.format("%g", 
>>>>> float(eqdata["features"][0]["properties"]["mag"]) )
>>>>>
>>>>>                 elif 
>>>>> self.generator.skin_dict['Extras']['earthquake_server'] == "GeoNet":
>>>>>                     eqtime = 
>>>>> eqdata["features"][0]["properties"]["time"]
>>>>>                     #convert time to UNIX format
>>>>>                     eqtime = eqtime.replace("Z","")
>>>>>                     eqtime = datetime.datetime.fromisoformat(eqtime)
>>>>>                     eqtime = 
>>>>> int(eqtime.replace(tzinfo=datetime.timezone.utc).timestamp())
>>>>>                     equrl = ("https://www.geonet.org.nz/earthquake/"; +
>>>>>                             
>>>>> eqdata["features"][0]["properties"]["publicID"])
>>>>>                     eqplace = 
>>>>> eqdata["features"][0]["properties"]["locality"]
>>>>>
>>>>> #25-10.4        eqmag = 
>>>>> round(eqdata["features"][0]["properties"]["magnitude"],1)
>>>>>                 eqmag = locale.format("%g", 
>>>>> float(round(eqdata["features"][0]["properties"]["magnitude"],1)) )
>>>>>
>>>>>                 eqlat = str( round( 
>>>>> eqdata["features"][0]["geometry"]["coordinates"][1], 4 ) )
>>>>>                 eqlon = str( round( 
>>>>> eqdata["features"][0]["geometry"]["coordinates"][0], 4 ) )
>>>>>                 eqdistance_bearing = 
>>>>> self.get_gps_distance((float(latitude), float(longitude)), 
>>>>>                                                           
>>>>>  (float(eqlat), float(eqlon)), 
>>>>>                                                             
>>>>> distance_unit)
>>>>>
>>>>> #25-10.2        eqdistance = eq_distance_round % eqdistance_bearing[0]
>>>>>                 eqdistance = locale.format("%g", 
>>>>> float(eq_distance_round % eqdistance_bearing[0]) )
>>>>>                 
>>>>>                 eqbearing = eqdistance_bearing[1]
>>>>>                 eqbearing_raw = eqdistance_bearing[2]
>>>>>             except:
>>>>>                 # No earthquake data
>>>>>                 eqtime = label_dict["earthquake_no_data"]
>>>>>                 equrl = ""
>>>>>                 eqplace = ""
>>>>>                 eqmag = ""
>>>>>                 eqlat = ""
>>>>>                 eqlon = ""
>>>>>                 eqdistance = ""
>>>>>                 eqbearing = ""
>>>>>                 eqbearing_raw = ""
>>>>>             
>>>>>         else:
>>>>>             eqtime = ""
>>>>>             equrl = ""
>>>>>             eqplace = ""
>>>>>             eqmag = ""
>>>>>             eqlat = ""
>>>>>             eqlon = ""
>>>>>             eqdistance = ""
>>>>>             eqbearing = ""
>>>>>             eqbearing_raw = ""
>>>>>             eq_distance_label = ""
>>>>>             
>>>>>
>>>>> Op dinsdag 27 oktober 2020 om 22:54:22 UTC+1 schreef Arend:
>>>>>
>>>>>> I am going to make a pull request out of this issue, hopefully Pat 
>>>>>> will incorporate this fix into the master. That way you will be able to 
>>>>>> download it from the repository.
>>>>>> In the mean time you could try to replace the modified file with the 
>>>>>> original from the repo and see what happens. Did you check your logs for 
>>>>>> errors?
>>>>>>
>>>>>> Mvg, Arend
>>>>>>
>>>>>> Op dinsdag 27 oktober 2020 om 21:36:04 UTC+1 schreef 
>>>>>> [email protected]:
>>>>>>
>>>>>>> Hi Arend,
>>>>>>>
>>>>>>> Thanks for the suggestions.
>>>>>>>
>>>>>>> - The JSON tels me about an eartquake  6 km E of Belle-Plagne in 
>>>>>>> France, and lat=53.254&lon=5.895&maxradiuskm=2000 as set in my config, 
>>>>>>> seems OK to me.
>>>>>>> - The config is same as yours
>>>>>>> - I checked the changes in belchertown.py, the only difference with 
>>>>>>> your fixes is the order of the 4 lines, they do not come across these 
>>>>>>> consecutively from top to bottom as you suggested, but first 1 (line 
>>>>>>> 1060), 
>>>>>>> then 3 (line 1139), then 4 (line 1152) and finally 2 (line 1161). I 
>>>>>>> copy/pasted the lines (again) from GitHub in the editor.
>>>>>>>
>>>>>>> And still no data...
>>>>>>>
>>>>>>> Regards, Keimpe   
>>>>>>>
>>>>>>> Op dinsdag 27 oktober 2020 om 20:51:31 UTC+1 schreef Arend:
>>>>>>>
>>>>>>>> Goedenavond Keimpe,
>>>>>>>>
>>>>>>>> You can check your earthquake file typing this into your browser:
>>>>>>>>
>>>>>>>> http://oentsjerk.eu/json/earthquake.json
>>>>>>>>
>>>>>>>> It shows the same data as mine which means it is loaded/updated 
>>>>>>>> correctly, check the epoch timestamp to verify when it was 
>>>>>>>> downloaded/updated.
>>>>>>>> Are you sure you copied the changes the right way (without 
>>>>>>>> additional tabs or spaces)?
>>>>>>>> Are there no errors in your logs?
>>>>>>>> My configuration shows this:
>>>>>>>>
>>>>>>>>             # Earthquake defaults
>>>>>>>>             earthquake_enabled = 1
>>>>>>>>             earthquake_maxradiuskm = 2000
>>>>>>>>             earthquake_stale = 10740
>>>>>>>>             earthquake_server = USGS
>>>>>>>>
>>>>>>>> Does it match yours?
>>>>>>>>
>>>>>>>> Mvg, Arend
>>>>>>>>
>>>>>>>> Op dinsdag 27 oktober 2020 om 19:30:46 UTC+1 schreef 
>>>>>>>> [email protected]:
>>>>>>>>
>>>>>>>>> Hi Arend,
>>>>>>>>>
>>>>>>>>> Stil no recent earthquake data avilable (http://oentsjerk.eu). 
>>>>>>>>> Can I have your URL to check the actuality?
>>>>>>>>>
>>>>>>>>> Regards, Keimpe
>>>>>>>>>  
>>>>>>>>>
>>>>>>>>> Op zondag 25 oktober 2020 om 11:46:06 UTC+1 schreef 
>>>>>>>>> [email protected]:
>>>>>>>>>
>>>>>>>>>> Goedemiddag Arend,
>>>>>>>>>>
>>>>>>>>>> Thnx, changes made!
>>>>>>>>>> At this time it says 'no recent data avilabale' so I have to wait 
>>>>>>>>>> for een eartqauke data-update.
>>>>>>>>>> Keep you informed.
>>>>>>>>>>
>>>>>>>>>> Regards, Keimpe
>>>>>>>>>>
>>>>>>>>>> Op zaterdag 24 oktober 2020 om 21:46:02 UTC+2 schreef Arend:
>>>>>>>>>>
>>>>>>>>>>> Hi Keimpe,
>>>>>>>>>>>
>>>>>>>>>>> I had the same problem and created an issue about this in the 
>>>>>>>>>>> repo. You can use the fix, let me know if it works for you.
>>>>>>>>>>>
>>>>>>>>>>> https://github.com/poblabs/weewx-belchertown/issues/422
>>>>>>>>>>>
>>>>>>>>>>> Mvg, Arend
>>>>>>>>>>>
>>>>>>>>>>> Op zaterdag 24 oktober 2020 om 21:04:04 UTC+2 schreef 
>>>>>>>>>>> [email protected]:
>>>>>>>>>>>
>>>>>>>>>>>> Thnx Vince, Strange, also on mobile, WLAN and 4G network, the 
>>>>>>>>>>>> same problem so it can't be a localization issue related to the 
>>>>>>>>>>>> network.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Op zaterdag 24 oktober 2020 om 20:49:37 UTC+2 schreef vince:
>>>>>>>>>>>>
>>>>>>>>>>>>> On Saturday, October 24, 2020 at 10:47:03 AM UTC-7, 
>>>>>>>>>>>>> [email protected] wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I'm facing just a minor issue: in the skin.conf is defined 
>>>>>>>>>>>>>> 'earthquake_maxradiuskm = 2000'. Therefore I'm expecting a 
>>>>>>>>>>>>>> distance in 
>>>>>>>>>>>>>> km's, but the actual distance as well as the units are still in 
>>>>>>>>>>>>>> miles (mijl 
>>>>>>>>>>>>>> in Dutch). How to resolve this? (http://oentsjerk.eu/)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> I see km when I look at your page. 
>>>>>>>>>>>>>
>>>>>>>>>>>> -- 
>>
> You received this message because you are subscribed to the Google Groups 
>> "weewx-user" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>>
> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/weewx-user/a4225415-7a3f-4842-9056-c85738b47d0an%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/weewx-user/a4225415-7a3f-4842-9056-c85738b47d0an%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/ff274b89-295d-4de5-b899-8c1551c40e94n%40googlegroups.com.

Reply via email to