This is the demo for Acoustic communication (as a potential alternative of NFC)
The current implementation is based on Frequency Shift Keying, every 2-bit is mapped to one frequency among 4 freq total and the corresponding waveform of 441 bits long. A marker byte 10 is used for indicating the start of the UID. CRC bytes are attached at the end of the byte sequence for error correction. Sampling frequency is 44KHz. The decoder used FFT.
As an example, 7-byte UID takes roughly (7+2)*8/2*441/44Khz = 360ms to transmit.
Encode: Generator.javaDecode: Receiver.java
By xuq
Email: [email protected]
- Can identify 7-byte UID with latency < 5 sec
- Detection range < 10cm (even longer also works, can be controlled by speaker volume bar)
- a degree of tolerance to background noise (human conversation, music, …)
- robustness to phone orientation
- A listening background task
- CRC32 is included.
- Improve efficiency
- Synchronization