niedziela, 3 kwietnia 2016

Atmel SAM L21 Xplained Pro - Wstęp - Ośla łączka


Od czterech lat tworzę cuda niewidy na mikrokontrolerach, w większości 8-bitowych AVR'ach. Jednak przychodzi taka chwila w której myślisz sobie: a może by pójść o krok dalej, poznać więcej, doświadczyć czegoś nowego? Dzięki uprzejmości firmy JM Elektronik rozpocząłem nowy rozdział w mojej książce przygód z mikrokontrolerami. Ośla łączka z zestawem Atmel SAM L21 Xplained Pro, bo od czegoś trzeba zacząć.

Zestaw ten w zamyśle ma pozwolić na poznanie wszystkich możliwości badanego procesora przed wdrożeniem go do jakiegoś potężnego projektu, czy urządzenia które będą produkowane na większą skalę. Wypuszczono jeszcze pełno modułów (jak w Arduino) pozwalających poszerzyć możliwości o BLE, WIFI, klawiaturę, dodatkowe guziki itd. itd... Jako że platforma jest mega niszowa, moja ośla łączka będzie bardziej opowieścią o tym, jak odkrywam jeszcze głębiej świat mikrokontrolerów, niźli jakimś poradnikiem dla świeżaków od deski do deski.


Na wstępie chciałbym powiedzieć: czym do diaska się różni taki mikrokontroler od poczciwej Atmegi8? Prawie dwoma dekadami postępu technologicznego. Jest więcej pamięci na program, jest więcej ramu, więcej peryferii, więcej, więcej! Daje to zdecydowanie większe pole do popisu (czy jak kto woli mniejszą konieczność na optymalizacje projektów).

 

Z najciekawszych dodatków w porównaniu do staruszka AVR'a znalazłem:
- 16 niezależnych przerwań zewnętrznych z (prawie) dowolnego pinu mikrokontrolera (w atmedze "ósemce" było ich aż 2)
- debugger pozwalający na żywo analizować program na działającym układzie - w przypadku avrów i ISP nie było takiej opcji
- 12 bitowy przetwornik cyfrowo-analogowy - prosta droga do stworzenia generatora przebiegów, czy odtwarzacza empetrójek bez PWMa
- wbudowany zegar RTC, na płytce testowej widać sam kwarc z bateryjką od pamięci - nie potrzeba zewnętrznego scalaka, jak w przypadku Atmegi8
- rozbudowane timery, liczniki
- obsługa USB
- nie ma o dziwo pamięci EEPROM


Co ma wspólnego "nowy" mikrokontroler ze starą Atmegą?
Nadal piszemy program, który ładujemy do pamięci flash. Nie ma żadnego systemu operacyjnego (wyjątkiem jest RTOS), nie ma żadnego dysku. Jest to mikrokontroler na wypasie, ale wciąż nie można nazwać tego komputerem płytkowym, jakim jest np. Raspberry Pi.


Tak więc jak mówi staropolskie przysłowie: "Początek z każdą platformą sprzętową od zamigania diodą rozpocznij". Producent przygotował własne IDE Atmel Studio, bazujące na Visual Studio od Microsoftu. Jako że już trochę w nim pracowałem szykując projekty w dotnecie, poczułem się trochę jak w domu. Po wpięciu płytki do komputera środowisko automatycznie mi ją wykryło, po czym dało automatycznie do wyboru opcje co by tu z nią zrobić.


Po wyborze przykładowego programu z listy, odpala nam się projekt tak jak w Visualu. Możemy działać.


Warto tu wspomnieć kilka słów o ASF, czyli frameworku od Atmela. Jest to zestaw gotowych bibliotek, szmerów bajerów umożliwiających odpalenie znacznie znacznie więcej przy użyciu jednej linijki.

Przykładowa inicjalizacja pinu. Generujemy strukturę do której wpisujemy standardowe dane, po czym zmieniając jej kolejne elementy tworzymy wzór dla funkcji uruchamiającej pin w mikrokontorlerze.

struct port_config pin;
port_get_config_defaults(&pin);
pin.direction = PORT_PIN_DIR_OUTPUT;
port_pin_set_config(PIN_PA10, &pin);

Program od migania diodą przedstawia się następująco, jest parę różnic w stosunku do avrgcc, jednak nie ma zbyt dużej filozofii.

int main(void)
{
system_init();
delay_init();
struct port_config pin;
port_get_config_defaults(&pin);
pin.direction = PORT_PIN_DIR_OUTPUT;
port_pin_set_config(LED0_PIN, &pin);
port_pin_set_output_level(LED0_PIN, LED0_INACTIVE);
while (true) {
port_pin_toggle_output_level(LED0_PIN);
delay_s(1);
}
}

Trochę bardziej zaawansowany program z przerwaniem zewnętrznym. Możemy przypisać takowych 16 do prawie każdego pinu i są one wywoływane spoza pętli main, podobnie jak w przypadku avrów. Program jest deko dłuższy i wrzucam go w postaci screenów (klik aby powiększyć). Program robi tyle, że po wciśnięciu przycisku PB05 wywoływane jest przerwanie w którym badany jest stan tego przycisku. Dodatkowo miga sobie w pętli głównej druga dioda. Wiem, program nie należy do najmądrzejszych, ale wystarczyło mi to do nauczenia się działania całego mechanizmu.




Cóż mogę powiedzieć po pierwszych godzinach z Atmel SAM L21 Xplained Pro? Całkiem zaawansowana płytka, nada się na jakiś odważny złożony projekt (ciągle mi chodzi po głowie generator przebiegów elektrycznych). Temat ogólnie jest godny dalszego rozwinięcia i będę nad nim w dalszym ciągu pracował.

piątek, 26 lutego 2016

Rasperry Pi - stan komputerka na wyświetlaczu OLED SSD1306


Od dłuższego czasu zastanawiałem się nad adaptacją dość małego wyświetlacza OLED. W technologie ubieralne na pewno się udawać nie będę, a sam wyświetlacz do automatyki średnio się nada. Postanowiłem wykorzystać go do równie małego Raspberry Pi Zero, tworząc z jego użyciem swoistą "deskę rozdzielczą" tego komputerka. Pomysł jest w fazie rozbudowy, ale już wygląda na tyle fajnie, że postanowiłem się nim podzielić. Wyświetla trzy wartości: zajętość CPU, ramu i obecny adres IP w sieci lokalnej.

