I just restarted Ubuntu and made sure the mosquitto.conf file was adjusted 
for the new 2.x listener command, and mosquitto started working.

I just commented out a couple of lines I had in the mosquitto.conf file 
(which worked fine in Ubuntu 20.10):
#pid_file /var/run/mosquitto.pid
#persistence true
#persistence_location /var/lib/mosquitto/
#log_dest file /var/log/mosquitto/mosquitto.log

Earlier, I saw an error about creating /var/log/mosquitto/mosquitto.log 

The mosquitto_sub command now works and mosquitto is receiving my 
barometric pressure data!

weewx@Ubuntu20-WEEWX:~$ mosquitto -c /etc/mosquitto/mosquitto.conf
1641062208: mosquitto version 2.0.10 starting
1641062208: Config loaded from /etc/mosquitto/mosquitto.conf.
1641062208: Opening ipv4 listen socket on port 1883.
1641062208: Error: Address already in use
weewx@Ubuntu20-WEEWX:~$ mosquitto_sub -h 192.168.7.22 -p 1883 -t 
tele/BMP280/SENSOR -d
Client (null) sending CONNECT
Client (null) received CONNACK (0)
Client (null) sending SUBSCRIBE (Mid: 1, Topic: tele/BMP280/SENSOR, QoS: 0, 
Options: 0x00)
Client (null) received SUBACK
Subscribed (mid: 1): 0
Client (null) received PUBLISH (d0, q0, r0, m0, 'tele/BMP280/SENSOR', ... 
(113 bytes))
{"Time":"2022-01-01T12:38:02","BMP280":{"Temperature":69.7,"Pressure":985.8},"PressureUnit":"hPa","TempUnit":"F"}
Client (null) sending PINGREQ
Client (null) received PINGRESP

weewx is running without errors and publishing reports every 300 seconds!

Jan  1 12:35:07 Ubuntu20-WEEWX weewx[1224] DEBUG weewx.engine: Loading 
service weewx.restx.StdPWSweather
Jan  1 12:35:07 Ubuntu20-WEEWX weewx[1224] INFO weewx.restx: PWSWeather: 
Data for station WESTGATE1 will be posted
Jan  1 12:35:07 Ubuntu20-WEEWX weewx[1224] DEBUG weewx.engine: Finished 
loading service weewx.restx.StdPWSweather
Jan  1 12:40:22 Ubuntu20-WEEWX weewx[1224] INFO weewx.restx: PWSWeather: 
Published record 2022-01-01 12:40:00 CST (1641062400)
Jan  1 12:40:22 Ubuntu20-WEEWX weewx[1224] INFO weewx.restx: 
Wunderground-PWS: Published record 2022-01-01 12:40:00 CST (1641062400)
Jan  1 12:45:19 Ubuntu20-WEEWX weewx[1224] INFO weewx.restx: PWSWeather: 
Published record 2022-01-01 12:45:00 CST (1641062700)
Jan  1 12:45:19 Ubuntu20-WEEWX weewx[1224] INFO weewx.restx: 
Wunderground-PWS: Published record 2022-01-01 12:45:00 CST (1641062700)
On Saturday, January 1, 2022 at 11:56:36 AM UTC-6 Eric K wrote:

