Exploiting chirp spread spectrum and error detection in LoRa collision recovery