# Стать резидентом
Source: https://akibahackspace.mintlify.app/become-resident
Публичные мероприятия — это лишь одна маленькая часть хакспейса. Самое интересное происходит в кругу резидентов (постоянных членов хакспейса): нетворкинг, развлечения, всякие спонтанные активности типа “нужно спаять какое-нибудь прикольное устройство, но ярмарка уже завтра” или соревнования по ориентированию, но локации описаны загадками и шифрами.
## Что даёт резидентство
* **Доступ в хакспейс 24/7**: можно работать и учиться, у нас есть чай, микроволновка, удобные кресла и всё остальное что нужно для работы
* **Инструменты и техника в хакспейсе**: паяльник и прочие паяльные аксессуары, осциллограф, фен, raspberry pi, arduino и миллион аксессуаров к нему, FPGA, старые компы и многое другое
* **Приватный чат резидентов**, в котором происходит вся внутренняя кухня хакспейса, закрытые мероприятия и нетворкинг (время от времени кто-то ищет сотрудников или работу и не только)
## Резидентские взносы и роли
Резиденты платят **ежемесячный взнос**, который идёт на покрытие аренды помещения и прочие важные вещи.
**Размер взноса**:
* Студентам — 500 рублей в месяц
* Всем остальным — 2500 рублей в месяц
* Онлайн-резидентство — 1000 рублей в месяц (доступ в чатики, без ключа)
## Окей, я хочу стать резидентом хакспейса!
В данный момент онбордингом резидентов занимается Вова Лебедев. Чтобы стать резидентом, [напишите ему в Telegram](https://t.me/KillingInTheNameOf)
# Часть 1: цифровые пины
Source: https://akibahackspace.mintlify.app/esp32/guides/01-digital-pins
## 1.1. Мигаем встроенным светодиодом
**Задача:** помигать светодиодом, расположенным на отладочной плате ESP32.
### Выясняем номер пина
У каждого пина микроконтроллера есть свой номер. Ножки обычно подписаны на плате, например, D5 означает, что это **D**igital пин с номером 5. Как узнать пин чего-то, что распаяно на светодиоде? Наиболее надёжный способ - найти светодиод на схеме платы (гуглим что-то типа "esp32 devkit schematics") и посмотреть, к чему он подключен. Возьмём схему платы [отсюда](https://wiki.amperka.ru/_media/products:esp32-wroom-wifi-devkit-v1:esp32-wroom-wifi-devkit-v1_schematic.pdf):
Для удобства, пины встроенных светодиодов и кнопок отладочных плат, обитающих в хакспейсе, приведены ниже.
| Отладочная плата | Пин светодиода | Пин кнопки |
| ----------------------- | -------------- | ---------- |
| ESP32 DevKit | 2 | 0 |
| Lolin S2 Mini (ESP32S2) | 15 | 0 |
| LuatOS ESP32C3-CORE | 12, 13 | 9 |
### Конфигурируем пин на выход
Для работы с цифровыми пинами импортируем модуль [digitalio](https://docs.circuitpython.org/en/latest/shared-bindings/digitalio/), а для обращения к пинам по их номеру - модуль `board`. Также здесь и в 99% других проектов мы планируем много спать, поэтому нам пригодится модуль [time](https://docs.circuitpython.org/en/latest/shared-bindings/time/index.html).
```python theme={null}
import digitalio, board, time
```
Чтобы использовать пин, мы оборачиваем его в объект `DigitalInOut` и устанавливаем режим работы `OUTPUT`:
```python theme={null}
led = digitalio.DigitalInOut(board.IO2)
led.direction = digitalio.Direction.OUTPUT
```
В зависимости от версии CircuitPython (у каждой отладочной платы она своя), вместо `board.IO2` придётся подставить `board.D2` или что-то подобное. Как проверить названия пинов? Напишите в скрипте `print(dir(board))` или в REPL-консоли импортируйте `board` и понажимайте клавишу Tab после ввода `board.`, чтобы увидеть список всех доступных пинов.
Теперь мы можем устанавливать этому пину значения `True` (высокий сигнал, 3.3V) или `False` (низкий сигнал, 0V), таким образом включая или выключая светодиод:
```python theme={null}
while True:
led.value = True
time.sleep(1)
led.value = False
time.sleep(1)
```
Мы используем бесконечный цикл, потому что, в отличие от обычных программ на ПК, если закончить выполнять прошивку, микроконтроллер перезагрузится и начнёт исполнять её снова. В CircuitPython вместо перезагрузки вас выкинет в REPL консоль питона и скрипт перестанет исполняться. Короче, в 99% проектов вы будете делать две вещи: `time.sleep` и бесконечный цикл.
Если после сохранения скрипта ваша отладочная плата начала мигать - значит всё прошло успешно и можно переходить к следующей задаче. Если нет - изучите консоль на предмет ошибок.
## 1.2. Включаем светодиод по кнопке
**Задача:** если нажата кнопка - включить светодиод, если не нажата - выключить.
В дополнение к переменной `led`, создаём ещё одну переменную `button` с ещё одним `DigitalInOut`, но передаём номер пина встроенной кнопки (см. таблицу выше). Пин кнопки мы конфигурируем в `INPUT` для чтения значения. Инициализацию всех пинов мы делаем перед основным циклом!
Основной цикл у нас будет выглядеть так:
```python theme={null}
while True:
led.value = button.value
time.sleep(0.05)
```
Здесь мы спим, чтобы не загружать процессор, но при этом спим достаточно мало, чтобы задержка была незаметна нашему глазу.
**Дополнительные задачи:**
* пофиксить основной цикл, чтобы при нажатии кнопки светодиод включался, а не выключался
* придумать алгоритм, чтобы при нажатии кнопки светодиод инвертировал состояние и оставался таким до следующего нажатия кнопки
## 1.3. Внешняя кнопка
**Задача:** оставить скрипт от прошлой задачи, но поменять встроенную кнопку на внешнюю.
Для этого необходимо вставить отладочную плату ESP32 и саму кнопку в BreadBoard.
Как видно из рисунка ниже кнопка имеет 4 контакта, 2 контакта в каждой из пар соеденины внутри самой кнопки. Для получения логической единицы на пине необходимо подключить один контакт кнопки к VCC (+3.3), а другой к любому свободному пину микрооконтроллера. Если необходимо получать на пине логический ноль, то вместо VCC к кнопке подключаем GND. Не забываем про подтяжку пина в инверсную сторону от подключения кнопки (если подключили кнопку к GND то делаем PULL\_UP, а при подключении кнопки к VCC, пин настраиваем на PULL\_DOWN).
Как сделать подтяжку в CircuitPython:
```python theme={null}
# Подтянуть пин к земле ("0" по умолчанию)
button.pull = digitalio.Pull.DOWN
# Подтянуть пин к VCC ("1" по умолчанию)
button.pull = digitalio.Pull.UP
```
Вариант собранной схемы, которая при нажатии кнопки возвращает 0, представлен рисунком ниже.
## 1.4. Внешний светодиод
**Задача:** оставить скрипт от прошлой задачи, но поменять встроенный светодиод на внешний.
Светодиод устроен следующим образом:
Чтобы светодиод засветился, ток должен течь от анода к катоду. Другими словами от + светодиода к его - или от VCC к пину с выставленным на нем логческим 0 или от пина с выставленной на нем логической 1 к GND
Чтобы светодиод светился больше чем 1 раз необходимо последвательно с резистором подключить резистор с номиналом 220 Ом. Делается это для ограничения протекающего через него тока. Как правило максимальный ток светодиода равен 20 мА.
Один из вариантов схемы подключения светодиода к отладочной плате представлен на рисунке ниже.
# Часть 2: аналоговые пины и ШИМ
Source: https://akibahackspace.mintlify.app/esp32/guides/02-analog-and-pwm
В этой части будет нужно подглядывать в схему отладочной платы:
## 2.1. Яркость светодиода (программно)
**Задача:** сделать, чтобы светодиод светился тускло (30-50% от обычной яркости).
Для того, чтобы получить тусклый для человеческого глаза свет, мы не можем подавать произвольное постоянное напряжение на светодиод, т. к. он может находиться всего в 2-х состояниях:
`led.value = True` - подаём 3.3 вольта, яркость максимальная
`led.value = False` - не подаём напряжение, лампочка не горит
Выход - чередовать подачу и отключение напряжения на светодиоде так, чтобы:
а) Для человеческого глаза мерцание казалось бесшовным (для этого значение **периода** быть достаточно коротким)
б) Доля времени, в течение которого подаётся напряжение, была небольшой, что воспринимается как меньшая яркость.
Из рисунка видно что сигнал на некоторое время остается поочередно на низком и высоком уровне. `Т0` - низкий , `Т1` - высокий. Период сигнала будет равен `Т = Т0+Т1`.
Здесь полезно будет знать про *коэффициент заполнения, он же - величина рабочего цикла (duty cycle)*. Он равен `T1/T * 100%`.
Чем больше коэффициент заполнения, тем больше напряжение на выходе.
Возьмём в качестве значения периода `T = 10 мс`. Остаётся выявить нужное время задержек при включенном (Т1) и выключенном (Т0) светодиоде:
```python theme={null}
led.value = True
time.sleep(0.001)
led.value = False
time.sleep(0.009)
```
## 2.2. Яркость светодиода (аппаратно)
**Задача:** сделать, чтобы светодиод менял яркость от 0% до 100% и обратно.
Генерировать ШИМ вручную - не лучший вариант из-за нагрузки на процессор, блокировки другого кода и плохой масштабируемости. Решением для нас будет использование аппаратного ШИМа (того, что уже есть в микроконтроллере). От нас потребуется настроить параметры, а периферия микроконтроллера сама сгенерирует сигнал.
Для доступа к хардварному ШИМу воспользуемся модулем [pwmio](https://docs.circuitpython.org/en/latest/shared-bindings/pwmio/).
Создаём объект `PWMOut`, который будет генерировать сигнал на заданном пине (предварительно проверьте, что на выбранном пине есть ШИМ при помощи схемы распиновки платы) с нужной частотой и коэффициентом заполнения:
```python theme={null}
pwm = pwmio.PWMOut(board.IO32, frequency=500, duty_cycle=0)
```
`frequency` — частота ШИМ сигнала с 32-битным диапазоном, по умолчанию равна 500 Гц.
`duty_cycle` — коэффициент заполнения с 16-битным диапазоном, по умолчанию равен 0.
Чтобы менять коэффициент заполнения в ходе программы, достаточно присвоить свойству `duty_cycle` созданного объекта нужное значение, например:
```python theme={null}
pwm.duty_cycle = 32767 # 2**15-1
```
Тогда для решения задачи необходимо постепенно менять значение коэффициента заполнения от `0` до `2**16 = 65535` и обратно.
## 2.3. Потенциометр
**Задача:** ручка потенциометра задаёт яркость светодиода.
Мы уже знаем, как управлять яркостью светодиода с помощью ШИМ, но ещё хотелось бы регулировать её вручную при помощи внешнего компонента. Тут нам на помощь и приходит потенциометр - переменный резистор (aka крутилка)
### Подключаем потенциометр
Потенциометр подсоединяется крайними выводами к `GND` и `VCC`, а центральным – к *аналоговому* входу микроконтроллера в режиме `INPUT`. Найти аналоговый вход можно при помощи схемы отладочной платы.
Нас интересуют контакты `ADC*`, которые как раз используются для подключения аналоговых входов. Для конкретно входа используются пины, выделенные оранжевым на схеме.
Чтобы работать с аналоговыми входами импортируем в программу модуль [analogio](https://docs.circuitpython.org/en/latest/shared-bindings/analogio/index.html).
Теперь создадим объект `AnalogIn` и подключим его к пину, в который мы подрубили потенциометр.
```python theme={null}
potentiometer = analogio.AnalogIn(board.I35)
```
Осталось связать значение потенциометра `potentiometer.value` с коэффицентом заполнения для светодиода. Для удобства можно выводить значение на потенциометре в терминал.
## 2.4. Синтезатор
**Задача:** крутилка (потенциометр) плавно меняет частоту писка. Кнопка стоит **в разрыв пищалки** и просто физически включает/выключает звук.
### Что понадобится
* ESP32 с CircuitPython
* **Пассивная** пищалка / пьезо (важно!)
* Потенциометр (например 10k)
* Кнопка
* Breadboard + провода
### Подключение
#### Потенциометр
* крайняя ножка → `3V3`
* другая крайняя ножка → `GND`
* средняя ножка (ползунок) → **аналоговый вход** ESP32 (любой ADC-пин, см. распиновку)
#### Пищалка + кнопка “в разрыв”
Идея: PWM-пин генерирует сигнал, но пищалка реально звучит только когда цепь замкнута кнопкой.
Вариант подключения:
* `PWM-пин` → **кнопка** → “+” пищалки
* “−” пищалки → `GND`
То есть кнопка стоит **последовательно** между PWM и пищалкой.
> Если пищалка без “+/-” (просто два вывода) — неважно, какой куда.
### Код (минимальный)
```python theme={null}
import time
import board
import analogio
import pwmio
# Пины: поменяй под свою плату при необходимости
POT_PIN = board.I35 # аналоговый вход (ADC)
BUZZER_PIN = board.IO25 # PWM-пин для пищалки
pot = analogio.AnalogIn(POT_PIN)
# Стартуем с какой-то частоты, duty_cycle ~50% чтобы пищалка звучала
buzzer = pwmio.PWMOut(BUZZER_PIN, frequency=440, duty_cycle=32768)
# Диапазон частот (подбирай под свою пищалку)
F_MIN = 100
F_MAX = 4000
try:
while True:
v = pot.value # 0..65535
# Линейно маппим 0..65535 -> F_MIN..F_MAX
freq = F_MIN + (v * (F_MAX - F_MIN)) // 65535
# Применяем
buzzer.frequency = int(freq)
# Небольшая задержка, чтобы не дергать PWM слишком часто
time.sleep(0.01)
finally:
buzzer.deinit()
pot.deinit()
```
# Гайд по ESP32, CircuitPython и периферии
Source: https://akibahackspace.mintlify.app/esp32/index
Гайд по установке и небольшой каталог существующей в хакспейсе периферии с примерами использования (и описанием подводных камней, если они есть).
# Материалы по CircuitPython
Если нужно быстро погрузиться в Python и CircuitPython или освежить знания можно воспользоваться этими ресурсами:
1. [Туториал по Python](https://docs.python.org/ru/3.14/tutorial/index.html)
2. [Основы CircuitPython](https://learn.adafruit.com/circuitpython-essentials/circuitpython-essentials)
# Доки по периферии
# Идеи проектов
1. считывать показания датчиков, выводить:
1. в телеграм
2. на экранчик
3. сигнализировать влажность RGB-светодиодом (подышать чтобы повысилась)
4. пищать определённым тоном в зависимости от влажности (подышать чтобы повысилась)
2. музыкальный инструмент: с помощью сонара измерять расстояние, менять частоту пищалки в зависимости от текущего расстояния
3. музыкальный инструмент: подключить блок кнопок и играть ноты пищалкой при нажатии на кнопки
1. (сложно!) подключить несколько пищалок и добавить возможность играть аккорды
4. просто музыка: с помощью пищалки играть прикольные мелодии
1. можно ещё заставить ргб-светодиод менять цвет в соответствии с текущей нотой
5. ачивка: устройте джем-сессию на самодельных музыкальных инструментах
6. управление джойстиком:
1. поворачивать сервомотор вслед за джойстиком
2. управлять цветом ргб-светодиода с помощью джойстика
3. управлять тоном пищалки с помощью джойстика
7. пульсометр: мигать лампочкой, пищать пищалкой в такт пульса
1. сложно: вместо дискретных ударов сердца использовать прям всю синусоиду
# Быстрый обзор ESP32
ESP8266 — очень старый слабый чип, не умеет в питон
ESP32 — чип поновее и помощнее, умеет Wi-Fi+Bluetooth, не умеет прикидываться флешкой
ESP32-S2 — самые дешманские отладочные платы (170 рублей), не умеет Bluetooth, умеет прикидываться флешкой
ESP32-C3 — самый новый чип, архитектура RISC-V (против Xtensa у всех остальных), поэтому не требует форков компиляторов, умеет прикидываться флешкой
# Установка CircuitPython
💡 Если вы нашли в хакспейсе отладочную плату, скорее всего на ней уже стоит CircuitPython, попробуйте проверить: запитайте микроконтроллер и откройте [http://circuitpython.local/code/](http://circuitpython.local/code/) (все ESP32 броадкастят свои адреса по mDNS).
Втыкаем отладочную плату в комп, переходим в режим прошивки:
1. Зажимаем кнопку BOOT (она может быть непонятно подписана, тогда ищем RST и зажимаем ДРУГУЮ кнопку)
2. Нажимаем и отпускаем RST
3. Отпускаем BOOT
Плата должна распознаться как usb-to-uart конвертер.
Дальше идём сюда:
[CircuitPython - Downloads](https://circuitpython.org/downloads)
Нажимаем Filters и выбираем наш чип. Находим визуально похожую плату.
Нажимаем Open Installer. Жмём “Full CircuitPython 8.x.x Install”, следуем инструкциям.
## Как пользоваться
### Вариант 1 — если не умеет прикидываться флешкой
После установки прошивки не появилось флешки CIRCUITPY на компе? Открываем [http://circuitpython.local/code/](http://circuitpython.local/code/) (это mDNS адрес, его броадкастит микроконтроллер). Жмякаем full code editor. Снизу тыкаем Serial, теперь слева у нас код, а справа вывод консоли. Код пишется в code.py или main.py, контроллер автоматически запускает их при старте.
### Вариант 2 — если флешка появилась
Открываем Visual Studio Code, ставим [расширение CircuitPython](https://marketplace.visualstudio.com/items?itemName=joedevivo.vscode-circuitpython), снизу выбираем свою борду (прошивку для которой вы ставили с сайта circuitpython) и серийный порт (методом исключения а также сравнения списка с подключенной платой и без неё). Снизу откроется консоль. Редактор будет подсказывать подсказки как в обычном питоне (только у меня он почему-то ругался на имя файла code.py, поэтому я переименовал его в main.py).
Бонус: установка библиотек.
```bash theme={null}
pip install circup
circup install adafruit_pn532 # вот так можно быстро поставить библиотеку
```
# Продвинутые штучки
## Распиновка
### ESP32
красные и желтые не юзаем. порядок пинов может отличаться, но функционал будет одинаковым вне зависимости от отладочной платы
1 и 3 — uart (можно случайно мусор словить)
6-11 — флеш-память (хз зачем её вывели наружу)
12-15 — jtag
16-17 — флеш-память
34-39 — input-only, с них спокойно можно читать инфу, писать нельзя
под аналоговые входы нужно юзать 32-39 (это пины ADC1, ADC2 занят вайфаем)
### ESP32-S2
### ESP32-C3
## Отличия прошивок CircuitPython
Идём в [гитхаб](https://github.com/adafruit/circuitpython/tree/main/ports/espressif/boards), тыкаем интересующую плату и смотрим файлики (их там обычно мало). Самое главное это `mpconfigboard.h`, в нём прописывается, какие пины чипа на какие устройства на плате распаяны. Например, `#define MICROPY_HW_LED_STATUS (&pin_GPIO13)` означает, что на ноге микроконтроллера GPIO13 прошивка ожидает светодиод, которым будет мигать при каких-то своих событиях (например, подключении к вайфаю).
# Хакспейс Akiba
Source: https://akibahackspace.mintlify.app/index
# Кто мы?
**Хакспейс** — это сообщество энтузиастов, объединённых страстью к технологиям и искусству.
Наша цель — объединить комьюнити техноэнтузиастов Томска в новом пространстве, свободном от университетских турникетов и расписания работы корпусов.
Мы любим паять и программировать, исследовать и создавать, вдохновляться чужими проектами и изобретать что-то новое.
Наш адрес: г. Томск, ул. Гагарина 7/1. По ссылке инструкция, как найти вход.
# Примеры наших активностей
# Как присоединиться?
Время от времени мы проводим публичные мероприятия (лекции, воркшопы и т.д.). Анонсы публикуются в нашем [телеграм-канале](https://t.me/akiba_space).
Хотите чего-то большего? Можно стать **резидентом** и присоединиться к нашему небольшому (\~30 чел.) комьюнити людей, которые ежедневно тусуются в хакспейсе.
Вступай в ряды резидентов Акибы! По ссылке информация о том, что даёт резидентство и как вступить.
**Остались вопросы?** Пишите в телеграм [Вове Лебедеву](https://t.me/KillingInTheNameOf), сооснователю хакспейса.
# 3D-принтер
Source: https://akibahackspace.mintlify.app/infra/3d-printer
# 3D-принтер
Наш принтер называется [QIDI Tech Q1-Pro](https://wiki.qidi3d.com/en/Q1-Pro). Он использует прошивку Klipper.
## 1. Как печатать
1. Замодельте модель в 3д-редакторе (Blender, Tinkercad, Fusion 360, etc.), либо найдите готовую в [каталогах](#8-готовые-модели-для-печати)
2. Скачайте [OrcaSlicer](https://github.com/SoftFever/OrcaSlicer). При первом запуске выбирете принтер Qidi Q1 Pro и ширину сопла 0.4. Пластик любой.
3. Импортируйте актуальные конфиги. На данный момент, актуальный этот(вроде бы) Самый актуальный просите у Тимура
* Конфиги
Рома Лидер скинул 16.01.2026
[3d-printer-config.orca\_printer](https://raw.githubusercontent.com/akiba-hs/docs/refs/heads/main/infra/3d-printer-config.orca_printer)
Проверьте температуру кроватки. Не делайте её большой(Для PLA пластика оптимальна 60-65 градусов, для PETG 80 градусов)
1. Подпилите настройки под вашу модель ([советы ниже](#3-советы-по-слайсеру)), если надо включите поддержки(Support → Enable Support)
2. Перейдите в Preview чтобы запустить процесс слайсинга (нажать “нарезать стол”). С помощью ползунка можем смотреть, как будет печататься модель послойно (проверяем, что всё устраивает и слайсер не ругается на нависания без поддержек), параллельно можно оценить в появившейся диаграмме время печати и расход пластика (если в конфиге указана плотность пластика и стоимость, но можно оценить массу модели и ее стоимость)
3. Нажимаем на значок Wi-Fi рядом с именем принтера
4. Устанавливаем корректный IP принтера
1. Чтобы узнать ip принтера мы подходим к нему и переходим в настройки network
1. Когда всё готово нажимаем кнопку Print, перед этим необходимо очистить стол обезжиривателем.
## 2. Замена пластика
Я(@Alkekseevich) делаю вручную. на самом принтере ставлю температуру сопла 250 градусов и после того как прогреется вытягиваю пруток так же в меню на дисплее принтера. сматываю катушку, кладу назад в ящик с силикагелем и беру другой пластик. Обрезаю конец, пропихиваю через трубку и экструдирую пока не потечет нормальная нить.
## 3. Советы по слайсеру
### Как определить, нужны ли поддержки
Если у вас есть висящие области (за исключением мостов), берём в слайсере инструмент “рисование поддержек” и закрашиваем область, которая нависает. Если нависание параллельно столу и находится между опорами (как в случае посередине на картинке), то это мост и он печатается натягиванием линий пластика между опорами (поддержки не нужны). Если угол нависания не слишком большой (градусов до 45), то поддержка может и не понадобиться, пробуйте без поддержек.
### Прочность детали
Регулировать прочность детали можно количеством периметров (внешних оболочек модели), чем больше — тем прочнее модель. Если нужна прям жесть какая прочная деталь (шестерёнка для замка, например), то печатаем с максимальным заполнением — идём в настройки печати → заполнение → сплошное заполнение каждые: 1 слой.
## 4. Как сделать конфиг под свой пластик
* Идем на гитхаб орки (калибровка → руководство) #заметьте, ссылка кликабельно только в режиме “подготовка”
* Делаем все по списку, ничего сложного в процессе подготовки конфига под Ваш пластик нет, но процесс довольно времязатратен.
> **Важно чтобы пластик был высушен, особенно летом. неподготовленная катушка ведет себя непредсказуемо**
## 5. Траблшутинг
* Принтер не подключается / выдает ошибку 503, 404, 403 и т.п.
Сверьте IP адрес в меню самого принтера и в орке, проверьте что принтер подключен к WI-FI, убедитесь что не стоит галочка “Only LAN”. После всего этого, если не помогло, то выключите принтер из сети, подождите 5-10 секунд и включите снова (софтварная перезагрузка не помогает)
* Пластик не прилипает, слои отслаиваются
Высушите пластик, обязательно протрите стол спиртом или обезжиривателем (не стоит применять растворители и чистим очень хорошо). Если эти два шага не помогли, то идем в Клиппер (в орке тыкаем “Принтер”) и делаем карту стола в меню “Подстройка”, если стол довольно кривой, то необходимо выполнить калибровку стола. Для этого идем в основное меню, и ищем кнопки “Z регулировка наклона”, “Расчет наклона винтами”, “Регулировка винтов стола”. тыкаем, делаем что говорят в терминале и страдаем.
Еще можно без клиппера, я просто в принтере нажимал калибровать стол и винтами крутил, тут есть прикол один. надо открутить железные гайки, потом по щупу (такая железная хреновина 0.3мм я калибрую так чтобы прижим создавал между столом и соплом такое давление чтоб щуп не совсем свободно двигался, в целом просто одинаково сделайте и все) выставляю винты, чуть чуть ослабляю, и потом ключом затягиваю железную гайку(щуп в это время не убирайте, контролируйте прижим)
Если и это не помогает то делаем карту стола и смотрим на перепады. далее убираем магнитный коврик на столе и в нужные места клеим капроновый (желтого цвета) скотч. слои можно клеить друг поверх друга. повторяем операцию пока не надоест и надеемся что стол достаточно ровный.
* Сопло выдает соплю которая соскребает первый слой и ничего не печатается
в ручном режиме греем сопло до температуры пластификации пластика, снимаем кожух(поддеваем снизу и тянем на себя и вверх, в целом там нарисовано) потом аккуратно снимаем “носок” (резинка такая) все чистим от пластика чем нибудь, чистим сопло шомполом, протягиваем пруток на температуре печати. Важно чтобы пруток из сопла шел идеально ровно и не смещал траекторию, если это происходит то сопло забито. еще рекомендуют вытащить филамент из хотэнда и прочистить прутком из чистящего пластика(то ли поликарбонат, то ли пэт, не помню)
* При печати появляются проплешины, переэкструзия и прочие дефекты
причины: некачественный пластик, неподходящий конфиг пластика, неверные параметры обдува и т.п.
## 6. Общие ссылки по 3д-печати
[K3D - Всё о 3d печати](https://t.me/K_3_D)
[K3D // Dmitry Sorkin](https://www.youtube.com/@SorkinDmitry)
[CNC Kitchen](https://www.youtube.com/@CNCKitchen)
[3DMP CHAT](https://t.me/morozpntchat)
[Welcome!](https://ellis3dp.com/Print-Tuning-Guide/)
[Настройки качества печати. Проблемы и решения.](https://3drob.ru/stati/pro_3d_pechat/nastroyki_kachestva_pechati_problemy_i_resheniya)
[Постобработка 3D-печатных изделий из ПЭТГ](https://rec3d.ru/rec-wiki/postobrabotka-3d-pechatnykh-izdeliy-iz-petg/)
## 7. Ссылки по Klipper
[Klipper Wiki](https://klipper.wiki/)
[Welcome - Klipper documentation](https://www.klipper3d.org/)
## 8. Готовые модели для печати
[Thingiverse - Digital Designs for Physical Objects](https://www.thingiverse.com/)
[Printables](https://www.printables.com/)
[Popular models | 3D CAD Model Collection | GrabCAD Community Library](https://grabcad.com/library)
[Cults・Download free 3D printer models・STL, OBJ, 3MF, CAD](https://cults3d.com/)
[3D model community. Search & download free 3D models. Share 3D models](https://thangs.com/)
[Free 3D Printable Files and Designs | Pinshape](https://pinshape.com/)
# Сеть
Source: https://akibahackspace.mintlify.app/infra/network
## Аплинк
У нас подключён Ключ Телеком (с соседнего здания прокинута оптика под окном в хардварной). По Томску линия 1 гигабит, внешка 100 мегабит.
[Личный кабинет для оплаты](https://lk.keytele.com/)
Номер счёта: `36779`
## Локалка
Akiba Hackspace — вайфай от точки доступа, 5 гигагерц, ловит везде
Akiba Hackspace (slow 2.4 GHz) — легаси для устройств которые не умеют в 5 гигагерц (например есп32, включая замок)
Схема подключения (последовательно):
1. Входной роутер Sercomm RV6699 (192.168.8.1). DHCP и апстрим, всё остальное в бридже.
2. Свитч Tenda на 1 гигабит
3. Точка доступа Cudy
```mermaid theme={null}
flowchart LR
Uplink[Ключ Телеком
1 Гбит по городу
100 Мбит внешка]
Router[Sercomm RV6699
192.168.8.1
DHCP + апстрим]
Switch[Tenda
1 Гбит свитч]
AP[Cudy
Wi‑Fi 5 ГГц]
Uplink --> Router --> Switch --> AP
```
# PS2
Source: https://akibahackspace.mintlify.app/infra/ps2
# PS2
## Гайд по запуску PS2
1. включаете PS2 (без диска!)
2. заходите в браузер (большими английскими буквами "browser" написано)
3. заходите на карту памяти (просто открываете ее, дальше щёлкать по файлам на ней не надо)
4. выходите из карты памяти на главный экран (два раза нолик).
//p.s.
на момент 23.07.2024 плойка подключена по SMB к пк в фиолетовой комнате. игры хранятся по пути F:\public\DVD. скачанная игра в формате ISO должна иметь правильное начало имени файла. откуда скачали игру копируем сони айди и приводим к виду который имеют ранее установленные игры
# Как нас найти
Source: https://akibahackspace.mintlify.app/where
[Открыть в Яндекс Картах](https://yandex.ru/maps/-/CDbbB00R) | [Открыть в 2ГИС](https://2gis.ru/tomsk/firm/70000001087416762/)
## Для курьеров
```
Вход — организация “Akiba” в Яндекс Картах и 2ГИС. Въезд с Нахановича, лестница на второй этаж сразу за кафе “Угли и специи”. Жёлтая пристройка, второй этаж, позвонить в звонок.
```