Перейти к содержимому

Open

Фотография
* * * * * 2 Голосов

ReefRhythm - Продвинутый контроллер шаговых моторов

diy stepper doser reef-pi reefpi

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 187

#161 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 23 Май 2024 - 14:22

Релиз v1.1.0 Нотификации

Whatsapp и Telegram нотификации через бесплатный сервис CallMeBot

 

Инструкция по настройке

 

Screenshot 2024-05-23 185359.png Screenshot 2024-05-23 191657.png Screenshot 2024-05-23 191804.png


  • CryX, KIR.ill и Dmitry_N это нравится

#162 vahegan

vahegan

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 2 037
  • Меня зовут:Վահե
  • Откуда:Ереван

Отправлено 23 Май 2024 - 22:04

Вот бы GHL-у такого девелопера :)



#163 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 24 Май 2024 - 10:03

Я тут выявляю лимиты фичи с нотификациями.
В общем выходит что в WhatsApp лезет примерно 10 нотификация от дозера за раз, а в Telegram 50.
Это из-за лимита размера сообщения.
Всё это агрегируется каждые 10минут т. к нельзя в сервис слишком часто спамить сообщения.

 

Если говорить про 4-головый дозер, то 50/4= 12.5 нотификация в 10мин.
Не сильно разгуляешься если включить нотификации на каждое дозирование.

Но +- хватает.

 

При переполнении очереди просто придут последние нотификации, а старые обрежет.

Пока так, но на самом деле тут есть куда оптимизировать.

 

//////////////////////////////////////////////////////////////////////////////////////////

Также я сделал серию апдейтов в фиче MQTT для улучшения стабильности подключения к брокеру.

 

Контроллер теперь публикует uptime(примерно каждые 20сек) и версию прошивки на брокере.

 

Также контроллер подписывается на MQTT топик $SYS/broker/uptime для отслеживания состояния подключения

Он есть по дефолту в MQTT Mosquito и это обязательно для стабильности онлайн.

Если кто-то использует другой брокер где этого топика нет- напишите мне, буду думать над решением.

Screenshot 2024-05-24 150339.png

 

 

 



#164 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 24 Май 2024 - 10:10

Вот бы GHL-у такого девелопера :)

Не, спасибо, я утону в этом болоте)
Там скорее всего прошивки пилит аунсорс и из-за этого релизы раз в пять лет.



#165 ReefovodReefovodov

ReefovodReefovodov

    Новичок

  • Пользователи
  • Pip
  • Cообщений: 3

Отправлено 24 Май 2024 - 22:15

Вот бы GHL-у такого девелопера :)

Ну, по коду там все плохо...

Я бы не стал это использовать, но автор и писал что это его "Hello world!" и он вовсе не программист.

Но я не отрицаю тот факт, что это может работать.



#166 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 25 Май 2024 - 02:38

Ну, по коду там все плохо...
Я бы не стал это использовать, но автор и писал что это его "Hello world!" и он вовсе не программист.
Но я не отрицаю тот факт, что это может работать.

Всегда рад буду pull requestу от крутых программистов, чесать языком не код писать;)
Но, стоит заметить, тут одноядерный процесс на micropython(второе ядро можно писать только на c++, и трудности там и именно с esp-idf), это не linux, притащить тяжёлые фреймворки полные багов нельзя.
Потому многое выглядит неуклюже, но оно по другому особо работать и не может.

#167 ReefovodReefovodov

ReefovodReefovodov

    Новичок

  • Пользователи
  • Pip
  • Cообщений: 3

Отправлено 25 Май 2024 - 07:09

Всегда рад буду pull requestу от крутых программистов, чесать языком не код писать ;)
Но, стоит заметить, тут одноядерный процесс на micropython(второе ядро можно писать только на c++, и трудности там и именно с esp-idf), это не linux, притащить тяжёлые фреймворки полные багов нельзя.
Потому многое выглядит неуклюже, но оно по другому особо работать и не может.

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

А так, ничего плохого в том что ты делаешь нет, продолжай. Может когда-нибудь и доведешь свой проект до ума.



#168 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 25 Май 2024 - 09:25

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

А так, ничего плохого в том что ты делаешь нет, продолжай. Может когда-нибудь и доведешь свой проект до ума.

Про баги я могу много чего писать, у меня 10лет+ опыта в QA, в том числе embedded систем;)

Да спагетти приберётся, это дело времени причесать.

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

"Когда-нибудь" ждать уже не надо.
 


  • CryX это нравится

#169 ReefovodReefovodov

