Having problems with Nest devices. Ongoing issue I thought I'd fixed with GRPCIO

OK, where to start… I have a raspberry PI 3B+, it runs raspbian 10 and has pi-hole and ha on it.

HA is at 2023.9.3 (it was on 2023.9.0 until this morning)

All the other modules I’m running are:

Package Version


accuweather 1.0.0
acme 1.31.0
aiodiscover 1.4.16
aiodns 3.0.0
aiofiles 23.2.1
aiogithubapi 23.2.1
aiohttp 3.8.5
aiohttp-cors 0.7.0
aiosignal 1.3.1
androidtvremote2 0.0.14
anyio 3.7.1
APScheduler 3.6.3
astral 2.2
async-timeout 4.0.3
async-upnp-client 0.35.0
atomicwrites-homeassistant 1.4.1
attrs 23.1.0
awesomeversion 22.9.0
backoff 2.2.1
bcrypt 4.0.1
bitstruct 8.17.0
boto3 1.28.31
botocore 1.31.31
brother 2.3.0
cachetools 5.3.1
casttube 0.2.1
certifi 2023.7.22
cffi 1.15.1
chacha20poly1305-reuseable 0.4.1
charset-normalizer 3.2.0
ciso8601 2.3.0
click 8.1.7
cryptography 41.0.3
Cython 3.0.0
dacite 1.8.1
decorator 5.1.1
deepmerge 1.1.0
defusedxml 0.7.1
dnspython 2.4.2
ecdsa 0.18.0
envs 1.4
flux-led 1.0.2
fnv-hash-fast 0.4.1
fnvhash 0.1.0
frozenlist 1.4.0
getmac 0.8.2
ghome-foyer-api 1.0.0
google-api-core 2.11.1
google-auth 2.22.0
google-auth-oauthlib 1.0.0
google-cloud-pubsub 2.16.0
google-nest-sdm 2.2.5
googleapis-common-protos 1.60.0
googlewifi 0.0.21
grpc-google-iam-v1 0.12.6
grpcio 1.58.0
grpcio-status 1.58.0
grpcio-tools 1.58.0
gTTS 2.2.4
h11 0.14.0
ha-ffmpeg 3.1.0
hass-nabucasa 0.70.0
hassil 1.2.5
hole 0.8.0
home-assistant-bluetooth 1.10.3
home-assistant-frontend 20230906.1
home-assistant-intents 2023.8.2
homeassistant 2023.9.0
homeconnect 0.7.2
httpcore 0.17.3
httpx 0.24.1
idna 3.4
ifaddr 0.2.0
janus 1.0.0
Jinja2 3.1.2
jmespath 1.0.1
josepy 1.13.0
lru-dict 1.2.0
MarkupSafe 2.1.3
mediafile 0.12.0
miniaudio 1.59
multidict 6.0.4
mutagen 1.46.0
netifaces 0.11.0
numpy 1.25.2
oauthlib 3.2.2
orjson 3.9.2
packaging 23.1
Pillow 10.0.0
pip 23.2.1
PlexAPI 4.13.2
plexauth 0.0.6
plexwebsocket 0.0.13
ply 3.11
proto-plus 1.22.3
protobuf 4.24.3
psutil 5.9.5
psutil-home-assistant 0.0.1
pushbullet.py 0.11.0
pyasn1 0.4.8
pyasn1-modules 0.3.0
pyatv 0.13.4
pycares 4.3.0
PyChromecast 13.0.7
pycognito 2022.12.0
pycountry 22.3.5
pycparser 2.21
pycryptodomex 3.18.0
pydantic 1.10.12
pyipp 0.14.4
PyJWT 2.8.0
PyMetno 0.11.0
PyNaCl 1.5.0
pyOpenSSL 23.2.0
pyotp 2.8.0
PyQRCode 1.2.1
pyRFC3339 1.1
pyroute2 0.7.5
pysnmp-pyasn1 1.1.3
pysnmp-pysmi 1.1.10
pysnmplib 5.0.21
PySocks 1.7.1
python-dateutil 2.8.2
python-didl-lite 1.3.2
python-jose 3.3.0
python-magic 0.4.27
python-otbr-api 2.5.0
python-slugify 4.0.1
python-telegram-bot 13.1
PyTurboJPEG 1.7.1
pytz 2023.3
pyvolumio 0.1.5
PyYAML 6.0.1
radios 0.1.1
redis 5.0.0
requests 2.31.0
requests-oauthlib 1.3.1
requests-toolbelt 1.0.0
rsa 4.9
s3transfer 0.6.2
scapy 2.5.0
setuptools 68.2.2
six 1.16.0
sniffio 1.3.0
snitun 0.35.0
speedtest-cli 2.1.3
spotipy 2.23.0
SQLAlchemy 2.0.15
srptools 1.0.1
text-unidecode 1.3
tornado 6.3.3
typing_extensions 4.7.1
tzlocal 5.0.1
ulid-transform 0.8.1
urllib3 1.26.16
voluptuous 0.13.1
voluptuous-serialize 2.6.0
webcolors 1.13
webrtcvad 2.0.10
websocket-client 1.6.1
wheel 0.41.1
xmltodict 0.13.0
yarl 1.9.2
zeroconf 0.91.1

