16

Raspberry Pi 5 питание

Приобретена такая приблуда для малинки. (сверху которая, с SATA портами)
Она со своим питанием 12V 5A и его нельзя подключать совместно с питанием малинки (Type-C).
Это так, отступление.

Как грамотно эту сборку запитать от такого блока ?
На нём есть 12V и 5A.
Уточнюсь: запитать можно и всё работает.
Но конкретно интересует, как можно грамотно организовать вкл.-выкл. с этим блоком.
И как долго проработает БП с постоянно замкнутыми чёрн.-зелен. проводами.
Может кто-то поделится схемой подключения кнопки и БП через GPIO.

Arduino & Pi

1.5K постов20.9K подписчик

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу

Вы смотрите срез комментариев. Показать все
8
Большой Змей
Автор поста оценил этот комментарий

Да чего уж там мелочиться. Ставьте сразу в стандартный корпус ПК 😀
Всё равно вам теперь ещё и диски куда-то ставить.

раскрыть ветку (17)
0
Автор поста оценил этот комментарий

в мини-корпус вкорячил.

как раз пять дисков влезло.

и малинка в уголке.

=)

а ! ещё кулер на 80 влез.

раскрыть ветку (16)
0
Большой Змей
Автор поста оценил этот комментарий

Хм, не понятно. У меня тоже Raspbery Pi 5, и тоже мини-корпус для дисков как раз на 5 штук. Корпус имеет свой БП и подключается к малине через USB. Или у вас действительно корпус от ПК?

раскрыть ветку (15)
0
Автор поста оценил этот комментарий

ага, от ПК. =)

вот такой

USB меня не устраивает.

Иллюстрация к комментарию
раскрыть ветку (14)
0
Большой Змей
Автор поста оценил этот комментарий
Это сильно 😀

Там на малине есть штырьки, вроде бы, 16. На них можно кнопки этого корпуса подключить. Не знаю, какая у вас ось, но на Ubuntu можно настроить действия, когда кнопки будут нажаты - выключить, перезагрузить и т.д. Сам ещё не делал, просто знаю, что так можно.
раскрыть ветку (13)
0
Автор поста оценил этот комментарий

да, там контакты есть, чтоб кнопку вкл. подпаять.

или вы про какие штырьки ?

на этой гребёнке ?

Иллюстрация к комментарию
раскрыть ветку (12)
0
Большой Змей
Автор поста оценил этот комментарий
На этой. Они программируются.
раскрыть ветку (11)
0
Автор поста оценил этот комментарий

чёт не находил про это.

есть ссылки попросвещаться ?

раскрыть ветку (10)
0
Большой Змей
Автор поста оценил этот комментарий

Я у ChatGPT учусь. Шас поищу в ответах.

https://chatgpt.com/share/69b577be-ca84-800a-9dc2-576d79145f...

Сохраните себе ответ на случай, если я его удалю. (Я еще поспрашиваю, там много интересного)

раскрыть ветку (9)
0
Автор поста оценил этот комментарий

меня туда не пускает.

говорит, что у меня якобы впн включен.

=)

раскрыть ветку (8)
0
Большой Змей
Автор поста оценил этот комментарий

Так норм? Вектор обозначил, сами разберётесь.

0
Большой Змей
Автор поста оценил этот комментарий

У меня есть отдельный БП от ПК. Могу я с помощью GPIO сделать так, чтобы он управлялся, как будто с помощью стандартной материнской платы - включался/выключался?


Да, можно. Обычный компьютерный БП стандарта ATX power supply как раз рассчитан на такое управление — через сигнал PS_ON. И GPIO у Raspberry Pi 5 может этим сигналом управлять. Но есть важные нюансы.


1. Как материнская плата включает ATX БП

В разъёме ATX есть провод:

PS_ON (зелёный)

Логика такая:

состояниерезультатPS_ON = GNDБП включаетсяPS_ON = разомкнутБП выключен

То есть материнская плата просто замыкает зелёный провод на землю.


2. Почему нельзя напрямую GPIO

GPIO Raspberry:

3.3 В логика

ток ~16 mA максимум

ATX линия иногда подтянута к 5 VSB внутри БП.
Поэтому напрямую замыкать GPIO нельзя — можно повредить SoC.

Нужна развязка.


3. Самая правильная схема

Через транзистор (или MOSFET).

