mirror of https://github.com/arendst/Tasmota.git
esp8266 iram metrics (#18564)
This commit is contained in:
parent
c498995f79
commit
ec00f0f7e2
|
@ -1,9 +1,25 @@
|
|||
Import("env")
|
||||
|
||||
import os
|
||||
import tasmotapiolib
|
||||
from os.path import join
|
||||
|
||||
def firm_metrics(source, target, env):
|
||||
if env["PIOPLATFORM"] == "espressif32":
|
||||
import tasmota_metrics
|
||||
env.Execute("$PYTHONEXE -m tasmota_metrics " + str(tasmotapiolib.get_source_map_path(env).resolve()))
|
||||
elif env["PIOPLATFORM"] == "espressif8266":
|
||||
map_file = join(env.subst("$BUILD_DIR")) + os.sep + "firmware.map"
|
||||
with open(map_file,'r') as f:
|
||||
phrase = "_text_end = ABSOLUTE (.)"
|
||||
for line in f:
|
||||
if phrase in line:
|
||||
address = line.strip().split(" ")[0]
|
||||
if int(address, 16) < 0x40108000:
|
||||
used_bytes = int(address, 16) - 0x40100000
|
||||
remaining_bytes = 0x8000 - used_bytes
|
||||
percentage = round(used_bytes / 0x8000 * 100,1)
|
||||
print("Used static IRAM:",used_bytes,"bytes (",remaining_bytes,"remain,",percentage,"% used)")
|
||||
|
||||
|
||||
env.AddPostAction("$BUILD_DIR/${PROGNAME}.bin",firm_metrics)
|
|
@ -1,8 +1,10 @@
|
|||
Import("env")
|
||||
|
||||
import os
|
||||
import shutil
|
||||
import pathlib
|
||||
import tasmotapiolib
|
||||
from os.path import join
|
||||
|
||||
|
||||
def bin_map_copy(source, target, env):
|
||||
|
@ -30,5 +32,7 @@ def bin_map_copy(source, target, env):
|
|||
shutil.copy(tasmotapiolib.get_source_map_path(env), map_file)
|
||||
shutil.copy(factory, one_bin_file)
|
||||
else:
|
||||
map_firm = join(env.subst("$BUILD_DIR")) + os.sep + "firmware.map"
|
||||
shutil.copy(tasmotapiolib.get_source_map_path(env), map_firm)
|
||||
shutil.move(tasmotapiolib.get_source_map_path(env), map_file)
|
||||
env.AddPostAction("$BUILD_DIR/${PROGNAME}.bin", bin_map_copy)
|
||||
|
|
Loading…
Reference in New Issue