Co należy zrobić aby odpalić wspomniany wyświetlacz? Zakładam że posiadasz Raspberry Pi w wersji B1, B+1 albo Zero. W pierwszej trzeba uruchomić moduł I2C. Postępujemy zgodnie z poradnikiem na stronie: https://learn.adafruit.com/adafruits-raspberry-pi-lesson-4-gpio-setup/configuring-i2c
Dogrywamy biblioteki od GPIO, grafik w pythonie jak i samych sterowników od SSD1306. Wystarczy wklepać komenda po komendzie poniższy zestaw:

sudo apt-get update
sudo apt-get install build-essential python-dev python-pip

sudo pip install RPi.GPIO 
sudo apt-get install python-imaging python-smbus
sudo apt-get install git 
git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git 
cd Adafruit_Python_SSD1306 
sudo python setup.py install
sudo pip install psutil

Pobieramy moją paczkę ze skryptem: http://1drv.ms/1T02KuB, rozpakowujemy ją do /home/pi/ Podpinamy nasz wyświetlacz zgodnie ze schematem, filozofii co prawda nie ma, ale zamieszczam dodatkowo pinout maliny. Trzeci dotyczy również RPi Zero, są to dokładnie te same piny.



OLED LCD <-> Raspberry Pi
SDA <-> SDA1 (pin nr.3)
SCL <-> SCL1 (pin nr.5)
VCC <-> 5V (pin nr. 2 lub 4)
GND <-> GND (tu mamy do wyboru do koloru: 6,9,14,20,25,34,39)

Skrypt uruchomiamy komendą: sudo python oled.py Jeśli wszystko jest w porządku, na wyświetlaczu powinien pojawić się stan jak na moim pierwszym zdjęciu.  

No fajnie, ale co zrobić żeby nie odpalać tego ręcznie za każdym razem po uruchomieniu Maliny?

Tak to powinno wyglądać
Jest też i na to patent. Otwieramy na RPi plik komendą: sudo nano /etc/rc.local. Przed ostatnią linijką dodajemy polecenie wywołania skryptu, z kompletnym adresem gdzie się znajduje oraz znakiem & na końcu. Przyciskając CTLR+O wywołujemy zapis pliku, dajemy enter, potem wychodzimy z notatnika CTRL+X. Po uruchomieniu ponownie, skrypt powinien ruszyć już automatycznie.  

W razie problemów zapraszam do kontaktu, służę pomocą :)

Pozdrawiam,
Marcin

Źródła, z których bezczelnie ściągałem na potrzeby tego artykułu:
https://learn.adafruit.com
http://raspi.tv

poniedziałek, 22 lutego 2016

Raspberry Pi Python - programowanie w przeglądarce dzięki Adafruit webIDE


Każdy kto programował w Pythonie na Raspberry Pi, zastanawiał się dlaczego działa to tak nieintuicyjnie. No bo niby jak to ugryźć? Na wariata przez konsole dziubać? Czy może otworzyć sesję VNC i klikać z poziomu wirtualnego pulpitu? Ani jedno ani drugie rozwiązanie nie należą do mega wygodnych opcji. Na szczęście Adafruit przygotowało dość fajne miniśrodowisko programistyczne działające z przeglądarki - Adafruit webIDE.

Nie jest to jakieś wielki odkrycie, ponieważ dodatek ten już ma co nieco czasu, ale warto zwrócić na nie uwagę. Wszystko instaluje się jedną komendą poprzez ssh, do pracy wymaga również konta na bitbucket (taki odpowiednik githuba). Obsługa jest prosta, tworzymy projekt, tworzymy plik ze skryptem, odpalamy go potem w konsoli jednym klikiem z przeglądarki.


webIDE posiada również planowy wywoływacz skryptów, który odpala skrypt w wybranych ramach czasowych. Możliwości tego miniśrodowiska są dość spore, do tego nie musimy nic wgrywać do stronie naszego peceta - jak dla mnie bomba. Cóż więcej dodawać, bierzcie i kodujcie :)


Szerszy opis instalacji znajdziecie na stronie Adafruit: https://learn.adafruit.com/webide/installation, jednak podpowiem, że sprowadza się ona do wklepania poniższej komendy w konsoli:
curl https://raw.githubusercontent.com/adafruit/Adafruit-WebIDE/alpha/scripts/install.sh | sudo sh

Jeśli okaże się że macie zajęty domyślny port 80 (np. zainstalowany apache), instalator przerzuci webIDE na inny port (w moim przypadku był to 8090).

Dzięki za uwagę!

P.S. Zbieram powoli siły po operacji, z dnia na dzień jest coraz lepiej. Dzięki za życzenia zdrówka na fanpage'u, dzięki za wsparcie :) Napędza mnie to mega do dalszego działania. I'm back!

wtorek, 10 listopada 2015

Najprostszy pecetowy oscyloskop na bazie Arduino UNO


Jednym z najbardziej brakujących przyrządów w moim warsztacie jest oscyloskop. Nieraz brakuje mi tej możliwości zauważenia pewnych trendów, pewnych zjawisk w obwodzie, których bez tego urządzenia zobaczyć nie mogę. Jako że jeszcze własnego oscyloskopu się nie dorobiłem, zacząłem szukać alternatyw. Pomyślałem o Arduino. Znalazłem parę projektów, chodzących mniej lub bardziej, ale najbardziej spodobał mi się projekt autorstwa niejakiego azo747 ze strony
http://sourceforge.net/projects/scopino 
Co prawda parametrami taki oscyloskop dupy nie urywa, ale jak się nie ma co się lubi, to się lubi co się ma ;)


Implementacja urządzenia jest banalna. Wgrywamy projekt Arduino na płytkę, odpalamy program, wybieramy port com, na którym nasze UNO figuruje i tyle. Można się pokusić o jakiś dzielnik napięcia dla wartości wyższych niż 5V albo dodanie składowej stałej na jakimś wzmacniaczu operacyjnym do badania sygnałów przemiennych. W najbliższym czasie pokuszę się o stworzenie takowej dostawki.



poniedziałek, 9 listopada 2015

