content top

Мы помним


Буридло обыкновенное экзотическое

В этом году вспоминаем Марвина не бульдозером, а буридлом.

Моя фамилия – Мышьякович


Если вы знаете откуда цитата в заголовке – не забудьте принять таблетки.

Увидел тут обзор бормашинки Greenworks AKG302. Мне как раз мой китайский какалох newacalox за целую тыщу рублей всю голову съел жутким воем и биением, как оборотень в полнолуние, поэтому заинтересовался. Почитал другие обзоры, почитал комменты и обнаружил киллер-фичу, после которой аж взвизгнул и побежал заказывать.

Greenworks-AKG302 переукомплектован дремелевской расходкой

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

На вал бормашинки Greenwoks отлично накрутится всё, что накручивается на вал дремеля.

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

Для полного феншуя накидал и распечатал коробочку для мелочёвки и вставил в углубление, где хранился type-c шнурок для зарядки. Шнурок всё равно у зарядника свой, коробочка полезнее. Модельку положил на фигневерс.

Вощем огонь машинка, ни разу пока не пожалел. И с собой брать удобно.

Как я фапать учился


Мне никогда не надоест эта шутка про процесс сборки Flipper Application Package, сокращённо FAP.
И про повелителя флиппера тоже.

Flipper Zero и куча ключей

Итак, через джва года после кампании на кикстартере, в конце октября ко мне наконец-то доехал Flipper Zero. Покопировав все ключи, посканировав все пульты и вдоволь наигравшись, решил реализовать давнюю задумку и запилить ещё один интервалометр для съёмки таймлапсов. Предыдущие, напомню, выглядели вот так и даже вот так. На флиппере получилось гораздо цивильнее.

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

Кабель собирается из оптопар, проводов и подходящего разъёма, я срезал с сидюшного аудиокабеля и неистово доработал напильником. Тестовая версия выглядела вот так:

Тестируем кабель для управления камерой

После того, как всё проверил – спаял красивый шнурок. Термоусадка, все дела.

Дельфин теперь фотограф

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

Ну и видос работы всего этого напоследок:

Instagram Post March 12, 2022 at 01:54AM


Instagram Post March 11, 2022 at 06:34PM


Эй вы, носастые!


Репетиция парада победы

Летають и летають, спать не дають.

Годзилла


Годзилла в небе

Вообще я хотел сфотографировать единорога, но пока доставал фотоаппарат – он рассыпался.

Хуй в плену у ЦСКА


Привет "Войне"

Обожаю обозревать окрестности по утрам

Хуй в плену у ЦСКА

Now i have a machine gun


Сначала мне подарили офигенных совей.

Совы нежные, уй-юй!

Потом – не менее офигенный ридикюль.

А под рождество – ваще пирометр!

У меня есть пирометр и мне нечего делать

Мы всё равно помним


Всеразрушающий погрузчик

Мы помним и никогда не забудем.

Завёл инстаграм


Назвал @scuko_bled. Зачем – сам не понимаю, но срать фотками туда пока прикольно. Чо интересное буду дайджестами сюда перетаскивать. Например вот:

С днём Конституции!


Расти большая!

Конституция, которая работает

Мы всё-таки помним


Весь день не было света, пост чуток опоздал.

Трактор-убиватор

В этом году аутентичный ночной трактор с прицепным убиватором типа “борона”.

Пандец


Добрая панда с топором

Сварганил себе новый юзерпик из того, что под рукой нашлось.

Пересадка зызы


В конце года досталась мне PSP 3008 за сущие копейки, чисто по приколу. С живой электроникой, живой батарейкой, даже карточкой на восемь гигов. Тем же вечером выяснилось, что это лучшая покупка 2017, а то и 2018, потому что из-за схожей архитектуры зыза отлично умеет в игры от первой Playstation. Сайлентхилл (пианино!!!), металгир (Снееейк!), динокризис (тирекс, сука!), диабла – все игры из детства. Нет, в донди с сегой мы тоже играли, но первосонька появилась – и затмила всё.

DiabloDiablo
Silent HillSilent Hill
Silent HillSilent Hill
Silent HillDino Crisis
Dino CrisisDino Crisis

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

Новый корпус для PSP 3000
Новый корпус для PSP 3000 готов к пересадке

Процесс пересадки железа в новый корпус достаточно простой, девайс оказался на удивление ремонтопригодным. Пара часиков с мануалом и отвёрткой – и у меня на руках полностью новая PSP с перебитыми номерами, китайцы даже все наклейки приложили. Можно ностальгировать в любом месте в любое время.