Схема

GPIO ──[1k]──B NPN транзистор
C──── PS_ON (зелёный)
GND ──────────E

Когда GPIO = 1 → транзистор замыкает PS_ON на землю → БП включается.


4. Ещё проще — через оптрон

Это вообще идеально:

GPIO → резистор → LED оптрона
выход оптрона → PS_ON + GND

Полная гальваническая развязка.


5. Что получится

Raspberry сможет:

действиерезультатGPIO = 1включить БПGPIO = 0выключить БП

Можно делать:

включение сервера

питание внешних устройств

управление стойкой оборудования

soft power


6. Важная особенность ATX

Даже когда БП выключен, там есть линия:

5VSB (фиолетовый)

Она всегда включена, если БП в сети.

Можно использовать её для питания Raspberry.

Но тут есть ловушка.


7. Подводный камень

Если Raspberry питается от того же БП, которым управляет, получится петля питания.

Правильная архитектура:

вариант 1 (лучший)

5VSB → Raspberry
Raspberry → включает основной БП (PS_ON)

вариант 2

Raspberry питается от другого БП, а ATX включает внешние устройства.


8. Полезная функция

Можно сделать полное поведение как у ПК:

кнопка → Raspberry

Raspberry делает shutdown

после выключения GPIO отпускает PS_ON

ATX выключается

То есть полностью компьютерная логика питания.


✅ Итог:
Да — GPIO Raspberry может полностью управлять ATX блоком питания, как материнская плата. Нужен только один транзистор и резистор.

0
Большой Змей
Автор поста оценил этот комментарий

Подскажи, как всё вышеперечисленное сделать без Питона, возможностями самого Линукс (например Ubuntu Server LTS).


Да, всё это можно сделать чистыми средствами Linux, без Python.
В Ubuntu Server на Raspberry Pi 5 для этого обычно используют GPIO через sysfs или libgpiod и системные триггеры LED.

Сразу скажу главное: самый удобный путь — через libgpiod и LED-trigger ядра. Это современный способ.


1. Управление GPIO из Linux (без Python)

Установи утилиты:

sudo apt install gpiod

Проверить GPIO:

gpioinfo

Включить пин (например GPIO18):

gpioset gpiochip0 18=1

Выключить:

gpioset gpiochip0 18=0


2. Подключение Power LED корпуса

Схема:

GPIO18 ──[470Ω]──►|── GND


3. Сделать LED индикатором активности диска (как HDD LED)

Linux умеет это сам — через LED triggers.

Посмотреть доступные триггеры:

cat /sys/class/leds/*/trigger

Типичные:

none timer heartbeat disk-activity cpu gpio


4. Привязать GPIO к LED системе

Сначала нужно объявить GPIO как LED через device tree overlay.

В файле:

/boot/firmware/config.txt

добавить:

dtoverlay=gpio-led,gpio=18,label=powerled

После перезагрузки появится:

/sys/class/leds/powerled


5. Настроить режим LED

Постоянно горит

echo none | sudo tee /sys/class/leds/powerled/trigger
echo 1 | sudo tee /sys/class/leds/powerled/brightness

Мигает как heartbeat (как системный индикатор)

echo heartbeat | sudo tee /sys/class/leds/powerled/trigger

Индикатор активности диска

echo disk-activity | sudo tee /sys/class/leds/powerled/trigger


6. Сделать Power LED как у ПК

Добавь в автозагрузку:

/etc/rc.local

например:

echo default-on > /sys/class/leds/powerled/trigger


7. Кнопка питания (через Linux)

Подключение:

GPIO17 --- кнопка --- GND

Создать правило:

/etc/udev/rules.d/power-button.rules

SUBSYSTEM=="gpio", ACTION=="change", RUN+="/sbin/shutdown -h now"


8. Более правильный способ кнопки

Linux умеет gpio-keys — тогда кнопка работает как ACPI power button.

В config.txt:

dtoverlay=gpio-key,gpio=17,keycode=116,label=power

116 = KEY_POWER.

После этого:

systemctl poweroff

будет вызываться автоматически.

Важный подводный камень

На Raspberry Pi 5:

GPIO только 3.3 В

ток лучше держать ≤ 8 mA

Поэтому резистор 470–1kΩ обязателен.

0
Большой Змей
Автор поста оценил этот комментарий

как сделать кнопку включения/выключения как на обычном компьютере?


1. Самый правильный способ — штатный разъём Power Button

На плате есть 2-пиновый разъём J2 (Power Switch).

Подключение элементарное:

кнопка корпуса ПК
│ │
│ │
J2 J2

Кнопка обычная — momentary switch (как Power в корпусе ПК).

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

ДействиеРезультаткороткое нажатиевключениекороткое нажатие при работекорректное выключениеудержание ~5 секпринудительное выключение

То есть полностью как на обычном ПК — ОС получает сигнал и делает shutdown.

Плюсы:

не нужно программировать

работает даже если система зависла

безопасно для SD/NVMe


2. Через GPIO (если J2 занят или его нет)

Подключение:

GPIO17 ----- кнопка ----- GND

Дальше нужен скрипт.

Пример на Python:

import RPi.GPIO as GPIO
import os
import time

PIN = 17

GPIO.setmode(GPIO.BCM)
GPIO.setup(PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP)

while True:
if GPIO.input(PIN) == 0:
os.system("sudo shutdown -h now")
time.sleep(1)


3. Можно сделать полноценную панель как у ПК

Например:

кнопкафункцияPowershutdownResetrebootSafesafe modeScriptзапуск программы


4. Маленький подводный камень

Кнопки корпуса ПК иногда имеют подсветку (LED).

Она подключается отдельно:

LED+ → GPIO через резистор
LED- → GND


5. Ещё полезная возможность Pi 5

На Raspberry Pi 5 можно сделать автовключение после подачи питания — как сервер.

Настраивается в EEPROM.

0
Большой Змей
Автор поста оценил этот комментарий

На Raspberry Pi 5 есть "гребёнка" со штырьками для подключения дополнительных устройств. Кажется, там 16 штук. Как она называется, и что там за пины? Можно ли подключить к этой гребёнке клавиши от корпуса стандартного ПК? И что с их помощью можно реализовать?


Ты, видимо, видел GPIO-гребёнку. Но там не 16 — а 40 пинов (2 ряда по 20).

Она называется GPIO header (40-pin GPIO). На плате обычно обозначается как J8 header.

GPIO = General Purpose Input/Output — универсальные цифровые линии ввода-вывода.

Что это за пины

На этой гребёнке несколько типов контактов:


1. Питание

5 V — пины 2, 4

3.3 V — пины 1, 17


2. Земля

несколько GND (6, 9, 14, 20, 25, 30, 34, 39)


3. Обычные GPIO

Около 26 универсальных линий — их можно программно сделать:

входом

выходом

Например:

GPIO4

GPIO17

GPIO22

GPIO23
и т.д.


4. Аппаратные интерфейсы

Некоторые пины имеют альтернативные функции:

I²C (датчики, EEPROM)

SPI (быстрые периферийные устройства)

UART (последовательный порт)

PWM (управление моторами, яркостью)

Напряжение — важный момент

GPIO работают на 3.3 В.

⚠️ 5 В подавать на GPIO нельзя — можно сжечь процессор.


Можно ли подключить кнопки от корпуса ПК

Да. Более того — это один из самых типичных вариантов использования.

Кнопка корпуса ПК — это просто обычный моментный контакт (switch).

Подключается так:

GPIO ----- кнопка ----- GND

А в программе включается внутренний pull-up.

Когда кнопка нажата → линия замыкается на землю.


Что можно сделать такими кнопками

Практически всё.


Управление системой

включение/выключение

soft shutdown

reboot


Интерфейс устройства

меню

переключение режимов

запуск скриптов


Самодельные проекты

пульт управления

панель управления сервером

ретро-консоль

медиаплеер

аркадные кнопки

CNC / робот


Примеры:

КнопкаДействиеPowershutdownResetrebootModeсмена режимаStartзапуск программы

Можно сделать как в ПК

Кстати, у Raspberry Pi 5 есть отдельный 2-пиновый разъём для кнопки питания.

Он называется Power Switch header (J2).

Туда можно подключить обычную кнопку корпуса ПК.

Важные ограничения

1️⃣ GPIO не любят статическое электричество.
2️⃣ Максимальный ток одного пина ~16 mA.
3️⃣ Нельзя напрямую подключать реле, моторы и т.п. — нужен драйвер.

раскрыть ветку (3)
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества