• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

RTL00 MP3 player

rkravt

Member
pvvx, ну хватить уже передергивать!
организуйте свою больницу
Ох! Ну кто о чем, а голый о бане! )))

Сливаетесь вы в лучших традициях первоклассника, что печально.
Какое пристрастие к *nix ... блин )))
Какие mA, какие года батарейного питания!? Разговор начался об wifi orange pi ... а Вы в итоге съезжаете на свои хотелки ))
Патешно, как Вас все это задевает ))
 
  • Like
Реакции: Neov

pvvx

Активный участник сообщества
pvvx, ну хватить уже передергивать!
Кто и что передергивает? :)
Я тут тупенько сижу и думаю как решить описанный вопрос попроще... А вы разбавляете тему каким-то спамом и холиварами про armbian и предложением перейти к Бане Оранже Пи:
Ох! Ну кто о чем, а голый о бане! )))
Патешно, как Вас все это задевает ))
Нельзя же всё время уделять скучным железякам. Тем более как в решении задачи обойтись без дурака? Вы и являетесь элементом развлечения и ... :)
И заметьте - под данную дудочку получилось полное описание задачи.
Ну а правильно описанная задача имеет ...
 

pvvx

Активный участник сообщества
Какие mA, какие года батарейного питания!? Разговор начался об wifi orange pi ... а Вы в итоге съезжаете на свои хотелки ))
Вы ошиблись больницей - на вывеске писано: Realtek RTL8710, RTL8711, RTL8195 -> Realtek - SDK, прошивки и утилиты
Ваш вопрос решался в Orange Pi Zero H2 Quad Core за 7$

Блин – хоть бы что-то предложили вписывающегося в комплексную задачу, названную “логгером с граф.отображением”…

Content Delivery Network или Content Distribution Network, CDN) — географически распределённая сетевая инфраструктура, позволяющая оптимизировать доставку и дистрибуцию контента конечным пользователям в сети Интернет.

На прошлой странице описано, почему это не подходит. https://esp8266.ru/forum/threads/rtl00-mp3-player.1697/page-10#post-37074

Прошу прощения, я неправильно выразился ... недосервером я назвал не то что Вы реализовали, а саму ограниченную по ресурсам платформу, в контексте, опять же, передачи сжатой на лету статики клиенту и еще некоторых функций, присущих именно web-server. Тут более уместно было бы использовать определение web-морды ... UI, нежели громкого названия web-server.
Название у него - Web-свалка. Смысл этого и причины, почему так, описаны уже при создании несколько лет назад и до формирования его целей, с учетом имеющегося на рынке развития WiFi-SoC. Так-же уже говорилось, что аппаратные ограничения не дают возможности использовать систем класса *nix по причине отсутствия на рынке дешевой RAM нового поколения (можно считать забастовкой-заговором производителей длящейся уже с 2005 года) и их большого потребления из-за необходимости лопатить процом 900% не относящегося к решению задачи кода, а так-же отсутствию в релизах *nix реал-тайм.
И прощение не принимается, т.к. нелогично и я их не выдаю :) Каждой дряни по Пингвину не выходит и не выйдет ещё несколько десятков лет.
а Вы в итоге съезжаете на свои хотелки ))
Вот я и думкаю - какие хотелки? Хотелки rkravt уже сейчас в каждом чипе *nix с реал-тайм? :)
Наверно он что-то от нас скрывает... :)
 
Последнее редактирование:

pvvx

Активный участник сообщества
Какое пристрастие к *nix ... блин )))
Я тут случаем нашел полное, по вашему, "пристрастие к *nix":
...FIQ only be 10-20 instructions...
Typically RTOS interrupt latency will be 500-1000 instructions. For Linux, it maybe 2000-10000 instructions.
:) Итого: Треба CLK на то-же самое на "*nix" ARM в 10000/20 = в 500 раз. Тут у нас пусть 80MHz, на "*nix" потребуется 80*500=40ГГц.
Да, я ошибся, дав вам ссылку, где написал 900% лишнего кода... как раз "100500" :) -> 100*500 = 50000% :)
 

pvvx

