Two form-factors: SD/SDIO and CF, in a variety of sizes: 4, 8, and 16 (CF only). Configuration behind-the-scenes provided by a hidden partition at the end of the virtual disk. This partition would be readable by a desktop system and configuration set using a simple fixed-format text file thus instantly enabling use by those not running official software or not wanting the official software, and can be updated without dedicated, specialized hardware.
Features:
- TFTP server for local network image-pull. (For use by advanced users.)
- FTP client for local or inter-network image-push. (This would be used to support online distribution of images.)
- Desktop software to include a light, automatically configured and secured FTP server 'bound' to the card(s).
- WiFi network configuration with priority listings. List networks in preferential order.
- Ability to use 'any open network' as one of the networks, and to prioritize around it. ("I really want some open network, but I'll take Bob's if I really have to...")
- Deletion upon successful (and verified) file transfer. Support an RCMD via FTP to MD5 or CRC hash the file (calculated on-card during the transfer itself).
- Use a three-position physical write-protect switch (tied to a simple GPIO ground pin) to set radio status in addition to write-protect.
- Static-IP Ad-Hoc connections for in-field use. (Some file storage apps for the iPhone use a FTP connection, for example.)
- Connection-specific upload rules. E.g. upload to my desktop at the office, my iPhone on Ad-Hoc, and my web server otherwise.
- Network configuration stored in a single file, specific upload rules in additional files.
- Connection failover if unable to connect to initial FTP.
- Will not transfer video. Will transfer JPEG, RAW, and simple audio.
Aperture, for example, would be supported through the 'monitor folder for changes' Automator workflow, and would act like a tethered camera.
Tech speak: Some of these features may be CF-only (like a TFTP server) due to additional space requirements for the microcontroller. The configuration file(s) on the secondary partition must be smaller than one sector in size to avoid complex fragmentation issues when reading the configuration in the microcontroller. (A problem I encountered often on early CF-based MP3 players like the Nex.) Sample configuration:
- Code: Select all
#conn.txt
#priority, upload target, WiFi mode, AP, security mode, passphrase, IP allocation[, IP information for static, ...]
1,default,infrastructure,Alice's WiFi,wpa-psk,This is my passphrase.,dynamic
2,field,adhoc,Alice In-Field,none,,static,10.1.1.2
3,wild,scan,*,none,,dynamic
- Code: Select all
#default.txt
#priority, type, delete on success, host, user, password, path
1,ftp,1,192.168.1.191,amcgregor,password,/Users/amcgregor/Public/Drop Box
2,ftp,1,field.domain.com,amcgregor,password,/home/amcgregor/uploads
- Code: Select all
#field.txt
1,ftp,0,10.1.1.1,root,alpine,/home/mobile/Documents/uploads
2,ftp,1,field.domain.com,amcgregor,password,/home/amcgregor/uploads
- Code: Select all
#wild.txt
1,ftp,1,field.domain.com,amcgregor,password,/home/amcgregor/uploads
2,eyefi,1,,amcgregor,password,flickr
So, there you have it. My dream. ^_^ Feel free to use any of this, or none. I promise, I'll buy a dozen if half of this comes true in a CF form-factor, and I'm very sure I can convince other photographers I know. I've done microcontroller work in the past, and I fully appreciate what has been done so far. The Eye-Fi is darned awesome!
— Alice.


