Skip to content
  • Категории
  • Главная
  • Документация
  • Последние
  • Пользователи
Collapse
piP

pi

@pi
Сводка
Сообщения
6.3k
Темы
1.6k
Группы
1
Подписчики
0
Подписки
0

Сообщения

Последние Лучшие сообщения Спорные

  • Мини-ноутбук на Raspberry Pi model b+ v1.2, стоит ли делать?
    piP pi

    Собираюсь сделать ноутбук на raspberry pi, выбрал для этого Raspberry Pi model b+ v1.2.Стоит ли делать в плане производительности?Ноутбук будет предназначаться в основном для просмотра видео, программирования, серфинга интернета (там есть встроенный порт Enternet, а wifi свисток купить можно) и старых не требовательных игр.


  • Отсутствие 3.3v на 1 и 17 пине.
    piP pi

    Собственно сабж, на 2 и 4 пине есть 5 вольт, на 1 и 17 есть только 0.01v. 1 и 17 пин звонятся на землю. Помогите реанимировать.


  • Нет выхода в Интернет при подключении по VNC
    piP pi

    День добрый.
    В интернет (браузер chrome) в raspberry pi я выхожу по wi-fi. Но когда подключаюсь одновременно по патчкорду ноутбуком чтобы поюзать raspberry по VNC то выход в интернет пропадает. Как быть?


  • объясните схему подключения
    piP pi

    https://www.npmjs.com/package/pigpio#pulse-an-led-with-pwm

    01947aa6-bfc6-4529-91dc-5b16c1ad1097-image.png
    cо светодиодом все понятно, а почему кнопка так мудрено включена?


  • ?подключение SSH или VNC не работает!
    piP pi

    В общем все поставил все включил через config и ssh и VPN, но работать отказывается т.е. с ПК зайти не могу! Подключено все через роутер, RAPI подключена по WiFi , ПК через LAN.При этом через андройд телефон могу подключиться по VPN, если телефон подключить через  WiFi.Так же могу с ПК подключиться по VPN по телефон где у меня стоит Linux DeployНе понимаю как так ? В чем может быть причина ?


  • Windows не работает ethernet
    piP pi

    Установил windows на новенький raspbery pi b 3. Подключаю ethernet кабель к роутеру - никакой реакции. Ноутбук с этим же кабелем к роутеру подключается без проблем. Помогите, пожалуйста, в чём может быть проблема?


  • Малинка мгновенно нагревается
    piP pi

    Raspberry Pi3, Raspbian. Средствами Berry Boot загрузчик оставлен на SD, а система установлена на внешний USB HDD. Питание достаточное. Связка работала нормально до установки Kodi. Вернее с установкой тоже работает, проблемы начинаются с запуском Kodi.Курсор практически висит с редкими рывками, HDD постоянно занят (судя по индикаторам, стоит в адаптере), за пара минут температура процессора подскакивает до 80 и выше, начинает мигать, а потом гореть индикатор перегрева (красный термометр на экране). Причем не фильм, просто запуск Kodi.Вопрос: куда копать?Спасибо всем, кто откликнется.


  • не работает кулер
    piP pi

    на днях купил малинку, доволен :)одновременнно с ней приехал бокс https://www.chipdip.ru/product/raspberry-pi-b-acrylic-enclosure-w-cpu-fan
    Screenshot from 2024-12-19 21-17-36.png
    втыкаю кулер в 4-й (красный) и 6 пин (черный) - кулер не крутится, в чём может быть дело? нужно ли как-то настраивать GPIO?


  • Не загружается...
    piP pi

    Час добрый!Народ, помогите пожалуйста с raspberry Pi3 B. Проблема в том, что до недавнего времени прекрасно работающее устройство перестало запускаться. Горит красный светодиод, зеленый-ноль эмоций. Из предпосылок для поломки было лишь то, что в слоту сломалась пополам карта и грелась ужасно. Перед тем, как описать сюда свою проблему, прочел очень много форумов ответы на мои вопросы в которых, к сожаению, результата не дали. Первым делом менял SD карты, штук 5 точно сменил разных классов, но как правило десятый-нет результата, разные ОС-аналогично. Питание с разных, качественных источников  подавал от 1А до 3А-безрезультатно. Подавал питание на GPIO 2 и 6 - тоже результата нет. На гребенке напряжение присутствует, при подключении мышки к USB порту светодиод (мыши) на короткое время моргает. Изображения, естественно через HDMI на экране нет .  Может кто разбирался в схемотехнике данного устройства, подскажите, на какие момент обратить особое внимание и как выяснить в работе основные узлы или нет(процессор и т.д.)? Или при описанных симптомах смысла дальше продолжать нет, только в мусор?


  • Разноцветный квадрат
    piP pi

    Помогите разобраться дорогие люди, при включении получаю разноцветный квадрат. Пробовал три различные sd карты с различными образами. Красный диод горит, зелёный моргает два раза ярко и один раз тускло и висит на радуге, при этом со временем на экране появляется значек градусника


  • Треклятый Wi-Fi
    piP pi

    Накипело.
    Прочитав кучу разной бесполезной инф. Наприменяв различных настроек, раз десять валил retropie если не больше, после применения настроек и бестолковых обновлений пакетов. Выше скорости 54 мбит не подключался, хоть ты тресни.Я даже репитер купил, но не помогло.Цитирую

    "Wi-Fi is disabled because the country is not set.Use raspi-config to set the country before use."

    И как по вашему я должен поступить и многие другие пользователи, ясен пень настроить страну.Вот в этом весь и подвох. Если вы так сделаете то усе, 150 мбит вам не видать, причем я специально пробовал различные страны, что бы не было выбрано итог один максимум 54 мбит.

    Да у меня raspberry pi3B+, но я думаю что это не приципиально, мне попадались упоминания о проблеме 15 и ранее годов. И даже на тестах в обзорах много где проскакивало 54 мбит.Как так, кому этот вопрос задать что ядро скорость подключения занижает?


  • После длительного использования зависает Малинка
    piP pi

    Добрый день!Использую Raspberry 3 B+ в системе умного дома на ней крутятся node-red, mosqutto, необходимо функционирования 24/7. Но периодически,примерно, раз в неделю, малинка зависает, недоступна по ssh и не пингуется, приходится перезагружать по питанию.Малинка подключается по Wi-Fi к домашней сети.Карту памяти менял - не помогло.Блок питания менял - не помогло.Грешу на Wi-Fi подключение, как-то можно после перезагрузки по питанию, посмотреть логи которые писались до перезагрузки?


  • Не работает wi-fi
    piP pi

    Получил pi3, стоит raspbian 4.9.2-10 (скачана с офф сайта, ставил как через noobs, так и заливкой на флешку готового образа.), Linux 4.4.34-v7+(armv7l). На чистую систему установлен только NoMachine. Не получается подключиться к wi-fi — сети находит, ключ спрашивает, когда ввожу — никакой реакции, не подключается. Снял пароль с сети, поменял регион на ru, каналы на маршрутизаторе (tp-link 1043nd, openwrt) — всё нипочем. Пытался подключиться к точке доступа своего смартфона (Meizu m2 note), результат то же. По lan сеть есть, но нужен wi-fi. ifconfig показывает, что не идут Tx-пакеты.
    Содержимое файлов:
    /etc/network/interfaces
    source-directory /etc/network/interfaces.d

    auto lo
    iface lo inet loopback

    iface eth0 inet dhcp

    allow-hotplug wlan0
    iface wlan0 inet dhcp
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
    iface default inet dhcp
    /etc/wpa_supplicant/wpa_supplicant.conf
    trl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
    country=RU

    network={
    ssid=«Op»
    key_mgmt=NONE
    }


  • Вопросы по работе с Python библиотекой RPi.GPIO и RPIO
    piP pi

    Вопросы по работе с Python библиотекой RPi.GPIO и
    https://pypi.org/project/RPIO/
    https://pypi.org/project/RPi.GPIO/


  • Вопросы по работе с библиотекой wiringPi
    piP pi

    Вопросы по работе с библиотекой wiringPi
    https://raspberrypi.ru/forum/topic/20/wiring-pi-библиотека-работы-с-gpio-часть-1


  • Вопросы по работе с библиотекой pigpio
    piP pi

    Вопросы по работе с библиотекой pigpio
    http://abyz.me.uk/rpi/pigpio
    Особенностью библиотеки является высокая скорость опроса GPIO и точность программной ШИМ благодаря использованию DMA, доступ к которой осуществляется через недокументированные функии процессора (GPU mailboxes).

    Не работает на Raspberry Pi 5 в связи с тем, что обработка GPIO вынесена с процессора на отдельный чип RP1


  • Удаленное управление. QML.
    piP pi

    И всем снова привет.

    Тут вспомнил еще про один проект, который построен на базе ferro_remote клиента.

    Это QML клиент. Тем, кто не знает, что это такое можно прочитать тут + много русскоязычных источников. QML это простой язык описания визуального интерфейса со встроенным JS. Была когда-то идея купить себе Jolla, интерфейс, которой построен именно на QML.

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

    Вот про этот клиент я и напишу сейчас.

    gui_client, а именно так называется этот клиент (с названиями у меня туго, да) представляет собой обычный бинарник, который принимает в командную строку путь к QML файлу, экспортирует в машину некоторые интерфейсы клиента и исполняет файл. Все просто. Все очень похоже на работу lua_client, который я тут описывал не так давно. Есть, однако, пара моментов.

    Клиентов в одном экземпляре QML может быть несколько, каждый может быть соединен со своим агентом
    Соединяться нужно из скрипта, то есть вызывать методы клиента и реагировать на его события (сигналы)
    Тут еще стоит отметить, что собранного бинарника для той же винды у меня нет, потому как под рукой нет самой винды с QtCreator.

    И так. Запуск приложения выглядит вот так

    $ ./gui_client test.qml
    

    где test.qml это как раз само окно приложения со всем, что необходимо.

    Самый простой пример:

    import QtQuick 2.0
    
    Rectangle {
        id: mainWindow
    }
    

    Теперь, если это запустить, мы получим просто белое окошко, которое можно свернуть, развернуть, или закрыть

    Но нужно ж соединиться с малиной, например. Добавим.

    import QtQuick 2.0
    import Fr.Client 1.0 /// импорт клиента и некоторых интерфейсов
    
    Rectangle {
        id: mainWindow
        FrClient { // клиент
            id: generalClient 
            Component.onCompleted: connect( "192.168.3.1:12345" ) // соединимся с малиной
        }
    }
    

    Все. Вызов: (Далее просто можно закрыть)

    $ ./gui_client test.qml
    

    В логах агента на стороне малины будет:

    2000-Jan-11 02:38:19.472011 [INF] [listener] New connection: ep: tcp://0.0.0.0:12345 client: tcp://192.168.3.10:52849 total: 1
    2000-Jan-11 02:38:26.854824 [INF] [listener] tcp://0.0.0.0:12345 Close connection: tcp://192.168.3.10:52849; count: 0
    

    Этот код можно немного причесать и получить что-то типа такого

    4ac693ad-449a-4a4e-ab19-27805a042bcd-image.png

    Сам QML файл лежит тут. Он соединяется, разъединяется, показывает ошибку, если возникла.

    Можно сделать что-то поинтереснее. Например валяется у меня Grove LCD RGB.

    Как известно из даташита на это устройство, устройства в этой железке 2. Первое отвечает за текст, второе за цвет экранчика. Оба рулятся по i2c. Все должно быть просто.

    Кстати сам экранчик выглядит вот так

    cd9db198-3c16-4d0b-bd57-b05b2767402f-image.png

    Это он подключен не к малинке, если что. Просто такой же девайсик с линуксом на борту и агентом ferro_remote.

    Для того, чтоб уметь работать с устройством, добавлю 2 компонента FrClientI2C:

    Rectangle { // это будет общий компонент-девайс, который мы сможет потом,
    // например, вынести в отдельный файл
    id: lcdDevice
    width: 0
    height: 0
    FrClientI2c {
    id: txtDev // этот для текста
    client: generalClient // использовать клиента с id generalClient
    busId: 1 // шина 1
    slaveAddress: 0x3E // адрес
    }

        FrClientI2c {
            id: rgbDev // этот для цвета
            client: generalClient
            busId: 1
            slaveAddress: 0x62
        }
    

    }

    Что тут происходит:

    Компоненты будут готовы к работе, как только клиент будет соединен с агентом. У каждого компонента (если я нигде не забыл это воткнуть), есть свойство ready и соответственно сигнал "onReadyChanged", в которой передается значение ready (true or false).

    Поэтому прям в компонент lcdDevice можно добавить свойство, которое принесет с собой и сигналы, на которые можно реагировать:

    Rectangle { 
        id: lcdDevice
        width: 0
        height: 0    
        property bool ready: txtDev.ready && rgbDev.ready // привяжем состояние 2 устройств к 1 значению
    

    ........
    onReadyChanged: { // устройства изменили состояния
    if( ready ) {
    ..... // оба устройства готовы.
    }
    }
    }
    Добавим в код пару функций. Первая будет менять цвет, вторая очищать экран.

    Rectangle { 
            id: lcdDevice
            ......
            function set_color( r, g, b )
            {
                // установка цвета. за это отвечают 3 регистра.
                rgbDev.writeBytes( { 0x04: r, 0x03: g, 0x02: b } )
            }
            function clear( )
            {
                // очистка экрана - установка регистра 0x80 в 1
                txtDev.writeBytes( { 0x80: 0x01 } )
            }
        }
    

    и теперь можно при готовности устройств очистить их и сбросить цвет на 0

    onReadyChanged: { 
              if( ready ) {
                  clear( )
                  set_color( 0, 0, 0 )                
              }
          }
    

    Так при подключении программка будет убирать текст с экрана и устанавливать цвет в 0x000000 то есть он будет выключен.

    Добавлю функцию для установки текста. Я сделаю функцию с 2 параметрами, так как строк у экранчика 2.

    /// собственно функция формирует массив из объектов, которые выглядят так: {registry: value}
    /// после этого все это пишется в устройство.
    /// тут, при использовании массива будет гарантия того, 
    /// что значение регистров будет установлено ровно в той последовательности, 
    /// в какой они поступят в массив.
    /// 0x40 - регистр, который пишет свое значение в следующее знакоместо.
            function set_text( txt, txt2 )
            {
               /// сначала очистка экрана и установка курсора с положение 1:1
                txtDev.writeBytes( [{ 0x80: 0x01 },
                                    { 0x80: 0x08 | 0x4 },
                                    { 0x80: 0x28 }] )
                var txt_value = [] /// значение регистров для записи текста
    
            for( var i = 0; i < txt.length; i++ ) {
                txt_value = txt_value.concat( [{ 0x40: txt.charCodeAt(i) }] )
            }
            txt_value = txt_value.concat({ 0x80: 0xC0 }) /// переход на 2 строку.
            for( i = 0; i < txt2.length; i++ ) {
                txt_value = txt_value.concat( [{ 0x40: txt2.charCodeAt(i) }] )
            }
            txtDev.writeBytes(txt_value) /// Пишем.
        }
    

    Если все правильно, то после вызова функции мы увидим на экранчике текст, переданный в параметрах.

    onReadyChanged: {
                if( ready ) {
                    //clear( )
                    set_color( 100, 100, 100 )
                    set_text( "Hola,", "raspberrypi.ru" )
                }
            }
    

    Запустив и подключив, мы увидим светлый экран и надпись на нем "Hola,\nraspberrypi.ru"

    Дальше - больше. 😃

    Я добавил ColorDialog из "QtQuick.Dialogs 1.0" и повесил событие смены текущего цвета на смену цвета экрана.

    Скрипт можно взять тут. Скрипты немного корявенькие, потому как это вообще первый мой проект, как с QML, так и с Qt вообще.

    PS: есть еще примеры работы с удаленным исполнением консольной команды, с листингом директории.

    b4adddea-5e20-43c0-9b72-31bcebdeabb5-image.png

    • Есть работа с пинами GPIO и, недавно начал прикручивать, SPI.

    Так же при помощи QML можно легко и непринужденно смотреть видео с железки

    Rectangle {
               width: 600
               height: 200
               Video {
                   anchors.fill: parent
                   source: "rtsp://192.168.3.1:554/video"
                   enabled: true
                   visible: true
                   focus: true
                   autoPlay: true
               }
    
           }
    

    Пока все. Спасибо за внимание 😃


  • Радиостанция на основе Raspberry Pi 2B
    piP pi

    be283f66-a0f0-458f-a0c0-fc80f6d43576-image.png
    Внимание! Данная инструкция применима только к RPI 2B. Для RPI 1 есть другая официальная инструкция. Также автор статьи не несет ответственности за ваши действия и все вы делаете на свой страх и риск.

    Для того,чтобы заставить нашу малинку работать как фм передатчик нам потребуется:

    1)Кусок провода длиной 20см(Оптимальная длина:при антенне такой длины радиус действия составляет примерно 100 метров)

    2)Прямые руки

    И еще желательно иметь один проводок Мама-Мама.

    Для начала присоединим провод длиной 20 см к GPIO4 на плате(7 пин на гребенке P1)

    Теперь создадим директорию PiFm командой

    mkdir PiFm
    

    И перейдем в нее

    cd PiFm
    

    Затем установим программу архиватор

    apt-get install zip -y
    

    И загрузим архив с кодом программы wget h*ttps://goo.gl/XEyLuL (дополнение автора:необходимо убрать звездочку после h)

    Распакуем архив

    unzip XEyLuL
    

    Перейдем в директорию

    cd Pi2Fm
    

    Теперь нам необходимо компиляция нашего кода

    sudo gcc -lm -std=c99 pifm.c
    

    Для начала вещания следует выполнить

    sudo ./a.out sound.wav 108.0
    

    где sound.wav название файла , а 108.0 частота.

    Рекомендуется использовать только гражданские(27 mhz) и ФМ частоты(96-110mhz),чтобы не было проблем с законом.

    Для прекращения вещания нажмите CTRL+C


  • Делаем из Raspberry Pi эмулятор консолей
    piP pi

    Все нижеописанное вы делаете на свой страх и риск

    Для начала рекомендую вам выставить максимально допустимый объем видеопамяти через raspi-config.

    А еще нам понадобиться джойстик,без него никак,консоли эмулируем все таки.

    Приступим

    Установим пару необходимых нам программ

    sudo apt-get install git dialog -y
    

    Теперь мы загрузим скрипт установки с GitHub

    mkdir ~/git_dir
    cd ~/git_dir
    git clone ht*tps://github.com/RetroPie/RetroPie-Setup.git //нужно убрать *
    cd RetroPie-Setup
    

    И запустим его

    sudo ./retropie_setup.sh
    

    И выберем все так же как и на картинке
    6336dcd1-3e09-40d4-967e-4a77e51b4e08-image.png

    Дальше следуем инструкциям установщика и дожидаемся конца установки. Для запуска используем команду

    emulationstation или sudo emulationstation

    Для того,чтобы выйти нажимаем F4 или CTRL+C.На этом все,спасибо за внимание!


  • Подключение Raspberry Pi к телефону по Bluetooth. Часть 1
    piP pi

    В этой статье мы рассмотрим как установить связь между смартфоном и Raspberry Pi по Bluetooth, и в каких полезных целях можно данное соединение использовать.

    Что потребуется:

    1. Телефон с поддержкой Bluetooth (я тестировал на Android смартфоне Huawei)

    2. USB-Bluetooth модуль для Raspberry Pi (покупал такой http://smarteletronika.com/viewproduct/76/

    3. Дополнительное программное обеспечение

    ba781337-8a2d-4648-8d6e-78209758b6d7-image.png

    Загружаем Raspberry Pi и подключаем Bluetooth USB модуль. В Raspbian модуль работает "из коробки" и никаких дополнительных драйверов устанавливать не надо.

    Устанавливаем необходимое ПО

    sudo apt-get install bluetooth bluez-utils bluez-compat
    

    Получаем список доступных Bluetooth устройств, к которым может подключиться Raspberry Pi (не забудьте сделать смартфон видимым для других BT устройств в настройках):

    hcitool scan
    

    В ответ на эту команду появится список доступных для сопряжения устройств. Ищем в списке наше и берём его адрес (у меня 18:34:51:55:B0:D8)

    Устанавливаем соединение между Raspberry Pi и смартфоном (Перед установкой соединения нужно отредактировать скрипт /usr/bin/bluez-simple-agent следующим образом - открываем скрипт в текстовом редакторе и меняем строчку capability = "KeyboardDisplay" на capability = "DisplayYesNo"):

    bluez-simple-agent hci0 18:34:51:55:B0:D8
    

    В ответ в консоли Raspberry Pi должен появится запрос подтверждения, одновременно на экране смартфона появляется запрос на разрешение сопряжения:

    RequestConfirmation (/org/bluez/2184/hci0/dev_20_F3_A3_E2_D7_49, 100111)
    Confirm passkey (yes/no):
    

    Отвечаем "yes" и нажимаем кнопку "Сопряжение" в окне запроса на смартфоне.

    Если всё прошло успещно, то скрипт bluez-simple-agent должен вывести надпись

    Release
    New device (/org/bluez/2184/hci0/dev_20_F3_A3_E2_D7_49)
    

    Всё - теперь соединение успешно установлено.

    В следующих частях этой статьи мы рассмотрим как проигрывать музыку со смартфона на Raspberry Pi, а также осуществлять звонки и слать sms-сообщения

  • 1 / 1
  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.
  • Первое сообщение
    Последнее сообщение
0
  • Категории
  • Главная
  • Документация
  • Последние
  • Пользователи