Score:1

UDEV rule to change bluetooth controller name

fo flag

I have several PS4 and PS5 controllers connected through bluetooth on my Ubuntu 23.04 Server, kernel 6.2.0.

I'm trying to build a UDEV rule to rename them, because by default they're all called "Wireless Controller".

So first of all, here is the udev chain while one of the devices is connected :

$ udevadm monitor --environment --udev
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing

UDEV  [7829.628341] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256 (bluetooth)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256
SUBSYSTEM=bluetooth
DEVTYPE=link
SEQNUM=4898
USEC_INITIALIZED=7829627332
SYSTEMD_ALIAS=/sys/subsystem/bluetooth/devices/hci0:256
SYSTEMD_WANTS=bluetooth.target
SYSTEMD_USER_WANTS=bluetooth.target
TAGS=:systemd:
CURRENT_TAGS=:systemd:

UDEV  [7829.980224] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005 (hid)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005
SUBSYSTEM=hid
HID_ID=0005:0000054C:000005C4
HID_NAME=Wireless Controller
HID_PHYS=f4:ce:23:f7:16:91
HID_UNIQ=90:fb:a6:e0:4f:6b
MODALIAS=hid:b0005g0000v0000054Cp000005C4
SEQNUM=4899
USEC_INITIALIZED=7829979731
DRIVER=playstation

UDEV  [7829.985433] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/hidraw/hidraw2 (hidraw)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/hidraw/hidraw2
SUBSYSTEM=hidraw
DEVNAME=/dev/hidraw2
SEQNUM=4900
USEC_INITIALIZED=7829985139
MAJOR=238
MINOR=2

UDEV  [7830.037426] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input20 (input)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input20
SUBSYSTEM=input
PRODUCT=5/54c/5c4/8100
NAME="Wireless Controller"
UNIQ="90:fb:a6:e0:4f:6b"
PROP=0
EV=20000b
KEY=7fdb000000000000 0 0 0 0
ABS=3003f
FF=107030000 0
MODALIAS=input:b0005v054Cp05C4e8100-e0,1,3,15,k130,131,133,134,136,137,138,139,13A,13B,13C,13D,13E,ra0,1,2,3,4,5,10,11,mlsf50,51,58,59,5A,60,w
SEQNUM=4901
USEC_INITIALIZED=7830035831
ID_INPUT=1
ID_INPUT_JOYSTICK=1
ID_BUS=bluetooth
ID_PATH=pci-0000:00:14.0-usb-0:10:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_10_1_0
ID_FOR_SEAT=input-pci-0000_00_14_0-usb-0_10_1_0
TAGS=:seat:
CURRENT_TAGS=:seat:

UDEV  [7830.042666] add      /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:6d/INT3515:01/wakeup/wakeup49 (wakeup)
ACTION=add
DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:6d/INT3515:01/wakeup/wakeup49
SUBSYSTEM=wakeup
SEQNUM=4916
USEC_INITIALIZED=7830042488

UDEV  [7830.044656] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/leds/input20:blue (leds)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/leds/input20:blue
SUBSYSTEM=leds
SEQNUM=4913
USEC_INITIALIZED=7830044275
ID_PATH=pci-0000:00:14.0-usb-0:10:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_10_1_0
ID_FOR_SEAT=leds-pci-0000_00_14_0-usb-0_10_1_0
TAGS=:seat:
CURRENT_TAGS=:seat:

UDEV  [7830.044881] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/power_supply/ps-controller-battery-90:fb:a6:e0:4f:6b/wakeup48 (wakeup)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/power_supply/ps-controller-battery-90:fb:a6:e0:4f:6b/wakeup48
SUBSYSTEM=wakeup
SEQNUM=4909
USEC_INITIALIZED=7830044633

UDEV  [7830.045190] remove   /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:6d/INT3515:01/wakeup/wakeup49 (wakeup)
ACTION=remove
DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:6d/INT3515:01/wakeup/wakeup49
SUBSYSTEM=wakeup
SEQNUM=4917
USEC_INITIALIZED=7830038304