content top
(function($) { $.fn.et_shortcodes_switcher = function(options) { var defaults = { slides: '>div', activeClass: 'active', linksNav: '', findParent: true, //use parent elements to define active states lengthElement: 'li', //parent element, used only if findParent is set to true useArrows: false, arrowLeft: 'a#prev-arrow', arrowRight: 'a#next-arrow', auto: false, autoSpeed: 5000, slidePadding: '', pauseOnHover: true, fx: 'fade', sliderType: '' }; var options = $.extend(defaults, options); return this.each(function() { var slidesContainer = jQuery(this).parent().css('position','relative'), $slides = jQuery(this).css({'overflow':'hidden','position':'relative'}), $slide = $slides.find(options.slides).css({'opacity':'1','position':'absolute','top':'0px','left':'0px','display':'none'}), slidesNum = $slide.length, zIndex = slidesNum, currentPosition = 1, slideHeight = 0, $activeSlide, $nextSlide; if (options.fx === 'slide') { $slide.css({'opacity':'0','position':'absolute','top':'0px','left':'0px','display':'block'}); } else { $slide.filter(':first').css({'display':'block'}); } if (options.slidePadding != '') $slide.css('padding',options.slidePadding); $slide.each(function(){ jQuery(this).css('z-index',zIndex).addClass('clearfix'); if (options.fx === 'slide') zIndex--; slideH = jQuery(this).innerHeight(); if (slideH > slideHeight) slideHeight = slideH; }); $slides.css('height', slideHeight); $slides.css('width', $slides.width()); var slideWidth = $slide.width(), slideOuterWidth = $slide.outerWidth(); $slide.css('width',slideWidth); $slide.filter(':first').css('opacity','1'); if (options.sliderType != '') { if (options.sliderType === 'images') { controllersHtml = '
Previous'; for ($i=1; $i<=slidesNum; $i++) { controllersHtml += ''+$i+''; } controllersHtml += 'Next
'; $controllersWrap = jQuery(controllersHtml).prependTo($slides.parent()); } var etimage_width = $slide.width(); slidesContainer.css({'width':etimage_width}); $slides.css({'width':etimage_width}); if (options.sliderType === 'images') { slidesContainer.css({'height':$slide.height()}); $slides.css({'height':$slide.height()}); var controllers_width = $controllersWrap.width(), leftPosition = Math.round((etimage_width - controllers_width) / 2); $controllersWrap.css({left: leftPosition}); } } if (options.linksNav != '') { var linkSwitcher = jQuery(options.linksNav); var linkSwitcherTab = ''; if (options.findParent) linkSwitcherTab = linkSwitcher.parent(); else linkSwitcherTab = linkSwitcher; if (!linkSwitcherTab.filter('.active').length) linkSwitcherTab.filter(':first').addClass('active'); linkSwitcher.click(function(){ var targetElement; if (options.findParent) targetElement = jQuery(this).parent(); else targetElement = jQuery(this); var orderNum = targetElement.prevAll(options.lengthElement).length+1; if (orderNum > currentPosition) gotoSlide(orderNum, 1); else gotoSlide(orderNum, -1); return false; }); } if (options.useArrows) { var $right_arrow = jQuery(options.arrowRight), $left_arrow = jQuery(options.arrowLeft); $right_arrow.click(function(){ if (currentPosition === slidesNum) gotoSlide(1,1); else gotoSlide(currentPosition+1),1; if (options.linksNav != '') changeTab(); return false; }); $left_arrow.click(function(){ if (currentPosition === 1) gotoSlide(slidesNum,-1); else gotoSlide(currentPosition-1,-1); if (options.linksNav != '') changeTab(); return false; }); } function changeTab(){ if (linkSwitcherTab != '') { linkSwitcherTab.siblings().removeClass('active'); linkSwitcherTab.filter(':eq('+(currentPosition-1)+')').addClass('active'); } } function gotoSlide(slideNumber,dir){ if ($slide.filter(':animated').length) return; $slide.css('opacity','0'); $activeSlide = $slide.filter(':eq('+(currentPosition-1)+')').css('opacity','1'); if (currentPosition === slideNumber) return; $nextSlide = $slide.filter(':eq('+(slideNumber-1)+')').css('opacity','1'); if ((currentPosition > slideNumber || currentPosition === 1) && (dir === -1)) { if (options.fx === 'slide') slideBack(500); if (options.fx === 'fade') slideFade(500); } else { if (options.fx === 'slide') slideForward(500); if (options.fx === 'fade') slideFade(500); } currentPosition = $nextSlide.prevAll().length + 1; if (options.linksNav != '') changeTab(); if (typeof interval != 'undefined' && options.auto) { clearInterval(interval); auto_rotate(); } return false; } if (options.auto) { auto_rotate(); var pauseSlider = false; } if (options.pauseOnHover) { slidesContainer.hover(function(){ pauseSlider = true; },function(){ pauseSlider = false; }); } function auto_rotate(){ interval = setInterval(function(){ if (!pauseSlider) { if (currentPosition === slidesNum) gotoSlide(1,1); else gotoSlide(currentPosition+1),1; if (options.linksNav != '') changeTab(); } },options.autoSpeed); } function slideForward(speed){ $nextSlide.css('left',slideOuterWidth+'px'); $activeSlide.animate({left: '-'+slideOuterWidth},speed); $nextSlide.animate({left: 0},speed); } function slideBack(speed){ $nextSlide.css('left','-'+slideOuterWidth+'px'); $activeSlide.animate({left: slideOuterWidth},speed); $nextSlide.animate({left: 0},speed); } function slideFade(speed){ $activeSlide.css({zIndex: slidesNum}).fadeOut(700); $nextSlide.css({zIndex: (slidesNum+1)}).fadeIn(700); } }); } })(jQuery); /////// Shortcodes Javascript /////// /// tooltip /// $et_tooltip = jQuery('.et-tooltip'); $et_tooltip.hover(function(){ jQuery(this).find('.et-tooltip-box').animate({ opacity: 'show', bottom: '25px' }, 300); },function(){ jQuery(this).find('.et-tooltip-box').animate({ opacity: 'hide', bottom: '35px' }, 300); }) /// learn more /// $et_learn_more = jQuery('.et-learn-more .heading-more'); $et_learn_more.click(function(){ if ( jQuery(this).hasClass('open') ) jQuery(this).removeClass('open'); else jQuery(this).addClass('open'); jQuery(this).parent('.et-learn-more').find('.learn-more-content').animate({ opacity: 'toggle', height: 'toggle' }, 300); }); /* ]]> */ -->