Tag: Raspberry Pi

03.2018

Този месец се учудвам колко малко съм писал.

Personal update – в офиса ми дадоха освен QA задачи по новия проект и да вдигна един VPS като staging server с nginx, mysql, проекта е писан на Laravel. Деплоя мина добре, проектите са up and running и като има задачки на сървърно ниво ги поемам аз, което ме кара да се чувствам много добре. И това основно заради marvin, който неведнъж съм искал да запаля. Our relationship is complicated, както казват :)

Иначе ето няколко неща, които се случиха последните седмици без явна подредба:

 

  • След Meltdown и Spectre дойде ред на amdflaws. Това са колекция от сериозни уязвимости според сайта. След един бърз и некомпетентен поглед от моя страна май не са като Meltdown/Spectre, а Линус Торвалдс тегли една майна на авторите. Няма да ви развалям удовоствието от четенето. Линус си е епичен както обикновено :)
  • Branch prediction attacks на много ниско ниво откриха в семейството процесори на Intel (само те са били тествани). Прочетете статията, дава малко светлина върху една интересна техника за branch predictions;
  • Semantic Versioning е проект, който описва по прост начин идеята за означението на версиите (versioning) като например какво значи версия 3.2.17. За хората с опит това е ясно, но за по-новите в бранша е ценен ресурс;
  • Камерата на Google Pixel използва AI-то, което правило снимките по-яки или поне така твърдят. В общи линии използват image segmentation, което разделя снимката на сегменти и ги сглобява с техен си алгоритъм. Така според тях качеството на снимките се подобрява значително;
  • Новината на годината в digital signed certificates сектора е, че Let’s Encrypt пуснаха поддръжка на wildcard certificates на цената на техните нормални сертификати или точно 0 лв! За целта трябва да добавите TXT domain record и да използвате техния API endpoint. Имайте предвид, че трябва да използвате certbot 0.22.0 или по-висока. Другото можете да направите с подобен синтаксис:
./certbot-auto --server https://acme-v02.api.letsencrypt.org/directory -d *.nedko.info --manual --preferred-challenges dns-01 certonly
  • Излязоха данните от годишната акнета на StackOverflow за 2018 година. Винаги тази анкета е служила за много добра индикация накъде сме откъм технологии, навици, заплащане и т.н.;
  • Професор Стивън Хоукинг си замина на 76 г. оставяйки в много от нас нуждата да знаем, да погледнем нагоре (или в нас) и да се борим. Почина 50 години по-късно отколкото лекарите му бяха казали, че ще живее с ALS;
  • YouTube имат намерението да борят fake news с линк към Wikipedia под видеата. Много се кефя на идеята, но ако човек гледа видеа за рептили е малко вероятно да седне и да изчете 5-6 страници статии и научни обосновки да кажем. Ще видим, дано помогне;
  • На Pi Day излезе моята любима джажда Raspberry Pi  3 Model B+ (последния да затвори вратата). Новия модел ще има 1.4 ghz quad-core Cortex A-53 процесор, 802.11.ac и Bluetooth 4.2, гигабитов нет (over usb 2.0) и подобрено оглаждане. Цената остава $35;
  • Фейсбук ми напомни, че преди 7 години им писах един благодарствен мейл, който още им виси на сайта. Бях техен клиент от около 2007 до 2016;
  • Едно леко извратено видео как елементарните неща, които можем да правим с десетки библиотеки и драйвери навремето на асемблер са се пишели на ръка. Това не е урок как да пишете на Асемблер, а по-скоро да си даваме по-често сметка колко ненужни ресурси заемаме с някой елементарен npm пакет, js библиотечка или каквото се сетите;
  • И как можем да подкараме Kali Linux на Windows 10 – native! Изисква много малко подготовка и работи добре;
  • Google изгуби продъжилия над 8 години съдебен спорт с Oracle относно и трябва да платят около 8.8 милиадра долара. Така, че внимавайте с лицензите ;)
  • Винаги съм се кефил много на ентусиастите, а на Paulo Constantino съм особен фен откакто разбрах, че е направил 8 битов процесор ей така just-for-fun. Схваща ми се ларинкса само като видя колко сложно изглежда на външен вид;
  • А ако някой има нужда да деплойне Laravel server някъде може да ползва tutorial-а на DigitalOcean, който на мен ми свърши страОтна работа;
  • Из българския интернет (блогосфера звучи тъпо) Божо говори за две наболели теми тия дни – това, че ГДБОП НЕ ни следят чатовете и повече информация за защита на личното ни пространство;
  • Програмист сте и си пускате локална среда, която в hosts файла задавате да бъде neshtosi.dev или neshtosi.foo. Отваряте го през Chrome и/или Firefox и БАМ – не можете, защото сертификата ви не е валиден? Какъв сертификат, бе? И не можете да продължите, защото имате HSTS? WTF? Споко – проблема не е във вас. От извесно време насам Chrome и Firefox force-ват gTLD-тата .dev и .foo към https с hsts. Повече информация можете да прочетете тук;
  • GitHub преживя най-голямата DDOS атака някога. Историята е интересна и препоръчвам да я прочетете;
  • И свързано донякъде с горния ред – да не забравите да си ъпдейтнете memcache-а;
  • Един модел за git branching, който е кратък и извънредно полезен;
  • Най-тъжното нещо, което съм чел тази година е едно несъмсигуренколкоточно изследване финансирано от изобщо неподкупните и политически независими 24часа. Няма да пиша нищо за него, защото брадата ми е още мокра от сълзите, които текоха като реки докато го четох първия път;
  • От серията “Научи xx за хх минути”, този път JS от Jeremy Thomas;
  • Ся, нещо важно – пускат Unity C# под reference-only license;
  • ngxtop е един много полезен проект, който ви показва в конзолата real-time метрики за натоварването на nginx. Писан е на Python и се инсталира елементарно през pip:
    pip install ngxtop

    Можете разбира се да намерите и WEB модул, който прави това, но официалния е Luameter и струва 40 евро.

 