UDEV  [7830.045672] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/power_supply/ps-controller-battery-90:fb:a6:e0:4f:6b/hwmon4 (hwmon)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/power_supply/ps-controller-battery-90:fb:a6:e0:4f:6b/hwmon4
SUBSYSTEM=hwmon
SEQNUM=4910
USEC_INITIALIZED=7830045556

UDEV  [7830.046198] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22 (input)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22
SUBSYSTEM=input
PRODUCT=5/54c/5c4/8100
NAME="Wireless Controller Touchpad"
UNIQ="90:fb:a6:e0:4f:6b"
PROP=5
EV=b
KEY=2420 10000 0 0 0 0
ABS=260800000000003
MODALIAS=input:b0005v054Cp05C4e8100-e0,1,3,k110,145,14A,14D,ra0,1,2F,35,36,39,mlsfw
SEQNUM=4906
USEC_INITIALIZED=7830045407
ID_INPUT=1
ID_INPUT_TOUCHPAD=1
ID_BUS=bluetooth
ID_PATH=pci-0000:00:14.0-usb-0:10:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_10_1_0
ID_FOR_SEAT=input-pci-0000_00_14_0-usb-0_10_1_0
TAGS=:seat:
CURRENT_TAGS=:seat:

UDEV  [7830.046518] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input21 (input)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input21
SUBSYSTEM=input
PRODUCT=5/54c/5c4/8100
NAME="Wireless Controller Motion Sensors"
UNIQ="90:fb:a6:e0:4f:6b"
PROP=40
EV=19
ABS=3f
MSC=20
MODALIAS=input:b0005v054Cp05C4e8100-e0,3,4,kra0,1,2,3,4,5,m5,lsfw
SEQNUM=4904
USEC_INITIALIZED=7830045429
ID_INPUT=1
ID_INPUT_ACCELEROMETER=1
ID_BUS=bluetooth
ID_PATH=pci-0000:00:14.0-usb-0:10:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_10_1_0
ID_FOR_SEAT=input-pci-0000_00_14_0-usb-0_10_1_0
IIO_SENSOR_PROXY_TYPE=input-accel
SYSTEMD_WANTS=iio-sensor-proxy.service
TAGS=:systemd:seat:
CURRENT_TAGS=:systemd:seat:

UDEV  [7830.046940] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/leds/input20:green (leds)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/leds/input20:green
SUBSYSTEM=leds
SEQNUM=4912
USEC_INITIALIZED=7830045983
ID_PATH=pci-0000:00:14.0-usb-0:10:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_10_1_0
ID_FOR_SEAT=leds-pci-0000_00_14_0-usb-0_10_1_0
TAGS=:seat:
CURRENT_TAGS=:seat:

UDEV  [7830.047143] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/leds/input20:red (leds)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/leds/input20:red
SUBSYSTEM=leds
SEQNUM=4911
USEC_INITIALIZED=7830046002
ID_PATH=pci-0000:00:14.0-usb-0:10:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_10_1_0
ID_FOR_SEAT=leds-pci-0000_00_14_0-usb-0_10_1_0
TAGS=:seat:
CURRENT_TAGS=:seat:

UDEV  [7830.047281] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/leds/input20:global (leds)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/leds/input20:global
SUBSYSTEM=leds
SEQNUM=4914
USEC_INITIALIZED=7830046326
ID_PATH=pci-0000:00:14.0-usb-0:10:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_10_1_0
ID_FOR_SEAT=leds-pci-0000_00_14_0-usb-0_10_1_0
TAGS=:seat:
CURRENT_TAGS=:seat:

UDEV  [7830.047647] add      /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:6e/INT3515:02/wakeup/wakeup49 (wakeup)
ACTION=add
DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:6e/INT3515:02/wakeup/wakeup49
SUBSYSTEM=wakeup
SEQNUM=4918
USEC_INITIALIZED=7830047562

