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 993bcdef5..5d7e92391 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
@@ -92,6 +92,7 @@ interface NodeInfoDao {
END
WHEN :sort = 'channel' THEN channel
WHEN :sort = 'via_mqtt' THEN via_mqtt
+ WHEN :sort = 'via_favorite' THEN is_favorite * -1
ELSE 0
END ASC,
last_heard DESC
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 4ae01fc62..61f596dc3 100644
--- a/app/src/main/java/com/geeksville/mesh/model/SortOption.kt
+++ b/app/src/main/java/com/geeksville/mesh/model/SortOption.kt
@@ -27,4 +27,5 @@ enum class NodeSortOption(val sqlValue: String, @StringRes val stringRes: Int) {
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),
+ VIA_FAVORITE("via_favorite", R.string.node_sort_via_favorite),
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index c6868a03f..f7497c215 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -30,6 +30,7 @@
Hops away
Last heard
via MQTT
+ via Favorite
Unrecognized
Waiting to be acknowledged