From eBower Wiki
Jump to: navigation, search

In March 2014 I acquired a Nikon Df as an upgrade to my D200. The D200 served me well over its 8-year lifespan, the only reason it went was because I had an underwater housing for it that I didn't want to store. After playing with the Df, I'm glad I waited until it was available.

Aesthetics

Easily the most divisive part about the camera. The vintage styling tends to be love-it or hate-it, I sometimes seem to be the only person who doesn't care much one way or the other. There are two types of people for whom the style is more important than the function of the camera:

  1. The "hipster" crowd will love the faux-vintage look without really understanding SLR photography. Here the only thing missing is a little speaker to play a film winding sound whenever you hit the shutter button. Although this is a poor decision from a photography perspective, if you've got the cash to spend $3000 on a fashion accessory I'm not going to stop you.
  2. The more insidious form-over-function crowd are the people who honestly want the camera for the sensor and image processing engine, but are afraid to buy it for fear of being viewed as a hipster photographer-wannabe. These are the people who really need to be educated about compromising on a camera based on how it looks because they're often choosing an inferior model just because of what other people will think of them.

Alternatives

There are two main competitors in the Nikon lineup at this point, the D610 and the D800. The D4 is also a competitor, but at twice the price you should be able to figure out that decision for yourself.

Df The Df outperforms the D610 and D800 at high ISO. The Df outperforms every camera at high ISO[1], including the D4, so if high ISO shooting is your cup of tea the Df is the best choice from a sensor perspective.

D610 A fine camera and clocking in at ~$1000 less than the Df there is a tough choice to be made. Your best bet is to hold one. While they're nominally the same size and weight, the D610 is slightly thicker and, for me, has a more comfortable grip. Other than that, they're nearly identical from a spec standpoint except for the sensor (16MP for the Df vs. 24MP for the D610) and the video capabilities of the D610. I don't need 16MP let alone 24 and video would always be an oddity for me so it was the high ISO performance that won me over to the Df. The D610 also uses the prosumer rectangular viewfinder from my D200 (would have saved me replacing a right angle viewfinder) but uses the newer MC-DC2 square remote and the cheap IR ML-L3 remote as well.

D800 About the same price as the Df, the D800 is another viable choice. Larger and heavier than the Df it also packs a whopping 36MP sensor - way too many pixels for me to want to deal with. It also slows the rapid-fire shooting down by nearly a third, from 5.5fps on the Df (6 on the D610) to 4 fps. In the rare case I use the spray-and-pray method of getting a shot of something moving those extra shots could be killer. However, the D800 is more of a pro body with a CF slot and likely better AF capabilities so 4 fps in focus beat out even 600 fps without focus. And of course the movie abilities. The D800 sports the pro-style round viewfinder accessories and the MC-36-style round remote release which would have also allowed me to save a very expensive full-featured remote (of course, it was full of features I never used but still needed batteries for...). Note that the D800E is another choice, it's a D800 without a bandpass filter. This makes for sharper images and better shooting of IR/UV, but an increased chance of moire effects and false color.

As with all shooting, imagine the settings you want control over. Figure out how you use them now. Then imagine how you'd use them with each of the cameras in your budget and figure out which one would be easier. For me, I thought it would be the D610/D800 but I went with the Df as a compromise. What I've found is that the Df is, in many respects, better than my D200 for the settings I now use. The D200 was locked at ISO 200, just about everything higher than 400 was too much of a mess. Now I can set the ISO to make meaningful differences to the shutter speed so having the physical wheel access is much better for me.

If you need another datapoint to counter the Df naysayers, many professional photographers and knowledgeable camera geeks at the Nikonians Df forum bought the Df as a second body and ended up using it as their primary because of the controls rather than in spite of them. Will this herald in a new generation of cameras covered in knobs and buttons? Probably not. But it does mean that the Df isn't just a fashion accessory but a functional and highly capable camera.

But the most important question is "why are you upgrading?" If you can't figure out why you need a new camera, maybe you don't really need a new camera. Spending $3k on a new 14-24mm and a 105mm micro VR may do a lot more for your images than upgrading camera bodies.

Ergonomics

