diff options
author | lonkaars <loek@pipeframe.xyz> | 2022-10-29 18:01:56 +0200 |
---|---|---|
committer | lonkaars <loek@pipeframe.xyz> | 2022-10-29 18:01:56 +0200 |
commit | 9e9ea9d07ed2a176d6f6e83b5b100da22d8fca50 (patch) | |
tree | a683bde4664dad75c3b5a1efbd4223a4ab3b40dd /scripts | |
parent | ead710db271795380207141f0add7278ba12ada0 (diff) | |
parent | aae57dc32a843351fb2e17721afcd841bedec0a6 (diff) |
Merge branch 'protocol' into dev
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/compiledb-full-path-mingw.sh | 2 | ||||
-rwxr-xr-x | scripts/dummy-server.py | 48 |
2 files changed, 49 insertions, 1 deletions
diff --git a/scripts/compiledb-full-path-mingw.sh b/scripts/compiledb-full-path-mingw.sh index 8f95756..be45ca7 100755 --- a/scripts/compiledb-full-path-mingw.sh +++ b/scripts/compiledb-full-path-mingw.sh @@ -10,4 +10,4 @@ fixpath () { fixpath arm-none-eabi-gcc fixpath arm-none-eabi-objcopy -sed "s#\"/c/#\"C:/#g" -i "$COMPILEDB_FILE" +sed 's#"/\(.\)/#"\U\1:/#g' -i "$COMPILEDB_FILE"
\ No newline at end of file diff --git a/scripts/dummy-server.py b/scripts/dummy-server.py new file mode 100755 index 0000000..9350cab --- /dev/null +++ b/scripts/dummy-server.py @@ -0,0 +1,48 @@ +#!/bin/python3 + +""" +this is a garbage python script that opens a tcp socket on localhost:33 for +connecting with the qt client +""" + +import socketserver +from random import randint + +def hexpad(n, pad): + return hex(n)[2:].zfill(pad) + +def bs(str): + return bytes(str, 'utf-8') + +def r(max): + return randint(0, max) + +class DummyServer(socketserver.BaseRequestHandler): + def error(self): + self.request.sendall(bs("error\n")) + + def ok(self, rows): + response = "id,temperature,humidity,atmospheric_pressure\n" + line_len = len("xxxx,xx,xx,xx\n") + retstr = f"ok,{hex(len(response) + rows * line_len)[2:]}\n" + retstr += response + for row in range(rows): + retstr += f"{hexpad(row, 4)},{hexpad(r(0xff), 2)},{hexpad(r(0xff), 2)},{hexpad(r(0xff), 2)}\n" + self.request.sendall(bs(retstr)) + + def handle(self): + self.data = self.request.recv(1024).strip() + if len(self.data) > 40: return self.error() + if not self.data.startswith(bs('last-records')): return self.error() + self.data = self.data.replace(bs('last-records'), bs('')) + try: + self.ok(int(self.data)) + except ValueError: + self.error() + +if __name__ == "__main__": + socketserver.TCPServer.allow_reuse_address = True + with socketserver.TCPServer(("localhost", 33), DummyServer) as server: + server.serve_forever() + + |