Tydzień bez smartphona - jak go przeżyłem?


Rachuj nie rachuj, smartphony stały się częścią naszej rzeczywistości. Wszyscy ich używają, gdzie się nie obejrzysz ktoś pyka paluchem w dotykowy ekran. W większości ludki pykają w jakieś strony ze śmiesznymi obrazkami, albo scrollują Facebooka. Sam zacząłem dostrzegać u siebie ten trend, że przez większość czasu używam smartphona do pierdół. Pierdół, których tak naprawdę nie potrzebuje i w żadnym stopniu nie rozwijają we mnie niczego. Dlatego aby chociaż trochę od tych smartphonowych bodźców odpocząć, odstawiłem na tydzień swojego LG L90 na rzecz "iPhona roku 2005" - Sony Ericssona K750i.

Pierwsza reakcja po wzięciu Soniaka do ręki? Szukanie przycisku do blokowania telefonu! Jakiegokolwiek smartphona byśmy nie wzięli, usypiamy/budzimy go do życia pojedynczym klikiem, przeważnie z boku obudowy. Tu takiego rozwiązania próżno szukać, żadnych bocznych klików, żadnych slide-to-unlocków, ponieważ mamy tu staroszkolną kombinację klawiszy z dwóch skrajnych rogów klawiatury.


Muzyka jest najważniejsza.
Pamiętam ten szpan, empetrójka w telefonie! Już nie trzeba było nosić oddzielnego urządzenia. To było coś, do tego 1GB pamięci wymiatał. Muzyka w Sony Ericssonie wciąż mi się podoba, jakością nie ustępuje obecnym chinolom. Para oryginalnych słuchawek, która uchowała mi się w stanie niemalże "nówka fófka nie śmigane" również spisują się fajnie. Dedykowane przyciski do przełączania/pauzowania/zmiany głośności piosenek są również na plus - bez problemów można nimi zarządzać nie wyjmując telefon z kieszeni. Te w obecnych smarthphonach są malutkie, w kieszeni ciężko je wyczuć.
Jedyna wada Sony Ericssona do jakiej można się przyczepić, to dedykowany port gdzie te słuchawki wpinamy. Z czasem zatrzaski po prostu się wyrabiają i przestają dobrze kontaktować. K750i nie posiadał jeszcze automatycznego wyłączania muzyki przy wypięciu słuchawek, toteż czasem w autobusie przypadkiem możemy zagrać na głośniku. 


Zjednoczona rewolucja
Jednakowe złącze micro-usb i mini-jack we wszystkich obecnych smartphonach to najlepsza rzecz jaka mogła się przydarzyć urządzeniom nowej generacji. Nie potrzebujemy żadnych przejściówek a i ładowarkę możemy pożyczyć od kogoś bez znaczenia czy ma Samsunga, LG, Sony czy jakąkolwiek inną markę. No właśnie, ładowarkę...

Z k750i nie muszę dźwigać ze sobą żadnych powerbanków.
Grunt to "prunt"
Testowany przeze mnie telefon został zakupiony w 2007 roku i był używany przez jakieś 5 lat, po czym wylądował w szufladzie. Bateria swoje już przeżyła, ale wciąż daje radę. 4 dni w cyklu mieszanym co prawda pupy nie urywa, jednak syndrom codziennego ładowania "bo może nie starczy na jutro baterii" zniknął. Soniaki były znane z tego że na ostatnich 5% potrafiły wytrzymać nieproporcjonalnie dużo czasu w stosunku do całej baterii, toteż nie miałem większych obaw wychodzić z domu z baterią rzędu tych wartości.

Opera Mini
Jest to przeglądarka która dała drugie życie starym telefonom pod J2ME. Działa stabilnie, strony po GPRS wczytują się dostatecznie szybko. Jak się zapewne domyślacie, nie udało mi się powstrzymać przed wejściem na Facebooka, który choćbym był na końcu świata będzie mi towarzyszył niczym cień. Jego funkcjonalność jest wystarczająca, bez problemu sprawdzimy
Z internetem jest jeszcze jedna ciekawostka: Przeciętna prędkość GPRS rzędu 2-3KB/s jaką osiągnąłem w testach nie wykracza poza ramy "lejków" oferowanych przez większość operatorów, toteż dostęp do internetu mamy za darmo i bez limitów.
Na Operze bez problemu sprawdzimy również GMaila, odszukamy wybrane zagadnienie z Wikipedii i znajdziemy numer do ulubionej pizzerii. Funkcje internetowe? Żaden problem!


"Jeeej, jaki mały"
Sony Ericsson'a jako klasyczny telefon doceniam także za wygodę obsługi. Wyciągasz z kieszeni, bez specjalnej uwagi wklepujesz kombinacje klawiszy do zadzwonienia pod szukany czy ostatnio wybierany numer. Takiej wygody nie zaznacie przy dotykowym telefonie.
Mamy coraz zimniejsze dni i jako że łapki marzną, trzeba odziewać się w rękawiczki. Czułość ekranu dotykowego pozwala obsługiwać telefon w cienkich, (umówmy się - kiepsko ogrzewających), płóciennych rękawiczkach - to fakt. Jednak nie ma szans jeśli założymy coś grubszego/skórzanego. Tutaj po raz kolejny wygrywa telefon klasyczny, guziki i joystick są na tyle wyczuwalne, że nie ma żadnego problemu wyklikać pożądaną kombinacje.

Wnioski
Pierwszy tydzień smartphonowego odwyku przyniósł mi parę korzyści. Zdecydowanie rzadziej spoglądałem na telefon - głównie przez brak powiadomień, to z Facebooka, to z maila i innych usług. Przestałem wgapiać się w niego bezpośrednio przed spaniem - po prostu Soniak szedł spać razem ze mną. Mogę potwierdzić, że odbiło się to pozytywnie na moim spaniu. Internety w tej kwestii nie kłamią, smartphone/tablet/komputer bezpośrednio przed snem = gorsze spanie. Jako że wciąż nie mam parcia na powrót do swojego LG L90, swój smartphonowy odwyk będę kontynuował dalej. 

Polecam wykonanie takiego doświadczenia dla każdego. Znajdź swój stary telefon, zmieniaj karcioszkę SIM i przez tydzień przekonaj się na własnej skórze, czy smartphone jest Twoim sługusem, czy może to Ty jesteś dla niego na każde zawołanie.