The one downside of the camera compared to the D200: it's really designed to slow you down and think about your shot. In general the ergonomics aren't really bad, they just take a little getting used to and, frankly, can be quite enjoyable at least at this learning stage. I like the ISO dial, with the D200 I fixed the ISO at 200 because anything more I wasn't overly happy with but the Df is perfectly fine through a much wider array so a quick access is useful. I don't typically shoot in S mode, but I'm sure those that do will appreciate a similar dial for that setting. All in all there are only a few things that could be improved given the price of the camera:

  1. It's a bit cramped. These dials and controls would be well-suited for a D4, but on the smaller Df some are just difficult to manage.
  2. The on/off switch should really be a lever IMO. Granted, maybe I'm just supposed to leave it on all the time but my workflow with the D200 meant leaving the camera off and turning it on once I was looking through the viewfinder. With the Df I need two fingers to turn it on so it should happen before I lift the camera. Muscle memory will fix this, I'm sure.
  3. The shutter button is too far back, the D200 was perfect slightly in front of the camera and angled down, the Df is vertical and a bit far towards the rear for me. This is the one compromise to the retro styling I wish they had made.
  4. The aperture adjustment is a vertical dial in the front of the camera. This is awful for "through the viewfinder" adjustments, but since it's (for me) more of a creative setting I can live with it. I would have loved to see an experiment to extend the F-mount on the camera to provide a ring-style aperture setting as an extension to modern lenses.

But that's it from the complaint department after the upgrade. The weight is about 10% less than the D200 but it doesn't feel cheap. The battery door may be a bit flimsy and reusing it for the SD card could have been a better choice, but again we're looking at conserving real estate here and with any luck an EyeFi will minimize the number of times I need to open the door.

Of course, the looks are really a love/hate issue. In my opinion if you're going retro you may as well go full retro with the silver but I would have picked up the Df had it been a lighter D800 with the D4 sensor. And I probably would have liked it even more because of that.

Shooting Features

Error creating thumbnail: Unable to save thumbnail to destination

Of course, the real use of a camera is taking pictures. So far the high ISO shots from the Df have been fabulous. Up to 1600 or 3200 I can still easily get usable shots, to the right is an ISO 6400 shot with zero thought to framing or exposure straight out of the camera.

DX Lenses

I've got several DX lenses, some of which I really like such as the 12-24mm F4 or the 10.5mm fisheye (the 18-200mm was always a bit questionable to me). I wanted to mount these to see how they'd play with the Df's FX sensor fully expecting to need to heavily crop to get a usable image. To my surprise, the Df did this for me. And if the metadata is correct it also tells me the FoV for each shot. Shooting with the 12-24mm I got a 5MP image that claimed to be 12mm in the lens and 18mm at the sensor. This is a nice feature, but has a few downsides. First, the crop is a fixed 1.5x to mimic a DX sensor. So my 12-24mm is now a 5MP 18-36mm lens. Not bad, but I need to remember that the viewfinder is not the image. Second, and perhaps more damning, is that this crop happens in the RAW file as well.

This can be disabled under the Shooting menu and Image Area setting. Unfortunately it's only on/off, a third JPG-only option would be nice but can be done in post.

Lenses with an Aperture Ring

You've got to love lenses with an aperture ring when paired with the Df - why they didn't try to put the aperture control dial around the F-mount is beyond me. The problem is, while the older lenses with aperture control look great they don't tend to function well and need to be locked at the smallest aperture setting. Unless you tweak the right menu setting, of course!

Custom Settings Menu > Controls > Customize command dials > Aperture settings > Aperture ring 

Now you need to have the lens at the minimum aperture for most shooting, but in A or M mode you can unlock the aperture ring and shoot the way nature intended!

Connectivity

Here I need to give Nikon a poor rating, it's not just limited to the Df and it's pretty endemic to the industry (hopefully new-thinking players like Samsung will help shift focus towards connected cameras). We've got several key shortcomings:

  1. The USB port isn't a standard Micro USB. I would have accepted Mini like the D200 considering the long product lifecycles, but it seems to be proprietary as near as I can tell.
  2. GPS and WiFi aren't built in. The cost of these components is cheap thanks to phones and tablets, but they're expensive add-ons for $3k SLRs still (well, the $300+ GPS is expensive, at least the WiFi module is <$100).
  3. The WU-1a is pretty poorly implemented.

There are two primary use cases for connected cameras. For the consumer it's all about instant sharing, if I can snap a picture with my SLR, have it geotagged (either natively or by my phone/tablet), and instantly send it to Google+ or Facebook it's a winner and I wouldn't feel the need to pull out my phone for the quick snap. For the pro it's about instant viewing and editing on a computer. Nikon just doesn't seem to get either use case right and it feels like an afterthought by someone who doesn't have a use for a connected camera.

Image Download Workflow

The biggest headache for me with a DSLR was the workflow. Take a bunch of shots in the field, then you need to remove the memory card or plug in the USB port, copy things over, edit, and post. With my phone I just took the shot and when I got back to my PC it was already in Google+. Granted, the Google+ editor does naughty things to the JPG compression (look at the blocky shading of some of edited images) and the quality of a phone snap isn't on par with even an old DSLR but the workflow was dead simple instead of usually taking me a few days. I think I've achieved a good compromise.

Basic Connectivity

