Okay, so this is a can of worms

! Seriously, we are happy to help. Let me get you started here, but you might also want reach out directly to us via email (support 'at' moremobilesoftware 'dot' com) with more specific question that you might have along the way.
>
What is the best format to use that will export/import the most details from MacDive over to the DiveLog app(s)
As a general rule, the "best" way to import MacDive is to use one of our Mac apps (DiveLogDT - paid or DiveLogManager - free) to import the native MacDive database (use MacDive under the IMPORT section in sidebar). This will get you the most data and the highest fidelity for the profile data. However, the one catch is that profile data from Shearwater is encoded in the MacDive database in a way that we are not able to read so no Shearwater profile data will be imported (the Zoop profile data *should* work fine).
The other option is to export your MacDive data to UDDF and import the UDDF data into either Dive Log on iOS (Synchronize tab, Import -> Import UDDF format file) or DiveLogDT/DiveLogManager (UDDF under the IMPORT item in the sidebar). This will get the profile data from the Shearwater and most of the same data as you get from the direct MacDive database import.
The other thing you can do is use a combination of both. In this case you would import the MacDive database directly first and then you would import the UDDF data and "merge" the results with the existing dives you imported from the MacDive database directly. The way this works is that any information that is captured by the UDDF (like the Shearwater profiles) will update the existing entry in the logbook (that you got directly from the MacDive database). You can also use the same trick but re-import the dives directly from the Shearwater computers in Dive Log or DiveLogDT (not DiveLogManager) to update the original MacDive entries. Note that this "merging" is a manual process ... you need to make sure that the dives you select from the "source" (UDDF or Shearwater dive computer) line up one for one starting with the first dive you select in the "destination" (the dives imported from the MacDive database) as we do not attempt to match dives based on dive details in any way. Feel free to reach out via email if you need help with this ... it is a bit complicated for sure.
I should also point out that MacDive does (or did) have support for directly synchronizing with Dive Log on iOS. We shared our database format with the MacDive developer and he developed a mechanism to sync directly with Dive Log. This involves initializing a Dive Log logbook directly from MacDive (essentially MacDive creates a Dive Log logbook from its data) and then sending that to Dive Log via Wi-Fi where it replaces the existing logbook. As I recall this uses the "Sync" function in MacDive and the Synchronize tab's Wi-Fi Synchronization in Dive Log. The feature may no longer be support in MacDive and it may not transfer all data supported by both platforms.
>
Is there anyway to also export/import pictures at the dive level - I wouldn’t think so but ..?
You are correct. This information can not be captured in Dive Log or DiveLogDT. There are ways to capture images Dive Log, but not "per dive" in the way MacDive supports
>
Primarily we use BT to import dives from the Terics directly to either of multiple iDevices and use the Suunto cable to import from the Zoops to a Mac.
Both Dive Log on iOS and DiveLogDT support downloading the Teric via BT. It is not possible to support the USB/serial computers like the Zoop directly on iOS (if you happen to have access to the now discontinued DCbuddy it is possible to download the Zoop to Dive Log on iOS but this would be unlikely these days) so you would be limited to downloading the Zoop using DiveLogDT. Of course, Dive Log and DiveLogDT can sync data.
>
Any users who have done such a migration - id love to hear input, caveats, major function loss and gain, and general experiences.
We are the developers of Dive Log and DiveLogDT so I'll leave it to others to comment on the experience of migrating from MacDive to our products. However there are a few things to be aware of.
First, not all MacDive data is supported by Dive Log/DiveLogDT (see per dive images above) and visa versa however most of the fields that users need are supported.
Second, MacDive and Dive Log/DiveLogDT take a different approach to supporting multiple divers. In MacDive you can have multiple diver's dives captured in a single database and (if I remember correctly) you can use "virtual logbook" to view them per diver. Dive Log and DiveLogDT use separate logbooks for each diver. In the case of DiveLogDT these are separate files in the file system. In DiveLog they are handled by using different "active logbooks" (which can be managed in the Settings app). The key is that if you import your full MacDive logbook into a single logbook in Dive Log or DiveLogDT you will have no way to identify individual divers. So you may want to leverage MacDive's virtual logbook feature and export just the UDDF data for each user independently (I'm not really familiar with using MacDive so I'm waving my hands here).
Moving between different logbook applications that are not explicitly designed to work together is always a difficult proposition. We are happy to help in any ways that we can. However, MacDive is also a great product and will certainly understand if you decide to stick with it. If you want to get a flavor for the conversion process without making any purchase, DiveLogManager (Mac App Store) is free and can import from both UDDF and the native MacDive database.
I hope that helps.
Cheers,
Greg