niedziela, 20 września 2015

iPhone 3GS w roku 2015 A.D.


Chciałem za wszelką cenę spróbować jabłka. Nie znałem jak dotąd smaku tego owocu, a tylko przyglądałem się im od czasu do czasu przechodząc obok warzywniaka. Odwiedzając Czechy widziałem mnóstwo Azjatów jedzących jabłka, część świeżych prosto zerwanych z drzewa, część trochę po terminie. Zadziwiony fenomenem jabłek wszedłem na Allegro, i co? I zobaczyłem, że 6 letnie jabłka w wersji przypudrowanej wciąż są kupowane. Znajomy który już ma nowe jabłko, za litra odstąpił mi swoje stare. Przetestowałem jego smak. Będzie to opis z punktu widzenia osoby, która nigdy nie ugryzła jabłka. Ten smak jest...

Mój egzemplarz
Trochę słodki...

iPhone 3GS na pierwszy rzut oka sprawia wrażenie dość małej, zbitej jak buldog bryły. Telefon dobrze leży wygodnie w dłoni, to nie jest ten trend że wrzeszczy "uważaj bo zaraz mnie upuścisz". Wyświetlacz jak na rok 2009 był ideałem, teraz w zasadzie rozdzielczość 320x480px dupy nie urywa. Jedynie przy wyjątkowo suchych palcach miewa problemy z responsywnością, jednak ja z jego pracy byłem zadowolony. Jakość rozmów jest ok, czujnik zbliżeniowy bangla w porządku. Podstawowe funkcje jak dzwonienie i wysyłanie smsów są bardzo wygodne. Odtwarzacz muzyki jest genialny, widać gdzieś w nim geniusz ojca Apple'a. Brakuje jedynie chyba mało modnego wówczas przełączania piosenek przesunięciem.

Cydia z paroma dodatkami sprawuje się całkiem przyjemnie.
Trochę gorzki...
Problem zaczyna się kiedy chcemy skorzystać z funkcji smart iPhone'a 3GS. Jest to już 6 letni staruszek, bebechy na dzień dzisiejszy dupy nie urywają. Po aktualizacji systemu do wersji 6.1.6. (ostatni wydany na tego iPhone'a) wybór aplikacji jest ubogi. Krótka lista co działa i jest prezentuje się następująco:

Działa: 
- Wykop, minimalne lagi interfejsu
- YouTube, jw. + odtwarza filmy w 360p, da się zainstalować jedynie przez iTunes. Nie wiadomo dlaczego, ale dopiero wtedy proponuje nam wgrać starszą wersję aplikacji kompatybilną pod iOS 6.1.6.
- TibiaME, bez większych ścin
- Tribal Wars (Plemiona) - jest ok
- Exploration Lite - biedny (ale działający) klon Minecrafta
- Cheetah Browser - jedna z przeglądarek, przy której krew mnie nie zalała ze względu na lagi. Jest dostatecznie responsywna (czego nie da się powiedzieć o Safari), blokuje reklamy zżerające i tak dość ubogie zasoby. Funkcjonalność/szybkość porównywalna do Opery Mini pod J2ME, cudów na niej nie zdziałacie, jednak jeśli kombinować, to tylko tą drogą.
- Fabryczny klient e-mail jest ok, bez problemów idzie podpiąć outlook'a czy gmail'a.

Nie działa/działa do dupy/po prostu nie ma:
- oficjalna appka Facebook'a - odświeżanie feeda trwa mega długo, ma zintegrowany messanger z pożal się dobry jezu "balonikami". Trzyma się to kupy, jednak do tej pory zastanawiam się, czy mniejszym złem nie byłaby wersja webowa pod Cheetah Browser.
- Spotify, Opera Mini, Instagram, Snapchaty i inne mainstreamowe appki, większość tego co znajdziecie w AppStore potrzebuje conajmniej iOS 7, więc po prostu na 3GSie ich nie ma.


Operacja zakończona powodzeniem.

Wymieniłem w nim przycisk uruchamiania i baterie, jako że poprzednia po 6 latach od nowości miała już prawo się przekręcić. Budowa tego urządzenia w środku jest dość ciekawa. Nie mamy jednego modułu ze wszystkimi elementami, a płytę główną z doczepionymi wszystkimi peryferiami. Coś siądzie, kupujesz daną część i ją wymieniasz. Chinole produkują do iPhonów wszystko, że przy odrobinie gotówki i sprawnej płycie głównej moglibyśmy sobie takiego iPhone'a złożyć samemu.


Bateria? Przy dość intensywnym użytkowaniu potrafi nie wytrzymać do końca dnia. Przy wyłączeniu WiFi, danych i podobnych jest lepiej. Może ten typ tak ma, albo po prostu jakość obecnie produkowanych zamienników jest słaba. Warto mieć to na uwadze jeśli zdecydujecie się na zakup jakiegokolwiek telefonu refabrykowanego.


Komu mógłbym polecić 3GS'a? Na pewno osobie mającej świadomość jego plusów dodatnich i plusów ujemnych, bez wygórowanych wymagań. Telefon ten na dzień dzisiejszy jest zbyt powolny do używania funkcji smart, brakuje wielu aplikacji, a te co są nie działają jakoś mega wydajnie. Jednak jestem pod wrażeniem że przy 600MHz procesorze i 256MB pamięci RAM to działa i trzyma się kupy. Telefon obecnie w wersji refabrykowanej (serio nówek raczej już nie ma) kosztuje góra 300zł - nowe Androidy w podobnej cenie ze zdecydowanie lepszymi parametrami zdarzają się bardziej lagującymi telefonami, które bez roota i własnoręcznych porządków nie da się używać. Mamy tutaj mega prosty telefon, dobry odtwarzacz MP3, podstawowe funkcje internetowe + e-mail i dość słabe jak na dzisiejsze czasu funkcje multimedialne.


Warto spróbować jabłka, nawet nie koniecznie kupując, ale po prostu wziąć na chwilę by się z nim zapoznać. Jest w nich jakaś magia, coś co sprawia że nawet stare modele są rozrywane na portalach aukcyjnych. Coś, co sprawia, że każdy chce to jabłko ugryźć.

