summaryrefslogtreecommitdiff
path: root/software/communication/physical.go
diff options
context:
space:
mode:
Diffstat (limited to 'software/communication/physical.go')
-rw-r--r--software/communication/physical.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/software/communication/physical.go b/software/communication/physical.go
new file mode 100644
index 0000000..25d5299
--- /dev/null
+++ b/software/communication/physical.go
@@ -0,0 +1,28 @@
+package communication
+
+import (
+ "go.bug.st/serial/enumerator"
+)
+
+const (
+ ST_VID = `0483`
+)
+
+func GetStSerials() ([]string, error) {
+ retval := make([]string, 0)
+
+ ports, err := enumerator.GetDetailedPortsList()
+ if err != nil {
+ return retval, err
+ }
+
+ for _, port := range ports {
+ if port.IsUSB {
+ if port.VID == ST_VID {
+ retval = append(retval, port.Name)
+ }
+ }
+ }
+
+ return retval, nil
+}