I have been able to connect to Databricks in QGIS using the ODBC connection. An extra step not listed above that I had to do was to generate a personal access token (Databricks user Settings > Developer > Access tokens > Manage > Generate new token).
When setting up the DSN in step 2 above, I used the "User Name and Password" Authentication mechansim, using "token" as the username and the token generated above as the password. SSL has to be enabled in the SSL Options, and the value for Thrift Transport set to HTTP with the HTTP path value (available from the Databricks cluster's Advanced Options JDBC/ODBC tab) set in the HTTP Options
Then, once in QGIS, I was able to go to Layer > Add Layer > Add Vector Layer, choose Database, type ODBC, create a new connection, with the value of the Data Source Name when creating the DSN in ODBC DSN Setup used as the value for Database in the Connection information, and for the Authentication configuration, add an authentication configuration, using the same username ("token") and password (personal access token value) from creating the DSN
This all worked for me, and I was successfully able to connect to the database and the tables within them ...
However, despite the tables I want having fields of "geometry" type, the connector doesn't seem to recognise these fields and be able to draw them in QGIS.
This is where I am currently stuck, if anyone is able to suggest what can be done to display the spatial features from the table stored in Databricks. The geometry features are valid, as I am able to visualise them using SedonaKepler in the local Databricks notebook. In QGIS, the geometry field values appear as "BLOB" in the attribute table and do not seem to be recognised as spatial features.