niedziela, 6 września 2015

Blogowy #update - 06.09.2015r.





Dzisiaj randomowego artykułu nie będzie, zbyt wiele podziało się w tym tygodniu i nie zdążyłem nic ciekawego zebrać do kupy. Jednak został uruchomiony zeszyt ze zbiorem pomysłów do zrealizowania, nawet te najbardziej szalonych i z obecnego punktu widzenia ciężkich do zrealizowania. Polecam taki wynalazek, niesamowicie pobudza wyobraźnie.


Oto kilka z nich (wyłącznie techniczno-blogowych):
- keyboard na stacjach FDD - ogarnąć całość i wybrać się na casting pokroju "Mam talent" - no co się dziwicie, mam talent :D
- powrót do tworzenia contentu na Youtube'a - nic tam się obecnie nie dzieje
- jak tylko łączę na to mi pozwoli, zaczynam jakieś spontaniczne streamowanie - może z programowania, może też z jakiegoś hearthstone'a - czas pokaże. Kamerko jest, mikro jakieś się znajdzie :D
- zbudować robota z Arduino - wszystko już jest, projekt poniekąd zaczęty, stay tuned for more :)
- stacja pogodowa AVR: termometr, barometr, może jakiś wiatromierz - także wszystkie składniki do zupy są gotowe

 
 
 - nagrać randomowy cover na stacjach FDD - tu potrzebuje Waszych pomysłów, jaki utwór można by było wykonać? Od jakiegoś czasu mam chęć odkurzyć blaszaną orkiestrę i z chęcią się tym zajmę, jak już uporam się z poprawkami na uczelni. 
Niestety kampania wrześniowa też zahaczyła o moją personę :P

niedziela, 30 sierpnia 2015

K-9 Mail - prosty klient pocztowy dla Androida


Zarówno korzystając z peceta, jak i smartphone'a dążę do porzucania mainstreamowych programów na rzecz niekomercyjnych o wolnościowych licencjach. Od lat korzystam z Firefox'a, również na Androidzie, mimo że w wersji mobilnej jest wyraźne słabszy od konkurencji. Przyzwyczajenie bierze górę. Zamiast WinRar'a używam 7zip'a - tak samo spełnia swoją rolę a nie mam wyrzutów sumienia że jestem jednym z wielu milionów osób, które nie kupiły jego licencji. Poszukiwałem również open-sourcowego klienta pocztowego dla Androida. Znalazłem. Proszę państwa, oto K-9 Mail.


Pieseł pocztowy - tak można nazwać ten program po pierwszym rzucie oka na logo. Trend w zwierzęcym nazewnictwie i logach softu obserwujemy już od dawna, zwłaszcza na Androidzie. Mamy delfinową, wiewiórkową, gepardową, lisią przeglądarkę, szkoda że K-dziewiątka nie została nazwana "Doge Mail". Jednak nic nie stoi na przeszkodzie by to (i wiele wiele więcej) sobie przerobić, projekt jest open-source'owy, wypuszczony pod licencją Apache. Jednak przejdźmy do rzeczy.


K-9 wygląda dość prosto, nie ma żadnych material design i innych bajerów od Googla i bardzo dobrze. Jeśli będę chciał doświadczyć animacji i cukierkowych efektów, to odpalę sobie jakąś grę. Tymczasem narzędzie niech pozostanie narzędziem. 
Wspiera wiele skrzynek, opcje każdej możemy ustawić dowolnie. Bez problemów podpiąłem Gmail'a oraz Outlook'a - adresy IMAP/POP3 pobierane są z automatu. Polskich skrzynek nie testowałem, ale jak ktoś ma potrzebę to wszystkie dane do konfiguracji znajdzie.


Ostatnio modne zarządzane mailami przeciągnieciami w prawo/lewo jest ograniczone. Suwaniem tutaj możemy tylko zaznaczyć/odznaczyć wybrane wiadomości. Jak dla mnie wystarczy. Obecny jest również widok konwersacji, kolejne maile od tej samej osoby w ramach jednego tematu są uporządkowywane w jeden ciąg. Nie wiem dlaczego, ale informacja tekstowa za ile będzie następna synchronizacja mi się również podoba. Pewnie dlatego że nie ma tego ficzera w żadnym z najpopularniejszych klientów pocztowych.

Link do Google Play:
Dla chętnych link do GitHuba projektu:
https://github.com/k9mail/k-9

Lubię odkrywać nowe rzeczy, niemainstreamowy soft również. Jeszcze większą radochę mam jak widzę, że taki mniej znany program wcale nie jest gorszy od tych wypuszczanych przez gigantów. Polecam odkrywać, polecam badać nieznane, polecam K-9 Mail :)

niedziela, 23 sierpnia 2015

Linuksie, może się jednak pogodzimy?


Chyba każdy, kto choć trochę obcuje z technologiami wie czym jest Linux. Jest to baza pod pierdylion systemów na PC, telefony komórkowe i tysiąc innych urządzeń. Są znacznie bezpieczniejsze, nie potrzebują antywirusów oraz przede wszystkim nie mają żadnego "Wielkiego Brata" nad sobą. Wiele się mówi się teraz złego w kontekście Windows'a 10, który ma mnóstwo za uszami, że nie szanuje prywatności, że mnóstwo rzeczy robi na boku, że każde kliknięcie myszy wysyłane jest na serwery MS. To nie jest fajne, w żadnym stopniu nie usprawiedliwiam śledzenia MS tym, że "nie mam nic do ukrycia", że nie jestem potencjalnym terrorystą który chce "się rozerwać" w środku miasta. Narastająca inwigilacja nie podoba mi się na tyle, że aby zacząć jej powoli przeciwdziałać, przesiadłbym się na jakąkolwiek dystrybucje Linuxa, która byłaby w stanie robić to samo z podobną wydajnością.

Szanuje Linuksa za jego wolnościowe podejście, dostępność, oraz to że wszelakie bugi społeczność łata na bieżąco. Jest zdecydowanie bezpieczniejszy od Windows'a, ogólnie bez konta root'a nie da się zrobić mu krzywdy - sam o tym się przekonałem czyniąc multum "eksperymentów" (na vpsie i stacjonarce zresztą też). Ma niesamowite możliwości dopasowywania interfejsu do własnych potrzeb przez wszelakiej maści rysowacze pulpitów. Chcesz cukierkowo? Proszę bardzo, masz pierdylion animacji. Masz mało ramu i potrzebujesz czegoś lekkiego? Proszę bardzo, masz coś lekkiego.


