Skip to content
Kristoffer Gleditsch edited this page May 8, 2013 · 2 revisions

General debugging tips

When trying to get this software to work, it is probably a good idea to:

  • Set LogLevel=trace in the configuration file. That way you will get a full log of what happens. Use the LogFile setting to control where the log file goes.
  • Configure the camera to take small, low-resolution photos while testing, to cut down on the transfer waiting time.
  • If you are running it on a normal computer, running it without the --daemonize/-d option will make it easier to start, stop and restart it when testing your configuration.

In general, if the script fails it will print out “ERROR” and “WARNING” messages to the log. Some common errors are listed below, along with their solutions.

Common errors

Unsupported transfermode

Unsupported transfermode 'XXX' from card 'CARD' (000000000000). at ./rifec.pl line 353.

If you see this, the card is probably configured to upload images to online services like Flickr or Facebook. To fix this error, reconfigure your card to upload files (photos, RAW files, videos) to the local computer only.

Technically, we could have received and stored the image anyway. We don’t because we don’t want to fool the user. This software does not provide all the features of the original Eye-Fi software, and we want to make sure people know what they get when they set it up.

Tarballs with >1 files

I don't know how to handle tarballs with >1 files! (IMG_0348.JPG, IMG_0348.JPG.log) at /volume1/@appstore/rifec/bin/rifec.pl line 1014

This usually means that the geotagging feature is enabled on the card. Support for geotagging is not implemented in rifec.pl, so disable geotagging in the card configuration to avoid this error.

The script starts, but no photos arrive

If the daemon starts, but you don’t see any photos being transferred, it’s time to look at the logs again:

2013-02-22 10:30:12Z 16733 DEBUG 192.168.17.6:51414 -> POST /api/soap/eyefilm/v1
2013-02-22 10:30:13Z 16733 TRACE Request headers: $VAR1 = [
...
];
2013-02-22 10:30:18Z 16733 INFO StartSession from 'CARD' (000000000000)
2013-02-22 10:30:18Z 16733 TRACE StartSession: $VAR1 = {
...
};
2013-02-22 10:30:18Z 16733 TRACE StartSessionResponse: $VAR1 = {
...
};
2013-02-22 10:30:19Z 16733 DEBUG Closed connection!

In this case, a StartSession operation is completed, but the card closes the connection immediately instead of going on to GetPhotoStatus. The card will behave like this if the authentication between the card and server fails, so double check that the UploadKey in the config file is correct.

Note: If you are using the eyefi-config tool to get the upload key from the card, it seems this tool will not give you the correct upload key. (Source)

FAQ

How do I tell the card what server to connect to?

When a card has a photo it wants to upload, it will first try to connect to the server it used last time. If that doesn’t work, it will start searching its local network by going through the address range, connecting to TCP 59278 on each IP until it finds a server it can talk to.

To make sure the Eye-Fi card uploads to your newly set up third party server only:

  • Turn off Relayed Transfers in Eye-Fi Center
  • Turn off all other Eye-Fi servers on your network than the one you want the images uploaded to
  • Make sure TCP port 59278 isn’t firewalled on your server

(Source)

How do I get the card log?

Like this