Hallo, 
nach DB-Löschung und Neustart alles IO bis auf db-Generierung durch 
airq_conf.py
Ich habe einfach per Hand eine neue SCHEMA Vorlage erstellt
          ('og_Temp',        'REAL'),
          ('og_Humidity',    'REAL'),
          ('og_HumAbs',      'REAL'),
          ('og_Dewpoint',    'REAL'),
          ('og_Pressure',    'REAL'),
          ('og_Altimeter',   'REAL'),
          ('og_Barometer',   'REAL'),
          ('og_co_m',        'REAL'),
          ('og_co',          'REAL'),
          ('og_co2',         'REAL'),
          ('og_h2s',         'REAL'),
          ('og_no2',         'REAL'),
          ('og_pm1_0',       'REAL'),
          ('og_pm2_5',       'REAL'),
....
         ('eg_PerfIdx',     'REAL'),
          ('eg_HealthIdx',   'REAL'),
          ('eg_cnt0_3',      'REAL'),
          ('eg_cnt0_5',      'REAL'),
          ('eg_cnt1_0',      'REAL'),
          ('eg_cnt2_5',      'REAL'),
          ('eg_cnt5_0',      'REAL'),
          ('eg_cnt10_0',     'REAL'),
          ('eg_TypPS',       'REAL'),
          ('eg_Battery',     'REAL'),
          ('eg_DoorEvent',   'REAL'),
          ('eg_HumAbsDelta', 'REAL'),
          ('eg_CO2delta',    'REAL'),
mit eine SQLITE-Datenbank läuft es mit zwei airQ's einer im Obergeschoss 
und einer im Erdgeschoss.
Ich muss eine kleine Änderung eingestehen 
in install.py  

files=[('bin/user', ['bin/user/airQ_corant.py','bin/user/airq_conf.py'] ) , 
                       ('bin', ['bin/airq_conf'])]

ein ")" eingefügt.

Hartmut
[email protected] schrieb am Samstag, 4. September 2021 um 15:12:46 UTC+2:

