An open API service indexing awesome lists of open source software.

https://github.com/shalebridge/flipper-subghz-scheduler

A simple scheduler for sending individual SUB files or playlists at a preset interval.
https://github.com/shalebridge/flipper-subghz-scheduler

flipper flipper-app flipper-zero flipper-zero-app flipperzero sub-ghz subghz

Last synced: 4 months ago
JSON representation

A simple scheduler for sending individual SUB files or playlists at a preset interval.

Awesome Lists containing this project

README

          

# SubGHz Scheduler

A Flipper Zero app to send SubGHz signals at a given interval. Individual `*.sub` or playlist `*.txt` files can be used for transmission, and schedule settings can be saved in a `*.sch` file.



Schedule intervals in H:M:S format

from 00:00:01 to 99:59:59.





Interval timing modes:


  • Relative: Interval is length of time from `END` of one transmission to `START` of next.

  • Precise: Interval is length of time from `START` of one transmission to `START` of next.







Data Tx Count:


  • x1, x2, x3, x4, x5, x6




Transmission Modes:


  • Normal: Transmit after intervals.

  • Immediate: Counts start as interval.

  • One-Shot: Wait interval and transmits once.





Inter-transmission delay selectable

from 0ms to 1000ms in 50ms increments.





Radio Selection:


  • Internal

  • External (When Present)







Save settings for later use.






Run view displays:

  • TX Mode

  • TX Interval

  • TX Count

  • Radio

  • Selected File

  • TX Interval Countdown




## Requirements

This app is tested against the current `dev` and `release` branches of the [OFW](https://github.com/flipperdevices/flipperzero-firmware):

* Current OFW Version: 1.4.3

[![Compatibility status:](https://github.com/shalebridge/flipper-subghz-scheduler/actions/workflows/build.yml/badge.svg)](https://github.com/shalebridge/flipper-subghz-scheduler/actions/workflows/build.yml)

It has also been tested against [Momentum 009](https://github.com/Next-Flip/Momentum-Firmware/releases/tag/mntm-009).

> [!NOTE]
> Currently not supported on Xtreme, as development of that firmware was officially [discontinued on Nov 18, 2024](https://github.com/Flipper-XFW/Xtreme-Firmware/commit/54619d013a120897eeade491decf4d1e95217c06). Since then, breaking changes were made to the Furi API. For those who still use Xtreme I am working on a separate port.

## Build

These apps are built using [ufbt](https://pypi.org/project/ufbt/) - a subset of the flipper build tool (fbt) targeted at building apps. Install it with:

```bash
pip install ufbt
```

For build only, run `ufbt` from the terminal in the project directory. To upload, make sure Flipper is connected to your computer and run `ufbt launch`.

The directory contains the following batch script(s) to simplify the upload process:
* `launch_win.bat` - Windows only. Invokes `ufbt` to deploy and launch the app on a flipper over USB, and resets terminal colors in case of error.

Build outputs are found in the `dist` directory for each application.

# To-Do
- [ ] Enable running in the background.
- [ ] `TESTING IN PROGRESS` Enable interval delays for playlists. For example, turning on a light (playlist index 1), then 4 hours later turning it off (playlist index 2), and run that at another arbitrary interval. This can include custom playlist keys or custom app files.
- [ ] `TESTING IN PROGRESS` Separate into multiple modes:
- `Periodic`: Current functionality.
- `Alarm`: To set specific time for transmission.
- `Custom`: Periodic with custom breaks and tx count between transmissions.
- [ ] More visual feedback of current transmission (like `SubGHz Playlist`).
- [ ] Enable quitting from transmission. Currently, if back is pressed during playlist transmission, transmission will complete before exiting to main menu.
- [ ] Options to select notifications on transmit (vibro, backlight, etc).