UDEV  [7830.048851] remove   /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:6e/INT3515:02/wakeup/wakeup49 (wakeup)
ACTION=remove
DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:6e/INT3515:02/wakeup/wakeup49
SUBSYSTEM=wakeup
SEQNUM=4919
USEC_INITIALIZED=7830043912

UDEV  [7830.052068] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22/mouse1 (input)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22/mouse1
SUBSYSTEM=input
DEVNAME=/dev/input/mouse1
SEQNUM=4907
USEC_INITIALIZED=7830051921
ID_INPUT=1
ID_INPUT_TOUCHPAD=1
ID_BUS=bluetooth
MAJOR=13
MINOR=33

UDEV  [7830.057325] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input20/js0 (input)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input20/js0
SUBSYSTEM=input
DEVNAME=/dev/input/js0
SEQNUM=4903
USEC_INITIALIZED=7830047828
ID_INPUT=1
ID_INPUT_JOYSTICK=1
ID_BUS=bluetooth
ID_PATH=pci-0000:00:14.0-usb-0:10:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_10_1_0
ID_FOR_SEAT=input-pci-0000_00_14_0-usb-0_10_1_0
MAJOR=13
MINOR=0
TAGS=:uaccess:seat:
CURRENT_TAGS=:uaccess:seat:

UDEV  [7830.096185] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input20/event14 (input)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input20/event14
SUBSYSTEM=input
DEVNAME=/dev/input/event14
SEQNUM=4902
USEC_INITIALIZED=7830095820
.HAVE_HWDB_PROPERTIES=1
ID_INPUT=1
ID_INPUT_JOYSTICK=1
ID_BUS=bluetooth
ID_INPUT_JOYSTICK_INTEGRATION=external
ID_PATH=pci-0000:00:14.0-usb-0:10:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_10_1_0
ID_FOR_SEAT=input-pci-0000_00_14_0-usb-0_10_1_0
MAJOR=13
MINOR=78
TAGS=:uaccess:seat:
CURRENT_TAGS=:uaccess:seat:

UDEV  [7830.139067] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input21/event15 (input)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input21/event15
SUBSYSTEM=input
DEVNAME=/dev/input/event15
SEQNUM=4905
USEC_INITIALIZED=7830138822
.HAVE_HWDB_PROPERTIES=1
ID_INPUT=1
ID_INPUT_ACCELEROMETER=1
ID_INPUT_WIDTH_MM=8
ID_INPUT_HEIGHT_MM=8
ID_BUS=bluetooth
IIO_SENSOR_PROXY_TYPE=input-accel
SYSTEMD_WANTS=iio-sensor-proxy.service
MAJOR=13
MINOR=79
TAGS=:systemd:
CURRENT_TAGS=:systemd:

UDEV  [7830.209947] add      /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22/event16 (input)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22/event16
SUBSYSTEM=input
DEVNAME=/dev/input/event16
SEQNUM=4908
USEC_INITIALIZED=7830158302
.HAVE_HWDB_PROPERTIES=1
ID_INPUT=1
ID_INPUT_TOUCHPAD=1
ID_BUS=bluetooth
ID_INPUT_TOUCHPAD_INTEGRATION=external
MAJOR=13
MINOR=80

UDEV  [7830.210992] bind     /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005 (hid)
ACTION=bind
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005
SUBSYSTEM=hid
DRIVER=playstation
HID_ID=0005:0000054C:000005C4
HID_NAME=Wireless Controller
HID_PHYS=f4:ce:23:f7:16:91
HID_UNIQ=90:fb:a6:e0:4f:6b
MODALIAS=hid:b0005g0000v0000054Cp000005C4
SEQNUM=4915
USEC_INITIALIZED=7830210897

UDEV  [7830.212264] change   /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/power_supply/ps-controller-battery-90:fb:a6:e0:4f:6b (power_supply)
ACTION=change
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/power_supply/ps-controller-battery-90:fb:a6:e0:4f:6b
SUBSYSTEM=power_supply
POWER_SUPPLY_NAME=ps-controller-battery-90:fb:a6:e0:4f:6b
POWER_SUPPLY_TYPE=Battery
POWER_SUPPLY_STATUS=Full
POWER_SUPPLY_PRESENT=1
POWER_SUPPLY_CAPACITY=100
POWER_SUPPLY_SCOPE=Device
SEQNUM=4920
USEC_INITIALIZED=7830212162

