LG G2 – Lineage OS 14.1

Na konci roku 2016 „skončila“ nejznámější komunitní ROM  Cyanogen Mod (CM) založená na operačním systému Android. Během ledna 2017 se povedlo komunitě plně rozjet vývoj Lineage OS (LOS), který je přímí pokračovatel CM. Za popularitu CM můžou především sami výrobci telefonů tím, že se na pravidelné aktualizace z velké části úplně vykašlali. Dnes už je naštěstí situace lepší.

Já sám jsem CM poprvé a dlouhou dobu používal na svém první chytrém telefonu SGS (Samsung Galaxy S). Nyní mám telefon LG G2, který již žádné nové aktualizace od výrobce nedostává. Už asi rok jsem  LG G2 používal s operačním systémem CM 13 (Android 6). A nyní koncem ledna se LG G2 konkrétně varianta D802 dočkala oficiálního LOS 14.1 (stahovat můžete zde), který je založený na Androidu 7.1.1. Následující video ukazuje jak LOS 14.1 běží na mém LG G2.

[FPGA] EP4CE6 Starter Board

I bought EP4CE6 Starter Board from Ebay for $45 few weeks ago. The board arrived by mail last week. Today I decided to write this quick review of the board.

dsc02431_web

Pack with EP4CE6 Starter Board contains: board with FPGA, mini USB cable, infrared remote control and DS18B20 temp sensor.

dsc02436_web

EP4CE6 Starter Board is made decently, unlike some similar Chinese products. The board board can be powered by an external adapter or USB cable (mini USB cable for programmer) from the PC. The board contains the following components/periphery:

- FPGA Altera Cyclone IV EP4CE6E22C8N with 6272 LE (LUT+FF)
- USB blaster programmer (Altera EMP3064A + FTDI FT245RL)
- Serial configuration device (EPCS4)
- 8x LEDs - high to light
- 3x user button - high in press
- 1x buton for reconfig FPGA from EPCS4
- 4-digit seven segment display 
- Connectors: VGA, PS/2 and RS232 with MAX3232
- SDRAM 256Mb (Winbond W9825G6KH-6)
- I2C EEPROM 2Kb (Atmel AT24C02)
- SPI ADC 12-bit, 500kSPS, 8 channels (TI ADC128S052)
- Infrared receiver
- 1x 1-Wire interface
- 2x PMOD (16x GPIO, 4xVcc, 4x GND)
- PMOD pins extended to two headers

FPGA Altera Cyclone IV EP4CE6 is still supported in current software (Quartus Prime 16.0). On Altera web you can download free Quartus Prime Lite Edition that is fully sufficient for normal use.

dsc02444_web

FPGA Altera Cyclone IV EP4CE6 has 6272 LE (LUT+FF), 270Kb embedded memory, 15 embedded 18×18 multipliers and 2 PLLs. It is small FPGA but even with a small FPGA you can have lots of fun and you can learn a lot. For example, I revived my old school project Pipe Mania – Game for FPGA.

dsc02441_web

You can download documentation of EP4CE6 Starter Board here. The documentation includes schematic, example code in Verilog, FPGA datasheet and some guides.

dsc02446_web

This board works well so far, no problem. If you have any questions, please write a comment.

[FPGA] EP2C5 Mini Board

Kdo si již někdy hrál s FPGA (programovatelné hradlové pole) tak ví, že ceny vývojových desek a kitů nejsou zrovna lidové. Začátečníci nebo nenároční, kteří nechtějí utrácet tisíce, mohou koupit výrazně levnější FPGA desky z Číny.

EP2C5 Mini Board

Dnes vám stručně představím FPGA desku EP2C5 Mini Board, která je asi tou nejlevnější. S potřebným programátorem ji lze z Číny (například Ebay) koupit už od 18.99$ (cca 475 Kč). Bohužel velmi nízká cena si vybrala svou daň.

DSC02418_web

EP2C5 Mini Board má zastaralé (!!!) FPGA EP2C5T144C8N od firmy Altera, tedy to nejmenší z řady Cyclone II. Dále lze na této desce najít 3x LED, 1x uživatelské tlačítko a 87 GPIO pinů. Použité FPGA obsahuje 4608 logických elementů (LE), 26 blokových pamětí M4K o celkové kapacitě 119808 bitů, 13 násobiček a 2 PLL bloky. V každém LE je jedna LUT se čtyřmi vstupy a jeden klopný obvod (FF).

Pro syntézu a implementaci firmwaru určeného pro toto FPGA lze použít vývojový nástroj Altera Quartus II, ten je dostupný i ve verzi zdarma. Bohužel pro toto zastaralé FPGA z řady Cyclone II je nutné použít starou verzi 13.0sp1, novější verze již zmíněné FPGA nepodporují!

Zde lze stáhnout schéma zapojení EP2C5 Mini Board. Dále uvádím popis zapojení vybraných důležitých pinů. Čísla GPIO pinů jsou vyznačena přímo na desce potiskem.

Pin 3   - LED 1 (D2 na desce) - svítí v logické 0
Pin 7   - LED 2 (D4 na desce) - svítí v logické 0
Pin 9   - LED 3 (D5 na desce) - svítí v logické 0
Pin 17  - vstup hodinového signálu o frekvenci 50MHz
Pin 144 - tlačítko připojené na zem, vyžaduje nastavit interní pull-up rezistor

