vooon / elehant-to-mqtt

Collect and publish to MQTT data from Elehant SVD-15 water counters
GNU General Public License v3.0
23 stars 7 forks source link

Не компилируется проект #9

Open klouner opened 3 years ago

klouner commented 3 years ago

Добрый день. Очень заинтересовала эта прошивка для ESP, но никак не могу ее скомпилировать. К сожалению, ранее с Platformio не имел опыта работы. Прошу подсказать что я делаю не так, думаю новичкам тоже будет полезно. Запускаю файл make_flags.py через F5, получаю следующую ошибку: image При билде файла platformio.ini следующее:

> Executing task: C:\Users\max\.platformio\penv\Scripts\platformio.exe run <

legacy Click
Processing elehant (platform: espressif32; board: esp32dev; framework: arduino)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32dev.html
PLATFORM: Espressif 32 (3.3.2) > Espressif ESP32 Dev Module
HARDWARE: ESP32 160MHz, 320KB RAM, 4MB Flash
DEBUG: Current (esp-prog) External (esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)        
PACKAGES:
 - framework-arduinoespressif32 3.10006.210326 (1.0.6)
 - tool-esptoolpy 1.30100.210531 (3.1.0)
 - toolchain-xtensa32 2.50200.97 (5.2.0)
"." ­Ґ пў«пҐвбп ў­гв७­Ґ© Ё«Ё ў­Ґи­Ґ©
Є®¬ ­¤®©, ЁбЇ®«­пҐ¬®© Їа®Ја ¬¬®© Ё«Ё Ї ЄҐв­л¬ д ©«®¬.
OSError: './make_flags.py' exited 1:
  File "C:\Users\max\.platformio\penv\Lib\site-packages\platformio\builder\main.py", line 180:
    env.SConscript("$BUILD_SCRIPT")
  File "C:\Users\max\.platformio\packages\tool-scons\scons-local-4.2.0\SCons\Script\SConscript.py", line 597:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Users\max\.platformio\packages\tool-scons\scons-local-4.2.0\SCons\Script\SConscript.py", line 285:
    exec(compile(scriptdata, scriptname, 'exec'), call_stack[-1].globals)
  File "C:\Users\max\.platformio\platforms\espressif32\builder\main.py", line 218:
    target_elf = env.BuildProgram()
  File "C:\Users\max\.platformio\packages\tool-scons\scons-local-4.2.0\SCons\Util.py", line 748:
    return self.method(*nargs, **kwargs)
  File "C:\Users\max\.platformio\penv\Lib\site-packages\platformio\builder\tools\platformio.py", line 61:
    env.ProcessProgramDeps()
  File "C:\Users\max\.platformio\packages\tool-scons\scons-local-4.2.0\SCons\Util.py", line 748:
    return self.method(*nargs, **kwargs)
  File "C:\Users\max\.platformio\penv\Lib\site-packages\platformio\builder\tools\platformio.py", line 125:
    env.ProcessFlags(env.get("BUILD_FLAGS"))
  File "C:\Users\max\.platformio\packages\tool-scons\scons-local-4.2.0\SCons\Util.py", line 748:
    return self.method(*nargs, **kwargs)
  File "C:\Users\max\.platformio\penv\Lib\site-packages\platformio\builder\tools\platformio.py", line 223:
    env.Append(**env.ParseFlagsExtended(flags))
  File "C:\Users\max\.platformio\packages\tool-scons\scons-local-4.2.0\SCons\Util.py", line 748:
    return self.method(*nargs, **kwargs)
  File "C:\Users\max\.platformio\penv\Lib\site-packages\platformio\builder\tools\platformio.py", line 186:
    for key, value in env.ParseFlags(str(raw)).items():
  File "C:\Users\max\.platformio\packages\tool-scons\scons-local-4.2.0\SCons\Environment.py", line 815:
    do_parse(arg)
  File "C:\Users\max\.platformio\packages\tool-scons\scons-local-4.2.0\SCons\Environment.py", line 667:
    arg = self.backtick(arg[1:])
  File "C:\Users\max\.platformio\packages\tool-scons\scons-local-4.2.0\SCons\Environment.py", line 579:
    raise OSError("'%s' exited %d" % (command, status))
========================================================================== [FAILED] Took 1.44 seconds ==========================================================================Процесс терминала "C:\Users\max\.platformio\penv\Scripts\platformio.exe 'run'" был завершен с кодом выхода 1.

Терминал будет повторно использоваться задачами. Чтобы закрыть его, нажмите любую клавишу.

Перепробовал уже многое, что советовали в гугле, но к сожалению так и не нашел решение. Спасибо.

vooon commented 3 years ago

Нужен ImageMagic для конвертации иконок. Как его ставить под виндой не знаю.

klouner commented 3 years ago

Нужен ImageMagic для конвертации иконок. Как его ставить под виндой не знаю.

у меня простая esp32, без экрана, пытаюсь вырезать сейчас код, относящийся к отображению информации.

vooon commented 3 years ago

Можно просто прошить бинарником из релизов. Прошивка будет работать даже если не найдет экран.

booroondook-eng commented 1 year ago

Можно просто прошить бинарником из релизов. Прошивка будет работать даже если не найдет экран.

Напишите кто-нибудь понятный мануал, как и чем прошить готовый бинарник. И что делать сразу после прошивки, чтобы настроить подключение и т.д.

vooon commented 1 year ago

https://ha-pro.ru/index.php/home/ustrojstva/440-sbor-pokazanij-schetchika-vody-i-gaza

booroondook-eng commented 1 year ago

Решил собрать прошивку с новым типом счетчика (до этого не собирал, пользовался готовым бинарником). Прочитал данное обсуждение, поэтому пытаюсь сделать все под Linux'ом (Debian 12) При попытке скомпилировать получаю такие вот ошибки:

atal: не найден git репозиторий (или один из родительских каталогов): .git
Traceback (most recent call last):
  File "/home/boo/Документы/platfrormio/elehant-to-mqtt-master/./make_flags.py", line 27, in <module>
    git_desc = subprocess.check_output(['git', 'describe', '--dirty']).strip()
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/subprocess.py", line 466, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['git', 'describe', '--dirty']' returned non-zero exit status 128.

Я так понимаю, что чего-то не хватает. А чего именно?

vooon commented 1 year ago

@booroondook-eng вы в клоне запустили сборку, или архив? Судя по ошибке нет .git.

booroondook-eng commented 1 year ago

Угу. Распаковывал из скачанного зипа. Сейчас сделал git clone, и вроде бы проблема ушла. P.S. Я до этого с Platformio только из-под Windows оперировал. Там такого не было.