[FL-378] Update usb descriptor to display unique flipper name (#373)

* update usb descriptor to display unique flipper name

* added flip_ prefix for usb descriptor, updated manufacturer string

* include name in ApiHalVersionOTP struct, update assets.py

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
its your bedtime
2021-03-12 12:18:13 +03:00
committed by GitHub
parent f002f117fd
commit fc12f91a64
8 changed files with 58 additions and 13 deletions

View File

@@ -6,6 +6,7 @@ import subprocess
import io
import os
import sys
import re
import struct
import datetime
@@ -79,6 +80,7 @@ class Assets:
self.parser_otp.add_argument(
"--connect", type=int, help="Connect", required=True
)
self.parser_otp.add_argument("--name", type=str, help="Name", required=True)
self.parser_otp.add_argument("file", help="Output file")
self.parser_otp.set_defaults(func=self.otp)
# logging
@@ -101,13 +103,34 @@ class Assets:
def otp(self):
self.logger.debug(f"Generating OTP")
if self.args.name:
name = re.sub(
"[^a-zA-Z0-9.]", "", self.args.name
) # Filter all special characters
name = list(
map(str, map(ord, name[0:8]))
) # Strip to 8 chars and map to ascii codes
while len(name) < 8:
name.append("0")
n1, n2, n3, n4, n5, n6, n7, n8 = map(int, name)
data = struct.pack(
"<BBBBL",
"<BBBBLBBBBBBBB",
self.args.version,
self.args.firmware,
self.args.body,
self.args.connect,
int(datetime.datetime.now().timestamp()),
n1,
n2,
n3,
n4,
n5,
n6,
n7,
n8,
)
open(self.args.file, "wb").write(data)