It was back when I upgraded to 2023.8.5 that I strated getting an error with my Nest integration:
lib/arm-linux-gnueabihf/libc.so.6:%20version%20%60GLIBC_2.33’%20not%20found%20(required%20by%20/srv/homeassistant/lib/python3.11/site-packages/grpc/_cython/cygrpc.cpython-311-arm-linux-gnueabihf.so)

I did a lot of digging around and upgraded grpcio, grpcio-tools and grpcio-status to 1.51.1. That fixed it.

I then upgraded HA to 2023.9.0, and had no issues with Nest, until Wednesday this week, when it just stopped working again. I had not touched my setup during the intervening period, but I installed Mushroom via HACCS, and restarted, and that’s when Nest stopped working again.

I have now upgraded grpcio et al to 1.58.0, and my error is now:
Unable to import component: /lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.29’ not found (required by /srv/homeassistant/lib/python3.11/site-packages/grpc/_cython/cygrpc.cpython-311-arm-linux-gnueabihf.so)

The whole log is:

Setup failed for nest: Unable to import component: /lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /srv/homeassistant/lib/python3.11/site-packages/grpc/_cython/cygrpc.cpython-311-arm-linux-gnueabihf.so)
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/setup.py", line 215, in _async_setup_component
    component = integration.get_component()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/loader.py", line 818, in get_component
    ComponentProtocol, importlib.import_module(self.pkg_path)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/components/nest/__init__.py", line 54, in <module>
    from . import api
  File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/components/nest/api.py", line 12, in <module>
    from google_nest_sdm.google_nest_subscriber import GoogleNestSubscriber
  File "/srv/homeassistant/lib/python3.11/site-packages/google_nest_sdm/google_nest_subscriber.py", line 18, in <module>
    from google.cloud import pubsub_v1
  File "/srv/homeassistant/lib/python3.11/site-packages/google/cloud/pubsub_v1/__init__.py", line 17, in <module>
    from google.cloud.pubsub_v1 import types
  File "/srv/homeassistant/lib/python3.11/site-packages/google/cloud/pubsub_v1/types.py", line 27, in <module>
    from google.api_core import gapic_v1
  File "/srv/homeassistant/lib/python3.11/site-packages/google/api_core/gapic_v1/__init__.py", line 16, in <module>
    from google.api_core.gapic_v1 import config
  File "/srv/homeassistant/lib/python3.11/site-packages/google/api_core/gapic_v1/config.py", line 23, in <module>
    import grpc
  File "/srv/homeassistant/lib/python3.11/site-packages/grpc/__init__.py", line 22, in <module>
    from grpc import _compression
  File "/srv/homeassistant/lib/python3.11/site-packages/grpc/_compression.py", line 20, in <module>
    from grpc._cython import cygrpc
ImportError: /lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /srv/homeassistant/lib/python3.11/site-packages/grpc/_cython/cygrpc.cpython-311-arm-linux-gnueabihf.so)

I think I’ve taken grpcio to too high a version, but what I want to know is what’s the magic combination that will make things work again?

Thanks in advance