This is a DualShock 4 controller, there are a lot of subdevices (touchpad, sensors, leds), the one I'm interested in is the following : /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22 That's the one that actually handles the front buttons.

So I built the following rule

ACTION=="add", SUBSYSTEM=="input", ATTR{uniq}=="90:fb:a6:e0:4f:6b", ATTR{name}="PS4 Anniversary"

But it fails with this error :

input22: /etc/udev/rules.d/98-pads.rules:2 ATTR '/sys/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22/name' writing 'PS4 Anniversary input'
input22: /etc/udev/rules.d/98-pads.rules:2 Failed to write ATTR{/sys/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22/name}, ignoring: Permission denied

Permission denied, I believe that's because the given file /sys/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/input/input22/name is read only (-r--r--r-). Just to test, I edited the permissions and tried again, this gave me "Input/output error". This looks like not writable data, so I think it is inherited from a parent.

Now I'm trying to work with the parent device /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005 here is the available "udevadm info -a" :

  looking at device '/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005':
    KERNEL=="0005:054C:05C4.0005"
    SUBSYSTEM=="hid"
    DRIVER=="playstation"
    ATTR{country}=="00"
    ATTR{firmware_version}=="0x00002029"
    ATTR{hardware_version}=="0x00005400"
    ATTR{power/async}=="enabled"
    ATTR{power/control}=="auto"
    ATTR{power/runtime_active_kids}=="0"
    ATTR{power/runtime_active_time}=="0"
    ATTR{power/runtime_enabled}=="disabled"
    ATTR{power/runtime_status}=="unsupported"
    ATTR{power/runtime_suspended_time}=="0"
    ATTR{power/runtime_usage}=="0"

  looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256':
    KERNELS=="hci0:256"
    SUBSYSTEMS=="bluetooth"
    DRIVERS==""
    ATTRS{power/async}=="disabled"
    ATTRS{power/control}=="auto"
    ATTRS{power/runtime_active_kids}=="0"
    ATTRS{power/runtime_active_time}=="0"
    ATTRS{power/runtime_enabled}=="disabled"
    ATTRS{power/runtime_status}=="unsupported"
    ATTRS{power/runtime_suspended_time}=="0"
    ATTRS{power/runtime_usage}=="0"

But I don't really understand, for instance "udevadm info /path/to/device" tells me there are properties like "HID_UNIQ" that would allow me to match the device, but they are not in "udevadm info -a" and I can't make it match in the rule, I've tried the following but none of them worked :

ACTION=="add", ATTR{hid_uniq}=="90:fb:a6:e0:4f:6b", ATTR{hid_name}="PS4 Anniversary hid"
ACTION=="add", HID_UNIQ=="90:fb:a6:e0:4f:6b", HID_NAME="PS4 Anniversary hid"

The rule is never triggered, which means at least the matching part is not working.

I noticed a "uevent" file that is writeable in that device folder :

-rw-r--r-- 1 root root 4096 May 18 22:35 /sys/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/bluetooth/hci0/hci0:256/0005:054C:05C4.0005/uevent

The content of that file should allow me to match the device usign its "uniq" address and rename it so it might be propagated to children devices :

DRIVER=playstation
HID_ID=0005:0000054C:000005C4
HID_NAME=Wireless Controller
HID_PHYS=f4:ce:23:f7:16:91
HID_UNIQ=90:fb:a6:e0:4f:6b
MODALIAS=hid:b0005g0000v0000054Cp000005C4

Can this uevent file be used through udev rules ?

Maybe I'm trying too hard and there is a more straight forward way to rename a bluetooth device ? Well, even if that's the cae I'd like to understand what I can or cannot do with udev rules...

Cheers

I sit in a Tesla and translated this thread with Ai:

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.