Závěrečné doporučení

Desku EP2C5 Mini Board jsem si před více než rokem sám koupil. Pro základní experimenty plně dostačuje. Dnes ji vám už nedoporučím! Nyní lze sehnat o pár korun dražší ale lepší deska s novějším a se stále podporovaným FPGA Cyclone IV od Altery:

- EP4CE6 Mini Board (bez programátoru) - 26$ [Ebay]
- EP4CE6 Mini Board (s programátorem)  - 30$ [Ebay]

Tato základní mnou doporučená deska existuje i v dražší variantě s FPGA od firmy Xilinx (odkaz níže). Toto FPGA Spartan-6 od Xilinxu je sice o něco lepší než FPGA Cyclone IV od Altery, ale potřebný programátor pro FPGA od firmy Xilinx je několikrát dražší (i čínský klon) a pokud ho nemáte, prodraží se vám nákup minimálně o dalších 25$!

- XC6SLX9 Core Board (bez programátoru) - 31$ [Ebay]

Pokud chcete vybavenější desku a nevadí vám utratit ještě o pár korun víc, lze koupit velmi zajímavou desku s integrovaným programátorem, s rozhraními VGA, PS/2, RS232, s externí SDRAM pamětí a s dalšími periferiemi:

- EP4CE6 FPGA Starter Board (integrovaný programátor) - 45$ [Ebay]

Desku EP4CE6 FPGA Starter Board jsem si nedávno objednal. Jakmile dorazí a pořádně ji otestuji, tak o ní napíšu článek.

Lenovo ThinkPadu Edge E330: Upgrade CPU a RAM

Můj notebook Lenovo ThinkPad Edge E330 už vlastním téměř 4 roky a stále bez jediného problému. Dnes budu psát o několika vylepšeních tohoto notebooku. 😉

DSC01742_web

Původní konfigurace mého notebooku byla následující: Intel Pentium B970, 4GB RAM DDR3, 500GB HDD. Už před téměř třemi lety jsme do notebooku přidal 64GB SSD disk, ale o tom jsem již psal minule. V lednu tohoto roku jsem se rozhodl k rozšíření paměti RAM ze 4GB na 8GB a koupil jsem SODIMM modul Kingston 4GB 1600MHz DDR3L do volného druhé slotu.

Poslední změnou byl upgrade CPU. Můj notebook Lenovo ThinkPad Edge E330 má totiž procesor ve standardní patici, a proto lze snadno vyměnit. Inspiroval jsem se tímto článkem a z oficiálního seznamu podporovaných procesorů jsem vybral Intel Core i5 3210M, který není o moc horší než současná generace těchto procesorů. Výhodou je také o něco výkonnější grafika Intel HD Graphics 4000. Zlepšit by se mohla i výdrž notebooku na baterii. Oproti původnímu procesoru Intel Pentium B970 celkem pokrok k lepšímu, že?!

core_i5

Procesor Intel Core i5 3210M jsem zakoupil na Ebay jako použitý za cca 950 Kč včetně poštovného z Anglie. Po několika dnech dnes úspěšně dorazil na mou adresu. Během několika minut jsem procesor vyměnil. Notebook bez potíží naběhl a já si teď užívám nového procesoru. 🙂

Fedora: Konfigurace touchpadu u ThinkPadu E330

Dneska tu mám pro vás další článek týkající se linuxové distribuce Fedora. Tentokrát popíšu, jak doladit nastavení touchpadu u notebooku Lenovo ThinkPad Edge E330 tak, aby fungoval přesně dle mých představ.

Fedora 25 ve výchozím stavu používá ovladač libinput, který neumožňuje tak široké možnosti konfigurace. Proto je potřeba doinstalovat původní ovladač synaptics. Tento postup jsem nezkoušel pod Waylandem!

sudo dnf install xorg-x11-drv-synaptics

U operačního systému Fedora funguje touchpad od začátku. Problém je v tom, že ve výchozím stavu je velice citlivý a při drobných pohybech nebo klikání kurzor rád poskakuje. Tyto všechny nedostatky lze odstranit vytvořením konfiguračního souboru „/etc/X11/xorg.conf.d/50-touchpad.conf“ v následující podobě:

Section "InputClass"
    Identifier "touchpad"
    MatchProduct "SynPS/2 Synaptics TouchPad"
    Driver "synaptics"
    # Fix touchpad resolution
    Option "VertResolution" "100"
    Option "HorizResolution" "65"
    # My tweaks
    Option "VertScrollDelta" "220"
    Option "HorizScrollDelta" "220"
    Option "HorizHysteresis" "50"
    Option "VertHysteresis" "50"
    Option "FingerHigh" "40"
    Option "FingerLow" "35"
    Option "TapButton1" "1"
EndSection

Při tvorbě tohoto souboru jsem se inspiroval především na wiki stránce Arch Linuxu o Lenovu ThinkPad Edge E330. Většinu parametrů jsem nakonec ještě pozměnil a metodou pokus omyl doladil dle mých představ.

Editace článku:

11.03.2017 – článek upraven pro Fedoru 25, drobná změna konfiguračního souboru