Нет описания

Sandro Kalatozishvili 8b2c1c6d5c Increased version 1 год назад
.flipcorg 6c0de2da96 Implemented alternative names functionality (#9) 1 год назад
.vscode a08a27baaf Finished learn mode and signal analyzer (#3) 2 лет назад
assets 58382671e3 Updated icons, layout and button pressing stuff 2 лет назад
docs 092e816301 Enabled alt names by default, added eject button support 1 год назад
infrared 6c0de2da96 Implemented alternative names functionality (#9) 1 год назад
screens 6c0de2da96 Implemented alternative names functionality (#9) 1 год назад
views 092e816301 Enabled alt names by default, added eject button support 1 год назад
.gitignore 71dbac978a Initial commit 2 лет назад
LICENSE 3ac5d47f0c Initial commit 2 лет назад
README.md 092e816301 Enabled alt names by default, added eject button support 1 год назад
application.fam 092e816301 Enabled alt names by default, added eject button support 1 год назад
deploy.sh 6c0de2da96 Implemented alternative names functionality (#9) 1 год назад
xremote.c 6c0de2da96 Implemented alternative names functionality (#9) 1 год назад
xremote.h 8b2c1c6d5c Increased version 1 год назад
xremote_analyzer.c 3826cb39ec Formartted project with clang formatter to match flipper catalog requirements 2 лет назад
xremote_analyzer.h 3826cb39ec Formartted project with clang formatter to match flipper catalog requirements 2 лет назад
xremote_app.c 092e816301 Enabled alt names by default, added eject button support 1 год назад
xremote_app.h 6c0de2da96 Implemented alternative names functionality (#9) 1 год назад
xremote_control.c 73220eb880 Implemented custom layout page and button editing menu (#4) 2 лет назад
xremote_control.h 3ac5d47f0c Initial commit 2 лет назад
xremote_edit.c 73220eb880 Implemented custom layout page and button editing menu (#4) 2 лет назад
xremote_edit.h 73220eb880 Implemented custom layout page and button editing menu (#4) 2 лет назад
xremote_learn.c 73220eb880 Implemented custom layout page and button editing menu (#4) 2 лет назад
xremote_learn.h 3826cb39ec Formartted project with clang formatter to match flipper catalog requirements 2 лет назад
xremote_settings.c 6c0de2da96 Implemented alternative names functionality (#9) 1 год назад
xremote_settings.h ec80b46c6f Changed settings context allocator definiton to static 2 лет назад
xremote_signal.c 73220eb880 Implemented custom layout page and button editing menu (#4) 2 лет назад
xremote_signal.h 73220eb880 Implemented custom layout page and button editing menu (#4) 2 лет назад

README.md

Advanced IR Remote App for Flipper Device

XRemote

Idea

Navigation to the menu to press each button individually can be often uncomfortable because it requires scrolling to the desired button and selecting it. The idea behind XRemote is that all physical buttons are pre-mapped to specific category buttons, and a physical button directly sends an infrared signal. This allows the flipper device to be used as a remote rather than as a tool that has a remote.

Learn new remote

XRemote also introduces a more user-friendly learning approach. Instead of having to manually name each button on the flipper when cloning a remote, the learning tool informs you upfront which buttons it will record. All you need to do is press the corresponding button on your existing remote, eliminating the need to name them individually.

Custom Layout

To customize your layout, open the saved remote file, select Edit in the menu, and configure which infrared commands should be transmitted when physical buttons are pressed or held. These changes will be stored in the existing remote file, which means that the configuration of custom buttons can be different for all remotes.

Edit custom page buttons
XRemote edit layout

Standard file support

The application is compatible with standard .ir files. However, to ensure functionality, names within these files must align with the predefined naming scheme. If the button is not highlighted when pressed or the notification LED does not light up, the button with the appropriate name cannot be found in the file.

Button name Description
Power Power
Eject Eject
Setup Setup/Settings
Input Input/Source
Menu Menu
List List
Info Info
Mode Mode
Back Back
Ok Enter/Ok
Up Up
Down Down
Left Left
Right Right
Mute Mute
Vol_up Volume up
Vol_dn Volume down
Ch_next Next channel
Ch_prev Previous channel
Next Jump forward
Prev Jump backward
Fast_fo Fast forward
Fast_ba Fast backward
Play_pa Play/Pause
Pause Pause
Play Play
Stop Stop

Alternative button names

In addition to the predefined names, XRemote uses alternative button names to make it as easy as possible to interact with different types of IR dumps. This means that if a button is not found in the file with the appropriate name, the application will try to find the same button with alternative names. Ensure this feature is enabled in the application settings before you use it.

Alternate names are case insensitive and defined in the file:

SD Card/apps_data/flipper_xremote/alt_names.cfg

If this file does not exist, it will be created automatically with default values when the application is launched. You are free to remove, edit or add any values you want to this file. Here is the alt_names.cfg file with default contents:

Filetype: XRemote Alt-Names
Version: 1
# 
Power: shutdown,off,on,standby
Setup: settings,config,cfg
Input: source,select
Menu: osd,gui
List: guide
Info: display
Mode: aspect,format
Back: return,exit
Ok: enter,select
Up: uparrow
Down: downarrow
Left: leftarrow
Right: rightarrow
Mute: silence,silent,unmute
Vol_up: vol+,volume+,volup,+
Vol_dn: vol-,volume-,voldown,-
Ch_next: ch+,channel+,chup
Ch_prev: ch-,channel-,chdown
Next: next,skip,ffwd
Prev: prev,back,rewind,rew
Fast_fo: fastfwd,fastforward,ff
Fast_ba: fastback,fastrewind,fb
Play_pa: playpause,play,pause

Installation options

  1. Install the latest stable version directly from the official application catalog.
  2. Install on any firmware from the community driven application catalog FlipC.
  3. Manually install using .fap file:
    • Download the .fap file from the Releases section of this repository.
    • Write the .fap file to an SD card using qFlipper or any your preferred SD card writer.

Build options

  1. If you already have the flipper zero firmware cloned on the Linux:

    • Connect your Flipper device to your computer using a USB cable.
    • Use deploy script from this repository to build and run the application on the device:

      ./deploy.sh -b --fw=/path/to/the/firmware
      
  2. If you don't have the firmware or the Linux please refer to the official documentation for build instructions.

Progress

  • Application menu
  • Learn new remote
  • Signal analyzer
  • Use saved remote
    • General button page
    • Control buttons page
    • Navigation buttons page
    • Player buttons page
    • Custom buttons page
    • Edit custom layout
    • Alternative button names
    • Add or remove button
    • All buttons page
  • Application settings
    • GUI to change settings
    • Load settings from the file
    • Store settings to the file
    • Vertical/horizontal views
    • IR command repeat count
    • Exit button behavior
    • Enable/disable alt names

Screens

Main menu Saved remote menu
XRemote main menu XRemote saved remote menu
Saved remote control apps
XRemote IR applicatoions
Learn mode Received signal
XRemote learn mode XRemote received signal
Settings
XRemote settings menu