OLD | NEW |
1 # Copyright (c) 2015, the Fletch project authors. Please see the AUTHORS file | 1 # Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file |
2 # for details. All rights reserved. Use of this source code is governed by a | 2 # for details. All rights reserved. Use of this source code is governed by a |
3 # BSD-style license that can be found in the LICENSE.md file. | 3 # BSD-style license that can be found in the LICENSE.md file. |
4 | 4 |
5 # Helper that tries to discover the serial devices belonging to STM ST-Link | 5 # Helper that tries to discover the serial devices belonging to STM ST-Link |
6 # debugging interfaces. There are typically /dev/ACMx or /dev/USBx. | 6 # debugging interfaces. There are typically /dev/ACMx or /dev/USBx. |
7 # | 7 # |
8 # The device, if found, is returned in $STLINKPORT. | 8 # The device, if found, is returned in $STLINKPORT. |
9 # | 9 # |
10 # On Linux, we use the /dev/serial interface to query available serial ports. | 10 # On Linux, we use the /dev/serial interface to query available serial ports. |
11 # Currently, MacOS is not supported. | 11 # Currently, MacOS is not supported. |
12 discover_devices() { | 12 discover_devices() { |
13 if [ $(uname -s) != "Linux" ]; then | 13 if [ $(uname -s) != "Linux" ]; then |
14 echo "Device discovery is not supported on MacOS..." | 14 echo "Device discovery is not supported on MacOS..." |
15 return | 15 return |
16 fi | 16 fi |
17 if [ -z "$STLINKPORT" ]; then | 17 if [ -z "$STLINKPORT" ]; then |
18 local DEVICES=(/dev/serial/by-id/*STLink*) | 18 local DEVICES=(/dev/serial/by-id/*STLink*) |
19 if [ ${#DEVICES[@]} -gt 1 ]; then | 19 if [ ${#DEVICES[@]} -gt 1 ]; then |
20 echo "Found multiple ST-Link devices, please set STLINKPORT manually..." | 20 echo "Found multiple ST-Link devices, please set STLINKPORT manually..." |
21 local DEV | 21 local DEV |
22 for DEV in $DEVICES; do | 22 for DEV in $DEVICES; do |
23 echo "Discovered STLink at $STLINKPORT..." | 23 echo "Discovered STLink at $STLINKPORT..." |
24 done | 24 done |
25 exit 1 | 25 exit 1 |
26 fi | 26 fi |
27 STLINKPORT=$(realpath ${DEVICES[0]}) | 27 STLINKPORT=$(realpath ${DEVICES[0]}) |
28 echo "Using ST-Link serial port at $STLINKPORT..." | 28 echo "Using ST-Link serial port at $STLINKPORT..." |
29 fi | 29 fi |
30 } | 30 } |
OLD | NEW |