Tom, I forgot to mention that I also modernized the logging for this driver. that was included in the second commit. I sent a pull request to the original author this morning.
On Monday, July 25, 2022 at 9:01:33 AM UTC-4 Doug Jenkins wrote: > Jan & Tom: > > I might be a bit late on this thread, but I modified the driver and > created an installer package for it. I was able to test the installer, but > I cannot test the driver as I am not running on a Raspberry PI with a > BME280 and the other components. > The Repo for this change is in my ddjlabs org on GitHub here: > https://github.com/ddjlabs/BYOWS_RPi > > JAN: If you have resolved your issue with Tom's suggestion, then please > let me know. I will send this to Jardi Martinez (original author) via pull > request so he can incorporate it for future releases. > > ===== Instructions to install it ===== > 1. Download the v0.52 package from my github to the root directory of > WeeWX (eg /home/weewx) > > https://github.com/ddjlabs/BYOWS_RPi/archive/refs/tags/v0.51.zip > > 2. In the location of where you installed WeeWX (eg /home/weewx), run this > command: > > sudo ./bin/wee_extension --install v0.52.zip > > This process will make a backup of your weewx.conf and add the necessary > configuration items and code to the solution. The driver file will be > located in the bin/user folder within the WeeWX root directory. You can > modify it there as needed. This process will protect your changes as WeeWX > updates do not modify the user directory. > > ===== END INSTRUCTIONS ===== > > DDJ > > On Sunday, July 24, 2022 at 6:23:36 PM UTC-4 [email protected] wrote: > >> Ah! The advantages of cutting and pasting over a summarization. You were >> having a PYTHONPATH problem. >> >> Sounds like you got things working by using the "python -m >> user.byows_rpi" method. >> >> The other method should also work with an explicit PYTHONPATH. Something >> like >> >> *PYTHONPATH=/usr/share/weewx python /usr/share/weewx/user/byows_rpi.py* >> >> No matter. You got it working. >> >> As for the TypeError exception: now you're deep into the driver and I >> have no experience with it. You'll have to ask the author. >> >> -tk >> >> >> >> On Sun, Jul 24, 2022 at 3:04 PM Jan Bennett <[email protected]> wrote: >> >>> Following your above suggestion about a different way to try running the >>> file, I get two different responses depending on which one I run: >>> >>> /usr/share/weewx $ python user/byows_rpi.py >>> Traceback (most recent call last): >>> File "/usr/share/weewx/user/byows_rpi.py", line 34, in <module> >>> import weewx.drivers >>> ModuleNotFoundError: No module named 'weewx' >>> >>> and >>> >>> /usr/share/weewx $ python -m user.byows_rpi >>> Traceback (most recent call last): >>> File "/usr/lib/python3.9/runpy.py", line 197, in _run_module_as_main >>> return _run_code(code, main_globals, None, >>> File "/usr/lib/python3.9/runpy.py", line 87, in _run_code >>> exec(code, run_globals) >>> File "/usr/share/weewx/user/byows_rpi.py", line 335, in <module> >>> station = ByowsRpiStation() >>> File "/usr/share/weewx/user/byows_rpi.py", line 113, in __init__ >>> self.bme280_sensor.load_calibration_params(self.bme280_bus, >>> self.bme280_address) >>> File "/usr/local/lib/python3.9/dist-packages/bme280/__init__.py", line >>> 154, in load_calibration_params >>> compensation_params.dig_T1 = read.unsigned_short(0x88) >>> File "/usr/local/lib/python3.9/dist-packages/bme280/reader.py", line >>> 40, in unsigned_short >>> return self._bus.read_word_data(self._address, register) & 0xffff >>> File "/usr/local/lib/python3.9/dist-packages/smbus2/smbus2.py", line >>> 470, in read_word_data >>> self._set_address(i2c_addr, force=force) >>> File "/usr/local/lib/python3.9/dist-packages/smbus2/smbus2.py", line >>> 354, in _set_address >>> ioctl(self.fd, I2C_SLAVE, address) >>> TypeError: argument must be an int, or have a fileno() method. >>> >>> >>> >>> On Sunday, July 24, 2022 at 3:42:56 PM UTC-6 Jan Bennett wrote: >>> >>>> Thank you. I verified that I was downloading the entire file by: >>>> >>>> renaming the /usr/share/ weewx/user/byows_rpi.py file and then I wget >>>> the file you linked. When I run it after downloading it I still get the >>>> same response. >>>> >>>> On Sunday, July 24, 2022 at 3:00:41 PM UTC-6 [email protected] wrote: >>>> >>>>> Jan, perhaps you missed my earlier message, but your version of >>>>> byows_rpi.py has been altered --- it's missing an import statement. >>>>> >>>>> You need to download a fresh copy from the repository. You can find it >>>>> here >>>>> <https://raw.githubusercontent.com/jardiamj/BYOWS_RPi/master/byows_rpi.py> >>>>> . >>>>> >>>>> On Sun, Jul 24, 2022 at 1:43 PM Jan Bennett <[email protected]> >>>>> wrote: >>>>> >>>>>> I am quite inexperienced at this and am excited to try and learn a >>>>>> bit more. I am happy to test with my set-up. >>>>>> >>>>>> When I run byows.rpi.py I get the following: >>>>>> >>>>>> Traceback (most recent call last): >>>>>> File "/usr/share/weewx/user/byows_rpi.py", line 34, in <module> >>>>>> import weewx.drivers >>>>>> ModuleNotFoundError: No module named 'weewx' >>>>>> >>>>>> >>>>>> >>>>>> On Sunday, July 24, 2022 at 11:54:19 AM UTC-6 [email protected] >>>>>> wrote: >>>>>> >>>>>>> Tom: >>>>>>> >>>>>>> I can give it a look. Right now I am trying to get the install.py >>>>>>> file working to install the driver properly with the correct statements >>>>>>> in >>>>>>> weewx.conf. Once I have that working, I can take a look at the logging. >>>>>>> >>>>>>> One challenge is that I do not have a BME280, so I am probably going >>>>>>> to have to stub out those function calls to see if the solution will >>>>>>> work >>>>>>> in principle. >>>>>>> >>>>>>> hopefully Jan will help us out and verify the driver is working. >>>>>>> >>>>>>> DDJ >>>>>>> >>>>>>> On Sun, Jul 24, 2022 at 10:15 AM Tom Keffer <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Your version has been altered --- it's missing an import statement. >>>>>>>> >>>>>>>> Here's the original version >>>>>>>> <https://raw.githubusercontent.com/jardiamj/BYOWS_RPi/master/byows_rpi.py>. >>>>>>>> >>>>>>>> You can give it a try. >>>>>>>> >>>>>>>> Doug: If you're going to work on the driver, perhaps you can port >>>>>>>> it to WeeWX V4? In particular, it uses the old-style "syslog", instead >>>>>>>> of >>>>>>>> the new style "logging >>>>>>>> <https://github.com/weewx/weewx/wiki/WeeWX-v4-and-logging>". >>>>>>>> >>>>>>>> >>>>>>>> On Sun, Jul 24, 2022 at 6:04 AM Jan Bennett <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> I have attached the byows_rpi.py file that I am using currently. >>>>>>>>> Some of the values haven't been changed for my equipment just yet. I >>>>>>>>> need >>>>>>>>> to add the ground temp serial number and some additional wind vane >>>>>>>>> values. >>>>>>>>> >>>>>>>>> Many thanks for your time and energy here! >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On Sat, Jul 23, 2022 at 3:51 PM Tom Keffer <[email protected]> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Something is off. Could you send me the copy of byows_rpi.py you >>>>>>>>>> are using? >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Sat, Jul 23, 2022 at 2:33 PM Jan Bennett <[email protected]> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> Thank you for your time in responding. >>>>>>>>>>> >>>>>>>>>>> It is correct that byows_rpi extension >>>>>>>>>>> <https://github.com/jardiamj/BYOWS_RPi> is mostly just a python >>>>>>>>>>> file (byows_rpi.py) saved to /usr/share/weewx/user/ >>>>>>>>>>> >>>>>>>>>>> I have followed the directions at the git repository and have >>>>>>>>>>> verified with Change Driver >>>>>>>>>>> <https://github.com/weewx/weewx/wiki/Change-driver> that I've >>>>>>>>>>> done the appropriate things to weewx.conf as well. >>>>>>>>>>> >>>>>>>>>>> When I run either of the commands you listed I receive the same >>>>>>>>>>> error as before: >>>>>>>>>>> >>>>>>>>>>> class ByowsRpi(weewx.drivers.AbstractDevice) >>>>>>>>>>> NameError: name 'weewx' is not defined >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Saturday, July 23, 2022 at 9:02:42 AM UTC-6 [email protected] >>>>>>>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>>> 1, It looks like the byows_pi extension does not use the >>>>>>>>>>>> extension installer, so weewx has no way of knowing of its >>>>>>>>>>>> existence. This >>>>>>>>>>>> is why it doesn't show up in the list of available drivers. >>>>>>>>>>>> >>>>>>>>>>>> 2. As for running byows_pi directly, you have a slight problem >>>>>>>>>>>> with your paths. Try either this >>>>>>>>>>>> >>>>>>>>>>>> cd /usr/share/weewx >>>>>>>>>>>> python user/byows_rpi.py >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> or this >>>>>>>>>>>> >>>>>>>>>>>> cd /usr/share/weewx >>>>>>>>>>>> python -m user.byows_rpi >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -tk >>>>>>>>>>>> >>>>>>>>>>>> On Sat, Jul 23, 2022 at 6:12 AM Jan Bennett <[email protected]> >>>>>>>>>>>> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> I should also note that when I 'sudo wee_config --reconfigure >>>>>>>>>>>>> --driver=user.byows_rpi --no-prompt' I see the following: >>>>>>>>>>>>> >>>>>>>>>>>>> Using configuration file /home/weewx/weewx.conf >>>>>>>>>>>>> Driver user.byows_rpi failed to load: name 'weewx' is not >>>>>>>>>>>>> defined >>>>>>>>>>>>> >>>>>>>>>>>>> On Saturday, July 23, 2022 at 7:07:55 AM UTC-6 Jan Bennett >>>>>>>>>>>>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> Hey all - >>>>>>>>>>>>>> >>>>>>>>>>>>>> I am trying to install the driver for the Build Your Own >>>>>>>>>>>>>> Weather Station using Raspberry pi (byows_rpi.py) >>>>>>>>>>>>>> >>>>>>>>>>>>>> I have updated weewx-config to include BYOWS. I also have the >>>>>>>>>>>>>> interceptor driver installed. >>>>>>>>>>>>>> >>>>>>>>>>>>>> However, I cannot seem to get the driver to show up under the >>>>>>>>>>>>>> drivers list when I try 'wee_config --list-drivers'. I show >>>>>>>>>>>>>> byows_rpi.py >>>>>>>>>>>>>> under /usr/share/weewx/user/ >>>>>>>>>>>>>> >>>>>>>>>>>>>> I have tried 'sudo wee_config --reconfigure >>>>>>>>>>>>>> --driver=user.byows_rpi --no-promt' to no avail. >>>>>>>>>>>>>> >>>>>>>>>>>>>> I feel like I've missed a step somewhere about how to >>>>>>>>>>>>>> actually get the system to recognize the driver. >>>>>>>>>>>>>> >>>>>>>>>>>>>> When I try to run the byows_rpi.py via command line from >>>>>>>>>>>>>> within the /usr/share/weewx/user/ folder: 'python3 byows_rpi.py' >>>>>>>>>>>>>> I see the >>>>>>>>>>>>>> following error: >>>>>>>>>>>>>> >>>>>>>>>>>>>> class ByowsRpi(weewx.drivers.AbstractDevice) >>>>>>>>>>>>>> NameError: name 'weewx' is not defined >>>>>>>>>>>>>> >>>>>>>>>>>>>> Any guidance would be greatly appreciated! >>>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> 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/074ed02d-872f-4384-82bf-748449e13ef5n%40googlegroups.com >>>>>>>>>>>>> >>>>>>>>>>>>> <https://groups.google.com/d/msgid/weewx-user/074ed02d-872f-4384-82bf-748449e13ef5n%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/c207e67c-2fb6-4a4c-812d-867387566476n%40googlegroups.com >>>>>>>>>>> >>>>>>>>>>> <https://groups.google.com/d/msgid/weewx-user/c207e67c-2fb6-4a4c-812d-867387566476n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>>>>> . >>>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> You received this message because you are subscribed to a topic >>>>>>>>>> in the Google Groups "weewx-user" group. >>>>>>>>>> To unsubscribe from this topic, visit >>>>>>>>>> https://groups.google.com/d/topic/weewx-user/wtQ92_3SGe8/unsubscribe >>>>>>>>>> . >>>>>>>>>> To unsubscribe from this group and all its topics, send an email >>>>>>>>>> to [email protected]. >>>>>>>>>> To view this discussion on the web visit >>>>>>>>>> https://groups.google.com/d/msgid/weewx-user/CAPq0zED6%3DO2-mjrfCdB9N%3DkwNoHdoh429f9aeDtw_4KFSVSFMw%40mail.gmail.com >>>>>>>>>> >>>>>>>>>> <https://groups.google.com/d/msgid/weewx-user/CAPq0zED6%3DO2-mjrfCdB9N%3DkwNoHdoh429f9aeDtw_4KFSVSFMw%40mail.gmail.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/CAJiLD_AJp7f4XJZYGCxrSr9fy8%3DX14sDrQMWTQ_-ACPr8_Jx%2Bw%40mail.gmail.com >>>>>>>>> >>>>>>>>> <https://groups.google.com/d/msgid/weewx-user/CAJiLD_AJp7f4XJZYGCxrSr9fy8%3DX14sDrQMWTQ_-ACPr8_Jx%2Bw%40mail.gmail.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/CAPq0zEAmHfXy6iH4Lhs2JLy-bBiBLiJt7VE8iFSUQ0rU2FFdeQ%40mail.gmail.com >>>>>>>> >>>>>>>> <https://groups.google.com/d/msgid/weewx-user/CAPq0zEAmHfXy6iH4Lhs2JLy-bBiBLiJt7VE8iFSUQ0rU2FFdeQ%40mail.gmail.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/43dd9459-5102-4f75-b77c-ab78e5d3f7den%40googlegroups.com >>>>>> >>>>>> <https://groups.google.com/d/msgid/weewx-user/43dd9459-5102-4f75-b77c-ab78e5d3f7den%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/ac86e776-be73-4bc6-b699-8e9a9907af94n%40googlegroups.com >>> >>> <https://groups.google.com/d/msgid/weewx-user/ac86e776-be73-4bc6-b699-8e9a9907af94n%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/7fe1dc83-a9a7-4d4d-9d68-9e61b1dc7984n%40googlegroups.com.
