Certyfikaty SSL w serwerze poczty Citadel w oparciu o Let’s Encrypt

Tym razem krótko, bo o Citadel można pisać wiele – i dobrego i złego. Tutoriali na bazowy setup jest pełno, lecz na konfigurację SSL już nie – gotowców dla let’s encrypt nie znalazłem, więc pora wypełnić dziurę w internecie.

Czytaj dalej

Zaszufladkowano do kategorii Linux | Otagowano , , , | Dodaj komentarz

Monitoring: OrangePi One vs Odroid C2

Obecnie na działce do OrangePi mam podpięte dwie kamery z rozdzielczością 720p wysyłające po RTSP strumienie H.264. Z użyciem pakietów motion i motioneye jestem w stanie wyciągnąć transmisję z kamer z mocno zmiennym framerate’em, gdzie szczytowo motioneye pokazuje mi 10 i 7 FPS. Jako że wynik jest mocno niezadowalający, stwierdziłem że pora na modernizację sprzętu. Wybór padł na Odroida C2, dla odmiany z zainstalowanym DietPi.

Czytaj dalej

Zaszufladkowano do kategorii Monitoring | Otagowano , , , , , , , , , | Dodaj komentarz

Kompaktowy zasilacz dla Amigi – Cisco ADP-30RB

Cisco ADP-30RB jest zasilaczem dla urządzeń sieciowych, ale jego napięcia odpowiadają tym z zasilacza amigowego. Wydajność prądowa jest na poziomie stockowego zasilacza, więc nie nada się do rozbudowanych konfiguracji, ale dla podstawowych jak najbardziej. Dodatkowym atutem takiego zamiennika jest niewielki wymiar, a także dedykowana żyła do włączania zasilania. Sam zasilacz można kupić taniej niż oryginalny, więc czemu by nie?

“Pech” jednak chciał, że swój egzemplarz kupiłem z gwarancją, więc powstała psychologiczna presja by mu nie urzynać wtyczki, lecz zrobić przejściówkę, co też uczyniłem.

Czytaj dalej

Zaszufladkowano do kategorii Amiga | Otagowano , , , , , | 4 komentarze

Aero2 na SBC

Robiąc monitoring na działce konieczne było posiadanie jakiejś łączności internetowej. Wybór padł na Aaero2 zwłaszcza, że pakiety premium eliminują captchę i mają najkorzystniejszą prepaidową taryfę. O tego typu konfiguracji powstało już wiele tekstów. Brakuje w nich jednak paru kluczowych informacji.

Czytaj dalej

Zaszufladkowano do kategorii Uncategorized | Dodaj komentarz

Target Windows dla tangram-es

Tangram to jedna z lepszych alternatyw google/bing maps, do tego otwarta i działająca nie tylko w przeglądarce (JS + WebGL), ale tekże w wersji pod OpenGL-ES dla Linuksa, OSX, Androida i iOS. Dodatkowo projekt jest otwarty, więc można go rozszerzać pod własne potrzeby. Niestety, wersji na Windows brak. Jako, że używałem tych map w aplikacji androidowej i sprawdzała się tam nieźle, stwierdziłem, że w imię jednolitości opracuję target dla Windows. Żeby cały wysiłek miał jakiś walor dydaktyczny, pisałem ten artykuł równolegle z kolejno wykonywanymi rzeczami.

Czytaj dalej

Zaszufladkowano do kategorii tangram-es | Otagowano , , , , , , , , , | Dodaj komentarz

Konfiguracja wxWidgets dla VSCode

WxWidgets to jeden z zestawów bibliotek pozwalający na tworzenie multiplatformowych aplikacji okienkowych. Najprostszym sposobem by zacząć pracę z wx jest zaopatrzenie się w Code::Blocks, który dodatkowo posiada dedykowany WYSIWYG do okienek o nazwie wxSmith. Jako że pożegnałem się z c::b na zawsze (albo przynajmniej taki miałem zamysł), pora przygotować sobie środowisko pod VSCode.

Czytaj dalej

Zaszufladkowano do kategorii wxWidgets | Otagowano , , | Dodaj komentarz

Zapomniana arytmetyka stałoprzecinkowa