Активный участник сообщества
Продолжение...
(ток помножен на 50 - от этого шумный, шунт там на INA219 на 3A, а ген всего +-10В p-p до 150MHz на 50 Oм и не рассчитан качать 0.1 Ом :))
Поставил ограничение на отображение последних 2000 точек (40000 если считать на два графика).
Это вывод 1 Гц c генератора на INA219 (передается 1000 точек тока и напряжения в сек). dynagrahs уже не справляется (даже подвисает, если пытается отобразить маркер по положению указателя мыши, но это можно отключить). На смарте или недобуке уже будет совсем тормозить... Не рассчитано оно на динамику... Если успеет зацепиться на масштабирование, то увидим убегающий хвост конца буфера последних 2-х тысяч точек :)
У меня есть прикрученные ADC на 24 бита 100кГц к RTL. Как их отобразить (?) - в трафик передачи через webcosket влезает - 300КБ/сек всего-то при сжатии данных.. Пока только через децимацию и спектр БПФ и типа кажет :)
 
Последнее редактирование:

GDI

New member
У Вас нолик либо лишний, либо не достающий, 2000 (две) или 40000 (сорок)?
В принципе, для отображения на экране зачем делать точек больше чем экран в состоянии отобразить?
 

pvvx

Активный участник сообщества
У Вас нолик либо лишний, либо не достающий, 2000 (две) или 40000 (сорок)?
В принципе, для отображения на экране зачем делать точек больше чем экран в состоянии отобразить?
На графике "много точек" никогда не бывает плохо, если он в состоянии их выводить с градациями яркости и типа, отображая основной тренд или средние, мин и макс значения...
А там явная опечатка - 4 тыс.шт. Да и смысл там не в отображении только в окне, а при увеличении буфера dynagrahs тоже начинает подтормаживать. Писать вывод участка самому там не обязательно, но на 2 тысячи точек в динамике он уже не справляется на среднем компе... На статическом, заранее набранном графике, это не так заметно.
Именно по этому и писал, что есть функции вывода через API (ближе к системным вызовам, типа для отображения осциллограммы стандартных wav файлов, а не путем описания на javascript прорисовки каждой точки... ).
Общую задачу тоже описывал – это будет простейший логгер. Т.е. имеем текущий график с максимально возможным комфортным шагом точек для передачи и отображения в реал-тайм и набранную статистику. Под статистикой подразумевается циклический буфер на год в самом устройстве, с усредненными с точками в среднем около 5 минут (зависит от объема flash) и возможности отдачи устройством по внешнему запросу блоков точек для отображения за сутки, неделю, месяц и год с соответственно увеличенным шагом усреднения для каждого периода (например по 1000 точек за каждый выбранный период). Для отображения накопленной статистики dynagrahs годится и имеет почти всё встроенное.
А вот для текущего реал-тайм графика - не годится. Не городить же опять какую Флеш - там ещё остались беды с совместимостью исполнения её на разных устройствах...

В качестве условной задачи можно рассмотреть устройство контроля жизненного цикла АКБ. Под это и выбран INA219 – это измеритель тока и напряжения. Т.е. такой логгер позволяет оценить текущее потребление и зарядку, снять полную доскональную диаграмму цикла, а за счет статистических показателей оценить другие параметры АКБ и выписать диагноз на замену и т.д…

Т.е. это более менее стандартная схема для разных устройств домашней “лаборатории” и для простого счетчика электроэнергии или …
Ну а по оптимизации алгоритмов усреднения в самом устройстве необходим буфер на N замеров с максимальной производительностью датчика для наложения коэф. фильтра с известной импульсной реакцией... Иначе это не усреднение, а баловство. Он же и используется для буферизации отдачи текущего графика... Отображение, набор, усреднение, интерфейс для статистики отработан уже много раз и много лет, и проблем не составляет. Но вот с текущими показаниями, особенно если производится вывод одновременно нескольких переменных с разными шкалами, существуют трудности по выбору оптимума. По этому, с решения более сложной задачи и начал…
Полоса на WiFi при передаче через WiFi у нас в лучшем случае 1.8Мбайт/сек. Но данные броузерам передаются не в бинарном виде и при 1.8Мбайт/сек обязательно будут дыры на время занятия канала другими участниками WiFi сети. В итого и выходит предельный расчетный трафик для таких устройств до 300КБ/сек. Это, если в текстовом виде, будет явно до 10 тыс. точек в сек. INA219 дает в пределе 1000 точек тока и напруги в сек по 12 бит. Он и взят за базис, для создания примера на Web-свалке и является одной из основных целей создаваемой сборки SDK, описываемой в данной теме... На ESP это сделать не удалось из-за его глючности, теперь пробуем на RTL. И так до победного конца, пока не будут доступны описанные по параметрам устройства за 200 руб в свободном доступе. :)
 
