Redfly Under the Hood
By Chris De Herrera, Copyright 2008
Version 1.00 Created 11/2/2008
[an error occurred while processing this directive]
While I have not opened my Redfly, I have been
thinking about how the Redfly works. Here are my observations on how the
Redfly interacts with Windows Mobile.
TCP/IP Connectivity
All
connectivity with the Redfly from the Windows Mobile device is sent over a
TCP/IP connection. This TCP/IP connection appears to be based on the Windows
Mobile device being the DHCP server and using the RNDIS (Remote Network
Device Independent Specification). The Windows Mobile device uses
169.254.2.1 and the Redfly uses 169.254.2.2 just like ActiveSync or WMDC
does. So older Windows Mobile devices that do not support RNDIS or the
Advanced Network Connection option will not work.
Redirecting Video to the Redfly
From what I can decipher by observing how the Redfly
works, the Redfly is an extension of the Windows Mobile device. This
extension for the screen is redirecting the graphics display interface (GDI)
that the GWES (Graphics, Windowing and Events) application on the Windows
Mobile device usually displays locally to the Redfly. Then the Redfly
interprets the GDI commands which display the user interface. So in order to
play a video, the amount of bits required to be sent across the USB or
Bluetooth connection is very large (800 x 480 x 16 = 175 mb/s for 30 FPS).
Plus the Windows Mobile device’s CPU has to generate the larger 800 x 480
GDI commands to send to the Redfly. So faster cpu Windows Mobile devices
will work better with the Redfly than slower ones. I found that the 400 MHz
cpu in the Tilt generally worked well however there were some lags with
moving the cursor from time to time.
In addition to video, Celio
added something that Windows Mobile does not have by default – a mouse
cursor. The x and y coordinates of the cursor have to be sent from the
Redfly to the Windows Mobile device as part of the GDI information in order
to allow you to interact with Windows Mobile.
USB Storage on the Redfly
Finally
the Redfly extends the file system by allowing you to plug in a USB storage
device. When you plug in the storage device, it is seen by Windows Mobile as
if you plugged in a flash card into your device. To me this means that all
file i/o is being sent from the Redfly to the Windows Mobile device and the
Windows Mobile device is maintaining the file allocation table. Since this
direct access can present a risk of corrupting or truncating files, I
understand why Celio highly recommends that users use a USB cable to connect
to the Redfly from their device. I would extend this recommendation by
adding that the user should wait 30 seconds after saving a file to allow
Windows Mobile and the Redfly to completely write the information on the
storage device.
Redfly Performance
The combination
of the GDI display, keyboard, mouse and storage device information can be
large. So in order to optimize the performance, I expect that Celio is using
compression in order to optimize the performance especially since most
Windows Mobile devices are USB 1.1 clients (10 mb/s). However compression
would increase the cpu utilization of your Windows Mobile device and this
approach would favor devices with faster cpus for better performance.
Other Articles on the Redfly
1. Redfly "Deep Dive Review
2. Redfly Screen Shots
3. Redfly SoftMaker Screen
Shots - TextMaker, PlanMaker and SoftMaker Presentations - More
functionality than Word Mobile. Excel Moble and PowerPoint Mobile
4. Redfly Pictures
5. Redfly USB Peripherals
Return to Chris De
Herrera's Windows CE Website
|