P.S. Ако се чудите каква връзка има комикса със статията – няма. Но ми е любим откакто го открих :D

 

P.P.S. Генерирането на Akismet api keys не работи така, че който иска да ми спами блога сега е момента.

27.11.2017

Тези дни се занимавам с Raspberry Pi B (съвсем първия Raspberry Pi) заедно с Adafruit 2.8″ TFT 320×240 и  Pi Camera. Освен това правя и един интересен проект за домашен Weather Station с esp8266, но ще почакам да ми дойде bme280. Голяма гъзарийка се задава, stay tuned.

 

Новината на деня е, че излязоха видеата на OpenFest 2017, които могат да бъдат намерени тук:

 

In other news:

  • Златина ми показа Zen Pencils – страхотни комикси базирани на поезия;
  • Дискретният чар на демокрацията – страхотно видео с неподправимия Китодар Тодоров (не е политически ориентирано така, че можете спокойно да си го пуснете);
  • The Biggest and Weirdest Commits in Linux Kernel Git History (където можете да видите достатъчно на брой извращения);
  • Firefox Quantum – Firefox пак на гребена на hype-а, обещаващ значително подобрение на производителността. Разцъках го за ден и ми се стори доста добре, но още не мога да преживея силно грозния inspector. Ще видим какво ще ме накара да премина на FF, но Quantum е добра стъпка към правилния път;
  • How I hacked 40 websites under 7 minutes

Raspberry Pi 3 – по-мощен от всякога + вградени WiFi и Bluetooth

Тези, които ме познават знаят, че колекционирам разни проекти, които биха тръгнали на Raspberry Pi, Arduino, Olimex* и т.н. (и още нищо не съм реализирал от край до край…). Покрай новото Raspberry Pi се реших да напиша една кратка статия за него, за компанията и защо тази малка платка е толкова популярна.

 

Първо ще започнем с малко интро защо изобщо тези малки SoC (System on Chip) са толкова популярни и се продават с милиони бройки всяка година.

Raspberry Pi е малка развойна платка, която има всички нужни параметри, за да работи като самостоятелен компютър – процесор, памет, storage port, има си няколко USB, GPIO (General-purpose input/output за комуникация с различни периферии извън USB), HDMI аудио/видео изход, без движещи се елементи (вентилатор) и т.н. Цялото това нещо тежи едва 45 грама (за последната версия без адаптера).

Второ – защо ни е такава развойна платка?

Когато за пръв път попаднах на сайта на Raspberry Pi си помислих, че това е развойна платка, която се използва в роботиката и/или автоматизацията (основно заради тогавашните проекти най-вероятно) и е много тясно специализирана. След няколко дни пак се присетих нещо за Pi-то и се замислих, че на това чудо биха тръгнали всякакви интересни неща, ако му се подкара някаква (Linux базирана) операционна система.