Последнее редактирование:

Neov

Member
Кстати в вашем libc ожидается поддержка 64 битных целых и float double?
 

pvvx

Активный участник сообщества
Кстати в вашем libc ожидается поддержка 64 битных целых и float double?
Нет смысла, а если надо, то подключают стандартные либы...
Ограничение в RAM на RTL871xAx SDK чисто условное и ради забавы, т.к. есть чипы с "M" с 2.5 набортных Мег.
Тут наоборот не решить задачу как задействовать эти 2.5 Мег при убогом развитии самой структуры системы. Она же выражена ныне у всех в стандартных либах RTOS+ LwIP+Mbed SSL с предельными целями помигать светодиодом, а на большие задачи текущие системы такого класса не развиты. Уже описывал этот вопрос, как промежуточные варианты реал-тайм систем до linux-овых тормозов...
Народ тянет всегда в обратку, в пещеру с дубиной, – далеко ходить не надо – у нас тут есть яркий представитель-предводитель таких Pilnikov :) – предлагают заливку прошивки по UART на 9600 и требуют основное назначение SDK для поддержки виртуозного ногодрыга в Arduino, по аналогии с 8-ми битными MCU того века. :) Им не пройти и не понять данный барьер, что Arduino и даже MBED не годятся для данного класса устройств, которые и будут являться основой IoT в скором времени.
 
Последнее редактирование:

Neov

Member
Я не понаслышке знаком с большими системами промышленной автоматизации и поэтому четко понимаю разницу между серьезными системами и "светодиодом поморгать".
да ладно, плк прогать - примерно ногами ардуины дрыгать.
не понимаю почему так все держутся за ардуину. Написать аналог скетча на СДК пустяк. Можно нарисовать setup и loop, если так удобней. Хал периферии на пальцах расписан в экзамплах. СДК от pvvx сносный, можно ваф ваф использовать.
 

GDI

New member
Только вот что то не видно доходчивых описаний и "экземплов" от других участников, тех кто уже разобрался и использует данный СДК в своих проектах. Казалось бы, чего проще, разобрался в чем-то - напиши доку да выложи на всеобщее обозрение. Почему только один pvvx должен делать всё?
 

pvvx

Активный участник сообщества
Удел всей этой братии мелкомодулей ИОТ - вифи розетка максимум. Все остальное - баловство.
В этом и есть ваша ошибка. Во первых, если так судить, то напрочь пропадает смысл WiFi SoC. Во вторых, на системы с 1..8 Мег RAM давно уже существуют бытовые поделки и прочий хлам, время существования которых на бытовом рынке исчисляется уже за более 10 лет. Далее рассмотрите решение КуберВРТ. Там и то есть решения, которые делаются любым "телепузиком" в картинках, но их решения невозможно в вашей любимой Arduino :) Далее сами додумаете и поймете, что дыра для данного класса устройств (WiFi SoC c 1..8МБ RAM) прорвется и на бытовой уровень, как только будут проработаны принципы и нужды IoT с учетом внешних компонентов и внешнего ПО.
 

pvvx

