diff --git a/app/src/main/java/com/geeksville/mesh/database/dao/NodeInfoDao.kt b/app/src/main/java/com/geeksville/mesh/database/dao/NodeInfoDao.kt
index 1eeb8638c..e091f9d87 100644
--- a/app/src/main/java/com/geeksville/mesh/database/dao/NodeInfoDao.kt
+++ b/app/src/main/java/com/geeksville/mesh/database/dao/NodeInfoDao.kt
@@ -58,6 +58,7 @@ interface NodeInfoDao {
(position_longitude - (SELECT position_longitude FROM OurNode)) *
(position_longitude - (SELECT position_longitude FROM OurNode))
END
+ WHEN :sort = 'hops_away' THEN hopsAway
WHEN :sort = 'channel' THEN channel
WHEN :sort = 'via_mqtt' THEN user_longName LIKE '%(MQTT)' -- viaMqtt
ELSE 0
diff --git a/app/src/main/java/com/geeksville/mesh/model/SortOption.kt b/app/src/main/java/com/geeksville/mesh/model/SortOption.kt
index 5924f5c0d..2adf7352f 100644
--- a/app/src/main/java/com/geeksville/mesh/model/SortOption.kt
+++ b/app/src/main/java/com/geeksville/mesh/model/SortOption.kt
@@ -7,6 +7,7 @@ enum class NodeSortOption(val sqlValue: String, @StringRes val stringRes: Int) {
LAST_HEARD("last_heard", R.string.node_sort_last_heard),
ALPHABETICAL("alpha", R.string.node_sort_alpha),
DISTANCE("distance", R.string.node_sort_distance),
+ HOPS_AWAY("hops_away", R.string.node_sort_hops_away),
CHANNEL("channel", R.string.node_sort_channel),
VIA_MQTT("via_mqtt", R.string.node_sort_via_mqtt),
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index c5bea1428..e686ae9bf 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -20,6 +20,7 @@
A-Z
Channel
Distance
+ Hops away
Last heard
via MQTT