TLDR: Try unpairing and forgetting echo from Bluetooth devices and then reconnecting it but this time, do it while playing a song :-). This forces to select it as a speaker than as a microphone.
I dont know why it happens, but pulse-audio recognises both output and input capabilities of amazon echo but only selects one profile out of these. There is no combined profile to select from.
pacmd list-cards
name: <bluez_card.50_DC_E7_D7_70_9C>
driver: <module-bluez5-device.c>
owner module: 27
properties:
device.description = "Echo-0W6"
.
.
profiles:
a2dp_source: High Fidelity Capture (A2DP Source) (priority 20, available: no)
a2dp_sink: High Fidelity Playback (A2DP Sink) (priority 40, available: yes)
off: Off (priority 0, available: yes)
active profile: <a2dp_sink>
sinks:
bluez_sink.50_DC_E7_D7_70_9C.a2dp_sink/#1: Echo-0W6
sources:
bluez_sink.50_DC_E7_D7_70_9C.a2dp_sink.monitor/#4: Monitor of Echo-0W6
ports:
speaker-output: Speaker (priority 0, latency offset 0 usec, available: yes)
properties:
speaker-input: Bluetooth Input (priority 0, latency offset 0 usec, available: no)
properties:
See the active profile is only a2dp_sink. It would be only a2dp_source for you. There is no a2dp_duplex profile. Compare that with my internal card profile
name: <alsa_card.pci-0000_00_1f.3>
driver: <module-alsa-card.c>
owner module: 7
device.description = "Built-in Audio"
module-udev-detect.discovered = "1"
.
.
profiles:
input:analog-stereo: Analog Stereo Input (priority 60, available: unknown)
output:analog-stereo: Analog Stereo Output (priority 6000, available: unknown)
output:analog-stereo+input:analog-stereo: Analog Stereo Duplex (priority 6060, available: unknown)
.
.
active profile: <output:analog-stereo+input:analog-stereo>
sinks:
alsa_output.pci-0000_00_1f.3.analog-stereo/#0: Built-in Audio Analog Stereo
sources:
alsa_output.pci-0000_00_1f.3.analog-stereo.monitor/#0: Monitor of Built-in Audio Analog Stereo
alsa_input.pci-0000_00_1f.3.analog-stereo/#1: Built-in Audio Analog Stereo