ReefovodReefovodov

    Новичок

  • Пользователи
  • Pip
  • Cообщений: 3

Отправлено 25 Май 2024 - 10:27

Про баги я могу много чего писать, у меня 10лет+ опыта в QA, в том числе embedded систем ;)

Да спагетти приберётся, это дело времени причесать.

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

"Когда-нибудь" ждать уже не надо.
 

Как показывает практика, нет ничего более по постоянного, чем временное. С течением времени код обрастает костылями настолько, что его изменение становится не возможным, а баги множатся. Если сразу не делать нормально, то потом будет больно. Я еще раз постарался прочитать твой код в файле web.py это треш. Для начала хорошо бы изучить ООП и разнести всю логику по классам и раздельным файлам, 1 файл - 1 класс.



#170 vahegan

vahegan

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 2 037
  • Меня зовут:Վահե
  • Откуда:Ереван

Отправлено 25 Май 2024 - 10:32

Ну, по коду там все плохо...

Я бы не стал это использовать, но автор и писал что это его "Hello world!" и он вовсе не программист.

Но я не отрицаю тот факт, что это может работать.

А какой смысл писать такие посты? Тут человек работал, создал функциональный продукт, и активно его развивает, добавляя поддержку нового функционала буквально по дням. Чего я давно не вижу ни у пресловутого GHL, ни у других опенсорсных проектов типа того же ReefPi. Если находятся баги или предложения, они тут же исполняются.

 

Если можете помочь проекту, или написать свой код, более стройный и читаемый - так что же сешает сделать это? Или если есть конструктивные предложения по улучшению существующего - тогда вам и перо в руки. А писать, что "все тут плохо, я бы сделал намного лучше" - это пустое и бесполезное.



#171 vahegan

vahegan

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 2 037
  • Меня зовут:Վահե
  • Откуда:Ереван

Отправлено 25 Май 2024 - 10:34

Я еще раз постарался прочитать твой код в файле web.py это треш. Для начала хорошо бы изучить ООП и разнести всю логику по классам и раздельным файлам, 1 файл - 1 класс.

Вот это уже конструктивно и по теме

#172 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 25 Май 2024 - 13:51

Ещё даже не познакомились, а уже начали отпевать.

 

Всё нормально,  вои по поводу говнокода никогда не закончатся :)

И в общем то никто и не будет помогать, всем проще написать с нуля(интересно где все эти проекты с суперкодом обитают, ни одного не видно в опенсорс)

Уговорили, отрефакторю код. Будет вам и ООП и модули. Всё равно особо больше пилить нечего.
Многие фичи ресёрчились налету, а потом оно как выросло в миг до 1.5к+ строк в одном файле, я и не заметил  :O

Большоая часть проблем вообще с программированием не связана, а с пониманием как работает железо, тут надо сидеть вникать, костыли тут не от хорошей жизни.


  • Sleepy и vahegan это нравится

#173 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 25 Май 2024 - 14:42

Кстати по поводу помощи- я вот прям не откажусь если кто разберётся как заспавнить на ядро0 c++ процесс в micropython прошивке
И придумать как построить интерфейс micropython(на ядре1) - C++(Ядро0)
И проверит какие у этого процесса лимиты. Потому как ходят сказки мол на том ядре работают "FreeRTOS процессы связанные с обслуживанием wifi", но по мне так это бред и ядро ничем не занято.

Делается это вот тут;)
https://github.com/m...ts/esp32/main.c



#174 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 31 Май 2024 - 11:14

Привет всем,

По мере того как наш проект продолжает расти и развиваться, мы стремимся облегчить доступ к знаниям, обмениваться ими и вносить в них вклад всем – пользователям, авторам и энтузиастам.

Имея в виду эту цель, я сделал значительное обновление в том, как управляется вики нашего проекта.

Почему перемены?

Раньше Wiki была непосредственно связана с нашим основным репозиторием проектов.

Эта настройка ограничивает возможность совместного редактирования и улучшения вики без предоставления более широкого доступа.

Чтобы создать более приятную среду и упростить процесс участия в проекте, я перенес wiki в свой собственный специальный репозиторий.

Преимущества выделенного репозитория вики:

  • Более простое сотрудничество: Collaborators теперь могут непосредственно редактировать, исправлять опечатки, добавлять контент и совершенствовать существующую документацию, не нуждаясь в доступе к основной кодовой базе.
    Это снижает барьеры для вступления новых участников и позволяет быстрее обновлять и совершенствовать.
  • Улучшенный контроль и безопасность: Отделив Wiki от основного хранилища, мы поддерживаем лучший контроль над тем, кто может изменять наш код по сравнению с нашей документацией.
    Это различие обеспечивает эффективное и безопасное управление.
  • Фокусная аудитория: Collaborators могут сосредоточиться исключительно на совершенствовании документации без необходимости понимания всей конфигурации хранилища кода.
    Это делает его особенно легким для тех, кто специализируется на техническом письме или образовательном контенте, чтобы присоединиться.

