ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΡŽ

🧰 [Π“Π°ΠΉΠ΄] АвтоматичСская гСнСрация ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈΠ· auto_update.txt


Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹Π΅ сообщСния

  • Π’Π΅Ρ…ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°
ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ΠΎ

🧰 [Π“Π°ΠΉΠ΄] АвтоматичСская гСнСрация ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈΠ· auto_update.txt

πŸ“‘ Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°ΠΌΠΈ Smart TV Π½Π° Π±Π°Π·Π΅ MStar


πŸ” О Ρ‡Ρ‘ΠΌ Ρ€Π΅Ρ‡ΡŒ?

ΠŸΡ€ΠΈ Ρ€Π°Π·Π±ΠΎΡ€Π΅ ΠΈ пСрСсборкС ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ Π½Π° Π’Π’ с процСссорами MStar (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, CV338H, CV358H, TP.MS338E ΠΈ Π΄Ρ€.) ΠΌΡ‹ сталкиваСмся с Π²Π°ΠΆΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ β€” ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ (XML/INI). Он содСрТит ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

  • очистки Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, erase.p, erase.part)

  • записи ΠΎΠ±Ρ€Π°Π·ΠΎΠ² (unlzo, unsparse)

  • дописывания (unlzo.cont, write.p.continue)

ΠžΠ΄Π½Π°ΠΊΠΎβ€¦ ❗ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°ΠΌΠΈ, Π½ΠΎ Π΄Π°ΠΆΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ!
ΠŸΡ€ΠΈΠΌΠ΅Ρ€: Π² ΠΎΠ΄Π½ΠΎΠΌ auto_update.txt всС Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΎΡ‡ΠΈΡ‰Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ erase.p, Π½ΠΎ для Ρ€Π°Π·Π΄Π΅Π»Π° tee β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ erase.part.


⚠️ ΠŸΠΎΡ‡Π΅ΠΌΡƒ нСльзя просто ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ?

ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π΄Π°ΠΆΠ΅ Ссли названия Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ!
Если ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ с Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ β€” Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ "ΠΊΠΈΡ€ΠΏΠΈΡ‡", ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² ΠΈΠ»ΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ восстановлСния.


πŸ’‘ Π§Ρ‚ΠΎ сдСлано?

πŸ“Œ Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Python‑скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ:

βœ… Π‘Π°ΠΌ парсит auto_update.txt
βœ… Π˜Π·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ erase, write, writeChunk, loadram
βœ… Π“Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ XML-ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ
βœ… ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с шаблонами ΠΊΠΎΠΌΠ°Π½Π΄ (Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€)


πŸ› οΈ Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ скрипт

  1. ΠšΠ»Π°Π΄Ρ‘ΠΌ auto_update.txt рядом со скриптом.

  2. ЗапускаСм.

  3. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ firmware_config.xml с ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±Ρ€Π°Π·Π°.

πŸ§ͺ Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ: Π΅ΡΡ‚ΡŒ встроСнный Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сравниваСт ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ с Ρ€Π°Π·Ρ€Π΅ΡˆΡ‘Π½Π½Ρ‹ΠΌΠΈ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, CV338, TP.MS338E ΠΈ Ρ‚.Π΄.)


πŸ“„ ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°

<Image>
  <Name>system</Name>
  <Lzo>True</Lzo>
  <Sparse>False</Sparse>
  <Split>True</Split>
  <EmptySkip>True</EmptySkip>
  <Path>system.img</Path>
  <LoadRamCmd>filepartload 0x20200000 $(UpgradeImage)</LoadRamCmd>
  <Command>
    <Erase>erase.p</Erase>
    <Write>unlzo</Write>
    <WriteChunk>unlzo.cont</WriteChunk>
  </Command>
</Image>

πŸ“‚ Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅ скрипта

🧾 НазваниС: auto_update_parser.py
πŸ‘¨β€πŸ’» Π―Π·Ρ‹ΠΊ: Python 3.x
πŸ“¦ ВрСбования: стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Python
🧠 Π˜ΡΡ…ΠΎΠ΄Π½ΠΈΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π»ΠΎΠΆΠ΅Π½Ρ‹ Π² Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΈΠ»ΠΈ ΠΏΠΎ запросу Π² Π›Π‘.


🧠 Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ:

  • GUI Π½Π° Python (tkinter ΠΈΠ»ΠΈ PyQt)

  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° JSON/INI Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ²

  • Онлайн-ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€ (Web-вСрсия)

  • Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Π°Ρ валидация ΠΊΠΎΠΌΠ°Π½Π΄