Активный участник сообщества
pvvx, не стоит пытаться изобрести велосипед. Вы показали что ртл хороший модуль, что он работает лучше ЕСП, потребляет меньше, поддерживает MBED и RTOS. А дальше то что? Продвигать вы его не хотите, разработчикам ПО помогать тоже не ваша задача. Поигрались и бросили. И зачем было стока шуму??? Плюсов в карму модулю ртл это явно не добавило.
Смешно пишите. Хде логика? Сама rtlDuino и моя сборка SDK и есть "велосипед" :p
Во вторых - почитайте, что написано ранее :) И ничего не бросается - это вы бросите свои Arduino, а у меня другие вопросы - черным по белому написано - первоочередной вопрос = автономный логгер на год. Он не решается за присест, т.к. это комплексная задача и мне нужно не моё решение, а от крупных производителей (корпораций)... Уж сто раз писал - без прецедента они шевелиться не будут. И пофиг какого качества "прецедент". Главное его продвинуть, а далее всё само закрутиться. :p
А вот ваши мигания светодиодами меня совсем мало заботят. :p
Если вы не умеете совмещать проф.нужды и хобби - это ваша беда, а не моя :) Ныкаться по помойкам в поисках самого дешевого г..на в проф.нуждах я тоже не собираюсь. Это тоже ваша участь. :)
Мне нужны определенные ТТХ у чипов и софт к ним, а получить это от вас и "сообщества Arduino" невозможно, как и оценить будущие интерфейсы. Вы же последний эшелон, падальщики - что сделают для вас копорации, то и "кушаете". Влиять на них и добиваться необходимого так и не научились...

Теперь подумайте, сколько на такой процесс необходимо времени, при минимальном участии в его продвижении и в чем заключается процесс продвижения к цели? :) Уж явно не интерфейсом загрузки ПО в чип по UART или миганием светодиодом по линии WiFi с 2-х мегабайтным трансфером :)

Как пример - Segger решил "застолбить место под Солнцем" на тему заливки ПО (интерфейса) в такие устройства. И как продвигаются дела у него? Год почти прошел, а итого ещё не выплыло. Это вам на тему интерфейса заливки ПО. COM порт как явление от телетайпа уже совсем изживает свой срок…

Так-же все ваши местные задачи “вумный дом” успешно решили в Z-Wave Russia - Умный дом*. Там и реклама и всё остальное от ШША, но взлетело и распространяется быстро (большие вливания и политика) и китайцы не успевают :) Вот нафига WiFi для мигания “светодиодом” и то, что вы тут пропагандируете и требуете в целях обучения? Устаревшие методы, которые начинающим в жизнь не потребуются, когда они хоть чем-то овладеют? Тоже будут тыкаться с 8-ми битными Arduino? :) :)

*ЗЫЖ: Мне особо там нравится “Z-Wave Russia” - Шлюз Z-Wave-KNX 20 000 руб. :) Интересно – что там российского? Наценка? :)
 
Последнее редактирование:

Pilnikov

Active member
Эко вас зацепило то. Вот совсем все не так, от слова "совсем". Мне видится участь подобного рода устройств - в большей степени как игрушка / ардуино, потому и позиция такая.
Вот нафига WiFi для мигания “светодиодом”
А это современные тенденции такие.
Я, по моему, уже писал здесь как то - ни кто ни кому ничего не обязан делать (просто так за спасибо).

Эта площадка ни в коей мере не для получения от "нас"
Мне нужны определенные ТТХ у чипов и софт к ним, а получить это от вас и "сообщества Arduino" невозможно, как и оценить будущие интерфейсы.
и ни разу тут никто не пытался
Влиять на них и добиваться необходимого
не для этого "здесь"

Будьте проще, @pvvx, и люди к вам потянутся ;).

Вас просто просили помочь, как человека разобравшегося во всем этом, мало того "живого" (в плане количества постов) и говорящего на "великом и могучем" - Но вы же ЗОРГ! Ибо негоже Зоргу опускаться до плебеев.

З.Ы. Я постараюсь чтобы это был мой последний пост в плане оффтопа. Потому как все это суета и переливание из пустого в порожнее
 

pvvx

