Skip to content

Commit 7058be7

Browse files
authored
Merge pull request #2 from Amanmahe/reconnection
update setting UI
2 parents 7db6ba8 + 9c3d8fe commit 7058be7

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

src/components/Connection.tsx

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -508,7 +508,7 @@ const Connection: React.FC<ConnectionProps> = ({
508508

509509
let baudRate;
510510
let serialTimeout;
511-
511+
let initialSelectedChannels
512512
// If no saved port is found, request a new port and save it
513513
if (!port) {
514514
port = await navigator.serial.requestPort();
@@ -545,6 +545,16 @@ const Connection: React.FC<ConnectionProps> = ({
545545
saved.usbVendorId === (info.usbVendorId ?? 0) &&
546546
saved.usbProductId === (info.usbProductId ?? 0)
547547
);
548+
const deviceIndex = savedPorts.findIndex(
549+
(saved: SavedDevice) =>
550+
saved.usbVendorId === (info.usbVendorId ?? 0) &&
551+
saved.usbProductId === (info.usbProductId ?? 0)
552+
);
553+
554+
if (deviceIndex !== -1) {
555+
const savedChannels = savedPorts[deviceIndex].selectedChannels;
556+
initialSelectedChannels = savedChannels.length > 0 ? savedChannels : [1]; // Load saved channels or default to [1]
557+
}
548558

549559
baudRate = savedDevice?.baudRate || 230400; // Default to 230400 if no saved baud rate
550560
serialTimeout = savedDevice?.serialTimeout || 2000; // Default timeout if not saved
@@ -568,7 +578,6 @@ const Connection: React.FC<ConnectionProps> = ({
568578
// Query the device for its name
569579
const whoAreYouMessage = new TextEncoder().encode("WHORU\n");
570580
setTimeout(() => writer.write(whoAreYouMessage), serialTimeout);
571-
572581
let buffer = "";
573582
while (true) {
574583
const { value, done } = await reader.read();
@@ -596,7 +605,8 @@ const Connection: React.FC<ConnectionProps> = ({
596605
baudRate: extractedBaudRate,
597606
serialTimeout: extractedSerialTimeout,
598607
} = formatPortInfo(currentPortInfo, extractedName, usbProductId);
599-
608+
const allSelected = initialSelectedChannels.length === channelCount;
609+
setIsAllEnabledSelected(allSelected);
600610
// Update baudRate and serialTimeout with extracted values
601611
baudRate = extractedBaudRate ?? baudRate;
602612
serialTimeout = extractedSerialTimeout ?? serialTimeout;

0 commit comments

Comments
 (0)