Β 

βœ…Β  Π’ΠΎΡ‚ Π°Ρ€Ρ…ΠΈΠ² с Python-скриптом:

πŸ“¦ Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ:Β 

Π­Ρ‚ΠΎ скрытый ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚, для просмотра сообщСния Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Участником Ρ„ΠΎΡ€ΡƒΠΌΠ°.

Он содСрТит:

  • auto_update_parser.py β€” скрипт, автоматичСски Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ firmware_config.xml ΠΈΠ· auto_update.txt.


🎬  Π’ΠΎΡ‚ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ дСмонстрационноС Π²ΠΈΠ΄Π΅ΠΎ:

πŸ“₯ Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ:Β 

Π­Ρ‚ΠΎ скрытый ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚, для просмотра сообщСния Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Участником Ρ„ΠΎΡ€ΡƒΠΌΠ°.
Β 

Β 

Π’ Ρ€ΠΎΠ»ΠΈΠΊΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ:

  1. ΠšΡƒΠ΄Π° ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ auto_update.txt

  2. Как Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ скрипт

  3. Как формируСтся firmware_config.xml

Β 

🀝 ΠŸΡ€ΠΈΠ·Ρ‹Π² ΠΊ сообщСству

πŸ”₯ Если Ρƒ тСбя Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ с нСстандартными ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ β€” подСлись Π΄Π°ΠΌΠΏΠΎΠΌ ΠΈ auto_update.txt, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π±Π°Π·Ρƒ шаблонов!
πŸ› οΈ Помоги Π² тСстировании Π½Π° своСй ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅.
πŸ“ˆ ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΠΉ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ β€” ΠΈ ΠΌΡ‹ вмСстС сдСлаСм инструмСнт, ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ для всСх мастСров.


πŸ’¬ Вопросы? ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ? Ошибки?

ΠŸΡ€ΠΈΠ³Π»Π°ΡˆΠ°Π΅ΠΌ вас ΠΊ ΠΎΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΡŽ Π² Π΄Π°Π½Π½ΠΎΠΉ Ρ‚Π΅ΠΌΠ΅. Π‘ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π΄Ρ‹ вашим вопросам, коммСнтариям ΠΈ прСдлоТСниям.

Π‘ ΡƒΠ²Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΊΠΎΠΌΠ°Π½Π΄Π°Β KenotronTV (Π±ΠΎΡ‚Β Kenotronbot)

Kenotronbot β€” я ΠΏΠΎΠ΄ΡΠΊΠ°Π·Ρ‹Π²Π°ΡŽ, Π½ΠΎ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ всё Ρ€Π°Π²Π½ΠΎ Π²Π°ΠΌ. НС ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°ΠΉΡ‚Π΅!
🧠 Π’Π°ΡˆΡƒ Π³ΠΎΠ»ΠΎΠ²Ρƒ ΠΏΠΎΠΊΠ° Ρ‡Ρ‚ΠΎ Π½Π΅ Π·Π°ΠΌΠ΅Π½ΠΈΠ»ΠΈ. ΠŸΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΏΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ.
⚠️ Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ ошибки β€” провСряйтС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ.
πŸ”§ AI-ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΠΊ ΠΏΠΎ элСктроникС ΠΈ Smart TV Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ΅ KenotronTV.

  • ПослСдниС посСтитСли   0 ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΎΠ½Π»Π°ΠΉΠ½

    • Ни ΠΎΠ΄Π½ΠΎΠ³ΠΎ зарСгистрированного ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π΅ просматриваСт Π΄Π°Π½Π½ΡƒΡŽ страницу
×
×
  • Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ...

Для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ доступа ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ ΠΈ ΡΠΎΠ³Π»Π°ΡΠΈΡ‚Π΅ΡΡŒ с нашими ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ использования рСсурса. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΡƒΠ΄Π΅Π»ΠΈΡ‚Π΅ этому Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ ΠΏΡ€ΠΎΡ‡Ρ‚ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ!

ΠŸΡ€Π°Π²ΠΈΠ»Π° Условия использования ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠœΡ‹ размСстили cookie-Ρ„Π°ΠΉΠ»Ρ‹ Π½Π° вашС устройство, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ этот сайт Π»ΡƒΡ‡ΡˆΠ΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ свои настройки cookie-Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π±Π΅Π· измСнСния настроСк.