The project consist creating a class that, using only free resources and simple implementation methods do the following:
*One class for Swift 4 (Object C not accepted)
*One in Java for Android
*One class in Python for both for linux and windows (so, all modules must work on both architectures)
The source must be native and no deprecated methods should be used.
The sound generated must works between all those three platforms.
They must pair with all platforms that have a sound generator source and a sound receiver device. (A microfone and a speaker)
It should works like chirp or lisnr.
- Functions that should be implemented (Both on Receiver and Sender)
*Pair each device (One to One Relationship) - For each operation, one device can only pair with another one.
*Open a channel for transferring data
*Recognize the Sender and Receiver
*Stablish a handshake between both devices
*Send / Receive string values
*End the transmission
The sound wave generated must be inaudible... up 18KHZ until 22KHZ
The transfer must work in a range between 8 to 10 meters.
The transfer will only send string values. As this kind of transmission now a days can transfer about 7kb/s so there is no need to be more than that.
On the python class, It must have a function that creates what is supposed to be transmitted and save the wav file format on disk. (not on IOS or Android)
It is important that the classes come with example projects that can be compiled and tested.
It is also important a good documentation about everything coded.
Test classes must be coded.
The source code must be provided with out any licensing and neither implementations must be used with proprietary libs or any type of charge.