Pisząc OpenFire potrzebowałem robić dużo operacji na liczbach z miejscami dziesiętnymi. Jako, że Amiga obsługuje floaty przez bibliotekę korzystającą z koprocesora albo emulacji programowej, postanowiłem pójść tą najbardziej oczywistą metodą. Niestety wydajność pozostawiała wiele do życzenia.

Generacja obróconych klatek pojazdów oparta o naiwną implementację macierzy rotacji na floatach, skutkowała wykonywaniem w UAE w trybie fastest possible w czasie 47s. Na cycle-exact A500 nie ważyłem się tego nawet odpalać. Po przejściu na fixed pointy czas zmalał do 13s.

Jak zatem działają fixed pointy? Otóż, tak jak w przypadku inta, liczba dalej reprezentowana jest jako kolejne potęgi dwójki, jednak część bitów przeznaczona jest na potęgi dodatnie, a część na ujemne. Te ostatnie tworzą miejsce po przecinku ze z góry określoną, stałą precyzją. W efekcie dodawanie dwóch liczb stałoprzecinkowych wykonuje się zwykłą operacją dodawania liczby całkowitej, oszczędzając przy tym shitload czasu w porównaniu z floatami. Dzielenie i mnożenie jest równie proste, lecz po operacji należy dokonać przesunięcia bitowego, odzwierciedlając tym samym przesunięcie przecinka, tak jak w mnożeniu lub dzieleniu pisemnym. Jako, że wynalazek ten jest stary jak świat, istnieją już do tego gotowce. Biblioteka libfixmath udostępnia: konwersję z i do typu stałoprzecinkowego, podstawowe operacje na tych liczbach, a także generatory funkcji trygonometrycznych, eksponenty, logarytmu a nawet pierwiastka kwadratowego.

Sama integracja biblioteki jest dość prosta – sprowadza się do jednego inkluda i skorzystania z dołączonego makefile’a lub dopięcia plików .c do głównego make’a projektu. Dodatkowo, biblioteka posiada szereg define’ów pozwalających na lepsze dopasowanie biblioteki do platformy sprzętowej, pozwalając na lepsze dopasowanie do platformy 32- lub nawet 8-bitowej. Ich dokładny opis znajduje się na wiki repozytorium

Choć wzrost wydajności jest kuszący, nie dostaje się go za darmo. Fiksy cechują się dużo mniejszą dokładnością obliczeń niż floaty, co bardzo było widać w “drżącej” grafice 3D na pierwszym PlayStation. Dodatkowo, pisząc w C, składnia staje się obrzydliwa z powodu braku przeładowania operatorów.

Zaszufladkowano do kategorii Amiga | Otagowano , , , | Dodaj komentarz

Wymiana kondensatorów w A600

Amiga, będąc komputerem prawie niezniszczalnym, cierpi na jedną, dość niebezpieczną chorobę starczą – awarię kondensatorów. Skutki mogą być fatalne, bowiem wyciekający elektrolit koroduje ścieżki na PCB i prowadzi do trwałych uszkodzeń sprzętu. Nie ma co czekać na najgorsze, lecz trzeba przeciwdziałać.

Czytaj dalej

Zaszufladkowano do kategorii Amiga | Otagowano , , , | Dodaj komentarz

OrangePi jako printserver z Brother DCP-7055W

Moja drukarka nie ma funkcji sieciowych, a podchodzenie do niej, by podpiąć się po USB, stało się męczące. Stwierdziłem, że pora na stworzenie chałupniczego serwera druku.

Czytaj dalej

Zaszufladkowano do kategorii Uncategorized | Otagowano , , , , | Dodaj komentarz

Walka z temperaturą OrangePi

Ostatnio monitoring działkowy napotkał spory problem. Podczas swojej pracy OrangePi zaczęło się przegrzewać do temperatur przekraczających 80 °C, co powodowało throttling prędkości procesora. Jak można się domyśleć, skutkiem tego było niewyrabianie się przetwarzania obrazu, a w konsekwencji niewykrywanie ruchu. Można jednak z tym trochę powalczyć.

Czytaj dalej

Zaszufladkowano do kategorii Monitoring | Otagowano , , , , | Dodaj komentarz