03 июля | 2024г. | 23:58:03


АвторТема: uClan Ustym 4K PRO (Описание, характеристики, обсуждение)  (Прочитано 250287 раз)

viliev и 209 Гостей смотрят эту тему.

Оффлайн yujuАвтор темы

  • Мастер Джедай
  • **
  • Сообщений: 3328
  • Поблагодарили: 12912
  • Уважение: +241
openfix-5.4.19-ustym4kpro-20201228   //исправлена функция "Включить 5V для активной антенны" (тюнер DVB-T2), 5 Вольт есть//
С этим патчем не получилось у меня на release-7.3
Получилось так:
/lib/dvb/frontend.cpp
Цитировать
RESULT eDVBFrontend::setVoltage(int voltage)
{
   bool increased=false;
   fe_sec_voltage_t vlt;
   m_data[CUR_VOLTAGE]=voltage;
   switch (voltage)
   {
      case voltageOff:
         m_data[CSW]=m_data[UCSW]=m_data[TONEBURST]=-1; // reset diseqc
         vlt = SEC_VOLTAGE_OFF;
+         char filename[256];
+         snprintf(filename, sizeof(filename), "/proc/stb/frontend/%d/active_antenna_power", m_slotid);
+         CFile::writeStr(filename, "off");
         break;
      case voltage13_5:
         increased = true;
      case voltage13:
         vlt = SEC_VOLTAGE_13;
+         if(m_type == feTerrestrial)
+         {
+            char filename[256];
+            snprintf(filename, sizeof(filename), "/proc/stb/frontend/%d/active_antenna_power", m_slotid);
+            CFile::writeStr(filename, "on");
+         }
         break;
      case voltage18_5:
         increased = true;
      case voltage18:
         vlt = SEC_VOLTAGE_18;
         break;
      default:
         return -ENODEV;
   }
   if (m_simulate)
      return 0;
   eDebug("[eDVBFrontend%d] setVoltage FE_ENABLE_HIGH_LNB_VOLTAGE %d FE_SET_VOLTAGE %d", m_dvbid, increased, vlt);
   ::ioctl(m_fd, FE_ENABLE_HIGH_LNB_VOLTAGE, increased);
   return ::ioctl(m_fd, FE_SET_VOLTAGE, vlt);
}

/lib/base/cfile.cpp
Цитировать
int CFile::writeInt(const char *filename, int value)
{
   CFile f(filename, "w");
   if (!f)
      return -1;
   return fprintf(f, "%d", value);
}

+ int CFile::writeStr(const char *filename, std::string value)
+ {
+   CFile f(filename, "w");
+   if (f)
+      fprintf(f, "%s", value.c_str());
+   return 0;
+ }
+

int CFile::write(const char *filename, const char *value)
{
   CFile f(filename, "w");
   if (!f)
      return -1;
   return fprintf(f, "%s", value);
}

/lib/base/cfile.h
Цитировать
   static int parseInt(int *result, const char *filename);
   static int writeIntHex(const char *filename, int value);
   static int writeInt(const char *filename, int value);
+   static int writeStr(const char *filename, std::string value);
   static int write(const char *filename, const char *value);
   static std::string read(const std::string &filename);
   static bool contains_word(const std::string &filename, const std::string &word);



Теги: uClan Ustym 4K PRO 
 

Похожие темы

  Тема / Автор Ответов Последний ответ
37 Ответов
22218 Просмотров
Последний ответ 04 ноября | 2023г. | 18:00:34
от Evg77734
0 Ответов
3480 Просмотров
Последний ответ 02 марта | 2021г. | 20:57:29
от yuju
2 Ответов
3773 Просмотров
Последний ответ 24 ноября | 2022г. | 10:10:38
от kosmos71
52 Ответов
6290 Просмотров
Последний ответ 19 февраля | 2024г. | 09:26:26
от kosmos71
0 Ответов
291 Просмотров
Последний ответ 08 февраля | 2024г. | 20:15:37
от yuju



X

Добро пожаловать!

Мы заметили, что у Вас установлено расширение AdBlock или ему подобное. Пожалуйста добавьте наш Клуб в белый список, внесите этим посильную лепту в его развитие. Спасибо!