Активный участник сообщества
Эко вас зацепило то. Вот совсем все не так, от слова "совсем". Мне видится участь подобного рода устройств - в большей степени как игрушка / ардуино, потому и позиция такая.
От "совсем" вам никто не мешает играть в ваши игрушки, но почему-то я у вас уже обязанный ублажать вашу никчемную игру :) Дело Зорга - чтобы всё закрутилось и страждущие сами себе помогли утопать. При этом мне то утопать не требуется.
Так-же "моду" задаете не вы и на неё влиять тоже не научились... :)
Будьте проще, @pvvx, и люди к вам потянутся ;).
А они мне нужны?
Мне нужно решение вопроса, а не лишнее население на перенаселенном шарике :)
В плане "помочь" я не отказывался, но как можно помочь тем, у которых нет и начала и желания участия в действии?
Вот только данная тема и образовалась в качестве помощи в построении MP3 проигрывателя и автор идеи предоставил начальные исходники и участвовал в решении. У вас же не "помощь", а требование халявы.
 
Последнее редактирование:

pvvx

Активный участник сообщества
Не применяйте ко всем ваши товарно-рыночные отношения. Тут много тех, кто хоть что-то сделал и без особого труда может сделать ваш желаемый загрузчик по UART, но не делает и вместо спасибо всегда получали и получат обратное – требования “тавай ещё”, “раз можешь - значит обязан”. Т.е. ваше "ни кто ни кому ничего не обязан делать (просто так за спасибо)" в реальности не согласуется и является обманом и популистским лозунгом, применяемым для сокрытия требования халявы. :)

PS: Предлагаю вам переоценить основные понятия целей форумов, что даст вам возможность более четко понимать где оффтоп, а где нет. Около-технический форум – это место, где индивидуумы обмениваются информацией, а не место для выспрашивания халявы. При пляске под дудку попрошаек не выполняется их основной смысл – нет обмена информацией, она выходит односторонняя. Надеюсь, что ваш около-технический вопрос, обязательно присутствующий при решении технической части, на этом решен.
 
Последнее редактирование:

Pilnikov

Active member
Внимательно почитайте мои посты, я ни разу не применял требовательную интонацию (дайте, сделайте, напишите) везде применялась вопросительная (можно, нельзя ли, появится ли). Мне глубоко безразличен это многострадальный загрузчик по COM. Я собрал плеер - освоил загрузку с житаг и забросил все под стол - не хватает мне знаний для осуществления своих хотелок. Хотелки, некоторые, я свои реализовал (худо бедно, но работает). Основная для меня задача сейчас - улучшить код (разбить по задачам) - повысить стабильность, может быть добавить пару тройку фишек (вот как раз для этого код и должен быть достаточно юзабельным). А в тему про ртл я попал в надежде развить функционал ЕСП за счет дополнительных гпио, коих в ртл слегка поболе будет, наивно полагая что ардуина для всех модулей одинакова (что-то типа HAL в MBED). Но столкнулся с совершенно иным подходом к процессу вцелом (начиная с загрузки) и с вашим, @pvvx, снобизмом.
Но есть и положительные стороны от всего этого - мой общий уровень значительно вырос (спасибо всем участвовавшим).
 

Neov

Member
Внимательно почитайте мои посты, я ни разу не применял требовательную интонацию (дайте, сделайте, напишите) везде применялась вопросительная (можно, нельзя ли, появится ли). Мне глубоко безразличен это многострадальный загрузчик по COM. Я собрал плеер - освоил загрузку с житаг и забросил все под стол - не хватает мне знаний для осуществления своих хотелок. Хотелки, некоторые, я свои реализовал (худо бедно, но работает). Основная для меня задача сейчас - улучшить код (разбить по задачам) - повысить стабильность, может быть добавить пару тройку фишек (вот как раз для этого код и должен быть достаточно юзабельным). А в тему про ртл я попал в надежде развить функционал ЕСП за счет дополнительных гпио, коих в ртл слегка поболе будет, наивно полагая что ардуина для всех модулей одинакова (что-то типа HAL в MBED). Но столкнулся с совершенно иным подходом к процессу вцелом (начиная с загрузки) и с вашим, @pvvx, снобизмом.
Но есть и положительные стороны от всего этого - мой общий уровень значительно вырос (спасибо всем участвовавшим).
Если дело только в gpio, используйте i2c расширители io, до 16 можно. Либ для ардуины как грязи.
 
Сверху Снизу