From 35f77b10f0c89e49dc2efc4b0e30b4f3556908d4 Mon Sep 17 00:00:00 2001 From: assada Date: Tue, 15 Aug 2023 15:37:59 +0300 Subject: [PATCH] Protofile --- src/main/java/guru/dead/icf320/ICF320Proto.java | 17 +++++++++++++++++ .../java/guru/dead/icf320/MainController.java | 6 ++++-- 2 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 src/main/java/guru/dead/icf320/ICF320Proto.java diff --git a/src/main/java/guru/dead/icf320/ICF320Proto.java b/src/main/java/guru/dead/icf320/ICF320Proto.java new file mode 100644 index 0000000..244a15f --- /dev/null +++ b/src/main/java/guru/dead/icf320/ICF320Proto.java @@ -0,0 +1,17 @@ +package guru.dead.icf320; + +public enum ICF320Proto { + READ("FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEFE020550000FDFEFEEEEFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEFE0205500FEFEFEFEFEEEEFE020550000FD00FDFEFEEFEEE1205502007368697070696E67202020202020202049432D463331302023353220202020200000000F010200FDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEFE220550200FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEFE220550200FDFDFEFEEFEE"), + WRITE("FF"); //TODO: sniff the protocol + + public final String bytes; + + private ICF320Proto(String bytes) { + this.bytes = bytes; + } + + @Override + public String toString() { + return bytes; + } +} diff --git a/src/main/java/guru/dead/icf320/MainController.java b/src/main/java/guru/dead/icf320/MainController.java index 7ce8bd7..f940e87 100644 --- a/src/main/java/guru/dead/icf320/MainController.java +++ b/src/main/java/guru/dead/icf320/MainController.java @@ -268,7 +268,7 @@ public class MainController extends SerialController { log("ERROR", "Please select a valid COM port.\n"); return; } - sendData("FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEFE020550000FDFEFEEEEFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEFE0205500FEFEFEFEFEEEEFE020550000FD00FDFEFEEFEEE1205502007368697070696E67202020202020202049432D463331302023353220202020200000000F010200FDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEFE220550200FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEEEEFE220550200FDFDFEFEEFEE"); + sendData(ICF320Proto.READ.toString()); } public void onOpenItemClick(ActionEvent actionEvent) { @@ -295,7 +295,7 @@ public class MainController extends SerialController { } } - public void onCloneWriteItemClick(ActionEvent actionEvent) { + public void onCloneWriteItemClick(ActionEvent actionEvent) throws IOException { if (getSelectedPort() == null || !getSelectedPort().isOpen()) { log("ERROR", "Please select a valid COM port.\n"); return; @@ -305,7 +305,9 @@ public class MainController extends SerialController { return; } + String fileContent = Files.readString(selectedFile.toPath()); + sendData(ICF320Proto.WRITE.toString() + "\n" + fileContent); } private Boolean fileFormatValid (String fileContent) {