First part is to get basic connectivity to your phone/tablet, whether you use the WU-1a or an Eye-Fi is up to you. The WU-1a uses Nikon's own software or Helicon remote, the Eye-Fi uses proprietary software. The WU-1a can only act as an access point while the Eye-Fi can also connect to an existing network, for me the Eye-Fi wins here since all of my Internet access is via a MiFi device and with the Eye-Fi I don't need to choose between my camera and the Internet. The Eye-Fi is well-supported within the Df and takes up no additional space. The WU-1a uses the USB port and dangles off the side. For me the WU-1a is now a wireless remote control using Helicon Remote.

The biggest downside to the Eye-Fi is that it can only geotag JPG files. This means that I need to shoot in RAW+JPEG, but the JPEG is in small+basic mode so it doesn't take up much space. More later on this.

Google+ Backup

However, most of the software out there puts files in the root directory of your SD card rather than in the /sdcard/DCIM directory where Google+ pulls images from. After briefly playing with the idea of symlinks on a FAT-emulated filesystem or loop mounts I actually checked the Google+ auto backup settings. As it turns out, now you can click a checkbox for Local Folders which will include anything that the media scanner says has media in it. Some of these are probably not things you care about, but it will include /sdcard/Eye-Fi and /sdcard/Pictures/Screenshots which I do care about. You'll also probably guess that DSLR shots are a bit larger than the free image size. I told Google to shrink the files before backing them up figuring that if I do want something full-sized I've got the file on the phone that I can manually upload. The default size will fill a 1080p monitor, so more than enough for me today and I'm guessing that they'll up it to 4k soon.

One thing to be careful about is to check whether the Google+ app resizes the image or if Google+ resizes the image. If it's the former, there are no worries. If it's the latter you may end up with a large mobile data bill. I'll try to experiment more, but so far my usage suggests it's sending the full NEF and then compressing server-side. However, I'm also taking a lot more pictures with the Df than I did with my phone.

Now I've got the shrunken images on Google+. The reality is this is most of what I care about anyway. I don't like to crop-zoom (but in the cases I do need to I can still do it manually), and the majority of the images I shoot won't be printed any larger than an 8x10 piece of standard paper - if they're printed at all. But I've now got a phone with full quality images (a NEF plus a small JPG image) and a rapidly shrinking amount of SD card space. I could plug my phone into my computer and download the images manually, but you don't know me very well if you think that would make me happy. To the crontab!

Phone Config

First thing's first. You need to install an SSH server on your phone. There are other options, but here's what I'm using:

  1. I'm rooted, I'm going to assume you are too. If not, you can try this SSH Server and see if it works (I may fall back to this)
  2. Install the BusyBox Installer and install BusyBox - this is a set of useful utilities. You can now uninstall the installer if you want.
  3. I'm using this SSH Server. The one linked above is a bit more all-inclusive, but I had problems with rsync that I may have fixed.
  4. Now you'll want rsync4android. Technically you just want the files it downloads the first time you run it. Even better, you can just use this app to push images to your server, more below on why I don't do this.
  5. You'll need to copy rsync to someplace useful, this also means root and executing the following commands:
su
mount | grep system
# You want to remember the first two parts of the output, it will look like /dev/block/platform/msm_sdcc.1/by-name/system /system 
mount -o rw,remount /dev/block/platform/msm_sdcc.1/by-name/system /system 
cp /data/data/eu.kowalczuk.rsync4android/files/rsync /system/xbin
mount -o ro,remount /dev/block/platform/msm_sdcc.1/by-name/system /system

Now you're all set up on the phone front. Configure the server as you see fit, just make sure you install an ~/.ssh/authorized_keys file by whatever means necessary.

Laptop Config

Why go through all this effort if rsync4android does it all for you with only server-side controls? Two reasons. First, it's always useful to have an SSH server on your phone, you did SSH into your phone instead of typing the commands above, right? Second, Android isn't really designed to be a Linux system, it's really more interested in cloud backup which is another way to go (DropBox on your phone and desktop may provide the same functionality for those interested). By doing a pull from my laptop I get the following benefits:

  1. Better automation. Tasker may be able to help here, but it's nothing compared to a good old-fashioned cron
  2. Better logging and reporting, if it fails I wake up to a Zenity message and a logfile explaining why.
  3. No cloud intermediary. This isn't a security thing since I do push files to Google+, but it's a workflow thing. Why waste space on a cloud service and drag stuff back and forth when I can just edit it on my computer?
  4. I don't want to do this unless I'm at home. Sure, I could put a check that prevents me from doing anything unless I'm on my home WiFi network, but if my laptop can't reach my phone's home address it won't work. Now I don't need to worry that I'm traveling or I accidentally left my MiFi device on and used up all of my data for the month.

So, how do we configure the laptop side of things? First, we need an entry in ~/.ssh/config for your phone. Something like this should work:

Host myphone
  IdentityFile ~/.ssh/nexus4
  User me
  Hostname 192.168.2.3
  Port 2200

