If you're able to boot into the bootloader, then you're not hard bricked (fortunately).
What output do you get if you have your device in fastboot mode, then type 'fastboot getvar all' into the ADB terminal, then press enter?
If you can, use a different USB port and/or USB data cable.
Also, which firmware were you on? There is no 7.1 update for stock firmware, only 7.0 for Nougat or 8.1 for Oreo.
Below is the output of fastboot getvar:
(bootloader) version: 0.5
(bootloader) version-bootloader: moto-msm8952-B1.06(*)
(bootloader) product: athene_16mp
(bootloader) board: athene_16mp
(bootloader) secure: yes
(bootloader) hwrev: P2A
(bootloader) radio: 4
(bootloader) storage-type: emmc
(bootloader) emmc: 32GB SAMSUNG RX1BMB RV=08 PV=07 FV=0000000000000007
(bootloader) ram: 3GB SAMSUNG LP3 DIE=6Gb M5=01 M6=05 M7=00 M8=7B
(bootloader) cpu: MSM8952
(bootloader) serialno: d72acc4e
(bootloader) cid: 0x0032
(bootloader) channelid: 0xc0
(bootloader) uid: EC1CEC0000000000000000000000
(bootloader) securestate: oem_locked
(bootloader) iswarrantyvoid: yes
(bootloader) max-download-size: 536870912
(bootloader) reason: Failed to initialize partition table
(bootloader) imei: 000000000000000
(bootloader) meid:
(bootloader) date: 01-01-1970
(bootloader) sku: 000000000000000
(bootloader) battid:
(bootloader) iccid:
(bootloader) cust_md5:
(bootloader) max-sparse-size: 268435456
(bootloader) current-time:
(bootloader) ro.build.fingerprint:
(bootloader) ro.build.version.full:
(bootloader) ro.build.version.qcom:
(bootloader) version-baseband:
(bootloader) kernel.version:
(bootloader) sbl1.git: sbl1.git
(bootloader) rpm.git: rpm.git
(bootloader) tz.git: tz.git
(bootloader) hyp.git: hyp.git
(bootloader) keymaster.git: keymaster.git
(bootloader) cmnlib.git: cmnlib.git
(bootloader) aboot.git: git=MBM-NG-VB1.06-0-g0edfb0d
(bootloader) qe:
(bootloader) frp-state: no protection (err)
(bootloader) ro.carrier:
all: listed above
finished. total time: 0.104s
and i flash nougat 7 then i got update, I allowed update and phone got stuck in bootloader.