Problem zaczyna się, kiedy całą tą machinerie próbujesz zaimplementować. Poświęciłem kilkadziesiąt godzin na próby dostowania to Ubuntu, to Debiana, to Minta do moich potrzeb. Zawsze, ale to zawsze czegoś brakowało, coś nie chodziło. To Eclipse nie chciał współgrać z avrdude, to java pracowała jakby chciała a nie mogła, czy to jakiś program nie ruszał pod wine. Przeważnie obwiniałem siebie za brak cierpliwości/umiejętności, bo po parogodzinnym googlowaniu rozwiązania danego problemu po prostu miałem dość. Chyba nie jestem power userem.


Chyba każdy posiadacz Radeona próbujący zdziałać coś pod Linuksem poczuł, że wydajność grafiki spadła. Internety skarżą się, że sterowniki są słabe, mają ograniczoną funkcjonalność. W moim przypadku nawet odtwarzanie Youtuba w FullHD pod HTML5 działa widocznie gorzej, bywają częste przycinki. 


Teraz najważniejsza kwestia, za którą Linuksowi dostaje się po mordzie na prawo i lewo od Windowsowców - gry. Wybór natywnych jest mega słaby, sytuacje stara się ratować Valve ze Steamem i poniekąd robi to dobrze. Jest Wiedźmin, jest CS 1.6, jest CS:GO i podobne - w zasadzie biedy nie ma. Bieda zaczyna się, kiedy chcemy je odpalić na wspomnianym Radeonie. Działają zdecydowanie słabiej, CS 1.6 na Linuksie chodził u mnie mniej więcej tak, jak CS:GO na Windowsie. Odpalanie gier pod Wine kończy się albo fiaskiem, albo jeszcze większym spadkiem fps'ów.

Linux ≠ łatwe
Na moim pececie wisi obecnie Ubuntu wraz z Windowsem 10. Pomimo wielu nieudanych prób, w wolnych chwilach wciąż odpalam Linuxa i dążę (i dążyć będę) do takiego stanu, w którym bez bólu będę mógł usunąć system Microsoftu. Jednak żeby nie było, że obsmarowuje MS dla zasady. Na tapetę biorę powoli śledzenie wszędobylskiego Google'a. W Androidzie też niezłe kwiatki się odwala z telemetrią.


Zapewne nie ma recepty na zapewnienie sobie 100% prywatności (odcięcie kabla od internetu?). Jednak uważam, że warto ograniczyć dostarczanie na tacy nieraz wrażliwych informacji o nas wszelakim gigantom.

W imię wolności.

niedziela, 9 sierpnia 2015

Śpieszmy się kochać dobre free to play'e - tak szybko odchodzą.


Gdybym napisał, że nie jestem graczem i taka forma marnowania czasu jest do bani, okłamałbym Was srogo. Spośród MMO spróbowałem bardzo dużo pozycji, płatnych, "darmowych", ale za klimatem jednej umarłej będę tęsknił. Mowa tu o Need For Speed: World od Electronic Arts, darmowa społecznościowa edycja kultowego NFS'a. Była bardzo ciepła przyjęta przez polskich graczy, na polskim odłamie facebookowego fanpage'a działo się. No właśnie, była...

Można zarzucić Worldowi pojawiające się do obrzydzenia mirkopłatności, ogromną ilość cheater'ów, czy nieraz bugi w grze. Free to play, musi na siebie zarobić i to jest jak najbardziej zrozumiałe. W każdej darmowej grze MMO pojawiają się podłe jednostki które aby uprzykrzyć nam zabawę albo cheatują albo rzucają chyże hasła nawiązujące do sposobu prowadzenia się naszych matek. Tak było, jest i będzie. Chcesz mieć spokój? Idź na pay2play. Swego czasu przesiedziałem dość sporo godzin na "globalu" w World of Warcraft i mogę potwierdzić: trzeba tam komuś solidne zajść za skórę żeby zostać zbluzganym.


Jednakże NFS: World miał coś czego pozostałe free2play'e nie miały - jedyny w swoim rodzaju klimat. Była w tym jakaś magia że po szkole chciało się wsiąść za stery swojego wirtualnego auta, zrobić codzienne zbieranie diamentów, przejechać ze dwa wyścigi. Nie zawsze się liczyła fura, nomen omen płatne nitro, czy jakieś inne hero power. Czasem to był fart, czasem skill co sprawiało że gra była często losowa. Fajne były ucieczki od policji i choć AI miśków nie powalało, miażdżenie ich z mocy specjalnej taranu (czy jakoś tak, nazwy już nie pamiętam) sprawiało niesamowitą frajdę.


W połowie lipca tego roku EA ostatecznie ubiło Worlda, tłumacząc to słabą frekwencją na serwerach. Frekwencja była, hajs się pewnie nie zgadzał. W każdym razie pisząc ten artykuł natrafiłem na kolejny dowód, że internet jako społeczność jest genialna. Powstał silnik serwera pozwalający na grę offline. Znajduje się obecnie w becie, przetestowałem - działa. Co prawda to już/jeszcze nie to samo co było wcześniej, ale zawsze coś.
Linki dla chętnych (forum elitepvpers):
http://goo.gl/KTQX6N Pliki gry + wszystko co trzeba pobrać
http://goo.gl/5nSthO Główny temat silnika serwera gry
Powstanie prywatnych serwerów to tylko kwestia czasu, zobaczymy jak to się potoczy - wiadomo na pewno że wyłączenie gry przez "elektroników" tak naprawdę jej życia nie pozbawiło.


Dzięki za uwagę, zapraszam za tydzień :)

niedziela, 2 sierpnia 2015

Przyspieszanie Androida bez kombinowania (na bazie LG L90)



