Hello @Michael Moles ,
welcome to this moderated Azure community forum.
It's possible to reuse custom modules written in the past for 1.1 in 1.5.
For C# modules, the only change for them is that old ModuleClient code libraries are used and an old .Net version is used to build the modules.
For the EdgeAgent and EdgeHub, it's better to keep them on par.
I have not experimented with this much but indeed this can complicate things.
Perhaps you get away with mixing version 1.4 and version 1.5 but version 1.2 and especially version 1.1 will cause a lot a lot of problems.
If the response helped, do "Accept Answer". If it doesn't work, please let us know the progress. All community members with similar issues will benefit by doing so. Your contribution is highly appreciated.