first commit
Some checks are pending
Tasmota Docker test / build (ubuntu-20.04, 3.10) (push) Waiting to run
Tasmota Docker test / build (ubuntu-20.04, 3.11) (push) Waiting to run
Tasmota Docker test / build (ubuntu-22.04, 3.10) (push) Waiting to run
Tasmota Docker test / build (ubuntu-22.04, 3.11) (push) Waiting to run
Publish Docker / build (push) Waiting to run
Some checks are pending
Tasmota Docker test / build (ubuntu-20.04, 3.10) (push) Waiting to run
Tasmota Docker test / build (ubuntu-20.04, 3.11) (push) Waiting to run
Tasmota Docker test / build (ubuntu-22.04, 3.10) (push) Waiting to run
Tasmota Docker test / build (ubuntu-22.04, 3.11) (push) Waiting to run
Publish Docker / build (push) Waiting to run
This commit is contained in:
commit
3a1224ff29
26
.github/workflows/docker-image.yml
vendored
Normal file
26
.github/workflows/docker-image.yml
vendored
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
name: Tasmota Docker test
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
workflow_dispatch: # Manually start a workflow
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
strategy:
|
||||||
|
fail-fast: true
|
||||||
|
matrix:
|
||||||
|
os: [ubuntu-22.04, ubuntu-20.04]
|
||||||
|
python-version: ["3.10", "3.11"]
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- name: Set up Python ${{ matrix.python-version }}
|
||||||
|
uses: actions/setup-python@v5
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
- name: Docker container
|
||||||
|
run: docker build -t docker-tasmota .
|
||||||
|
- name: Clone Tasmota repo
|
||||||
|
run: git clone https://github.com/arendst/Tasmota.git
|
||||||
|
- name: Build a firmware
|
||||||
|
run: bash ./compile.sh tasmota tasmota32
|
||||||
16
.github/workflows/publish.yml
vendored
Normal file
16
.github/workflows/publish.yml
vendored
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
name: Publish Docker
|
||||||
|
on: [push]
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v2
|
||||||
|
- name: Publish to Registry
|
||||||
|
uses: elgohr/Publish-Docker-Github-Action@v5
|
||||||
|
with:
|
||||||
|
name: blakadder/docker-tasmota
|
||||||
|
username: ${{ secrets.DOCKER_USERNAME }}
|
||||||
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||||
|
platforms: linux/amd64,linux/arm64
|
||||||
5
.gitignore
vendored
Normal file
5
.gitignore
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Tasmota/
|
||||||
|
*.log
|
||||||
|
user_config_override.h
|
||||||
|
*.bin
|
||||||
|
*.bin.gz
|
||||||
30
Dockerfile
Normal file
30
Dockerfile
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
FROM python:latest
|
||||||
|
|
||||||
|
LABEL description="Docker Container with a complete build environment for Tasmota using PlatformIO" \
|
||||||
|
version="13.0" \
|
||||||
|
maintainer="blakadder_" \
|
||||||
|
organization="https://github.com/tasmota"
|
||||||
|
|
||||||
|
# Install platformio.
|
||||||
|
RUN pip install --upgrade pip &&\
|
||||||
|
pip install --upgrade platformio
|
||||||
|
|
||||||
|
# Init project
|
||||||
|
COPY init_pio_tasmota /init_pio_tasmota
|
||||||
|
|
||||||
|
# Install project dependencies using a init project.
|
||||||
|
RUN cd /init_pio_tasmota &&\
|
||||||
|
platformio upgrade &&\
|
||||||
|
pio pkg update &&\
|
||||||
|
pio run &&\
|
||||||
|
cd ../ &&\
|
||||||
|
rm -fr init_pio_tasmota &&\
|
||||||
|
cp -r /root/.platformio / &&\
|
||||||
|
mkdir /.cache /.local &&\
|
||||||
|
chmod -R 777 /.platformio /usr/local/lib /.cache /.local
|
||||||
|
|
||||||
|
|
||||||
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
|
|
||||||
|
ENTRYPOINT ["/bin/bash", "/entrypoint.sh"]
|
||||||
|
|
||||||
186
README.md
Normal file
186
README.md
Normal file
@ -0,0 +1,186 @@
|
|||||||
|
# Docker-Tasmota
|
||||||
|
|
||||||
|
Быстрая настройка среды для сборки [Tasmota](https://github.com/arendst/Tasmota) с использованием Docker.
|
||||||
|
|
||||||
|
## le_compile.sh и compile.sh
|
||||||
|
|
||||||
|
Этот скрипт на bash облегчает процесс компиляции, избавляя от необходимости вводить длинные команды каждый раз.
|
||||||
|
|
||||||
|
le_compile.sh и compile.sh предназначен для запуска на Linux-системе с установленными Docker и Git. Если каких-то из них не хватает, скрипт выдаст предупреждение с инструкциями по установке.
|
||||||
|
|
||||||
|
При первом запуске скрипт загрузит последний контейнер blakadder/docker-tasmota (можно изменить скрипт для использования собственного контейнера), клонирует последнюю ветку разработки Tasmota (для клонирования последней стабильной версии установите `USE_STABLE=1` *?(работает только когда используете скрипт compile.sh) ) и скопирует файлы platformio_override.ini и user_config_override.h в папку Tasmota.
|
||||||
|
|
||||||
|
Запуск скрипта с указанием одного или нескольких имен сборок (как указано в platformio_tasmota_env.ini) в качестве параметров скомпилирует только эти сборки, независимо от платформы, указанной в platformio.ini или platformio_override.ini.
|
||||||
|
|
||||||
|
Новый вариант скрипта:
|
||||||
|
`./le_compile.sh -stable=1 -tasmota=v14.2.0 -bins=tasmota-ir`
|
||||||
|
|
||||||
|
компилирует tasmota-sensors.bin и португальскую версию Tasmota:
|
||||||
|
`./compile.sh tasmota-sensors tasmota-PT`
|
||||||
|
|
||||||
|
Если у вас есть файлы `user_config_override.h` или `platformio_override.ini` с пользовательскими настройками, поместите их в папку скрипта, и они будут использованы при следующем запуске.
|
||||||
|
|
||||||
|
Скрипт будет обновлять папку репозитория до актуальной версии при каждом запуске.
|
||||||
|
|
||||||
|
Чтобы проверить логи компиляции, используйте `tail -f docker-tasmota.log` или `cat docker-tasmota.log`.
|
||||||
|
|
||||||
|
## Вариант 1: Настройка готового Docker-контейнера с использованием le_compile.sh
|
||||||
|
|
||||||
|
1. Клонируйте этот репозиторий и перейдите в каталог, где он был клонирован (оригинальая версия: https://github.com/tasmota/docker-tasmota):
|
||||||
|
```
|
||||||
|
git clone https://mygit.lkaz.ru/lukas91/docker-Tasmota-platformio-esp8266-esp32
|
||||||
|
cd docker-tasmota
|
||||||
|
```
|
||||||
|
2. Обновите файлы `user_config_override.h` и/или `platformio_override.ini` с вашими настройками сборки.
|
||||||
|
3. Запустите le_compile.sh с нужным именем сборки, например:
|
||||||
|
```
|
||||||
|
./le_compile.sh -bins=tasmota
|
||||||
|
```
|
||||||
|
или
|
||||||
|
```
|
||||||
|
./compile.sh tasmota
|
||||||
|
```
|
||||||
|
При необходимости скрипт `le_compile.sh` установит контейнер и репозиторий Tasmota, если вы введете «yes», когда будет предложено.
|
||||||
|
|
||||||
|
5. По завершении компиляции скомпилированные бинарные файлы и архивы будут находиться в `Tasmota/build_output/firmware`, и их можно будет прошить на устройства.
|
||||||
|
|
||||||
|
Примечание: Чтобы обновить ранее установленный образ Docker с помощью скрипта `compile.sh`, выполните:
|
||||||
|
```
|
||||||
|
docker pull blakadder/docker-tasmota
|
||||||
|
```
|
||||||
|
|
||||||
|
## Вариант 2: Настройка Docker-контейнера с нуля
|
||||||
|
|
||||||
|
1. Клонируйте этот репозиторий и перейдите в каталог, где он был клонирован (оригинальая версия: https://github.com/tasmota/docker-tasmota):
|
||||||
|
```
|
||||||
|
git clone https://mygit.lkaz.ru/lukas91/docker-Tasmota-platformio-esp8266-esp32
|
||||||
|
cd docker-tasmota
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Запустите следующую команду для сборки Docker-контейнера:
|
||||||
|
`docker build -t docker-tasmota .`
|
||||||
|
|
||||||
|
3. Перейдите в директорию, куда вы хотите клонировать репозиторий Tasmota:
|
||||||
|
```
|
||||||
|
git clone https://github.com/arendst/Tasmota.git
|
||||||
|
```
|
||||||
|
Если у вас есть файлы `user_config_override.h` или `platformio_override.ini` с пользовательскими настройками, поместите их в папку `Tasmota/tasmota`.
|
||||||
|
|
||||||
|
4. Из той же директории выполните команду для компиляции нужной сборки:
|
||||||
|
`docker run -ti --rm -v $(pwd)/Tasmota:/tasmota -u $UID:$GID docker-tasmota -e tasmota-PT`
|
||||||
|
|
||||||
|
> `-e <buildname>`, где <buildname> может быть любой из [сборок, указанных в platformio.ini](https://github.com/arendst/Tasmota/blob/063611314777d4dd9dc8c25905f19f8b25f510aa/platformio.ini#L18). Если сборка не указана, будет скомпилирована ***каждая***.
|
||||||
|
|
||||||
|
5. По завершении компиляции скомпилированные бинарные файлы и архивы будут находиться в `Tasmota/build_output/firmware` для прошивки на устройства.
|
||||||
|
|
||||||
|
## Переход на ветку, отличную от development
|
||||||
|
|
||||||
|
`cd Tasmota`
|
||||||
|
|
||||||
|
Просмотрите доступные ветки с помощью `git branch -a`.
|
||||||
|
|
||||||
|
Перейдите на ветку release с командой:
|
||||||
|
|
||||||
|
`git checkout release`
|
||||||
|
|
||||||
|
Соберите и запустите:
|
||||||
|
```docker
|
||||||
|
docker run -ti --rm \
|
||||||
|
-v $(pwd)/Tasmota:/tasmota \
|
||||||
|
-u $UID:$GID docker-tasmota
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
# ENG:
|
||||||
|
|
||||||
|
# Docker-Tasmota
|
||||||
|
|
||||||
|
Quick setup for building [Tasmota](https://github.com/arendst/Tasmota) using Docker.
|
||||||
|
|
||||||
|
## le_compile.sh and compile.sh
|
||||||
|
|
||||||
|
This bash script simplifies the compilation process, avoiding the need to type long commands every time.
|
||||||
|
|
||||||
|
le_compile.sh and compile.sh are designed to run on a Linux system with Docker and Git installed. If any are missing, the script will show a warning with installation instructions.
|
||||||
|
|
||||||
|
When run for the first time, the script will pull the latest blakadder/docker-tasmota container (you can modify the script to use your own container), clone the latest Tasmota development branch (for cloning the latest stable version, set `USE_STABLE=1` *?(only works when using the compile.sh script) ), and copy the platformio_override.ini and user_config_override.h files into the Tasmota folder.
|
||||||
|
|
||||||
|
Running the script with one or more build names (as listed in platformio_tasmota_env.ini) as parameters will compile only those builds, regardless of platformio.ini or platformio_override.ini.
|
||||||
|
|
||||||
|
New script variant:
|
||||||
|
`./le_compile.sh -stable=1 -tasmota=v14.2.0 -bins=tasmota-ir`
|
||||||
|
|
||||||
|
compiles the tasmota-sensors.bin and Portuguese version of Tasmota:
|
||||||
|
`./compile.sh tasmota-sensors tasmota-PT`
|
||||||
|
|
||||||
|
If you have `user_config_override.h` or `platformio_override.ini` files with custom settings, place them in the script folder, and they will be used on the next run.
|
||||||
|
|
||||||
|
The script will update the repository folder with the latest version every time it runs.
|
||||||
|
|
||||||
|
To check compilation logs, use `tail -f docker-tasmota.log` or `cat docker-tasmota.log`.
|
||||||
|
|
||||||
|
## Option 1: Setup the prebuilt Docker container using le_compile.sh
|
||||||
|
|
||||||
|
1. Clone this repository and go to the directory where it was cloned (original version: https://github.com/tasmota/docker-tasmota):
|
||||||
|
```
|
||||||
|
git clone https://mygit.lkaz.ru/lukas91/docker-Tasmota-platformio-esp8266-esp32
|
||||||
|
cd docker-tasmota
|
||||||
|
```
|
||||||
|
2. Update the `user_config_override.h` and/or `platformio_override.ini` files with your custom build settings.
|
||||||
|
3. Run le_compile.sh with the desired build name, for example:
|
||||||
|
```
|
||||||
|
./le_compile.sh -bins=tasmota
|
||||||
|
```
|
||||||
|
or
|
||||||
|
```
|
||||||
|
./compile.sh tasmota
|
||||||
|
```
|
||||||
|
If necessary, the `le_compile.sh` script will install the container and Tasmota repository if you type "yes" when prompted.
|
||||||
|
|
||||||
|
5. When compilation finishes, the compiled binaries and gzipped files will be in `Tasmota/build_output/firmware` and can be flashed to your devices.
|
||||||
|
|
||||||
|
Note: To update a previously installed Docker image with the `compile.sh` script, run:
|
||||||
|
```
|
||||||
|
docker pull blakadder/docker-tasmota
|
||||||
|
```
|
||||||
|
|
||||||
|
## Option 2: Setting up a Docker container from scratch
|
||||||
|
|
||||||
|
1. Clone this repository and go to the directory where it was cloned (original version: https://github.com/tasmota/docker-tasmota):
|
||||||
|
```
|
||||||
|
git clone https://mygit.lkaz.ru/lukas91/docker-Tasmota-platformio-esp8266-esp32
|
||||||
|
cd docker-tasmota
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Run the following command to build the Docker container:
|
||||||
|
`docker build -t docker-tasmota .`
|
||||||
|
|
||||||
|
3. Go to the directory where you want to clone the Tasmota repository:
|
||||||
|
```
|
||||||
|
git clone https://github.com/arendst/Tasmota.git
|
||||||
|
```
|
||||||
|
If you have `user_config_override.h` or `platformio_override.ini` files with custom settings, place them under `Tasmota/tasmota`.
|
||||||
|
|
||||||
|
4. From the same directory, run the command to compile the desired build:
|
||||||
|
`docker run -ti --rm -v $(pwd)/Tasmota:/tasmota -u $UID:$GID docker-tasmota -e tasmota-PT`
|
||||||
|
|
||||||
|
> `-e <buildname>`, where <buildname> can be any of the [builds listed in platformio.ini](https://github.com/arendst/Tasmota/blob/063611314777d4dd9dc8c25905f19f8b25f510aa/platformio.ini#L18). If no build is specified, ***every*** build will be compiled.
|
||||||
|
|
||||||
|
5. When compilation finishes, the compiled binaries and gzipped files will be in `Tasmota/build_output/firmware` for flashing to devices.
|
||||||
|
|
||||||
|
## Switching to a branch other than development
|
||||||
|
|
||||||
|
`cd Tasmota`
|
||||||
|
|
||||||
|
View available branches with `git branch -a`.
|
||||||
|
|
||||||
|
Switch to the release branch with:
|
||||||
|
|
||||||
|
`git checkout release`
|
||||||
|
|
||||||
|
Build it and run:
|
||||||
|
```docker
|
||||||
|
docker run -ti --rm \
|
||||||
|
-v $(pwd)/Tasmota:/tasmota \
|
||||||
|
-u $UID:$GID docker-tasmota
|
||||||
|
```
|
||||||
134
compile.sh
Executable file
134
compile.sh
Executable file
@ -0,0 +1,134 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Copy this bash script to a directory below /Tasmota and run from there
|
||||||
|
|
||||||
|
CHECK_MARK="\033[0;32m\xE2\x9C\x94\033[0m"
|
||||||
|
rundir=$(dirname $(readlink -f $0))
|
||||||
|
|
||||||
|
# use default docker-tasmota image from hub.docker.com
|
||||||
|
DOCKER_IMAGE=${DOCKER_IMAGE:="blakadder/docker-tasmota"}
|
||||||
|
# uncomment and change if you want to run a locally built image
|
||||||
|
# or set DOCKER_IMAGE as environment variable before starting this script
|
||||||
|
#DOCKER_IMAGE=docker-tasmota
|
||||||
|
|
||||||
|
# Set to `1=true` to use latest stable release tag
|
||||||
|
# Set to `0=false` to use `development` branch (default)
|
||||||
|
# USE_STABLE=${USE_STABLE:="0"}
|
||||||
|
USE_STABLE=1
|
||||||
|
TASMOTA_BRANCH="v14.2.0"
|
||||||
|
|
||||||
|
USE_VOLUME=${USE_VOLUME:="`pwd`/Tasmota"}
|
||||||
|
|
||||||
|
## Check whether Tasmota/ exists and fetch newest Tasmota version from development branch
|
||||||
|
if test -d "`pwd`/Tasmota"; then
|
||||||
|
cd Tasmota
|
||||||
|
git fetch https://github.com/arendst/Tasmota.git development
|
||||||
|
git fetch --all --tags
|
||||||
|
if [ "$USE_STABLE" = "1" ]; then
|
||||||
|
if [ -z "${TASMOTA_BRANCH}" ]; then
|
||||||
|
echo -e "Checking Tasmota GitHub for the most recent release version"
|
||||||
|
TASMOTA_BRANCH=$(wget -qO - https://api.github.com/repos/arendst/Tasmota/releases/latest | grep -oP 'tag_name"\s*:\s*"\K[^"]+')
|
||||||
|
else
|
||||||
|
echo -e "getting version \"${TASMOTA_BRANCH}\" from GitHub"
|
||||||
|
fi
|
||||||
|
git checkout --force $TASMOTA_BRANCH >/dev/null 2>&1
|
||||||
|
else
|
||||||
|
echo -e "Checking Tasmota GitHub for the most recent development version"
|
||||||
|
TASMOTA_BRANCH=development
|
||||||
|
git reset --hard origin/$TASMOTA_BRANCH > /dev/null 2>&1
|
||||||
|
git pull origin $TASMOTA_BRANCH > /dev/null 2>&1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$TASMOTA_BRANCH" ]; then
|
||||||
|
echo -e "Failed to fetch/set Tasmota branch! Check internet connection and try again."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $rundir
|
||||||
|
echo -e "\nRunning Docker Tasmota on Tasmota version $TASMOTA_BRANCH\n"
|
||||||
|
# Check if docker installed
|
||||||
|
if [[ "$(type -t docker)" == "file" ]] ; then
|
||||||
|
## Display builds
|
||||||
|
if [ $# -eq 0 ]; then
|
||||||
|
## Check script dir for platformio_override.ini
|
||||||
|
if test -e "platformio_override.ini"; then
|
||||||
|
echo -e "Compiling builds defined in platformio_override.ini. Default file is overwritten.\n"
|
||||||
|
cp platformio_override.ini Tasmota/platformio_override.ini
|
||||||
|
else
|
||||||
|
echo -e "\e[31mCompiling ALL BUILDS!!!!\n\n\e[7mIf you wish to quit use ctrl+C\e[0m"
|
||||||
|
sleep 4
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
## Display chosen builds
|
||||||
|
echo -e "Compiling builds:"
|
||||||
|
for build in "$@"
|
||||||
|
do
|
||||||
|
echo -e "$build"
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
echo -e "\n"
|
||||||
|
fi
|
||||||
|
## Check script dir for custom user_config_override.h
|
||||||
|
if test -e "user_config_override.h"; then
|
||||||
|
## new Tasmota builds have this enabled as default
|
||||||
|
## sed -i 's/^; *-DUSE_CONFIG_OVERRIDE/ -DUSE_CONFIG_OVERRIDE/' Tasmota/platformio.ini
|
||||||
|
cp user_config_override.h Tasmota/tasmota/user_config_override.h
|
||||||
|
echo -e "Using your user_config_override.h and overwriting the existing file\n"
|
||||||
|
fi
|
||||||
|
## Run container with provided arguments
|
||||||
|
echo -n "Compiling..."
|
||||||
|
test -t 1 && DOCKER_TTY="-it"
|
||||||
|
if [ $# -ne 0 ]; then
|
||||||
|
if [[ $@ == "tasmota"* ]]; then
|
||||||
|
if [ "${USE_TEE}" = "1" ]; then
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE $(printf ' -e %s' $@) 2>&1 | tee ${TEE_PARAMETER} docker-tasmota.log
|
||||||
|
else
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE $(printf ' -e %s' $@) 2>&1 > docker-tasmota.log
|
||||||
|
fi
|
||||||
|
echo -e "\\r${CHECK_MARK} Finished! \tCompilation log in docker-tasmota.log\n"
|
||||||
|
else
|
||||||
|
echo -e "\\r\e[31mNot a valid build environment."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [ "${USE_TEE}" = "1" ]; then
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE 2>&1 | tee ${TEE_PARAMETER} docker-tasmota.log
|
||||||
|
else
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE 2>&1 > docker-tasmota.log
|
||||||
|
fi
|
||||||
|
echo -e "\\r${CHECK_MARK} Finished! \tCompilation log in docker-tasmota.log\n"
|
||||||
|
echo -e "Find your builds in $rundir/Tasmota/build_output/firmware\n"
|
||||||
|
fi
|
||||||
|
## After docker is completed copy firmware to script dir and rename to buildname
|
||||||
|
for build in "$@"
|
||||||
|
do
|
||||||
|
cp "$rundir"/Tasmota/build_output/firmware/"$build"* "$rundir"/
|
||||||
|
if test -e "$build".bin; then
|
||||||
|
echo -e "Completed! Your firmware is in $rundir/$build.bin\n"
|
||||||
|
else
|
||||||
|
echo -e "\e[31m\e[5mWARNING:\e[0m"
|
||||||
|
echo -e "Something went wrong while compiling $build. Check compilation log\n"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
else
|
||||||
|
echo -e "\nNo Docker detected. Please install docker:\n\n\tcurl -fsSL https://get.docker.com -o get-docker.sh\n\tsh get-docker.sh\n"
|
||||||
|
# fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [[ "$(type -t git)" == "file" ]] ; then
|
||||||
|
echo -e "\nNo Tasmota Git repository found in directory.\nDo you wish to clone Tasmota GitHub repository to current directory?"
|
||||||
|
read -p "Enter to exit, "yes" to proceed: " answer
|
||||||
|
case ${answer:0:1} in
|
||||||
|
y|yes )
|
||||||
|
git clone https://github.com/arendst/Tasmota.git --branch development
|
||||||
|
bash $(basename $0) && exit
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
echo -e "\nPlease install "git" to proceed:\n\n\tDebian/Ubuntu/Mint:\tsudo apt-get install git\n\tFedora:\t\t\tsu -c 'yum install git'\n\topenSUSE:\t\tsudo zypper in git\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
14
entrypoint.sh
Normal file
14
entrypoint.sh
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# Оригинальный entrypoint.sh
|
||||||
|
#!/bin/bash
|
||||||
|
TASMOTA_VOLUME='/tasmota'
|
||||||
|
|
||||||
|
if [ -d $TASMOTA_VOLUME ]; then
|
||||||
|
cd $TASMOTA_VOLUME
|
||||||
|
echo "Compiling Tasmota ..."
|
||||||
|
echo "Arguments received by entrypoint: $@"
|
||||||
|
pio run "$@"
|
||||||
|
echo "All done! Find your builds in Tasmota/build_output/firmware/"
|
||||||
|
else
|
||||||
|
echo ">>> NO TASMOTA VOLUME MOUNTED --> EXITING"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
6
init_pio_tasmota/platformio.ini
Normal file
6
init_pio_tasmota/platformio.ini
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
; env used ONLY to install core dependencies on container build
|
||||||
|
|
||||||
|
[env:esp8266]
|
||||||
|
platform=https://github.com/tasmota/platform-espressif8266/releases/download/2024.01.01/platform-espressif8266.zip
|
||||||
|
board=esp01_1m
|
||||||
|
framework=arduino
|
||||||
3
init_pio_tasmota/src/main.cpp
Normal file
3
init_pio_tasmota/src/main.cpp
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
#include <Arduino.h>
|
||||||
|
void setup() {}
|
||||||
|
void loop() {}
|
||||||
161
le_compile.sh
Executable file
161
le_compile.sh
Executable file
@ -0,0 +1,161 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Начальные переменные
|
||||||
|
CHECK_MARK="\033[0;32m\xE2\x9C\x94\033[0m"
|
||||||
|
rundir=$(dirname $(readlink -f $0))
|
||||||
|
|
||||||
|
DOCKER_IMAGE=${DOCKER_IMAGE:="blakadder/docker-tasmota"}
|
||||||
|
USE_STABLE=0 # По умолчанию development
|
||||||
|
TASMOTA_BRANCH="development" # По умолчанию ветка разработки
|
||||||
|
USE_VOLUME=${USE_VOLUME:="`pwd`/Tasmota"}
|
||||||
|
|
||||||
|
# Функция завершения, вызываемая при прерывании
|
||||||
|
cleanup() {
|
||||||
|
echo -e "\nСкрипт был прерван пользователем. Завершение..."
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Перехват сигнала SIGINT для обработки прерывания
|
||||||
|
trap cleanup SIGINT
|
||||||
|
|
||||||
|
# Парсинг аргументов командной строки
|
||||||
|
for arg in "$@"
|
||||||
|
do
|
||||||
|
case $arg in
|
||||||
|
-stable=*)
|
||||||
|
USE_STABLE="${arg#*=}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-tasmota=*)
|
||||||
|
TASMOTA_BRANCH="${arg#*=}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-bins=*)
|
||||||
|
BIN_FILES="${arg#*=}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Неизвестный параметр: $arg"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
## Проверка наличия каталога Tasmota и обновление
|
||||||
|
if test -d "`pwd`/Tasmota"; then
|
||||||
|
cd Tasmota
|
||||||
|
git fetch https://github.com/arendst/Tasmota.git development
|
||||||
|
git fetch --all --tags
|
||||||
|
|
||||||
|
# Проверка на стабильную версию или ветку разработки
|
||||||
|
if [ "$USE_STABLE" = "1" ]; then
|
||||||
|
if [ -z "${TASMOTA_BRANCH}" ]; then
|
||||||
|
echo -e "Проверка последней стабильной версии на GitHub"
|
||||||
|
TASMOTA_BRANCH=$(wget -qO - https://api.github.com/repos/arendst/Tasmota/releases/latest | grep -oP 'tag_name"\s*:\s*"\K[^"]+')
|
||||||
|
else
|
||||||
|
echo -e "Используется версия \"${TASMOTA_BRANCH}\""
|
||||||
|
fi
|
||||||
|
git checkout --force $TASMOTA_BRANCH >/dev/null 2>&1
|
||||||
|
else
|
||||||
|
echo -e "Используется версия разработки"
|
||||||
|
TASMOTA_BRANCH="development"
|
||||||
|
git reset --hard origin/$TASMOTA_BRANCH > /dev/null 2>&1
|
||||||
|
git pull origin $TASMOTA_BRANCH > /dev/null 2>&1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$TASMOTA_BRANCH" ]; then
|
||||||
|
echo -e "Ошибка при получении ветки Tasmota. Проверьте подключение к интернету и повторите попытку."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $rundir
|
||||||
|
echo -e "\nЗапуск Docker Tasmota на версии $TASMOTA_BRANCH\n"
|
||||||
|
|
||||||
|
# Проверка наличия Docker
|
||||||
|
if [[ "$(type -t docker)" == "file" ]] ; then
|
||||||
|
## Проверка и копирование platformio_override.ini
|
||||||
|
if test -e "platformio_override.ini"; then
|
||||||
|
echo -e "Используется platformio_override.ini для определения сборок."
|
||||||
|
cp platformio_override.ini Tasmota/platformio_override.ini
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Проверка и копирование user_config_override.h
|
||||||
|
if test -e "user_config_override.h"; then
|
||||||
|
echo -e "Используется пользовательская конфигурация user_config_override.h."
|
||||||
|
cp user_config_override.h Tasmota/tasmota/user_config_override.h
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Компиляция указанных сборок
|
||||||
|
if [ -n "$BIN_FILES" ]; then
|
||||||
|
IFS=',' read -r -a builds <<< "$BIN_FILES"
|
||||||
|
echo -e "Компиляция следующих сборок:"
|
||||||
|
for build in "${builds[@]}"
|
||||||
|
do
|
||||||
|
echo -e "$build"
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
echo -e "\n"
|
||||||
|
else
|
||||||
|
# Если сборки не указаны, по умолчанию компилируем все
|
||||||
|
echo -e "\e[31mКомпиляция ВСЕХ СБОРОК!!!!\n\n\e[7mДля выхода используйте ctrl+C\e[0m"
|
||||||
|
sleep 4
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Запуск контейнера Docker с компиляцией
|
||||||
|
echo -n "Компиляция..."
|
||||||
|
test -t 1 && DOCKER_TTY="-it"
|
||||||
|
if [ -n "$BIN_FILES" ]; then
|
||||||
|
if [[ "${builds[0]}" == "tasmota"* ]]; then
|
||||||
|
if [ "${USE_TEE}" = "1" ]; then
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE $(printf ' -e %s' "${builds[@]}") 2>&1 | tee ${TEE_PARAMETER} docker-tasmota.log
|
||||||
|
else
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE $(printf ' -e %s' "${builds[@]}") 2>&1 > docker-tasmota.log
|
||||||
|
fi
|
||||||
|
echo -e "\\r${CHECK_MARK} Готово! Лог компиляции записан в docker-tasmota.log\n"
|
||||||
|
else
|
||||||
|
echo -e "\\r\e[31mНедействительная сборочная среда."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [ "${USE_TEE}" = "1" ]; then
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE 2>&1 | tee ${TEE_PARAMETER} docker-tasmota.log
|
||||||
|
else
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE 2>&1 > docker-tasmota.log
|
||||||
|
fi
|
||||||
|
echo -e "\\r${CHECK_MARK} Готово! Лог компиляции записан в docker-tasmota.log\n"
|
||||||
|
echo -e "Сборки находятся в $rundir/Tasmota/build_output/firmware\n"
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Копирование прошивки после завершения Docker
|
||||||
|
for build in "${builds[@]}"
|
||||||
|
do
|
||||||
|
cp "$rundir"/Tasmota/build_output/firmware/"$build"* "$rundir"/
|
||||||
|
if test -e "$build".bin; then
|
||||||
|
echo -e "Завершено! Прошивка доступна в $rundir/$build.bin\n"
|
||||||
|
else
|
||||||
|
echo -e "\e[31m\e[5mПРЕДУПРЕЖДЕНИЕ:\e[0m"
|
||||||
|
echo -e "Произошла ошибка при компиляции $build. Проверьте лог компиляции\n"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
else
|
||||||
|
echo -e "\nDocker не найден. Установите его с помощью:\n\n\tcurl -fsSL https://get.docker.com -o get-docker.sh\n\tsh get-docker.sh\n"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# Клонирование репозитория Tasmota, если каталог отсутствует
|
||||||
|
if [[ "$(type -t git)" == "file" ]] ; then
|
||||||
|
echo -e "\nРепозиторий Tasmota не найден в текущем каталоге.\nКлонировать его с GitHub в текущий каталог?"
|
||||||
|
read -p "Нажмите Enter для выхода или \"yes\" для продолжения: " answer
|
||||||
|
case ${answer:0:1} in
|
||||||
|
y|Y )
|
||||||
|
git clone https://github.com/arendst/Tasmota.git --branch development
|
||||||
|
bash $(basename $0) && exit
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
echo -e "\nУстановите \"git\" для продолжения:\n\n\tDebian/Ubuntu/Mint:\tsudo apt-get install git\n\tFedora:\t\t\tsu -c 'yum install git'\n\topenSUSE:\t\tsudo zypper in git\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
139
le_compile.sh2
Executable file
139
le_compile.sh2
Executable file
@ -0,0 +1,139 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Начальные переменные
|
||||||
|
CHECK_MARK="\033[0;32m\xE2\x9C\x94\033[0m"
|
||||||
|
rundir=$(dirname $(readlink -f $0))
|
||||||
|
|
||||||
|
DOCKER_IMAGE=${DOCKER_IMAGE:="blakadder/docker-tasmota"}
|
||||||
|
USE_STABLE=0 # По умолчанию development
|
||||||
|
TASMOTA_BRANCH="development" # По умолчанию ветка разработки
|
||||||
|
USE_VOLUME=${USE_VOLUME:="`pwd`/Tasmota"}
|
||||||
|
|
||||||
|
# Парсинг аргументов командной строки
|
||||||
|
for arg in "$@"
|
||||||
|
do
|
||||||
|
case $arg in
|
||||||
|
-stable=*)
|
||||||
|
USE_STABLE="${arg#*=}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-tasmota=*)
|
||||||
|
TASMOTA_BRANCH="${arg#*=}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-bins=*)
|
||||||
|
BIN_FILES="${arg#*=}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Неизвестный параметр: $arg"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
## Проверка наличия каталога Tasmota и обновление
|
||||||
|
if test -d "`pwd`/Tasmota"; then
|
||||||
|
cd Tasmota
|
||||||
|
git fetch https://github.com/arendst/Tasmota.git development
|
||||||
|
git fetch --all --tags
|
||||||
|
|
||||||
|
# Проверка на стабильную версию или ветку разработки
|
||||||
|
if [ "$USE_STABLE" = "1" ]; then
|
||||||
|
if [ -z "${TASMOTA_BRANCH}" ]; then
|
||||||
|
echo -e "Проверка последней стабильной версии на GitHub"
|
||||||
|
TASMOTA_BRANCH=$(wget -qO - https://api.github.com/repos/arendst/Tasmota/releases/latest | grep -oP 'tag_name"\s*:\s*"\K[^"]+')
|
||||||
|
else
|
||||||
|
echo -e "Используется версия \"${TASMOTA_BRANCH}\""
|
||||||
|
fi
|
||||||
|
git checkout --force $TASMOTA_BRANCH >/dev/null 2>&1
|
||||||
|
else
|
||||||
|
echo -e "Используется версия разработки"
|
||||||
|
TASMOTA_BRANCH="development"
|
||||||
|
git reset --hard origin/$TASMOTA_BRANCH > /dev/null 2>&1
|
||||||
|
git pull origin $TASMOTA_BRANCH > /dev/null 2>&1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$TASMOTA_BRANCH" ]; then
|
||||||
|
echo -e "Ошибка при получении ветки Tasmota. Проверьте подключение к интернету и повторите попытку."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $rundir
|
||||||
|
echo -e "\nЗапуск Docker Tasmota на версии $TASMOTA_BRANCH\n"
|
||||||
|
# Проверка наличия Docker
|
||||||
|
if [[ "$(type -t docker)" == "file" ]] ; then
|
||||||
|
## Компиляция указанных сборок
|
||||||
|
if [ -n "$BIN_FILES" ]; then
|
||||||
|
IFS=',' read -r -a builds <<< "$BIN_FILES"
|
||||||
|
echo -e "Компиляция следующих сборок:"
|
||||||
|
for build in "${builds[@]}"
|
||||||
|
do
|
||||||
|
echo -e "$build"
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
echo -e "\n"
|
||||||
|
else
|
||||||
|
# Если сборки не указаны, по умолчанию компилируем все
|
||||||
|
echo -e "\e[31mКомпиляция ВСЕХ СБОРОК!!!!\n\n\e[7mДля выхода используйте ctrl+C\e[0m"
|
||||||
|
sleep 4
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Запуск контейнера Docker с компиляцией
|
||||||
|
echo -n "Компиляция..."
|
||||||
|
test -t 1 && DOCKER_TTY="-it"
|
||||||
|
if [ -n "$BIN_FILES" ]; then
|
||||||
|
if [[ "${builds[0]}" == "tasmota"* ]]; then
|
||||||
|
if [ "${USE_TEE}" = "1" ]; then
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE $(printf ' -e %s' "${builds[@]}") 2>&1 | tee ${TEE_PARAMETER} docker-tasmota.log
|
||||||
|
else
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE $(printf ' -e %s' "${builds[@]}") 2>&1 > docker-tasmota.log
|
||||||
|
fi
|
||||||
|
echo -e "\\r${CHECK_MARK} Готово! Лог компиляции записан в docker-tasmota.log\n"
|
||||||
|
else
|
||||||
|
echo -e "\\r\e[31mНедействительная сборочная среда."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [ "${USE_TEE}" = "1" ]; then
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE 2>&1 | tee ${TEE_PARAMETER} docker-tasmota.log
|
||||||
|
else
|
||||||
|
docker run ${DOCKER_TTY} --rm -v "${USE_VOLUME}":/tasmota -u $UID:$GID $DOCKER_IMAGE 2>&1 > docker-tasmota.log
|
||||||
|
fi
|
||||||
|
echo -e "\\r${CHECK_MARK} Готово! Лог компиляции записан в docker-tasmota.log\n"
|
||||||
|
echo -e "Сборки находятся в $rundir/Tasmota/build_output/firmware\n"
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Копирование прошивки после завершения Docker
|
||||||
|
for build in "${builds[@]}"
|
||||||
|
do
|
||||||
|
cp "$rundir"/Tasmota/build_output/firmware/"$build"* "$rundir"/
|
||||||
|
if test -e "$build".bin; then
|
||||||
|
echo -e "Завершено! Прошивка доступна в $rundir/$build.bin\n"
|
||||||
|
else
|
||||||
|
echo -e "\e[31m\e[5mПРЕДУПРЕЖДЕНИЕ:\e[0m"
|
||||||
|
echo -e "Произошла ошибка при компиляции $build. Проверьте лог компиляции\n"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
else
|
||||||
|
echo -e "\nDocker не найден. Установите его с помощью:\n\n\tcurl -fsSL https://get.docker.com -o get-docker.sh\n\tsh get-docker.sh\n"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# Клонирование репозитория Tasmota, если каталог отсутствует
|
||||||
|
if [[ "$(type -t git)" == "file" ]] ; then
|
||||||
|
echo -e "\nРепозиторий Tasmota не найден в текущем каталоге.\nКлонировать его с GitHub в текущий каталог?"
|
||||||
|
read -p "Нажмите Enter для выхода или \"yes\" для продолжения: " answer
|
||||||
|
case ${answer:0:1} in
|
||||||
|
y|Y )
|
||||||
|
git clone https://github.com/arendst/Tasmota.git --branch development
|
||||||
|
bash $(basename $0) && exit
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
echo -e "\nУстановите \"git\" для продолжения:\n\n\tDebian/Ubuntu/Mint:\tsudo apt-get install git\n\tFedora:\t\t\tsu -c 'yum install git'\n\topenSUSE:\t\tsudo zypper in git\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
50
user_config_override_example.h
Normal file
50
user_config_override_example.h
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
#ifndef _USER_CONFIG_OVERRIDE_H_
|
||||||
|
#define _USER_CONFIG_OVERRIDE_H_
|
||||||
|
|
||||||
|
#define USE_IR_RECEIVE // Включает функциональность для приема ИК-сигнала
|
||||||
|
#define USE_IR_REMOTE // Включает функциональность ИК-пульта
|
||||||
|
#define USE_IR_REMOTE_FULL
|
||||||
|
#define USE_IR_SEND_BANG_OLUFSEN // Включает отправку ИК-сигналов для устройств Bang & Olufsen (аудио- и видеотехника)
|
||||||
|
#define USE_IR_SEND_BOILER // Включает отправку ИК-сигналов для котлов отопления и обогревателей, использующих ИК-управление
|
||||||
|
#define USE_IR_SEND_CARRIER // Включает отправку ИК-сигналов для кондиционеров Carrier
|
||||||
|
#define USE_IR_SEND_CONVOTHERM // Включает отправку ИК-сигналов для устройств Convotherm (используется в профессиональной кухонной технике)
|
||||||
|
#define USE_IR_SEND_COOLIX // Включает отправку ИК-сигналов в формате Coolix (используется в кондиционерах, часто китайского производства)
|
||||||
|
#define USE_IR_SEND_DAIKIN // Включает отправку ИК-сигналов для кондиционеров Daikin
|
||||||
|
#define USE_IR_SEND_DAIKIN2 // Включает отправку ИК-сигналов для кондиционеров Daikin (альтернативный формат)
|
||||||
|
#define USE_IR_SEND_DENON // Включает отправку ИК-сигналов в формате Denon (для устройств Denon, часто в аудиооборудовании)
|
||||||
|
#define USE_IR_SEND_DISH // Включает отправку ИК-сигналов для устройств Dish Network
|
||||||
|
#define USE_IR_SEND_ELECTROLUX // Включает отправку ИК-сигналов для кондиционеров и устройств Electrolux
|
||||||
|
#define USE_IR_SEND_FUJITSU // Включает отправку ИК-сигналов для кондиционеров Fujitsu
|
||||||
|
#define USE_IR_SEND_GREE // Включает отправку ИК-сигналов для кондиционеров Gree
|
||||||
|
#define USE_IR_SEND_HAIER // Включает отправку ИК-сигналов для кондиционеров Haier
|
||||||
|
#define USE_IR_SEND_HITACHI // Включает отправку ИК-сигналов для кондиционеров Hitachi
|
||||||
|
#define USE_IR_SEND_HITACHI_AC // Включает отправку ИК-сигналов в специфичном формате для кондиционеров Hitachi
|
||||||
|
#define USE_IR_SEND_KELVINATOR // Включает отправку ИК-сигналов для кондиционеров Kelvinator
|
||||||
|
#define USE_IR_SEND_LG // Включает отправку ИК-сигналов в формате LG (используется в устройствах LG)
|
||||||
|
#define USE_IR_SEND_METZ // Включает отправку ИК-сигналов для устройств Metz (телевизоры)
|
||||||
|
#define USE_IR_SEND_MIDEA // Включает отправку ИК-сигналов для кондиционеров Midea
|
||||||
|
#define USE_IR_SEND_MITSUBISHI // Включает отправку ИК-сигналов для устройств Mitsubishi (в основном для кондиционеров)
|
||||||
|
#define USE_IR_SEND_NEC // Включает отправку ИК-сигналов в формате NEC (используется в устройствах LG, Samsung, Apple и других)
|
||||||
|
#define USE_IR_SEND_NIKAI // Включает отправку ИК-сигналов для устройств Nikai (в основном бытовая техника)
|
||||||
|
#define USE_IR_SEND_ONIDA // Включает отправку ИК-сигналов для устройств Onida (телевизоры)
|
||||||
|
#define USE_IR_SEND_PANASONIC // Включает отправку ИК-сигналов в формате Panasonic (используется в устройствах Panasonic)
|
||||||
|
#define USE_IR_SEND_RC5 // Включает отправку ИК-сигналов в формате RC5 (используется в устройствах Philips)
|
||||||
|
#define USE_IR_SEND_RC6 // Включает отправку ИК-сигналов в формате RC6 (также используется Philips, улучшенная версия RC5)
|
||||||
|
#define USE_IR_SEND_RCA // Включает отправку ИК-сигналов для устройств RCA (в основном телевизоры)
|
||||||
|
#define USE_IR_SEND_RENEWTABLE // Включает отправку ИК-сигналов для восстановления или обновления таблиц пультов
|
||||||
|
#define USE_IR_SEND_SAMSUNG // Включает отправку ИК-сигналов в формате Samsung (используется в устройствах Samsung)
|
||||||
|
#define USE_IR_SEND_SAMSUNG_AC // Включает отправку ИК-сигналов в специфичном формате для кондиционеров Samsung
|
||||||
|
#define USE_IR_SEND_SANYO // Включает отправку ИК-сигналов для кондиционеров и устройств Sanyo
|
||||||
|
#define USE_IR_SEND_SHARP // Включает отправку ИК-сигналов в формате Sharp (используется в устройствах Sharp)
|
||||||
|
#define USE_IR_SEND_SHARP_AC // Включает отправку ИК-сигналов для кондиционеров Sharp
|
||||||
|
#define USE_IR_SEND_SHERWOOD // Включает отправку ИК-сигналов в формате Sherwood (используется в аудиоустройствах Sherwood)
|
||||||
|
#define USE_IR_SEND_SKYWORTH // Включает отправку ИК-сигналов для устройств Skyworth (телевизоры и аудиооборудование)
|
||||||
|
#define USE_IR_SEND_SONY // Включает отправку ИК-сигналов в формате Sony SIRC (используется в устройствах Sony)
|
||||||
|
#define USE_IR_SEND_TCL // Включает отправку ИК-сигналов для устройств TCL (в основном кондиционеры)
|
||||||
|
#define USE_IR_SEND_TECO // Включает отправку ИК-сигналов для кондиционеров Teco
|
||||||
|
#define USE_IR_SEND_TOSHIBA // Включает отправку ИК-сигналов для кондиционеров Toshiba
|
||||||
|
#define USE_IR_SEND_UNIVERSAL // Включает отправку универсальных ИК-сигналов для различных совместимых устройств
|
||||||
|
#define USE_IR_SEND_VESTEL // Включает отправку ИК-сигналов для устройств Vestel (в основном телевизоры)
|
||||||
|
#define USE_IR_SEND_WHYNTER // Включает отправку ИК-сигналов для кондиционеров Whynter
|
||||||
|
|
||||||
|
#endif
|
||||||
Loading…
Reference in New Issue
Block a user