Jak wcześniej wspominałem, podirytowany bloatwarem zrootowałem swojego LG L90 aby uporządkować pracę całego urządzenia. Spędziłem nieco czasu w poszukiwaniu najprostszych rozwiązań przyspieszających działanie Androida, bez zbędnych kombinacji, bez grzebiania się w plikach systemowych, kernelach i podobnych. Oto wyniki owych poszukiwań, maksymalnie uproszczony zbiór pomysłów jak sprawić aby system chodził szybciej. Na ich bazie przyspieszyłem swoje LG L90, LG L50 mojego padre które zaczęło płynnie chodzić (512mb ramu boli), oraz tablet którego zajętość ramu "na luzie" spadła z 80% do 55%. Opiszę go na bazie LG L90.

Odblokowywanie "opcji dla programistów"
Aby zrootować telefon potrzeba je uruchomić. Wchodzimy w Ustawienia -> Ogólne -> Informacje o telefonie -> Informacje o oprogramowaniu. Klikamy kilka razy na Numer kompilacji aż otrzymamy komunikat, "Jesteś teraz deweloperem" czy jakoś tak.
 
Wyłączanie animacji
Wchodzimy w Ustawienia -> Ogólne -> Opcje dla programistów. Przesuwamy listę do podrozdziału Rysunek. Wyłączamy trzy opcje Skala animacji okna, Skala animacji przejścia, Skala trwania animatora. Przyspieszy to przejścia w interfejsie, czas wygaszania ekranu (gaśnie błyskawicznie).


Rootowanie
Tu szkoła jest zależna od odblokowywanego urządzenia. Nie będę tu opisywał procesu, tylko podlinkuje wybrane przetestowane przeze mnie metody z którymi udało mi się zrootować moje sprzęty. Przeważnie cały patent ogranicza się do podłączenia telefonu do komputera, kliknięcia "rootuj" i przeczekania 2-3 minut.
- LG L90 - LG One Click Root http://goo.gl/0zJc2a
- LG L50 - Purple Drake http://goo.gl/KAsq9Y
- tablet Lark Evolution X4 101 Kingoo Root - http://goo.gl/0yWg3N
Jeśli wybrana opcja nie wgrała aplikacji SuperSu, pobieramy ją ze sklepu. Uruchamiamy ją, powinna się "wgryźć" w system. To ona będzie zarządzać czy dana aplikacja może otrzymać uprawnienia administratora, czy nie. Całe te czary mary robisz to na własną odpowiedzialność, ale jeśli będziesz używać mózgu, nic złego nie powinno się stać.

 "Usuwanie" syfu
Pobieramy ze sklepu Root app Deleter. Odpalamy, wybieramy Aplikacje Systemowe -> Tryb Junior (wystarczy). Szukamy syfu którego nie chcemy widzieć klikamy na niego i Wyłącz. Dlaczego nie usunąć? Siedzi to w partycji systemowej do którego i tak normalnie nic nie wsadzimy, toteż nie zarobimy na takim usunięciu miejsca, bez grzebania w partycjach (a tego chciałem uniknąć). Jak dla mnie taki gwizd jest wystarczający. Od biedy można wyłączyć niemalże wszystko, ale bez przegięcia. Czerwonych aplikacji z listy lepiej nie tykać.

Dodatkowe bohomazy pochodzą z QuickMemo, całkiem spoko patent.
Greenify + Wavelock Detector
Dość spora część aplikacji ma to do siebie, że lubi sobie hasać w tle, nawet jeśli nie jest uruchomiona, nawet telefon jest zablokowany. Wgrywamy Wavelock Detector (wymaga już niestety KitKata), odpalamy i widzimy ile razy i przez kogo procek został wybudzony kiedy chciał sobie pokimać. U mnie głównym winowajcą był Gugiel który ze swoimi kamratami na WLD osiągał wynik ołwer najn tałsend.
Appki chodzą w tle przeważnie po to, aby dać nam jakieś powiadomienie, chociaż nie zawsze - nawet testowany przeze mnie program uruchamiający diodę LED jako latarkę też pracuje w tle! (lol). Upewniamy się że Greenify hasa sobie w trybie root, tak jak pokazałem na screenie i po prostu dodajemy appki do listy hibernowanych. Dodatkowo warto stworzyć skrót na pulpicie do dodatkowego ręcznego ubijania. Tyle, bardziej zaawansowanych opcji nie rozkminiałem bo wynik na WLD okazał się całkiem spoko i zauważyłem wyraźny spadek zużycia baterii - na tą chwilę 2500mAh w LG L90 starcza mi na dwa dni.  



Wyłączanie zbędnych usług
Cały motyw ogranicza się do znalezienia usług które chodzą w tle i wyłączeniu tych, które nie mają wpływu na normalną pracę urządzenia. Instalujemy ze sklepu DisableService. Wchodzimy w Ustawienia -> Ogólne -> Aplikacje -> Uruchomione, sprawdzamy jakie usługi pracują w tle. Wchodzimy w zainstalowaną wcześniej aplikację, wybieramy ją i po prostu gasimy wybraną usługę. Tutaj z braku laku można poeksperymentować, ewentualnie po prostu może przestać coś chodzić - w takim przypadku trzeba usługę przywrócić do życia.

Wybrane usługi które hasały u mnie w tle i których wyłączenie u mnie nie upośledziło telefonu:   

Gapps: Oznaczone na niebiesko miały wpływ (nie kminiłem do końca jaki) na pracę GPS'a, wyłącz je tylko, jeśłi nie używasz nawigacji. Oznaczone * pracowały u mnie w tle non stop.
ClearcutLoggerService
ConfigFetchService
ConfigService
DeviceConnectionServiceBroker
FusedLocationService
FusedProviderService
GeocodeService
GeofenceProviderService
* GoogleLoactionManagerService
* GoogleLocationService
LocationSharingSettingInjectorService
NetworkLocationService
PackageBroadcastService'
ProximitySettingInjectorService
* GcmService (opcjonalnie, nie działa wtedy instalowanie appek z Sklep Play)
* GmsCoreStatsService
 Pozostałe (z zakładki system), mniej istotne ale powyłączać nie zaskodzi:
LgSmartCardService
com.qualcomm.atfwd
com.quealcomm.qcrilmsgtunnel
Font Server
LGInstallService
LGSmartCardService
Market Feedback Agent
Picasa Uploader
Pogoda (jeśli nie używasz systemowej)
Pamięć kalendarza
RemoteCall Service
Widżet zegarka
Spośród usług Chrome:
  AndroidMessageReceiverService
  AndroidMessageSenderService
  InvalidationClientService
  MediaNotificationService
  NotificationService
