Interchanging tags and ratings works fine for me (using R&Darktable 4, digiKam 7.7.0). I’m using the following settings:
darktable: preferences for storage / xmp
- “write sidecar file for each image”: on import
- look for updated xmp files on startup: active
digiKam: settings / configure digiKam / Metadata => tab “Sidecars”
- Read from sidecar files: active
- Write to sidecar files: active
- Sidecar file names are compatible with commercial programs: inactive
This third option might be the “problem”: if activated, digiKam will look for “pictureName.xmp” (e.g. DSC1234.xmp) like PS stores the files. If deactivated, it looks for “pictureName.EXT.xmp” (e.g. DSC1234.NEF.xmp). The latter is what darktable needs.
If you also want to exchange color labels, you need to map between darktable’s colorLabel and digiKam’s pickLabel, e.g. using a LUA script. But that’s another topic
In digiKam I use “refresh” from the context menu on the Album level. This usually updates any changes that I applied in darktable. If not, I use the same option (reread meta data…" as @Till80 explained.