> Ja gibt es!
>
> [email protected] schrieb am Samstag, 4. September 2021 um 15:10:11 UTC+2:
>
>> Gibt es den Eintrag user.airQ_corant.AirqUnits in der Zeile prep_services
>> ?
>>
>> [email protected] schrieb am Samstag, 4. September 2021 um 12:32:26 
>> UTC+2:
>>
>>> Hallo,
>>> der Hinweis mit /lang in /Seasons war Gold wert.
>>> Und hier der Auszug aus weewx.conf
>>> [airQ]
>>>
>>>     [[first_device]]
>>>         host = 192.168.38.18
>>>         password = passwd
>>>         prefix = og
>>>         #altitude = set_if_not_station_altitude
>>>
>>>     [[second_device]]
>>>         host = 192.168.38.19
>>>         password = passwd
>>>         prefix = eg
>>>         #altitude = set_if_not_station_altitude
>>>
>>> Jetzt kommt:
>>> Sep  4 12:25:44 ba001 weewx[11803] INFO weewx.reportengine: Using 
>>> localization file /home/weewx/skins/airQ/lang/de.conf for report 
>>> 'airqReport'
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: 
>>> Generate failed with exception '<class 'NameMapper.NotFound'>'
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: **** 
>>> Ignoring template /home/weewx/skins/airQ/first_device.html.tmpl
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: **** 
>>> Reason: cannot find 'milligram_per_meter_cubed' while searching for 
>>> 'current.og_co.milligram_per_meter_cubed'
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: ****  
>>> Traceback (most recent call last):
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: ****    
>>> File "/home/weewx/bin/weewx/cheetahgenerator.py", line 332, in generate
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: 
>>> ****      unicode_string = compiled_template.respond()
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: ****    
>>> File "_home_weewx_skins_airQ_first_device_html_tmpl.py", line 328, in 
>>> respond
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: ****  
>>> NameMapper.NotFound: cannot find 'milligram_per_meter_cubed' while 
>>> searching for 'current.og_co.milligram_per_meter_cubed'
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: 
>>> Generate failed with exception '<class 'NameMapper.NotFound'>'
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: **** 
>>> Ignoring template /home/weewx/skins/airQ/second_device.html.tmpl
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: **** 
>>> Reason: cannot find 'milligram_per_meter_cubed' while searching for 
>>> 'current.eg_co.milligram_per_meter_cubed'
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: ****  
>>> Traceback (most recent call last):
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: ****    
>>> File "/home/weewx/bin/weewx/cheetahgenerator.py", line 332, in generate
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: 
>>> ****      unicode_string = compiled_template.respond()
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: ****    
>>> File "_home_weewx_skins_airQ_second_device_html_tmpl.py", line 328, in 
>>> respond
>>> Sep  4 12:25:45 ba001 weewx[11803] ERROR weewx.cheetahgenerator: ****  
>>> NameMapper.NotFound: cannot find 'milligram_per_meter_cubed' while 
>>> searching for 'current.eg_co.milligram_per_meter_cubed'
>>>
>>> Nach Neustart
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.cmon: cpuinfo: CPU variant: 
>>> 0x0
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.cmon: cpuinfo: CPU part: 
>>> 0xc07
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.cmon: cpuinfo: CPU 
>>> revision: 4
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.cmon: cpuinfo: Hardware: 
>>> Allwinner sun7i (A20) Family
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.cmon: cpuinfo: Revision: 
>>> 0000
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.cmon: cpuinfo: Serial: 
>>> 1651660f08c142bc
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.airQ: air-Q 0.7 initialize 
>>> units
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.airQ: device 
>>> 'first_device': observation group dict {'og_Temp': 'group_temperature', 
>>> 'og_Humidity': 'group_percent', 'og_HumAbs': 'group_concentration', 
>>> 'og_Dewpoint': 'group_temperature', 'og_Pressure': 'group_pressure', 
>>> 'og_Altimeter': 'group_pressure', 'og_Barometer': 'group_pressure', 
>>> 'og_co_m': 'group_concentration', 'og_co': 'group_fraction', 'og_co2': 
>>> 'group_fraction', 'og_h2s': 'group_concentration', 'og_no2_m': 
>>> 'group_concentration', 'og_no2': 'group_fraction', 'og_pm1_0': 
>>> 'group_concentration', 'og_pm2_5': 'group_concentration', 'og_pm10_0': 
>>> 'group_concentration', 'og_o3_m': 'group_concentration', 'og_o3': 
>>> 'group_fraction', 'og_so2_m': 'group_concentration', 'og_so2': 
>>> 'group_fraction', 'og_TVOC': 'group_fraction', 'og_o2': 'group_percent', 
>>> 'og_noise': 'group_db', 'og_PerfIdx': 'group_percent', 'og_HealthIdx': 
>>> 'group_percent', 'og_cnt0_3': 'group_count', 'og_cnt0_5': 'group_count', 
>>> 'og_cnt1_0': 'group_count', 'og_cnt2_5': 'group_count', 'og_cnt5_0': 
>>> 'group_count', 'og_cnt10_0': 'group_count'}
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.airQ: device 
>>> 'second_device': observation group dict {'eg_Temp': 'group_temperature', 
>>> 'eg_Humidity': 'group_percent', 'eg_HumAbs': 'group_concentration', 
>>> 'eg_Dewpoint': 'group_temperature', 'eg_Pressure': 'group_pressure', 
>>> 'eg_Altimeter': 'group_pressure', 'eg_Barometer': 'group_pressure', 
>>> 'eg_co_m': 'group_concentration', 'eg_co': 'group_fraction', 'eg_co2': 
>>> 'group_fraction', 'eg_h2s': 'group_concentration', 'eg_no2_m': 
>>> 'group_concentration', 'eg_no2': 'group_fraction', 'eg_pm1_0': 
>>> 'group_concentration', 'eg_pm2_5': 'group_concentration', 'eg_pm10_0': 
>>> 'group_concentration', 'eg_o3_m': 'group_concentration', 'eg_o3': 
>>> 'group_fraction', 'eg_so2_m': 'group_concentration', 'eg_so2': 
>>> 'group_fraction', 'eg_TVOC': 'group_fraction', 'eg_o2': 'group_percent', 
>>> 'eg_noise': 'group_db', 'eg_PerfIdx': 'group_percent', 'eg_HealthIdx': 
>>> 'group_percent', 'eg_cnt0_3': 'group_count', 'eg_cnt0_5': 'group_count', 
>>> 'eg_cnt1_0': 'group_count', 'eg_cnt2_5': 'group_count', 'eg_cnt5_0': 
>>> 'group_count', 'eg_cnt10_0': 'group_count'}
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.airQ: air-Q 0.7 service
>>> Sep  4 12:29:53 ba001 weewx[12149] INFO user.airQ: device 'first_device' 
>>> host address '192.168.38.18' prefix 'og' query interval 5.0 s altitude 54 m
>>> Sep  4 12:29:54 ba001 weewx[12149] INFO user.airQ: device 'first_device' 
>>> device id: 99...2a
>>> Sep  4 12:29:54 ba001 weewx[12149] INFO user.airQ: device 'first_device' 
>>> firmware version: 1.20.2.r4_D_1.75
>>> Sep  4 12:29:54 ba001 weewx[12149] INFO user.airQ: device 'first_device' 
>>> sensors: ['co', 'co2', 'no2', 'o3', 'oxygen', 'particulates', 'pressure', 
>>> 'so2', 'sound', 'temperature', 'tvoc', 'humidity', 'humidity_abs', 'dewpt']
>>> Sep  4 12:29:54 ba001 weewx[12149] INFO user.airQ: device 'first_device' 
>>> concentration units config: µg/m^3
>>> Sep  4 12:29:54 ba001 weewx[12149] INFO user.airQ: thread 
>>> 'first_device', host '192.168.38.18': initialized
>>> Sep  4 12:29:54 ba001 weewx[12149] INFO user.airQ: device 'first_device' 
>>> QFF calculation temperature source: outTemp
>>> Sep  4 12:29:54 ba001 weewx[12149] INFO user.airQ: thread 
>>> 'first_device', host '192.168.38.18': starting
>>> Sep  4 12:29:54 ba001 weewx[12149] INFO user.airQ: device 
>>> 'second_device' host address '192.168.38.19' prefix 'eg' query interval 5.0 
>>> s altitude 54 m
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO user.airQ: thread 
>>> 'first_device', host '192.168.38.18': 200 - OK
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO user.airQ: device 
>>> 'second_device' device id: 21...63
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO user.airQ: device 
>>> 'second_device' firmware version: 1.20.2.r4_D_1.75
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO user.airQ: device 
>>> 'second_device' sensors: ['co', 'co2', 'no2', 'particulates', 'pressure', 
>>> 'sound', 'temperature', 'tvoc', 'humidity', 'humidity_abs', 'dewpt']
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO user.airQ: device 
>>> 'second_device' concentration units config: µg/m^3
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO user.airQ: thread 
>>> 'second_device', host '192.168.38.19': initialized
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO user.airQ: device 
>>> 'second_device' QFF calculation temperature source: outTemp
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO user.airQ: thread 
>>> 'second_device', host '192.168.38.19': starting
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO user.airQ: 2 air-Q devices found
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO weewx.engine: StdConvert target 
>>> unit is 0x10
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO weewx.wxservices: StdWXCalculate 
>>> will use data binding wx_binding
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO weewx.engine: Archive will use 
>>> data binding wx_binding
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO weewx.engine: Record generation 
>>> will be attempted in 'hardware'
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO weewx.engine: Using archive 
>>> interval of 300 seconds (specified in weewx configuration)
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO __main__: Starting up weewx 
>>> version 4.6.0b1
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO weewx.engine: Using binding 
>>> 'wx_binding' to database 'weeAirQxHaus'
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO weewx.manager: Starting backfill 
>>> of daily summaries
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO weewx.manager: Daily summaries 
>>> up to date
>>> Sep  4 12:29:55 ba001 weewx[12149] INFO weewx.engine: Starting main 
>>> packet loop.
>>> Sep  4 12:29:56 ba001 weewx[12149] INFO user.airQ: thread 
>>> 'second_device', host '192.168.38.19': 200 - OK
>>>
>>> Danke 
>>> Hartmut
>>> [email protected] schrieb am Samstag, 4. September 2021 um 10:41:08 
>>> UTC+2:
>>>
>>>> Ich sehe es mir an, bitte aber noch um etwas Geduld.
>>>>
>>>> Folgende Punkte vorab:
>>>>
>>>>    - Bei WeeWX 4.6 (im Gegensatz zu 4.5) sollte es ein Verzeichnis 
>>>>    /home/weewx/skins/Seasons/lang geben, das mehrere Dateien mit .conf 
>>>>    am Ende (darunter de.conf) enthält. Wenn nicht, bitte von Github 
>>>>    herunterladen und dahin kopieren.
>>>>    - In /home/weewx/weewx.conf muß es im Abschnitt [[Seasons]] einen 
>>>>    Eintrag "lang = de" geben. Den gab es früher nicht, also muß er 
>>>>    ergänzt werden. Dann bitte prüfen, ob die Seasons-Skin noch richtig 
>>>> erzeugt 
>>>>    wird.
>>>>    - Die Abschnitte für die einzelnen airQs können sprechende Namen 
>>>>    haben. Das muß nicht "first_device" usw. sein. Das kann der Aufstellort 
>>>> des 
>>>>    Gerätes sein.
>>>>
>>>> Hilfreich wäre noch der Abschnitt [airQ] aus /home/weewx/weewx.conf.
>>>>
>>>> [email protected] schrieb am Samstag, 4. September 2021 um 08:32:24 
>>>> UTC+2:
>>>>
>>>>> Guten Morgen,
>>>>> ich habe versucht zwei airQ's hinzuzufügen.
>>>>> Ich verwende weewx 4.6.0.b1 
>>>>> mit Pythin 3.9 
>>>>> Debian Bullseye auf einem BananaPi
>>>>>
>>>>> als Driver habe ich "cmon" eingesetzt sonst wird die Datenbank einfach 
>>>>> zu groß
>>>>> cmon.sdb ist eingerichtet dann der Versuch
>>>>> 1.
>>>>> root@ba001:/home/weewx/bin# ./airq_conf --device=first_device 
>>>>> --add-columns 
>>>>> Using configuration file /home/weewx/weewx.conf
>>>>> Adding columns for device 'first_device', prefix 'og'
>>>>> Traceback (most recent call last):
>>>>>   File "/home/weewx/bin/./airq_conf", line 6, in <module>
>>>>>     user.airq_conf.main()
>>>>>   File "/home/weewx/bin/user/airq_conf.py", line 154, in main
>>>>>     addDropColumns(config_dict, db_binding, device, action_add, 
>>>>> action_drop)
>>>>>   File "/home/weewx/bin/user/airq_conf.py", line 214, in addDropColumns
>>>>>     schema = manager_dict.get('schema',{}).get('table',{})
>>>>> AttributeError: 'list' object has no attribute 'get'
>>>>>
>>>>> root@ba001:/home/weewx/bin# ./airq_conf --device=second_device 
>>>>> --add-columns 
>>>>> Using configuration file /home/weewx/weewx.conf
>>>>> Adding columns for device 'second_device', prefix 'eg'
>>>>> Traceback (most recent call last):
>>>>>   File "/home/weewx/bin/./airq_conf", line 6, in <module>
>>>>>     user.airq_conf.main()
>>>>>   File "/home/weewx/bin/user/airq_conf.py", line 154, in main
>>>>>     addDropColumns(config_dict, db_binding, device, action_add, 
>>>>> action_drop)
>>>>>   File "/home/weewx/bin/user/airq_conf.py", line 214, in addDropColumns
>>>>>     schema = manager_dict.get('schema',{}).get('table',{})
>>>>> AttributeError: 'list' object has no attribute 'get'
>>>>>
>>>>> 2.
>>>>> root@ba001:/home/weewx/bin# ./airq_conf --create-skin
>>>>> Using configuration file /home/weewx/weewx.conf
>>>>> device 'first_device':
>>>>>   sensors ['co', 'co2', 'no2', 'o3', 'oxygen', 'particulates', 
>>>>> 'pressure', 'so2', 'sound', 'temperature', 'tvoc', 'humidity', 
>>>>> 'humidity_abs', 'dewpt']
>>>>>   obstypes in database []
>>>>> device 'second_device':
>>>>>   sensors ['co', 'co2', 'no2', 'particulates', 'pressure', 'sound', 
>>>>> 'temperature', 'tvoc', 'humidity', 'humidity_abs', 'dewpt']
>>>>>   obstypes in database []
>>>>> Seasons skin path: /home/weewx/skins/Seasons
>>>>> airQ skin path:    /home/weewx/skins/airQ
>>>>> Seasons skin lang: None
>>>>> '/home/weewx/skins/airQ' already exists, contents will be overwritten
>>>>> copy seasons.css
>>>>> copy seasons.js
>>>>> copy favicon.ico
>>>>> font directory already exists
>>>>> copy OpenSans-Regular.ttf
>>>>> copy OpenSans.woff
>>>>> copy OpenSans-Bold.ttf
>>>>> copy OpenSans.woff2
>>>>> copy Kanit-Bold.ttf
>>>>> copy license.txt
>>>>> copy OFL.txt
>>>>> copy Kanit-Regular.ttf
>>>>> language directory already exists
>>>>> creating skin file '/home/weewx/skins/airQ/skin.conf'
>>>>>   writing section [CheetahGenerator]
>>>>>   writing section [CopyGenerator]
>>>>>   writing section [ImageGenerator]
>>>>>   writing section [Generators]
>>>>>   done.
>>>>> no language defined
>>>>> Traceback (most recent call last):
>>>>>   File "/home/weewx/bin/./airq_conf", line 6, in <module>
>>>>>     user.airq_conf.main()
>>>>>   File "/home/weewx/bin/user/airq_conf.py", line 152, in main
>>>>>     createSkin(config_path,config_dict, db_binding)
>>>>>   File "/home/weewx/bin/user/airq_conf.py", line 664, in createSkin
>>>>>     airqlang = 
>>>>> SkinLanguage(seasons_skin_path,airq_skin_path,seasons_lang)
>>>>>   File "/home/weewx/bin/user/airq_conf.py", line 805, in __init__
>>>>>     if os.path.isfile(self.seasons_lang_path):
>>>>>   File "/usr/lib/python3.9/genericpath.py", line 30, in isfile
>>>>>     st = os.stat(path)
>>>>> TypeError: stat: path should be string, bytes, os.PathLike or integer, 
>>>>> not NoneType
>>>>>
>>>>> 3. jedoch
>>>>> root@ba001:/home/weewx/bin# ./airq_conf --device=second_device 
>>>>> --set-location=53.605963,11.341407
>>>>> Using configuration file /home/weewx/weewx.conf
>>>>> device 'second_device' host '192.168.38.19' set {'geopos': {'lat': 
>>>>> 53.605963, 'long': 11.341407}}
>>>>> Are you sure you want to proceed (y/n)?y
>>>>> id: 21...63
>>>>> content: Success: new setting saved for key 'geopos': {'lat': 
>>>>> 53.60597, 'long': 11.34141}
>>>>> und
>>>>> root@ba001:/home/weewx/bin# ./airq_conf --device=second_device 
>>>>> --set-ntp=de
>>>>> Using configuration file /home/weewx/weewx.conf
>>>>> device 'second_device' host '192.168.38.19' set {'TimeServer': '
>>>>> ptbtime3.ptb.de'}
>>>>> Are you sure you want to proceed (y/n)?y
>>>>> id: 21..63
>>>>> content: Success: new setting saved for key 'TimeServer': 
>>>>> ptbtime3.ptb.de
>>>>> erfolgreich
>>>>>
>>>>> Ich bitte um Hilfe
>>>>>
>>>>> Hartmut
>>>>>
>>>>

-- 
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/3d8370e3-9e47-4995-bfc7-9df27fc354f9n%40googlegroups.com.

Reply via email to