Galeria
Można tak szlifować w nieskończoność, ale warto przede wszystkim zwrócić uwagę na te, które chodzą "na biegu jałowym" - bez włączonych aplikacji. Spośród aplikacji dogranych z Play Store też warto pogrzebać i wyłuskać to co sobie pomyka w tle. Szkoła jest prosta - wyłączamy po parę usług i patrzymy czy wciąż wszystko chodzi. Jeśli nie potrzebujemy powiadomień z jakiejś appki, mrozimy ją Greenify.

Producenci wpieprzając tony bloatware'u robią dziwkę z optymalizacji systemu, wiadomo, im szybciej się zlaguje, tym szybciej ciemnogród kupi kolejny telefon, hajs się zgadza. Na szczęście internet już wytworzył tyle narzędzi do jego ogarnięcia, że operacja usuwania syfu i dopasowywania Androida do własnych potrzeb jest koniecznością, zwłaszcza jeśli ma się typowego budżetowca. Dobrze naszlifowany Andrut śmiga jak wiewiórka na kofeinie.


Dziękuję za uwagę i zapraszam za tydzień :)

niedziela, 26 lipca 2015

Poszukiwanie smartphone'a do 500zł i pierwsze wrażenia po przesiadce na Androida.



Tak jak pisałem ostatnio, porzuciłem swoją Lumie 635 na rzecz urządzenia, o którym będę mógł powiedzieć, że jest smartphonem. Budżet jakim dysponowałem wynosił 500zł, jak się okazuje, wybór w tym segmencie cenowym jest tak rozległy, że aukcje na Allegro można przewalać w nieskończoność. Znalazłem trzy wyjścia: zakup #wszystkomającego chińczyka, zakup iPhone 4S z drugiej ręki, zakup markowego średniaka.  Oto historia moich tygodniowych poszukiwań "lepszego modelu".



Pierwszą opcje po przejrzeniu opinii darowałem sobie, raz ze względu na nieraz dupną jakość wykonania, dwa ze względu na ograniczony support. Większość wersji Androidów w chinolach wgranych przy narodzinach sprzętu, pozostaną w nich aż do śmierci. Przekonałem się o tym przy moim tablecie który chodzi na Jelly Bean 4.2.2, znalazłem już kilka appek które by mi się na nim przydały, a potrzebują już Kitkata, więc jeno nie zabanglają.






Drugą opcją był już deko stary, ale ponoć wciąż jary iPhone 4S, to ze względu na to że kusi mnie już od dłuższego czasu na zakup czegokolwiek spod znaku nadgryzionego jabłka. Spełniłby moje wymagania ze względu na multimedia, ma niezły aparat, tylko sam telefon jest deko malutki, ale przeżyłbym to. W mojej półce cenowej dałoby się kupić używanego 4S nawet w wersji 16GB, jednak zakup używanego smartphone przez internet wciąż uważam za zakup w ciemno. Nie brałem pod uwagę także refabrykantów z Aliexpress, kuszą ceną, ale brać odnawiany telefon to tak jak kupić auto z giełdy składane z kilku aut. Nie wiadomo co by z tego wyszło, czy kierownica w trakcie jazdy by mi się nie urwała, czy hamulce nagle by nie przestały działać. Tak więc jeszcze nie pora na iPhona, ale mam wrażenie że jeszcze kiedyś przyjdzie mi się Jabłko ugryźć.



Trzecią opcją był zakup któregoś z markowych średniaków. Wybór padł na LG. Dlaczego? Zadecydowała poczta pantoflowa, mój padre kupił ostatnio swój pierwszy smartphone którym był LG L50, działa bez zgrzytów więc czemu by nie Koreańczyk? Przewaliłem wszystkie modele, pod mój budżet podpasował LG L90. Jest to, poza 1GB ramu, praktycznie ta sama konfiguracja co w mojej byłej Lumii 635. L90 ma Androida KitKat na pokładzie, dla chętnych jest także aktualizacja do Lolipopa - zawsze na propsie.

Cóż mogę napisać po przesiadce z Windows Phone? Pełna swoboda! Tu można wszystko przestawić! Możliwości customizacji, nawet bez "korzenia" w porównaniu do WP jest multum. Wolność ta w zasadzie jest bronią obusieczną, bo wgrywając pierdyliard aplikacji bez świadomości ich sposobu działania możemy zamulić Androida tak samo, jak zwykłego peceta. Jednakże dopóki używamy tej wolności z umiarem, wyjdzie ona dla nas na dobre. Android w zasadzie jest Linuxem i tak samo jak na pingwinie, trzeba sobie podłubać, aby sprzęt tańczył tak jak my zagramy. Grać niestety trzeba umieć, bo zbyt mocne fałszowanie może się skończyć ucegleniem telefonu.


Jedyne do czego się można przyczepić w moim nowym telefonie to wepchniętych na siłę i dość sztucznie zablokowanych przed usunięciem, nawet z samego menu, appek z ekosystemu Gugla. Wiadomo, to on tutaj rządzi, on tu gra pierwsze skrzypce. Byłoby to do przeżycia gdyby nie fakt, że spora część z nich niepotrzebnie hasa sobie w tle wysysając baterie. Stare chińskie porzekadło mówi:
Bez roota nie robota.  
Dwa tygodnie po zakupie stwierdziłem: hej coś w tym jest i telefon "odbezpieczyłem". Możliwości dalszych modyfikacji (w tym uceglenia sprzętu) jest pierdylion, znajdę najważniejsze i opiszę je wkrótce na łamach avrland.ovh :)

Na recenzję LG L90 przyjdzie pora, nawet może w formie wideo jak uda mi się przywrócić do życia starą cyfrówkę - stay tuned. W końcu setki (no dobra przesadzam, było ich z 10) internautów wyraziło jednogłośną w ankiecie o przyszłości avrland.ovh  - tak, chcecie wideo. Proszę bardzo, na dobry początek - pokaz możliwości praskich ulicznych grajków i zaraz test kamery omawianego telefonu. Jak na smartphone za 500zł nagranie jest całkiem okej.


Dziękuje za uwagę i zapraszam za tydzień :)