> I just switched back to the Ubuntu 21.04 VM and collected lots of evidence 
> of mosquitto not starting properly.
>
> These are the commands that Vince requested:
>
> weewx@Ubuntu20-WEEWX:/run$ ls -lagd /run/mosquitto
> drwxr----- 2 mosquitto 40 Jan  1 11:37 /run/mosquitto
>
> weewx@Ubuntu20-WEEWX:/run$ ls -lagd /run/mosquitto/*
> ls: cannot access '/run/mosquitto/*': Permission denied
>
> weewx@Ubuntu20-WEEWX:/run$ sudo rm -r /run/mosquitto
>
> weewx@Ubuntu20-WEEWX:/run$ sudo systemctl start mosquitto
>
> Job for mosquitto.service failed because the control process exited with 
> error code.
> See "systemctl status mosquitto.service" and "journalctl -xe" for details.
>
> weewx@Ubuntu20-WEEWX:/run$ sudo systemctl status mosquitto.service
>
> ● mosquitto.service - Mosquitto MQTT Broker
>      Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; 
> vendor preset: enabled)
>      Active: failed (Result: exit-code) since Sat 2022-01-01 11:37:43 CST; 
> 16s ago
>
>        Docs: man:mosquitto.conf(5)
>              man:mosquitto(8)
>     Process: 3867 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto 
> (code=exited, status=0/SUCCESS)
>     Process: 3868 ExecStartPre=/bin/chown mosquitto: /var/log/mosquitto 
> (code=exited, status=0/SUCCESS)
>     Process: 3869 ExecStartPre=/bin/mkdir -m 740 -p /var/run/mosquitto 
> (code=exited, status=0/SUCCESS)
>     Process: 3870 ExecStartPre=/bin/chown mosquitto: /var/run/mosquitto 
> (code=exited, status=0/SUCCESS)
>     Process: 3871 ExecStart=/usr/sbin/mosquitto -c 
> /etc/mosquitto/mosquitto.conf (code=exited, status=1/FAILURE)
>    Main PID: 3871 (code=exited, status=1/FAILURE)
>
> Jan 01 11:37:43 Ubuntu20-WEEWX systemd[1]: mosquitto.service: Scheduled 
> restart job, restart counter is at 5.
> Jan 01 11:37:43 Ubuntu20-WEEWX systemd[1]: Stopped Mosquitto MQTT Broker.
> Jan 01 11:37:43 Ubuntu20-WEEWX systemd[1]: mosquitto.service: Start 
> request repeated too quickly.
> Jan 01 11:37:43 Ubuntu20-WEEWX systemd[1]: mosquitto.service: Failed with 
> result 'exit-code'.
> Jan 01 11:37:43 Ubuntu20-WEEWX systemd[1]: Failed to start Mosquitto MQTT 
> Broker.
>
> weewx@Ubuntu20-WEEWX:/run$ journalctl -xe
> Hint: You are currently not seeing messages from other users and the 
> system.
>       Users in groups 'adm', 'systemd-journal' can see all messages.
>       Pass -q to turn off this notice.
> Jan 01 11:36:45 Ubuntu20-WEEWX dbus-daemon[2070]: [session uid=1001 
> pid=2070] Successfully activated service 'org.freedesktop.Tracker1.Miner>
> Jan 01 11:36:45 Ubuntu20-WEEWX systemd[2052]: Started Tracker metadata 
> extractor.
> ░░ Subject: A start job for unit UNIT has finished successfully
> ░░ Defined-By: systemd
> ░░ Support: http://www.ubuntu.com/support
> ░░ 
> ░░ A start job for unit UNIT has finished successfully.
> ░░ 
> ░░ The job identifier is 633.
> Jan 01 11:36:55 Ubuntu20-WEEWX systemd[2052]: tracker-extract.service: 
> Succeeded.
> ░░ Subject: Unit succeeded
> ░░ Defined-By: systemd
> ░░ Support: http://www.ubuntu.com/support
> ░░ 
> ░░ The unit UNIT has successfully entered the 'dead' state.
> Jan 01 11:36:59 Ubuntu20-WEEWX nautilus[3434]: The peer-to-peer connection 
> failed: Could not connect: Permission denied. Falling back to the>
> Jan 01 11:37:15 Ubuntu20-WEEWX tracker-store[3766]: OK
> Jan 01 11:37:15 Ubuntu20-WEEWX systemd[2052]: tracker-store.service: 
> Succeeded.
> ░░ Subject: Unit succeeded
> ░░ Defined-By: systemd
> ░░ Support: http://www.ubuntu.com/support
> ░░ 
> ░░ The unit UNIT has successfully entered the 'dead' state.
> Jan 01 11:37:28 Ubuntu20-WEEWX sudo[3841]:    weewx : TTY=pts/0 ; PWD=/run 
> ; USER=root ; COMMAND=/usr/bin/rm -r /run/mosquitto
> Jan 01 11:37:28 Ubuntu20-WEEWX sudo[3841]: pam_unix(sudo:session): session 
> opened for user root by (uid=1001)
> Jan 01 11:37:28 Ubuntu20-WEEWX sudo[3841]: pam_unix(sudo:session): session 
> closed for user root
> Jan 01 11:37:42 Ubuntu20-WEEWX sudo[3844]:    weewx : TTY=pts/0 ; PWD=/run 
> ; USER=root ; COMMAND=/usr/bin/systemctl start mosquitto
> Jan 01 11:37:42 Ubuntu20-WEEWX sudo[3844]: pam_unix(sudo:session): session 
> opened for user root by (uid=1001)
> Jan 01 11:37:42 Ubuntu20-WEEWX sudo[3844]: pam_unix(sudo:session): session 
> closed for user root
> Jan 01 11:38:00 Ubuntu20-WEEWX sudo[3874]:    weewx : TTY=pts/0 ; PWD=/run 
> ; USER=root ; COMMAND=/usr/bin/systemctl status mosquitto.service
> Jan 01 11:38:00 Ubuntu20-WEEWX sudo[3874]: pam_unix(sudo:session): session 
> opened for user root by (uid=1001)
> Jan 01 11:38:01 Ubuntu20-WEEWX sudo[3874]: pam_unix(sudo:session): session 
> closed for user root
> Jan 01 11:38:26 Ubuntu20-WEEWX dbus-daemon[2070]: [session uid=1001 
> pid=2070] Activating service name='org.gnome.Nautilus' requested by ':1.>
> Jan 01 11:38:26 Ubuntu20-WEEWX dbus-daemon[2070]: [session uid=1001 
> pid=2070] Successfully activated service 'org.gnome.Nautilus'
> Jan 01 11:38:27 Ubuntu20-WEEWX org.gnome.Nautilus[3883]: Traceback (most 
> recent call last):
> Jan 01 11:38:27 Ubuntu20-WEEWX org.gnome.Nautilus[3883]:   File 
> "/usr/share/nautilus-python/extensions/nautilus-admin.py", line 25, in 
> <modu>
> Jan 01 11:38:27 Ubuntu20-WEEWX org.gnome.Nautilus[3883]:     from gettext 
> import gettext, locale, bindtextdomain, textdomain
> Jan 01 11:38:27 Ubuntu20-WEEWX org.gnome.Nautilus[3883]: ImportError: 
> cannot import name 'locale' from 'gettext' (/usr/lib/python3.9/gettext>
> Jan 01 11:38:27 Ubuntu20-WEEWX nautilus[3883]: Called "net usershare info" 
> but it failed: Failed to execute child process “net” (No such fil>
> Jan 01 11:41:55 Ubuntu20-WEEWX sudo[3932]:    weewx : TTY=pts/0 ; PWD=/run 
> ; USER=root ; COMMAND=/usr/bin/systemctl start mosquitto
> Jan 01 11:41:55 Ubuntu20-WEEWX sudo[3932]: pam_unix(sudo:session): session 
> opened for user root by (uid=1001)
> Jan 01 11:41:55 Ubuntu20-WEEWX sudo[3932]: pam_unix(sudo:session): session 
> closed for user root
> lines 3313-3354/3354 (END)
>
> weewx@Ubuntu20-WEEWX:/run$ mosquitto_sub -v -h 192.168.7.22 -p 1883 -t 
> tele/BMP280/SENSOR -d
> Error: Connection refused
>
> weewx@Ubuntu20-WEEWX:/etc/mosquitto$ mosquitto -c 
> /etc/mosquitto/mosquitto.conf
> 1641059552: mosquitto version 2.0.10 starting
> 1641059552: Config loaded from /etc/mosquitto/mosquitto.conf.
> 1641059552: Error: Unable to open pwfile "/etc/mosquitto/pwfile".
> 1641059552: Error opening password file "/etc/mosquitto/pwfile".
>
> weewx@Ubuntu20-WEEWX:/etc/mosquitto$ sudo mosquitto -c 
> /etc/mosquitto/mosquitto.conf
> 1641059578: mosquitto version 2.0.10 starting
> 1641059578: Config loaded from /etc/mosquitto/mosquitto.conf.
> 1641059578: Error: Unable to open pwfile "/etc/mosquitto/pwfile".
> 1641059578: Error opening password file "/etc/mosquitto/pwfile".
>
> On Saturday, January 1, 2022 at 11:09:48 AM UTC-6 [email protected] wrote:
>
>> Now that the broker is running, does mosquitto_sub work?
>> Also, as Vince suggested, adding the  -v option (verbose) to the 
>> mosquitto command would be useful.
>> rich
>> On Saturday, 1 January 2022 at 11:40:16 UTC-5 Eric K wrote:
>>
>>> When using, the MQTTSubscirbe driver in weewx, it runs as a weewx 
>>> service in the same machine as weewx.
>>> see: https://github.com/bellrichm/WeeWX-MQTTSubscribe
>>> I'm running the mosquitto broker in the same Ubuntu VM as weewx, because 
>>> its convenient, and it works fine in my Ubuntu 20.10 VM.
>>>
>>> I have a barometric pressure sensor (a stand-alone wifi device on a 
>>> different IP from the Ubuntu VM) that sends data to weewx via MQTT and the 
>>> MQTTSubscribe driver.
>>> So, I need to get that to properly connect with mosquitto in Ubuntu 
>>> 21.04, like it does in the Ubuntu 20.10.
>>>
>>> The connection we saw when I tried running mosquitto with it's internal 
>>> default settings was MQTTSubscribe trying to connect to it.
>>>
>>> weewx@Ubuntu20-WEEWX:~$ mosquitto
>>> 1640984406: mosquitto version 2.0.10 starting
>>> 1640984406: Using default config.
>>> 1640984406: Starting in local only mode. Connections will only be 
>>> possible from clients running on this machine.
>>> 1640984406: Create a configuration file which defines a listener to 
>>> allow remote access.
>>> 1640984406: For more details see 
>>> https://mosquitto.org/documentation/authentication-methods/
>>> 1640984406: Opening ipv4 listen socket on port 1883.
>>> 1640984406: Opening ipv6 listen socket on port 1883.
>>> 1640984406: mosquitto version 2.0.10 running
>>> 1640984413: New connection from 127.0.0.1:42095 on port 1883.
>>>
>>> *1640984413: New client connected from 127.0.0.1:42095 
>>> <http://127.0.0.1:42095/> as MQTTSubscribe-5503 (p2, c1, k60, 
>>> u'None').1640984418: Client MQTTSubscribe-5503 disconnected.*
>>> On Saturday, January 1, 2022 at 4:39:39 AM UTC-6 [email protected] 
>>> wrote:
>>>
>>>> Eric,
>>>>
>>>> In one of your posts above, the mosquito broker says it has a 
>>>> connection from a client...and given you're running this in a single VM, 
>>>> that must be a client on that machine.
>>>> Im struggling to understand why you would want a MQTT broker on the 
>>>> same VM as weewx ...when it only needs the client.  as weewx doesnt 
>>>> respond 
>>>> to mqtt messages/commands (someone will correct me if Im wrong) - maybe 
>>>> you 
>>>> dont need mqtt at all ?
>>>> I suggest you test wether the weewx client is working (publishing) by 
>>>> using one of the public MQTT brokers such as test.moquito.org (and 
>>>> monitor your messages via mqtt explorer.
>>>> If you're running the broker in the same vm as weewx, then you must 
>>>> have other mqtt devices (clients)...do they work ?
>>>> I agree with Vince...and Im starting to lose the plot over what you're 
>>>> trying to acheive....
>>>>
>>>>
>>>> On Friday, 31 December 2021 at 23:47:59 UTC vince wrote:
>>>>
>>>>> Work your mosquitto broker problem and that only.
>>>>> Test with mosquitto_sub and mosquitto_pub and get that to work first.
>>>>> Once that works, try to get weewx to subscribe.
>>>>>
>>>>> Try removing any previous garbage your earlier attempts might have put 
>>>>> into /run.
>>>>>
>>>>> sudo rm -r /run/mosquitto
>>>>> sudo systemctl start mosquitto
>>>>>
>>>>> On my ubuntu 21.10 vm permissions look like:
>>>>>
>>>>> root@ubuntu-focal:/run# ls -lagd /run/mosquitto
>>>>> drwxr----- 2 root 60 Dec 31 23:42 /run/mosquitto
>>>>>
>>>>> root@ubuntu-focal:/run# ls -lagd /run/mosquitto/*
>>>>> -rw-r--r-- 1 mosquitto 4 Dec 31 23:42 /run/mosquitto/mosquitto.pid
>>>>>
>>>>> On Friday, December 31, 2021 at 2:36:19 PM UTC-8 Eric K wrote:
>>>>>
>>>>>> No, its not working.  
>>>>>> Running the commands with sudo still failed to generate a pid file.
>>>>>> Running with the default config allowed mosquitto to start and 
>>>>>> MQTTSubscribe tried to connect but it disconnected after 5 seconds.
>>>>>>
>>>>>> When I started weewx and forced wee_reports to run, it bomed out with 
>>>>>> many errors including MQTTSubscribe errors.
>>>>>> I suspect because it couldn't connect to mosquitto.
>>>>>>
>>>>>> Since the mosquitto command changed from "port" to "listener", do I 
>>>>>> have to change the MQTTSubscribe section of weewx.conf so it calls out 
>>>>>> "listener = 1883" rather than "port = 1883"?
>>>>>>
>>>>>>
>>>>>> On Friday, December 31, 2021 at 4:20:01 PM UTC-6 vince wrote:
>>>>>>
>>>>>>> So is it working ?  Not working ?
>>>>>>> We can't read minds and your followups are rather cryptic.
>>>>>>>
>>>>>>> Is there any mosquitto process running ?
>>>>>>> If so stop it and try again with 'sudo systemctl start mosquitto' 
>>>>>>>
>>>>>>> If you want to try to run mosquitto in the foreground to debug it, 
>>>>>>> add the -v switch to make it verbose, and remember to use sudo
>>>>>>>
>>>>>>>

-- 
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/eae24860-48ff-47d5-8f89-59d9c1d69db7n%40googlegroups.com.

Reply via email to