If I can run "ssh nexus4" and connect without a password I'm good to go.

The next step is the backup script. This is probably a bit more complex and wasteful than necessary, but it will download images to a folder in ~/Pictures/YYYY-MM-DD_Auto from the paths I specify in source_paths, delete the images once they're transferred, use Zenity if there are any issues to show a popup, and delete the directory if there are no files.

#!/bin/bash
 
dest_base=~/media/pictures
dest_path=$dest_base/$(date +%Y-%m-%d_Auto -d "yesterday")
camera_name=nexus4
 
source_paths="/sdcard/DCIM /sdcard/Pictures /sdcard/Eye-Fi"
 
function print_error {
  echo "$1" >> /tmp/$(basename $0).log
  zenity --error --text "$(basename $0): $1" --display=:0.0
  exit 2
}
 
if [ ! -d $dest_base ]; then
  print_error "$dest_base not mounted?"
fi
 
if [ ! -d $dest_path ]; then
  mkdir $dest_path
  if [ ! $? = 0 ]; then
    print_error "Couldn't create $dest_path"
  fi
fi
 
for curr_path in $source_paths; do
  rsync -avz --remove-source-files --exclude .gen --exclude .temp \
     --exclude .icache --exclude .thumbnails --exclude cache \
     --exclude .vcache --exclude thumbnails \
     $camera_name:$curr_path $dest_path >> /tmp/$(basename $0).log 2>&amp;1
  if [ ! $? = 0 ]; then
    print_error "Backup of $curr_path failed."
  fi
done
 
# If there are no files we can dump the directory
num_files=$(find $dest_path -type f | wc -l)
if [ "$num_files" = 0 ]; then
  rm -r $dest_path
fi
 
# Now there's at least one file, so lets rename some things more intelligently
mv $dest_path/DCIM $dest_path/Nexus_4
mv $dest_path/Eye-Fi $dest_path/Df
mv $dest_path/Pictures $dest_path/Nexus_4
 
# The Eye-Fi doesn't seem to like adding EXIF data to NEF files, so 
# transfer them from JPG equivalents and delete the JPG/backup NEFs.
if [ "$(exiftool $dest_path/Df/*.NEF | grep 'GPS Position')" = "" ]; then
  exiftool -r -tagsfromfile %d%f.JPG -gps:all -city -province-state -country --ext jpg $dest_path/Df
  rm $dest_path/Df/*.JPG
  rm $dest_path/Df/*.NEF_original
else
  zenity --error --text "$(basename $0): GPS data already found in NEF files!" --display=:0.0
fi
 
# Finally, we can delete any empty directories
find $dest_path -type d -empty -delete
 
if [ ! "$num_files" = 0 ]; then
  zenity --info --text "$(basename $0): $num_files images backed up" --display=:0.0
fi

Now I just need to edit my crontab to make it happen. If you've got a passphrase on your key and you're running Precise the SSH_AUTH_SOCK line below should work for you. Just unlock your key on login and it will grab the keyring entry but your phone will still be protected in case your private key is compromised. I run mine at 4am, this is why I save the file to yesterday's date and I'm pretty much guaranteed to be home at this time and not taking pictures (I don't cover the case where an image is in the process of downloading, it seems like Eye-Fi will push it to a temp directory and then do an atomic move to the /sdcard/Eye-Fi directory but frankly I don't want to find out!).

0 4 * * * SSH_AUTH_SOCK="$(find /tmp/keyring*/ -type s -user $LOGNAME -group $LOGNAME -name '*ssh' | head -n 1)" /path/to/bin/camera_backup > /dev/null

The end result is that within minutes I've got a 2MP image on Google+ ready for sharing and the next day I've got the full version backed up in case I like it enough to process it fully.

Firmware

Even firmware upgrades are a bit lacking. To install the firmware you just put the image in the root of the SD card - this is beautiful and nicely done. But to download the image I need to specify whether I have a Mac or PC. PC forces an EXE file and the nearest I can tell is that it simply extracts the file to a folder. Not your SD card, a folder in the Downloads directory. Why not just let me download the file myself instead of an easy-to-trojan EXE file that doesn't do any of the work of putting the file in the right place? The Mac download is a DMG file which isn't worth even playing with.

So now I have VirtualBox running so I can download a file, move it to the host Linux machine, and then copy it to the SD card. Luckily, there's a better way. Download the Windows .exe file and run the command:

unrar e F-DF-V101W.exe

This should extract the bin file for you without any help from Windows. In case they change the process, you can run the following to see what comes out:

strings F-DF-V101W.exe

For a RAR file there's a lot of XML with references to WinRAR. If you see WinZIP instead try the "unzip" command.

For those interested, here is Df Firmware v1.01.

References

  1. DXO Mark Nikon Df Sensor Score