DSLR Controller is able to connect to other devices using Wi-Fi. This includes other devices running DSLR Controller, cameras with built-in Wi-Fi support, WFT boxes, and Android TV sticks.
Before going further, it is important to know that liveview performance using Wi-Fi is usually siginificantly lower than using a USB connection. Even if the Wi-Fi link is high performance, you are likely to experience higher latencies using Wi-Fi.
That being said, it is possible to get decent performance out of DSLR Controller using Wi-Fi. The most important factor is going to be the Wi-Fi access point. Doing this right or wrong can mean a 400% performance difference. What you want to do is create a private access point, shared only by the device you are using as a controller, and the actual camera/WFT/(second DSLR Controller device in Wi-Fi Passthrough mode)/(Android TV stick). Even if your normal in-house setup is the latest high-speed router with no other users, the performance difference between that home-router and a private connection as suggested can still be very significant.
Most newer camera/WFTs can create their own Wi-Fi access point. Sometimes this is called Easy connection on the camera. If your camera can initiate connection by NFC, it will also use its own access point.
If your camera/WFT is not able to create a Wi-Fi access point, luckily most modern Android devices can do this. In the Settings app, on many devices there is the option to create a Portable Hotspot, which is exactly what we want to do. Not all Android devices have this feature built in, some require a SIM card for it to work, and some require a tethering plan. If the option in Settings does not work, you may try using the Hotspot Control app. If that does not work either, you can try one of the many apps available on the Play store that will allow you to perform Wi-Fi tethering. Note that actual connectivity to the internet is not needed (and thus you do not need a tethering plan), you just need to create a hotspot and connect your devices to it, so they can communicate with eachother.
Ultimately, you will want to use a hotspot as described above. However, if you cannot get things to work, try using a pre-existing Wi-Fi network, to make sure everything works. It will be slower, but it'll still work fine, and there's a lot less chance of the network setup being wrong.
If you have two devices capable of running DSLR Controller, you can hook one of them up to your camera using USB, and control the setup wirelessly using the second device.
Starting off, make sure both devices are connected to the same Wi-Fi network. This can be a normal Wi-Fi network, a private hotspot like described above, or even a Wi-Fi Direct connection - as long as they're both connected to the same network.
Next, connect device A to your camera over USB and start DSLR Controller. Under Options (cogwheel icon, bottom-right), select Wi-Fi Passthrough mode. This will open a new screen which will tell you it is waiting for a connection.
Now that device A is operational, simply launch DSLR Controller on device B, and it will automatically try to find device A on the same Wi-Fi network. If the device is found, DSLR Controller will start up as normally, and you will have full control over the camera.
Sometimes the device connected to the camera will not be found the first try, be sure to try it a couple of times. Furthermore, if for any reason you've disconnected an established connection (like exiting DSLR Controller), you should wait 30 seconds before trying to reconnect.
Instructions on how to connect to the WT3020 the custom DSLR Controller firmware can be found in our Creating a wireless remote from a Nexx WT3020 guide.
Instructions on how to connect to the TL-MR3040 the custom DSLR Controller firmware can be found in our Creating a wireless remote from a TP-Link TL-MR3040 guide.
Instructions on how to connect to a modified Android TV stick running the DSLR Controller Wi-Fi Stick software can be found in our Creating a wireless remote from an Android TV stick guide.
Once the adapter is inserted and the camera is turned on, this works exactly the same as with a camera with built-in Wi-Fi, so please follow the instructions in the following section.
Note that adapters that merely transmit recorded images (such as Eye-Fi cards) are not supported. They may look similar, but these are two completely different classes of devices.
The first time you do this, it can be rather tricky to get the connection up and running. On your camera, you need to create a new connection set. You cannot use the same set as you are already using with your computer or other devices. It is probably easiest to use the wizard. Once you have a set configured to connect with DSLR Controller, you can use it just by selecting it on the camera. If you're using the Android device as a hotspot as described earlier, you will need to start that hotspot first.
You need to put the camera/WFT in EOS Utility (computer/laptop icon) mode, or Smartphone (phone/tablet icon) mode (not supported by WFT boxes). These are two different connection methods, each with their pros and cons (see below). Once you have configured the camera/WFT to connect to (or create) the right Wi-Fi network, it will ask to begin the pairing process. Start the pairing process, then (if applicable) connect to the created Wi-Fi network on your Android device, and start DSLR Controller. Within a few seconds, your camera should tell you that DSLR Controller is attempting to connect. You must confirm this on your camera within 30 seconds, or DSLR Controller will give up (just retry when this happens). You may need to confirm severals screens of options on the camera after having confirmed the connection, you need to finish that before the app will work. When paired, you can fully control your camera/WFT with DSLR Controller on the Android device.
Note that on some cameras video recording functionality is disabled when connecting by Wi-Fi. This is something the camera does, not the app.
EOS Utility vs Smartphone mode
These connections modes are very similar, but not exactly the same. The exact difference depends on your specific camera or WFT box. On some cameras, Smartphone mode can create its own Wi-Fi network, while EOS Utility mode requires an existing Wi-Fi network. On some cameras, Smartphone mode allows you to lower the liveview resolution (to increase FPS and lower latency), while EOS Utility mode does not. On some cameras, Smarthpone mode does not allow you to record video, while EOS Utility mode does - on other cameras recording video is disabled in either mode. And on some cameras (such as the 5D Mark IV), all options are available in either mode, and there is no discernable difference.
Connecting to a camera equipped with both Wi-Fi and NFC is easy. Start DSLR Controller and tap the NFC button on-screen. Then tap the Android device's NFC chip to the camera's NFC chip, and DSLR Controller will automatically connect to the camera.
Of course, NFC needs to be enabled both on the camera as well as on the Android device. NFC is very short-range, so you need to tap the devices together at exactly the right place as well. The location of the NFC chip on the camera is where the NFC logo is located. This is on the bottom of the camera for the M3, and next to the CF/SD-card hatch on the 5D Mark IV. On the Android devices, as a rule of thumb, the NFC chip is generally located very close to the camera lens.
DSLR Controller must be running and on-screen before tapping the two device together. The camera's NFC chip is hardcoded to launch Canon's Camera Connect app, and DSLR Controller can only intercept this when it's running in the foreground.
DSLR Controller needs to be able to control the Wi-Fi network for the connection to work. Sometimes, Android will not allow it to. In this case, you need to go to Android's Wi-Fi settings, and manually remove the network DSLR Controller was trying to connect to. This will allow it to work the next try.
Connections initiated by NFC always use a private Wi-Fi network (high performance) and use the Smartphone protocol.
It may take some trying before you get this working, but once you figure it out, it works very well.