They suggested to use bluetooth as the hardware. However, after did a case study on this user case, I found Wifi is more suitable.
User connects his mobile device with Surface, then user can explore and download images, which are stored on mobile device, through Surface screen.
It is proved that this user case is impossible to achieve without an slave application running on mobile device. This slave application will listen on device port and send required data to Surface through wireless network.
Two software must be built to achieve the user case. A master application on Surface and an slave application on mobile device
We can use Bluetooth or Wifi to build the communication. Listed below is the comparison.
- No managed library for .net platform
- No unified bluetooth programming API on mobile system
- Transfer speed is very slow
- Managed socket library for .net platform
- Unified socket API provided by Adobe AIR for mobile system which includes Android, iOS, Blackberry and etc
- Transfer speed is so far the best.
Bluetooth programming is not suitable for this project
- Developer(me) need to master different programming API for different bluetooth stack.
- Developer(me) need to master different programming language on different mobile system.
- Developer(me) need to wrap unmanaged bluetooth library for .net platform.
- Different slave application need to be built for each mobile system, although the functions are the same.
- Developer(me) has sufficient knowledge on .net socket programming.
- Adobe AIR provides unified socket API for mobile systems, which means only one slave application need to be built.
- Developer(me) has experience on Adobe AIR
End of Case study