Разбира се след като открих Raspbian (базиран на Debian) и NOOBS разбрах колко ценен е този малък продукт. С времето видях как хора го ползват от всякакви проекти – от метереологични станции през малки Apache/nginx services, home automation (с подходящите китове, които се продават отделно можете да настройвате климатици, да отваряте и затваряте прозорци и врати и каквото се сетите още (ето един страхотен пример за open source home automation) и стигнетете до изграждане на клъстери с 256 паралелно работещи Pi-та за каквото се сетите.

Всичко, от което имате нужда е едно Raspberry Pi, памет (последната трета версия работи с microSD карти, предците му – с SD) и адаптер с мощност от над един ампер (тоест повечето зарядни за телефони, например) и ще можете да си поиграете с тази играчка.

Трето – моите идеи. Те, разбира се, са ужасно много, но след строга селекция реших да използвам моето Raspberry Pi 2, за да се запозная малко повече с:

  • mySQL replication;
  • Load balancing (с Apache/nginx);
  • Failover schemes (пак с Apache);
  • Proxies;
  • (евентуално) High-availability.

Това са нещата, които са ми интересни. С някои от тях съм се борил, но винаги е хубаво човек да обнови малко стари знания и да добави пресни такива.

Червърто – периферия. С разширяването на проекта разработчиците и third parity страни започнаха разработки на интересни хардуерни проекти свързани с Pi. Може би първото нещо, което прави в мен най-силна асоциация е Camera Pi. Това е една микроскопична 5 мегапикселова камера с размери 25х24х9 и тежи едва три грама (без интерфейсния кабел), снима видео в 1080p (30 кадъра в секунда), 720p (60 кадъра в секунда) и 640x480p (60/90 кадъра в секунда). Повече информация за нея можете да прочетете тук. Има и инфрачервена версия – NoIR Camera.

Разбира се освен камерата има и още много хардуер, който е съвместим (или правен за) Raspberry Pi, например дисанционни, мишки и клавиатури, WiFi, 3G, Infrared и Bluetooth приемници, звукови карти, GPS, smart card readers, екрани чувствителни на допир, скенери за пръстви отпечатъци и още много други. Ето тук можете да видите пълен списък с устройствата, които са тествани и работят на Pi.

Пето – малко история. Типично за мен започвам нещата малко отзад напред.

В общи линии идеята на проекта се е зародила от възпитаниците на Кеймбридж Eben Upton, Rob Mullins, Jack Lang и Alan Mycroft през 2006 г. с идеята да създадат достъпен компютър за общи цели. Техния ценови диапазон (само за платката) е едва $35 (като имат и Raspberry Pi Zero за … $5, но за него след малко). За рожден ден на проекта създателите смятат датата 29.02, защото тогава са направили и първата продажба на Raspberry Pi 1.
Ето и през какви периоди преминава Raspberry Pi за последните 4 години:

02.2012: Raspberry Pi Model B
10.2012: Raspberry Pi Model B rev2
02.2013: Raspberry Pi Model A
05.2013: Camera module
10.2013: Infra-red Camera module
07.2014: Raspberry Pi Model B+
11.2014: Raspberry Pi Model A+
04.2014: Raspberry Pi Compute Module
02.2015: Raspberry Pi 2 Model B
08.2015: Raspberry Pi Sense HAT
11.2015: Raspberry Pi Zero
02.2016: Raspberry Pi 3 Model B

По данни на Raspberry Pi foundation за 4 години са продадени над 8 милиона устройства.

Пето – най-доброто, което Raspberry Pi може да ви предложи – Raspberry Pi 3.

С всяка версия Raspberry Pi става невъзможно добро, а цената му си остава същата.

Ето и спецификациите с които може да се похвали последния Pi:

Чипсет – Broadcoam BCM2837 (CPU, GPU, DSP, SDRAM) срещу 32 битовия му предшественик Broadcom BCM2836;

Процесор – ARM Cortex-A53 1.2 GHz 64-bit quad-core срещу QUAD Core @900 MHz;

Рам памет – 1 GB @ 400 MHz (споделена с тази на видео картата);

Видео – Broadcom VideoCore IV @ 250 MHz, поддържа OpenGL ES 2.0 (производителност от 24 гигафлопа), хардуерен MPEG-2 и VC-1 кодеци,1080p 30 кадъра в секунда H.264/MPEG-4 AVC декодер и енкодер

USB – 4 готови за използване USB 2 порта (всъщност са 5, но единия е резервиран за ethernet модула);

Видео вход – 15 пинов MIPI  интерфейс (CSI) за връзка с Raspberry Pi Camera и Raspberry Pi NoIR);

Видео изход – HDMI (ревизии 1.3 & 1.4) в 14 резолюции от 640×350 до 1920×1200 плюс PAL и NTSC стандарти, composite video (PAL и NTSC) през стандартен 3.5 мм жак със споделен аудио изход;

Звук – всички версии на Raspberry Pi използват I²S;

Storage – през microSDHC карта, идва с допълнителни 4 GB eMMC;

Мрежа – Еthernet – 10/100

Мрежа – Wireless – 802.11n

Bluetooth – 4.1 поддържата и Low Energy

 

Цена от производител (без доставка и адаптер) – $35 (не забравяйте, че в тази версия WiFi и Bluetooth са вградени и няма нужда да ги купувате отделно);

Цена за адаптер – около $8

MicroSD карта – 16GB microSDHC за около $8

Обща цена без доставка – $51

