We are now on version >= 17.6 everywhere and therefore we can drop all code for previous versions (16.9, 17.3). This also makes writing new code easier, as we have to consider (and test) less versions (and even don't have any devices anymore to test the old code).
For now I left the BDI code intact, as my main goal was to get rid of all version_min_17_x and drop_on_17_x, but we can also think about removing that in the future. BDI code has been removed in second commit.
We are now on version >= 17.6 everywhere and therefore we can drop all code for previous versions (16.9, 17.3). This also makes writing new code easier, as we have to consider (and test) less versions (and even don't have any devices anymore to test the old code).
For now I left the BDI code intact, as my main goal was to get rid of all version_min_17_x and drop_on_17_x, but we can also think about removing that in the future.BDI code has been removed in second commit.