Maybe try editing the recalbox-boot.conf on the root of the drive and change the sharedevice to read:
sharedevice=ANYEXTERNAL
#sharedevice=INTERNAL
This works for me when booting from internal hdd and using any external USB drive for roms.
I'm not too sure about what the sharedevice param actually means as there is not much documentation
about the recalbox-boot.conf file.