Давеча обзавелся еще несколькими штуцями от xiaomi - часы/термометр/влажометр, который на магнитике повесил на дверь холодильника, и прикроватная лед-лампа. Обе штуки - часть "умного дома" китайского, которые по бт/вифи умеют подключаться к телефону/шлюзу, управляться или отдавать данные
Ну прикольно; пока случайно не обнаружил методом тыка, что google home тоже видит эту лампу и подключил ее себе (ну точнее конечно я подключил ее к нему); теперь кроме 2-х телевизоров и "фоторамки" гугл может еще и управлять светильником в детской; можно хорошо поставленным английским голосом (или тыком по кнопочках в телефоне) говорить "включи голубую подсветку в детской на минимум"
И в связи с этим как-то задумался: надо еще что-то подобавлять в "умный дом", там гляди и поддержка русского языка появится (странно это - гугл-хаб не понимает русский, а у телефона с этим никаких проблем..)
Только хз, чем управлять; розетками? и что включать/выключать? ну там обрубать физически водонагреватель к примеру можно, это да - а вот включить кондиционер так уже нельзя - ему недостаточно дать питание, еще надо "виртуально" нажать кнопку пультика.
Короче надо смотреть, что делается кем-то, а потом обезьянничать
Тут живет, умеренно жалуется на жизнь и умеренно хвалится успехами умеренно толстый хомяк
четверг, 18 июля 2019 г.
пятница, 21 июня 2019 г.
понедельник, 20 мая 2019 г.
Ровно так же, как в прошлом году "грильный" сезон все никак не мог закончиться (ездили закрывать сезон 4 раза) - в этом году все никак не начнется :(
Надеюсь на эти выходные
Зато кажется передумал выкидывать на кухне духовку - столько мяса через нее прошло разного за это межсезонье осень-зима-весна :D
Надеюсь на эти выходные
Зато кажется передумал выкидывать на кухне духовку - столько мяса через нее прошло разного за это межсезонье осень-зима-весна :D
четверг, 18 апреля 2019 г.
Дом умнеет (но не так быстро и так сильно, как хочется)
С 4й попытки я таки это купил; правда локально в Украине, но за $140, так что даже дешевле нынешней цены в $149 :) Не знаю, что за аттракцион невиданной щедрости
Поставил на кухне, идея толком не очень понятна, но по ходу дела будем разбираться
Поставил на кухне, идея толком не очень понятна, но по ходу дела будем разбираться
Телевизоры с андроид-боксами (mi box 3) тоже включились в "экосистему", пока настроил на телевизорах картинку, которая показывается при простое (из гугло-фото выбранных альбомов)
Ассистент по русски не понимает :( хотя в телефоне давно уже работает, такая фигня; но вообще дивайс же ни в Россию, ни тем более к нам, официально не продают, так что и поддержки русского нет
Ну может поумнеет; пока используется просто - в телефоне можно включить музыку в гугло-музыке и сказать "транслировать на.." - звук идет из колонок, звук достаточно громкий и достаточно хорош для кухни.. Можно управлять (на английском), будем учится :)
вторник, 12 марта 2019 г.
Весна идет
Это точно - вчера видел на стоянке стайку скворцов
Интересно, на дачу наши квартиранты вернуться? Хотя в любом случае скорее всего жилплощадь пустовать не будет :)
Интересно, на дачу наши квартиранты вернуться? Хотя в любом случае скорее всего жилплощадь пустовать не будет :)
воскресенье, 3 февраля 2019 г.
ST7735 и esp - заначу чтоб не забыть..
У китайцев купил задешево цветной экранчик 1.4" или 1.8", 128*160 пк; проверил с ардуиной и отложил
А сегодня решил поделать что-то с ним и долго втыкал, как подключить, нашел распиновку на каком-то испаноязычном сайтике, заначу себе, чтоб не забыть:
#include "Adafruit_GFX.h"
#include "Adafruit_ST7735.h"
/*
LCD - Wemos
LED - 3.3v
SCK - D5
SDA - D7
A0 - D3
RST - D4 - можно подключить к RST контроллера и сэкономить одну ножку
CS - D8
GND - GND
VCC - 5v
*/
#define TFT_CS D8
// #define TFT_RST D4
#define TFT_RST 0
#define TFT_DC D3
Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);
Работает; очевидно, что не выводит традиционные тестовые русские текстовки, но то такое, можно и обойтись
А сегодня решил поделать что-то с ним и долго втыкал, как подключить, нашел распиновку на каком-то испаноязычном сайтике, заначу себе, чтоб не забыть:
#include "Adafruit_GFX.h"
#include "Adafruit_ST7735.h"
/*
LCD - Wemos
LED - 3.3v
SCK - D5
SDA - D7
A0 - D3
RST - D4 - можно подключить к RST контроллера и сэкономить одну ножку
CS - D8
GND - GND
VCC - 5v
*/
#define TFT_CS D8
// #define TFT_RST D4
#define TFT_RST 0
#define TFT_DC D3
Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);
Работает; очевидно, что не выводит традиционные тестовые русские текстовки, но то такое, можно и обойтись
пятница, 25 января 2019 г.
Mojave
Решил сегодня не выходить даже на улицу - вчера еле домой дошел по сракопаду.. А чтоб не сидеть дома без дела - есть же хакинтош! НО
Активный переезд на свифт -> последняя версия xcode -> последняя версия макОСь, которая уже 10.14 - а дома все еще 10.12 была (которая простая Sierra) :( :( :(
Но немного очевидной магии (это когда ничего не понимаешь, но чего-то хочешь и оно само получается) и вуаля - система обновилась, обновил xcode, можно дальше жить.. Правда неувязочка с видеокартой - нвидия говорит, что она отослала в аппле на апрув драйвера еще до выхода 10.14.0, а уже 10.14.3 на дворе, а драйверов все так же нет
Так что все работает, но в некоторых местах все начинает тормозить при отрисовке, но терпимо - ну и авось они таки разродятся драйвером :(
з.ы. просто так посмотрел ценники на новые миники, мда, танунах
Активный переезд на свифт -> последняя версия xcode -> последняя версия макОСь, которая уже 10.14 - а дома все еще 10.12 была (которая простая Sierra) :( :( :(
Но немного очевидной магии (это когда ничего не понимаешь, но чего-то хочешь и оно само получается) и вуаля - система обновилась, обновил xcode, можно дальше жить.. Правда неувязочка с видеокартой - нвидия говорит, что она отослала в аппле на апрув драйвера еще до выхода 10.14.0, а уже 10.14.3 на дворе, а драйверов все так же нет
Так что все работает, но в некоторых местах все начинает тормозить при отрисовке, но терпимо - ну и авось они таки разродятся драйвером :(
з.ы. просто так посмотрел ценники на новые миники, мда, танунах
воскресенье, 20 января 2019 г.
Как ни удивительно, но к этому новому году не было ни новых гирлянд каких-нибудь (не считая китайских led-гирлянд с питанием от усб за смешные деньги, которыми обкрутили все на свете), прошлогодние поделки вполне себе хорошо справились:
.. ни новых часов никаких.
Когда был "час та натхнення" - мастерил древнюю идею, до которой наконец дошли руки, идея такая: за окном цепляем блок с датчиками температуры, он по ви-фи постит куда-то периодично свои показания, где-то в доме другой блок, со своими датчиками и экранчиком, на котором выводятся температура внутри, снаружи, из интернета, прогноз (ну и часы, как без них, дни до НГ, дни до отпуска etc)
Закончил наружный блок, потестировал и прослезился.. на балконе, на солнце показывает 30С, что конечно не так. На солнце - потому что внутри аккумулятор, который подпитывается солнечной батареей:
Конструкция по-идее должна была вентилироваться и обеспечивать поступление свежего забортного воздуха, но наверное из-за небольших размеров + полное отстутствие движения воздуха на тестируемом балконе (а за окном у меня в общем то же самое) имеем что имеем :(
А так внутри плата с esp8266 и сенсор bme280, плюс аккумулятор li-ion и контроллер заряда для него, питающийся от солнечной батареи. После старта контроллер пытается подключится к последней точке ви-фи, если не получается - создает свою точку доступа, через которую можно войти и выбрать нужную сеть; ждет минуту, если ничего не происходит - засыпает для экономии батарейки
Если ви-фи есть - читается датчик (температура, давление и влажность; bmp280 умеет читать только температуру и давление, но он дешевле немного зато, хотя цены там $$4-6 емнип), передаются данные в blynk и контроллер уходит в глубокий сон на 15 мин
Из мыслей на след. версии - частота обновления, которая бы зависела от напряжения аккумулятора: есть солнце, заряжается хорошо - можно хоть и раз в минуту обновлять данные, заряд ближе к "плохо" - раз в пол-часа, в час.. Потому что читал, что если напряжение упадет ниже какого-то минимума - контроллер перестанет запускаться, и даже если потом аккумулятор зарядится - контроллер так и не сможет запуститься без внешнего пинка в кнопку reset, что конечно вообще не интересно. Для предотвращения заказал dc-dc преобразователь, который выдает 5 вольт из напряжений, начиная с 0,8 вольт, хотя контроллер заряда отключит аккумулятор намного раньше, при 2.4 вольт емнип; ну и есть специальные чипы, которые как раз должны делать перезапуск при достижении нормального напряжения, про них еще нужно читать
Ну и вторая мысль - переделать корпус, сделать его больше/круглым в сечении, вставить моторчик с вентилятором и при высоких температурах == много солнца и напряжения продувать датчик перед измерением.. буду что-то выдумывать.
Это первая часть марлезонского балета, приложением на телефоне можно смотреть данные; следующая часть задумывалась как что-то похожее, но кроме своих данных из инета будет читаться прогноз погоды и из blynk браться данные внешгено блока, и это все красиво показываться на 128*160 цветном экранчике 1.8", хотя тут "я у мамы дизайнер" это не про меня и все тормозится бОльше вот на этом моменте :(
.. ни новых часов никаких.
Когда был "час та натхнення" - мастерил древнюю идею, до которой наконец дошли руки, идея такая: за окном цепляем блок с датчиками температуры, он по ви-фи постит куда-то периодично свои показания, где-то в доме другой блок, со своими датчиками и экранчиком, на котором выводятся температура внутри, снаружи, из интернета, прогноз (ну и часы, как без них, дни до НГ, дни до отпуска etc)
Закончил наружный блок, потестировал и прослезился.. на балконе, на солнце показывает 30С, что конечно не так. На солнце - потому что внутри аккумулятор, который подпитывается солнечной батареей:
Конструкция по-идее должна была вентилироваться и обеспечивать поступление свежего забортного воздуха, но наверное из-за небольших размеров + полное отстутствие движения воздуха на тестируемом балконе (а за окном у меня в общем то же самое) имеем что имеем :(
А так внутри плата с esp8266 и сенсор bme280, плюс аккумулятор li-ion и контроллер заряда для него, питающийся от солнечной батареи. После старта контроллер пытается подключится к последней точке ви-фи, если не получается - создает свою точку доступа, через которую можно войти и выбрать нужную сеть; ждет минуту, если ничего не происходит - засыпает для экономии батарейки
Если ви-фи есть - читается датчик (температура, давление и влажность; bmp280 умеет читать только температуру и давление, но он дешевле немного зато, хотя цены там $$4-6 емнип), передаются данные в blynk и контроллер уходит в глубокий сон на 15 мин
Из мыслей на след. версии - частота обновления, которая бы зависела от напряжения аккумулятора: есть солнце, заряжается хорошо - можно хоть и раз в минуту обновлять данные, заряд ближе к "плохо" - раз в пол-часа, в час.. Потому что читал, что если напряжение упадет ниже какого-то минимума - контроллер перестанет запускаться, и даже если потом аккумулятор зарядится - контроллер так и не сможет запуститься без внешнего пинка в кнопку reset, что конечно вообще не интересно. Для предотвращения заказал dc-dc преобразователь, который выдает 5 вольт из напряжений, начиная с 0,8 вольт, хотя контроллер заряда отключит аккумулятор намного раньше, при 2.4 вольт емнип; ну и есть специальные чипы, которые как раз должны делать перезапуск при достижении нормального напряжения, про них еще нужно читать
Ну и вторая мысль - переделать корпус, сделать его больше/круглым в сечении, вставить моторчик с вентилятором и при высоких температурах == много солнца и напряжения продувать датчик перед измерением.. буду что-то выдумывать.
Это первая часть марлезонского балета, приложением на телефоне можно смотреть данные; следующая часть задумывалась как что-то похожее, но кроме своих данных из инета будет читаться прогноз погоды и из blynk браться данные внешгено блока, и это все красиво показываться на 128*160 цветном экранчике 1.8", хотя тут "я у мамы дизайнер" это не про меня и все тормозится бОльше вот на этом моменте :(
пятница, 16 ноября 2018 г.
Хозяйке на заметку
Если esp8266 пишет в постоянную память, то надо подготовится сначала
EEPROM.begin(buf_size);
а потом подтвердить, что можно сохранять
EEPROM.commit();
А для обычных ардуин всяких такого не нужно было
EEPROM.begin(buf_size);
а потом подтвердить, что можно сохранять
EEPROM.commit();
А для обычных ардуин всяких такого не нужно было
среда, 14 ноября 2018 г.
Уже думал подарил себе Google Hub, "умную" колонку с экраном с гугл-ассистентом внутри; у нас купить конечно нельзя, гугл считает нашу страну 3-м сортом - но оказывается у "новой почты" есть вариант доставки из штатов: покупаешь в американском сторе на американский адрес, который дает НП, оттуда НП доставит сюда
Все вроде норм, заплатил, получил письмо "ждите", сижу жду; внезапно следующее письмо - о том, что действия с аккаунтом какие-то подозрительные и заказ отменяется (деньги вернули до копейки)
ХЗ что им не понравилось - карточка украинского банка, с которой я уже не помню сколько покупаю у них программы и подписку? Не пофиг что-ли..
Так что все так же нет у меня умной колонки гугловской..
Все вроде норм, заплатил, получил письмо "ждите", сижу жду; внезапно следующее письмо - о том, что действия с аккаунтом какие-то подозрительные и заказ отменяется (деньги вернули до копейки)
ХЗ что им не понравилось - карточка украинского банка, с которой я уже не помню сколько покупаю у них программы и подписку? Не пофиг что-ли..
Так что все так же нет у меня умной колонки гугловской..
понедельник, 5 ноября 2018 г.
"Бес слов"
Очевидно, что если нет булочек скажем - можно все заворачивать в лаваш, можно засыпать в булочку для хот-дога, можно ложкой в конце концов доесть :)
Бургеры с рваной курицей и салатом коул-слоу (смайлик fuck-yeah)
понедельник, 29 октября 2018 г.
(Очередное) закрытие сезона "гриллевания" :)
В 3й раз на даче закрывали сезон; конец октября и +20, в этом году (пока что) на осеннюю погоду грех жаловаться
Опять коптили; на этот раз внезапно скумбрии на рынке не оказалось, в магазинчике не понравилась, тупо куриная четверть или как там называется та фигня с ногой у курицы
На пару часов полежать в соль+перец и все, на решетку; под решеткой пакетик с мокрой щепой
Через час при температуре 150 - 170 С:
з.ы. Для любителей порассуждать о вреде копчености: вреднее чем жить в Запорожье никак не получится сделать; ну а кроме того угли с одной стороны, мясо с другой, под мясом емкость с водой, в которую капает вытапливающийся жир, так что лишних канцерогенов минимум
Ну и потом конечно полезнее есть сырой кабачек
з.з.ы. Со скумбрией та же фигня, только времени хватает минут 40 и температура еще ниже должна быть, до 150 С
Неделю назад, когда думали, что все, окончательно закрываем сезон:
Опять коптили; на этот раз внезапно скумбрии на рынке не оказалось, в магазинчике не понравилась, тупо куриная четверть или как там называется та фигня с ногой у курицы
На пару часов полежать в соль+перец и все, на решетку; под решеткой пакетик с мокрой щепой
Через час при температуре 150 - 170 С:
з.ы. Для любителей порассуждать о вреде копчености: вреднее чем жить в Запорожье никак не получится сделать; ну а кроме того угли с одной стороны, мясо с другой, под мясом емкость с водой, в которую капает вытапливающийся жир, так что лишних канцерогенов минимум
Ну и потом конечно полезнее есть сырой кабачек
з.з.ы. Со скумбрией та же фигня, только времени хватает минут 40 и температура еще ниже должна быть, до 150 С
Неделю назад, когда думали, что все, окончательно закрываем сезон:
Выгорание и oled
- это не миф :)
Глюк (белый квадрат) это показывает - видно следы от изображения термометра (слева) и каких-то цифр (скорее 08)
Причем этому экранчику ладно, больше года, но у нового, с которым сейчас играюсь, та же беда при том, что в целом он и пары часов не проработал
Такая фигня
Глюк (белый квадрат) это показывает - видно следы от изображения термометра (слева) и каких-то цифр (скорее 08)
Причем этому экранчику ладно, больше года, но у нового, с которым сейчас играюсь, та же беда при том, что в целом он и пары часов не проработал
Такая фигня
суббота, 27 октября 2018 г.
Мультитаргет в platformio
Заметка будуЮщему себе (я то точно знаю, что разобравшись сейчас через 2 недели я не буду помнить ни-фи-га)
Итак, я сделал проект в platformio, для esp8266, все более-менее работает; плату выбрал не потому, что нужно было, а потому, что была; и вот теперь хочется сделать "финальный" вариант железки, для которой вполне достаточно "обычной" ардуины, которую как раз китайская + укр почты привезли. Вариант "в лоб" очень уж мне не нравится - сделать еще один проект, перенести туда все файлы и код, поправить код, ну фигня же - в конце концов синьор я программист или так, с улицы зашел? :)
Поэтому мне нужно как-то сделать так, чтобы с минимальными изменениями работающий код работал на другой железке.
Шаг 1: в существующий проект надо как-то добавить новую плату. Делается это не то, чтоб очевидно, но просто: делаем новый проект, выбираем в списке нужную плату, даем ему имя существующего уже проекта и сохраняем в папку, в которой лежит сужествующий проект; и все, ide достаточно сообразительное, чтобы подокачивать если нужно файлы нехватающие и добавить в настройку проекта новый "таргет"; настройки хранятся в файле platformio.ini в папке с проектом и после всего там появляется что-то типа:
Шаг 2: если сейчас запустить сборку, то соберуться оба таргета, что очевидно не совсем то, что нужно. А нужно как-то переключаться между ними - так как делать это скорее всего придется совсем редко, я не углублялся в гугление и остановился на следующем: в тот же platformio.ini добавляется еще одна секция:
Раскоментиваем нужный таргет - вуаля, теперь собирается и заливается именно он. Но железо то скорее всего немного, но разное, поэтому
Шаг 3: секции с описанием таргетов модифицируются вот так:
теперь в коде можно использовать директивы компилятора, по которым можно отличать - какая плата сейчас используется (ну или вон отладку включить), что-то типа такого (причем получилось вообще хорошо, в одном месте вся инициализация железячная):
и это все
Надеюсь это мне пригодится когда-нибудь еще :)
Итак, я сделал проект в platformio, для esp8266, все более-менее работает; плату выбрал не потому, что нужно было, а потому, что была; и вот теперь хочется сделать "финальный" вариант железки, для которой вполне достаточно "обычной" ардуины, которую как раз китайская + укр почты привезли. Вариант "в лоб" очень уж мне не нравится - сделать еще один проект, перенести туда все файлы и код, поправить код, ну фигня же - в конце концов синьор я программист или так, с улицы зашел? :)
Поэтому мне нужно как-то сделать так, чтобы с минимальными изменениями работающий код работал на другой железке.
Шаг 1: в существующий проект надо как-то добавить новую плату. Делается это не то, чтоб очевидно, но просто: делаем новый проект, выбираем в списке нужную плату, даем ему имя существующего уже проекта и сохраняем в папку, в которой лежит сужествующий проект; и все, ide достаточно сообразительное, чтобы подокачивать если нужно файлы нехватающие и добавить в настройку проекта новый "таргет"; настройки хранятся в файле platformio.ini в папке с проектом и после всего там появляется что-то типа:
[env:esp8285]
platform = espressif8266
board = esp8285
framework = arduino
[env:nanoatmega328]
platform = atmelavr
board = nanoatmega328
framework = arduino
Шаг 2: если сейчас запустить сборку, то соберуться оба таргета, что очевидно не совсем то, что нужно. А нужно как-то переключаться между ними - так как делать это скорее всего придется совсем редко, я не углублялся в гугление и остановился на следующем: в тот же platformio.ini добавляется еще одна секция:
[platformio]
#env_default = esp8285
env_default = nanoatmega328
Раскоментиваем нужный таргет - вуаля, теперь собирается и заливается именно он. Но железо то скорее всего немного, но разное, поэтому
Шаг 3: секции с описанием таргетов модифицируются вот так:
[env:esp8285]
platform = espressif8266
build_flags = -D TARGET_ESP8266
board = esp8285
framework = arduino
[env:nanoatmega328]
platform = atmelavr
build_flags = -D TARGET_AVR -D DEBUG
board = nanoatmega328
framework = arduino
теперь в коде можно использовать директивы компилятора, по которым можно отличать - какая плата сейчас используется (ну или вон отладку включить), что-то типа такого (причем получилось вообще хорошо, в одном месте вся инициализация железячная):
#ifdef TARGET_ESP8266
static const int audioAlarmPin = 14; // D5
static const int buttonPin = 16;
#warning BUILDING for esp
#endif
#ifdef TARGET_AVR
static const int audioAlarmPin = 12;
static const int buttonPin = 4;
#warning BUILDING for avr
#endif
и это все
Надеюсь это мне пригодится когда-нибудь еще :)
среда, 24 октября 2018 г.
понедельник, 8 октября 2018 г.
Свято (темная тема в новой макоси) слегка смазалось оттого, что эта падла регулярно (и на всех компутерах вокруг, которые обновились) глючит - то из слипа не выходит, то логиниться не хочет.. просто пц иногда бесит
Полтора месяца пишу на свифте; привык быстро, теперь в чисто сишном коде все время странные ошибки, из-за пропуска ";" в конце строк
Даже нравится
Полтора месяца пишу на свифте; привык быстро, теперь в чисто сишном коде все время странные ошибки, из-за пропуска ";" в конце строк
Даже нравится
вторник, 25 сентября 2018 г.
четверг, 6 сентября 2018 г.
Я столько делал поделок на esp8266, а каждый раз начиная новую туплю - с чего начать
Вчера тупил и не мог понять - как зашить что-то в чип? Чипов был прикупил когда-то кучку таких
Пишу себе памятку: надо нажать кнопку flash и удерживая - нажать reset; после этого начинать заливать прошивку: плата при загрузке "увидит", что зажата кнопка flash и перейдет в режим прошивки
Выяснял вчера долго это методом тыка, а выяснив - понял, что вроде все же логично
з.ы. причем мне не нужен wifi - просто ардуины закончились :(
Вчера тупил и не мог понять - как зашить что-то в чип? Чипов был прикупил когда-то кучку таких
Пишу себе памятку: надо нажать кнопку flash и удерживая - нажать reset; после этого начинать заливать прошивку: плата при загрузке "увидит", что зажата кнопка flash и перейдет в режим прошивки
Выяснял вчера долго это методом тыка, а выяснив - понял, что вроде все же логично
з.ы. причем мне не нужен wifi - просто ардуины закончились :(
Подписаться на:
Сообщения (Atom)

