Търсите нещо още по-евтино? Няма проблем. Клон на проекта Pi е Zero. Това е още по-малко, по-просто и много по-евтино устройство, което ще задоволи нуждите на всеки, който търси автоматизация на възможно най-ниска цена.

Спецификации:

Процесор – Broadcom BCM2835 ARM 11 @ 1 GHz (или с около 40% по-бърз от първото Pi);

Рам памет – 512MB LPDDR2;

Слот за microSD карта;

mini-HDMI сокет с до 1080p @ 60 fps

40 pin GPIO (съвместим с всички останали Pi от първия до последния);

Размер – 65мм x 30мм x 5мм

Цена – wait for it… $5.

Извод – няма нужда да сте запален geek или специалист, за да подкарате Raspberry Pi и то да върши точно това, от което имате нужда. Платката е производителна, не грее (много), не е скъпа и има огромно предназначение. Силно препоръчвам Raspberry Pi / Raspberry Zero на хора, които са от специалисти до начинаещи в бранша и дори деца (представете си вашия 10-12 годишен син/дъщеря да котролират кога диода закачен на GPIO-то ще свети и кога не).

 

Ако има интерес ще напиша и за конкурентите на Raspberry Pi, които са също толкова впечатляващи, а някои от тях – дори и по-евтини.

By PacktPub

By PacktPub

Raspberry Pi Cookbook for Python Programmers

Открийте какво можете да направите с един Python качен върху Raspberry PI с офертата на Packt Publishing, която пуснаха безплатно само за днес (редовната ѝ цена е малко над $25).

Книгата се състои от 10 глави , които включват:

  1. Как да започнем с Raspberry PI:
    1. Инсталиране на Raspberry PI NOOBS;
    2. Настройка на Ethernet и wireless мрежа;
    3. Използване на прокси, връзка към VNC/SSH (през X11 forwarding);
    4. Конфигуриране на споделена директория използвайки Samba;
    5. Update към latest на Raspberry PI и Noobs/Debian;
  2. The real deal – Инсталация и първи стъпки с Python, стрингове, файлове и менюта:
    1. Въведение;
    2. Работа с текст и стрингове;
    3. Работа с файлове и error handling;
    4. Създаване на boot-up меню;
    5. Създаване на самодефинируемо (баси думата. На английски е self-defining) меню.
  3. Използване на Python за автоматизация и по-висока продуктивност;
  4. Създаване на игри и графика използвайки IDLE3 за debugging, Tkinter Canvas за чертаене с мишката и създаване на 1-2 игрички (това е интересно да се види на живо);
  5. Създаване на 3D графика – създаване и импорт на 3D модели, създаване на 3D и билдване на карти и лабиринти;
  6. Използване на Python за комуникация с хардуер. Тук ще се покажат няколко ултра интересни неща в които е силната страна на Pi-то – контролиране на LED светлина, обработване на данни през бутон (тоест какво да прави при натиснат/изключен бутон), създаване на shutdown бутон, използване на GPIO и други;
  7. Работа със сензори. Работа с i2c бъс, четене на аналогови данни и използването на analog-to-digital конвертор, логване на данни, разширяване на функционалността на Raspberry PI с GPIO с I/O expander, събиране и изпращане на данни към online services.
  8. Създаване на проекти с Raspberry Pi camera module;
  9. Да си направим робот – използвания хардуер е Rover-Pi с линеарно задвижващи се мотори, advanced motor control, създаване на шестокрак Pi-Bug робот (да стряскате с него любимата), избягване на обекти и ориентация;
  10. Интерфейси – автоматизиране на дома с remote sockets, използване на SPI за контрол на LED матрици, комуникация през серийния интерфейс, контролиране на Raspberry PI през bluetooth и USB devices.

Тегленето на книгата е напълно безплатно като се изисква елементарна регистрация (не искат данни за кредитна карта).

Вариантите в които пристига книгата са:

  • Онлайн през техния Piktlib. Там четенето е приятно, всичко е структурирано добре със съдържание на книгата в дясно и опция за търсене из страниците. Проблем е, че ресурса понякога е малко бавен. Няма опция за bookmarks на определени текстове или страница и ако не помня до къде съм стигнал рискувам да загубя немалко време докато се ориентирам кое съм чел и кое не;
  • PDF;
  • ePub;
  • Mobi;
  • Kindle с два ebook формата – PDF или Kindle format. След избор на формат въвеждаме Kindle адреса си и ще получим книгата синхронизирана на Kindle–а без да я прехвърляме от устройство на устройство;
  • Code files – Всичкия код, който е използван в книгата като примери може да бъде изтеглен също от тази секция.
  • С доплащане можете да получите и хартиения вариант на книгата.

Та така де. Книгата изглежда интересна.

 

Линк за теглене можете да намерите тук.

 

Приятно четене.