This commit is contained in:
Willy-JL
2023-02-17 23:47:39 +00:00
10 changed files with 51 additions and 20 deletions

View File

@@ -11,9 +11,10 @@
"args": {
"useSingleResult": true,
"env": {
"PATH": "${workspaceFolder};${env:PATH}"
"PATH": "${workspaceFolder};${env:PATH}",
"FBT_QUIET": 1
},
"command": "./fbt get_blackmagic",
"command": "fbt get_blackmagic",
"description": "Get Blackmagic device",
}
}

View File

@@ -32,7 +32,7 @@ static void nfc_cli_detect(Cli* cli, FuriString* args) {
while(!cmd_exit) {
cmd_exit |= cli_cmd_interrupt_received(cli);
if(furi_hal_nfc_detect(&dev_data, 400)) {
printf("found: %s ", nfc_get_dev_type(dev_data.type));
printf("Found: %s ", nfc_get_dev_type(dev_data.type));
printf("UID length: %d, UID:", dev_data.uid_len);
for(size_t i = 0; i < dev_data.uid_len; i++) {
printf("%02X", dev_data.uid[i]);

Binary file not shown.

Before

Width:  |  Height:  |  Size: 562 B

After

Width:  |  Height:  |  Size: 656 B

11
fbt
View File

@@ -6,16 +6,21 @@ set -eu;
# private variables
SCRIPT_PATH="$(cd "$(dirname "$0")" && pwd -P)";
SCONS_DEFAULT_FLAGS="-Q --warn=target-not-built";
SCONS_EP="python3 -m SCons"
SCONS_DEFAULT_FLAGS="--warn=target-not-built";
SCONS_EP="python3 -m SCons";
# public variables
FBT_NOENV="${FBT_NOENV:-""}";
FBT_NO_SYNC="${FBT_NO_SYNC:-""}";
FBT_TOOLCHAIN_PATH="${FBT_TOOLCHAIN_PATH:-$SCRIPT_PATH}";
FBT_VERBOSE="${FBT_VERBOSE:-""}";
if [ -z "$FBT_NOENV" ]; then
. "$SCRIPT_PATH/scripts/toolchain/fbtenv.sh";
FBT_VERBOSE="$FBT_VERBOSE" . "$SCRIPT_PATH/scripts/toolchain/fbtenv.sh";
fi
if [ -z "$FBT_VERBOSE" ]; then
SCONS_DEFAULT_FLAGS="$SCONS_DEFAULT_FLAGS -Q";
fi
if [ -z "$FBT_NO_SYNC" ]; then

View File

@@ -12,5 +12,10 @@ if [%FBT_NO_SYNC%] == [] (
)
)
set "SCONS_DEFAULT_FLAGS=-Q --warn=target-not-built"
set "SCONS_DEFAULT_FLAGS=--warn=target-not-built"
if not defined FBT_VERBOSE (
set "SCONS_DEFAULT_FLAGS=%SCONS_DEFAULT_FLAGS% -Q"
)
%SCONS_EP% %SCONS_DEFAULT_FLAGS% %*

View File

@@ -23,7 +23,6 @@ def _convert_image(source_filename: str):
class DolphinBubbleAnimation:
FILE_TYPE = "Flipper Animation"
FILE_VERSION = 1
@@ -251,7 +250,6 @@ class DolphinBubbleAnimation:
class DolphinManifest:
FILE_TYPE = "Flipper Animation Manifest"
FILE_VERSION = 1

View File

@@ -1,5 +1,6 @@
import serial.tools.list_ports as list_ports
# Returns a valid port or None, if it cannot be found
def resolve_port(logger, portname: str = "auto"):
if portname != "auto":

View File

@@ -173,12 +173,14 @@ class Templite:
"""Renders the template according to the given namespace."""
stack = []
namespace["__file__"] = self.file
# add write method
def write(*args):
for value in args:
stack.append(str(value))
namespace["write"] = write
# add include method
def include(file):
if not os.path.isabs(file):

View File

@@ -31,7 +31,13 @@ if not exist "%FBT_TOOLCHAIN_VERSION_FILE%" (
set /p REAL_TOOLCHAIN_VERSION=<"%FBT_TOOLCHAIN_VERSION_FILE%"
if not "%REAL_TOOLCHAIN_VERSION%" == "%FLIPPER_TOOLCHAIN_VERSION%" (
echo FBT: starting toolchain upgrade process..
powershell -ExecutionPolicy Bypass -File "%FBT_ROOT%\scripts\toolchain\windows-toolchain-download.ps1" %flipper_toolchain_version% "%FBT_TOOLCHAIN_ROOT%"
set /p REAL_TOOLCHAIN_VERSION=<"%FBT_TOOLCHAIN_VERSION_FILE%"
)
if defined FBT_VERBOSE (
echo FBT: using toolchain version %REAL_TOOLCHAIN_VERSION%
)
set "HOME=%USERPROFILE%"

View File

@@ -7,13 +7,14 @@ DEFAULT_SCRIPT_PATH="$(pwd -P)";
SCRIPT_PATH="${SCRIPT_PATH:-$DEFAULT_SCRIPT_PATH}";
FBT_TOOLCHAIN_VERSION="${FBT_TOOLCHAIN_VERSION:-"19"}";
FBT_TOOLCHAIN_PATH="${FBT_TOOLCHAIN_PATH:-$SCRIPT_PATH}";
FBT_VERBOSE="${FBT_VERBOSE:-""}";
fbtenv_show_usage()
{
echo "Running this script manually is wrong, please source it";
echo "Example:";
printf "\tsource scripts/toolchain/fbtenv.sh\n";
echo "To restore your environment source fbtenv.sh with '--restore'."
echo "To restore your environment, source fbtenv.sh with '--restore'."
echo "Example:";
printf "\tsource scripts/toolchain/fbtenv.sh --restore\n";
}
@@ -35,15 +36,16 @@ fbtenv_restore_env()
PATH="$(echo "$PATH" | /usr/bin/sed "s/$TOOLCHAIN_ARCH_DIR_SED\/bin://g")";
PATH="$(echo "$PATH" | /usr/bin/sed "s/$TOOLCHAIN_ARCH_DIR_SED\/protobuf\/bin://g")";
PATH="$(echo "$PATH" | /usr/bin/sed "s/$TOOLCHAIN_ARCH_DIR_SED\/openocd\/bin://g")";
PATH="$(echo "$PATH" | /usr/bin/sed "s/$TOOLCHAIN_ARCH_DIR_SED\/openssl\/bin://g")";
if [ -n "${PS1:-""}" ]; then
PS1="$(echo "$PS1" | sed 's/\[fbt\]//g')";
elif [ -n "${PROMPT:-""}" ]; then
PROMPT="$(echo "$PROMPT" | sed 's/\[fbt\]//g')";
fi
PYTHONNOUSERSITE="$SAVED_PYTHONNOUSERSITE";
PYTHONPATH="$SAVED_PYTHONPATH";
PYTHONHOME="$SAVED_PYTHONHOME";
export PYTHONNOUSERSITE="$SAVED_PYTHONNOUSERSITE";
export PYTHONPATH="$SAVED_PYTHONPATH";
export PYTHONHOME="$SAVED_PYTHONHOME";
unset SAVED_PYTHONNOUSERSITE;
unset SAVED_PYTHONPATH;
@@ -131,7 +133,7 @@ fbtenv_get_kernel_type()
TOOLCHAIN_URL=$FBT_TOOLS_CUSTOM_LINK;
fi
elif echo "$SYS_TYPE" | grep -q "MINGW"; then
echo "In MinGW shell use \"[u]fbt.cmd\" instead of \"[u]fbt\"";
echo "In MinGW shell, use \"[u]fbt.cmd\" instead of \"[u]fbt\"";
return 1;
else
echo "Your system configuration is not supported. Sorry.. Please report us your configuration.";
@@ -258,6 +260,7 @@ fbtenv_check_download_toolchain()
elif [ ! -f "$TOOLCHAIN_ARCH_DIR/VERSION" ]; then
fbtenv_download_toolchain || return 1;
elif [ "$(cat "$TOOLCHAIN_ARCH_DIR/VERSION")" -ne "$FBT_TOOLCHAIN_VERSION" ]; then
echo "FBT: starting toolchain upgrade process.."
fbtenv_download_toolchain || return 1;
fi
return 0;
@@ -279,6 +282,13 @@ fbtenv_download_toolchain()
return 0;
}
fbtenv_print_version()
{
if [ -n "$FBT_VERBOSE" ]; then
echo "FBT: using toolchain version $(cat "$TOOLCHAIN_ARCH_DIR/VERSION")";
fi
}
fbtenv_main()
{
fbtenv_check_sourced || return 1;
@@ -291,18 +301,21 @@ fbtenv_main()
fbtenv_check_script_path || return 1;
fbtenv_check_download_toolchain || return 1;
fbtenv_set_shell_prompt;
fbtenv_print_version;
PATH="$TOOLCHAIN_ARCH_DIR/python/bin:$PATH";
PATH="$TOOLCHAIN_ARCH_DIR/bin:$PATH";
PATH="$TOOLCHAIN_ARCH_DIR/protobuf/bin:$PATH";
PATH="$TOOLCHAIN_ARCH_DIR/openocd/bin:$PATH";
PATH="$TOOLCHAIN_ARCH_DIR/openssl/bin:$PATH";
export PATH;
SAVED_PYTHONNOUSERSITE="${PYTHONNOUSERSITE:-""}";
SAVED_PYTHONPATH="${PYTHONPATH:-""}";
SAVED_PYTHONHOME="${PYTHONHOME:-""}";
export SAVED_PYTHONNOUSERSITE="${PYTHONNOUSERSITE:-""}";
export SAVED_PYTHONPATH="${PYTHONPATH:-""}";
export SAVED_PYTHONHOME="${PYTHONHOME:-""}";
PYTHONNOUSERSITE=1;
PYTHONPATH=;
PYTHONHOME=;
export PYTHONNOUSERSITE=1;
export PYTHONPATH=;
export PYTHONHOME=;
}
fbtenv_main "${1:-""}";