Я рад пригласить наших проверенных членов сообщества стать сотрудниками нового репозитория вики.
Независимо от того, исправляете ли вы типографию, добавляете новую инструкцию или делитесь настройками проекта или добавляете описание вашей поразительной сборки, ваши знания помогают нам всем.
Если вы заинтересованы в том, чтобы внести свой вклад, пожалуйста, напишите мне чтобы присоединиться.



#175 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 31 Май 2024 - 11:19

Develop билд v1.1.18:

- Обновление фичи нотификаций, отдельные настройки для Telegram/WhatsApp уведомлений

- Больше полезных публикаций в MQTT

- Правка известных багов.

 

В данный момент я уже довольно долго тестирую билд и сейчас он проверяется на стабильность.

При желании можно потестить вместе со мной.

 

 

 

{
"current": [ 600, 800,1000, 1200, 1600,1800, 2000, 200, 400 ],
"names": [ "NO3", "PO4", "Ca", "KH", "Mg", "Iron", "Iodide", "Manganese", "Vinegar" ],
"number": 1,
"inversion": [ 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
}

 

 

Установка через OTA линк

https://github.com/t...micropython.bin

 

 

Screenshot 2024-05-31 151305.png Screenshot 2024-05-31 151313.png



#176 CryX

CryX

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 545
  • Откуда:Москва

Отправлено 01 Июнь 2024 - 22:34

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


 
 
 

 


#177 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 02 Июнь 2024 - 16:53

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

Да можно конечно. Тут на самом деле зависит от того в каком режиме помпа работает.
Если раз в день по 30 сек, то без разницы что там.
У меня одна из помп уже не один месяц нонстоп подаёт кальквассер и силиконовому шлангу всё ещё норм.

Потом что одно дело крутить на 200оборотов/мин, а другое медленно 3 оборота/мин...

 

Pharmed(резиновые) шланги живут судя по заверениями раз в 10 дольше чем силикон.

И стоит заметить что заменить силиконовый шланг стоит недорого

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


  • CryX это нравится

#178 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 04 Июнь 2024 - 11:52

Develop билд v1.1.23-develop-20240604

 

OTA линк для установки:

https://github.com/t...icropython.bin

В основном код рефакторинг для стабилизации нотификаций и MQTT на высокой нагруке.

Но MQTT получил небольшие полезные обновления:
1)Теперь при каждом переподключении к серверу контроллер будет публиковать "фейковые" дозы 0мл для активных помп.
/ReefRhythm/<id>/pump2
{"dose": 0, "id": 1, "remain": 1999, "storage": 2500, "name": "NO3"}

Это нужно для того что бы данные о наполении контейнера на сервере(и UI элементы в HA к примеру) всегда в актуальном состоянии.
Актуально при перезагрузке MQTT сервера и контроллера.

 

2)/ReefRhythm/<id>/pump_settings переименованы в /ReefRhythm/<id>/settings:
{
"storage": [2500, 0, 0, 0, 0, 0, 0, 0, 0],
"current": [ 600, 800,1000, 1200, 1600,1800, 2000, 200, 400 ],
"names": [ "NO3", "PO4", "Ca", "KH", "Mg", "Iron", "Iodide", "Manganese", "Vinegar" ],
"number": 1,
"inversion": [ 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
}
3)+ ip, hostname топики



#179 CryX

CryX

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 545
  • Откуда:Москва

Отправлено 05 Июнь 2024 - 17:08

Почти собрал 1 помпу.

Она очень сильно нагревается.

Когда помпа ничего не качает, тоже греется?


 
 
 

 


#180 yury88

yury88

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • Cообщений: 14 558
  • Меня зовут:Юра
  • Откуда:Филиппины

Отправлено 05 Июнь 2024 - 18:38

Почти собрал 1 помпу.
Она очень сильно нагревается.
Когда помпа ничего не качает, тоже греется?

Тут наоборот ничего не греется даже когда крутит потому что есть обратная связь.
Магнит наклеил и провёл калибровку драйвера? Он без калибровки может пытаться делать лишние движения





Темы с аналогичными тегами: diy, stepper, doser, reef-pi, reefpi

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Ветка управляется: