Module flipper0::ffi

source ·

Structs

@brief Analog to Digital Converter
@brief Comparator
@brief CRC calculation unit
Representation of a borrowed C string.
A type representing an owned, C-compatible, nul-terminated string with no nul bytes in the middle.
Font parameters
File browser dialog extra options @param extension file extension to be offered for selection @param skip_assets true - do not show assets folders @param icon file icon pointer, NULL for default icon @param hide_ext true - hide extensions for files @param item_loader_callback callback function for providing custom icon & entry name @param hide_ext callback context
Structure that hold file info
Cortex timer provides high precision low level expiring timer
FuriHalCryptoKey
FuriHal i2c bus
FuriHal i2c handle
FuriHal spi bus
FuriHal spi handle
@brief General Purpose I/O
Gpio structure
@brief Inter-integrated Circuit Interface
Input Event, dispatches with FuriPubSub
@brief Structure definition of some features of ADC common parameters and multimode (all ADC instances belonging to the same ADC common instance). @note The setting of these parameters by function @ref LL_ADC_CommonInit() is conditioned to ADC instances state (all ADC instances sharing the same ADC common instance): All ADC instances sharing the same ADC common instance must be disabled.
@brief Structure definition of some features of ADC group injected. @note These parameters have an impact on ADC scope: ADC group injected. Refer to corresponding unitary functions into @ref ADC_LL_EF_Configuration_ADC_Group_Regular (functions with prefix “INJ”). @note The setting of these parameters by function @ref LL_ADC_INJ_Init() is conditioned to ADC state: ADC instance must be disabled. This condition is applied to all ADC features, for efficiency and compatibility over all STM32 families. However, the different features can be set under different ADC state conditions (setting possible with ADC enabled without conversion on going, ADC enabled with conversion on going, …) Each feature can be updated afterwards with a unitary function and potentially with ADC in a different state than disabled, refer to description of each function for setting conditioned to ADC state.
@brief Structure definition of some features of ADC instance. @note These parameters have an impact on ADC scope: ADC instance. Affects both group regular and group injected (availability of ADC group injected depends on STM32 families). Refer to corresponding unitary functions into @ref ADC_LL_EF_Configuration_ADC_Instance . @note The setting of these parameters by function @ref LL_ADC_Init() is conditioned to ADC state: ADC instance must be disabled. This condition is applied to all ADC features, for efficiency and compatibility over all STM32 families. However, the different features can be set under different ADC state conditions (setting possible with ADC enabled without conversion on going, ADC enabled with conversion on going, …) Each feature can be updated afterwards with a unitary function and potentially with ADC in a different state than disabled, refer to description of each function for setting conditioned to ADC state.
@brief Structure definition of some features of ADC group regular. @note These parameters have an impact on ADC scope: ADC group regular. Refer to corresponding unitary functions into @ref ADC_LL_EF_Configuration_ADC_Group_Regular (functions with prefix “REG”). @note The setting of these parameters by function @ref LL_ADC_REG_Init() is conditioned to ADC state: ADC instance must be disabled. This condition is applied to all ADC features, for efficiency and compatibility over all STM32 families. However, the different features can be set under different ADC state conditions (setting possible with ADC enabled without conversion on going, ADC enabled with conversion on going, …) Each feature can be updated afterwards with a unitary function and potentially with ADC in a different state than disabled, refer to description of each function for setting conditioned to ADC state.
@brief Structure definition of some features of COMP instance.
@defgroup DMA_LL_ES_INIT DMA Exported Init structure @{
@defgroup EXTI_LL_ES_INIT EXTI Exported Init structure @{
@brief LL GPIO Init Structure definition
@defgroup I2C_LL_ES_INIT I2C Exported Init structure @{
@brief LPTIM Init structure definition
@brief LL LPUART Init Structure definition
@brief PKA Init structures definition
@brief RCC Clocks Frequency Structure
@brief LL RNG Init Structure Definition
@brief RTC Alarm structure definition
@brief RTC Date structure definition
@brief RTC Init structures definition
@brief RTC Time structure definition
@brief SPI Init structures definition
@brief BDTR (Break and Dead Time) structure definition
@brief TIM Encoder interface configuration structure definition.
@brief TIM Hall sensor interface configuration structure definition.
@brief TIM Input Capture configuration structure definition.
@brief TIM Time Base configuration structure definition.
@brief TIM Output Compare configuration structure definition.
@brief LL USART Clock Init Structure definition
@brief LL USART Init Structure definition
@brief UTILS System, AHB and APB buses clock configuration structure definition
@defgroup UTILS_LL_ES_INIT UTILS Exported structures @{ @brief UTILS PLL structure definition
@brief LPTIMER
@brief Public Key Accelerator (PKA)
@brief RNG
@brief Real-Time Clock
@brief Serial Peripheral Interface
Scene Manager event
Scene Manager configuration structure Contains array of Scene handlers
@brief TIM
@brief Universal Synchronous Asynchronous Receiver Transmitter
== ValueMutex ==
\brief Represents a USB device data.
\brief Triple-DES context structure
\brief DES context structure
\brief The SHA-1 context structure.
\brief MD5 context structure
Activation info as Poller and Listener for NFC-A and NFC-B
Structure of APDU Buffer format from caller
Structure of parameters used on ISO DEP APDU Transceive
ATS response format Digital 1.1 13.6.2
ATS Response parameter
ATTRIB Command Format Digital 1.1 15.6.1
ATTRIB Response Format Digital 1.1 15.6.2
ATTRIB Response parameters
Structure of I-Block Buffer format from caller
ISO-DEP Device structure
ISO-DEP device Info
Listen Activation Parameters Structure
PPS Response format (Protocol and Parameter Selection) ISO14443-4 5.4
RATS format Digital 1.1 13.6.1
Structure of parameters used on ISO DEP Transceive
RFAL Listen Mode Passive A configs
RFAL Listen Mode Passive B configs
RFAL Listen Mode Passive F configs
Activation info as Initiator and Target
NFCIP Protocol structure for P2P Target
ATR_REQ command Digital 1.1 16.6.2
ATR_RES response Digital 1.1 16.6.3
Structure of transmit I-PDU Buffer format from caller
NFC-DEP Device structure
NFC-DEP device Info
Structure of parameters to be passed in for nfcDepListenStartActivation
Structure of APDU Buffer format from caller
Structure of parameters used on NFC DEP PDU Transceive
NFCIP Protocol structure for P2P Target
Structure of parameters to be passed in for nfcDepStartIpduTransceive
Device struct containing all its details
Discovery parameters
NFC-A listener device (PICC) struct
SEL_RES (SAK) format Digital 1.1 6.8.2 & Table 19
SENS_RES (ATQA) format Digital 1.1 6.6.3 & Table 7
NFC-B listener device (PICC) struct
SENSB_RES format Digital 1.1 7.6.2
SENSB_RES (ATQB) Application Data Format Digital 1.1 Table 28
SENSB_RES Protocol Info format Digital 1.1 Table 29
NFC-F Block List Element (2 or 3 bytes element) T3T 1.0 5.6.1
NFC-F listener device (PICC) struct
NFC-F SENSF_RES format Digital 1.1 8.6.2
Check Update Service list and Block list parameter
NFC-V INVENTORY_RES format Digital 2.0 9.6.2
NFC-V listener device (VICC) struct
ST25TB listener device (PICC) struct
NFC-A T1T (Topaz) RID_RES Digital 1.1 10.6.2 & Table 50
Struct that holds all context to be used on a Transceive
RFAL Wake-Up Mode configuration
Type by which software timers are referenced. For example, a call to xTimerCreate() returns an TimerHandle_t variable that can then be used to reference the subject timer in calls to other software timer API functions (for example, xTimerStart(), xTimerReset(), etc.).
\brief Line Coding Structure
\brief Represents a USB device descriptor \details A device descriptor describes general information about a USB device. It includes information that applies globally to the device and all of the device’s configurations. A USB device has only one device descriptor. A high-speed capable device that has different device information for full-speed and high-speed must also have a \ref usb_qualifier_descriptor.
\brief Represents generic USB control request.
\brief Represents a hardware USB driver call table.
USB device status data.

Enums

Alignment enumeration
Type of button. Difference in drawing buttons.
Font Direction
Color enumeration
DialogEx result
Message result type
Access mode flags
API errors enumeration
Open mode flags
Fonts enumeration
FuriHalCryptoKey Size in bits
FuriHalCryptoKey Type
FuriHal i2c bus states
FuriHal i2c handle states
Power IC type
FuriHal spi bus states
FuriHal spi handle states
Switchable Radio Paths
Radio Presets
UART channels
Device Colors
Device Display
OTP Versions enum
Device Regions
@brief State of the UTF8 decoding machine state.
FuriThreadPriority
FuriThreadState
Gpio alternate functions
Gpio modes
Gpio pull modes
Gpio speed modes
Gui layers
Input Types Some of them are physical events and some logical
Scene Manager events type
UART events
ViewDispatcher view_port placement
View model types
\brief Reporting status results.
RFAL ISO 14443A Short Frame Command
RFAL Bit rates
RFAL Compliance modes for upper modules
RFAL error handling
NFC-F TSN (Time Slot Number) codes NFC Forum Digital 1.1 Table 43
Frame Size for Proximity Card Integer definitions
RFAL Listen Mode NFCID Length
RFAL Listen Mode States
RFAL modes
Enumeration of the nfcip communication modes
Device type
Device interface
Main state
NFC-A Listen device types
SENSB_REQ and ALLB_REQ param Digital 1.1 7.6.1
Number of Slots (NI) codes used for NFC-B anti collision Digital 1.1 Table 26
NFC-V Number of slots Digital 2.0 9.6.1
RFAL transceive states
RFAL Wake-Up Period/Timer
RFAL Wake-Up Period/Timer
\brief Reporting status results.

Constants

Statics

< AHB prescalers table values
< APB prescalers table values
< MSI ranges table values
< SMPS factor ranges table values
< System Clock Frequency
External i2c bus, I2C3, under reset when not used
Internal(power) i2c bus, I2C1, under reset when not used
Handle for external i2c bus Bus: furi_hal_i2c_bus_external Pins: PC0(SCL) / PC1(SDA), float on release Params: 100khz
Handle for internal(power) i2c bus Bus: furi_hal_i2c_bus_external Pins: PA9(SCL) / PA10(SDA), float on release Params: 400khz
Pointer to currently used SPI Handle
Furi Hal Spi Bus D (Display, SdCard)
ST7567(Display) on furi_hal_spi_bus_d
External on furi_hal_spi_bus_r Preset: furi_hal_spi_preset_1edge_low_2m
ST25R3916 on furi_hal_spi_bus_r
SdCard in fast mode on furi_hal_spi_bus_d
SdCard in slow mode on furi_hal_spi_bus_d
CC1101 on furi_hal_spi_bus_r
Furi Hal Spi Bus R (Radio: CC1101, Nfc, External)
Preset for SdCard in slow mode
Preset for ST7567 (Display)
Preset for SdCard in fast mode
Display: backlight always on unlock
Display: backlight always on lock
Display: backlight force off
Display: backlight force off after a delay of 1000ms
Display: backlight wakeup
Message sequences
USB device interface modes

Functions

@defgroup ADC_LL_EF_Init Initialization and de-initialization functions @{
@defgroup COMP_LL_EF_Init Initialization and de-initialization functions @{
@defgroup CRC_LL_EF_Init Initialization and de-initialization functions @{
@defgroup CRS_LL_EF_Init Initialization and de-initialization functions @{
@defgroup DMA_LL_EF_Init Initialization and de-initialization functions @{
@defgroup EXTI_LL_EF_Init Initialization and de-initialization functions @{
@defgroup GPIO_LL_EF_Init Initialization and de-initialization functions @{
@defgroup I2C_LL_EF_Init Initialization and de-initialization functions @{
@defgroup LPTIM_LL_EF_Init Initialisation and deinitialisation functions @{
@defgroup LPUART_LL_EF_Init Initialization and de-initialization functions @{
@defgroup PKA_LL_EF_Init Initialization and de-initialization functions @{
@defgroup PWR_LL_EF_Init De-initialization function @{
@defgroup RCC_LL_EF_Init De-initialization function @{
@defgroup RCC_LL_EF_Get_Freq Get system and peripherals clocks frequency functions @{
@defgroup RNG_LL_EF_Init Initialization and de-initialization functions @{
@defgroup RTC_LL_EF_Init Initialization and de-initialization functions @{
@defgroup SPI_LL_EF_Init Initialization and de-initialization functions @{
@defgroup UTILS_EF_SYSTEM SYSTEM @{
@defgroup TIM_LL_EF_Init Initialisation and deinitialisation functions @{
@defgroup USART_LL_EF_Init Initialization and de-initialization functions @{
@addtogroup STM32WBxx_System_Exported_Functions @{
Crash system
Halt system
a64l
abs
acos
Call for work with data stored in mutex. @return pointer to data if success, NULL otherwise.
Freed space obtained through the aligned_malloc function @param p pointer to result of aligned_malloc
An aligned version of malloc, used when you need to get the aligned space on the heap Freeing the received address is performed ONLY through the aligned_free function @param size @param alignment @return void*
@brief Convert ASCII hex values to byte
@brief Get length of first word from arguments string
@brief Get length of arguments string
@brief Convert hex ASCII values to byte array
Extract int value and trim arguments string
@brief Extract the first quoted argument from the argument string and trim the argument string. If the argument is not quoted, calls args_read_string_and_trim.
@brief Extract first argument from arguments string and trim arguments string
asin
atan
atof
atoi
atol
bcmp
@brief Add parity to bit array
@brief Copy bits from source to destination.
@brief Slow, but generic CRC8 implementation
@brief Slow, but generic CRC16 implementation
@brief Get the bit of a byte. @param data The byte to get the bits from. @param position The position of the bit. @return The bit.
@brief Count 1 bits in data
@brief Get the bits of a data, as uint8_t. @param data The data to get the bits from. @param position The position of the first bit. @param length The length of the bits. @return The bits.
@brief Get the bits of a data, as uint16_t. @param data The data to get the bits from. @param position The position of the first bit. @param length The length of the bits. @return The bits.
@brief Get the bits of a data, as uint32_t. @param data The data to get the bits from. @param position The position of the first bit. @param length The length of the bits. @return The bits.
@brief Print data as bit array
@brief Print data as bit array and mark regions. Regions needs to be sorted by start position.
@brief Push a bit into a byte array. @param data array to push bit into @param data_size array size @param bit bit to push
@brief Remove bit every n in array and shift array left. Useful to remove parity.
@brief Reverse bits in uint8_t, faster than generic bit_lib_reverse_bits.
@brief Reverse bits in uint16_t, faster than generic bit_lib_reverse_bits.
@brief Reverse bits in bit array
@brief Set a bit in a byte array. @param data array to set bit in @param position The position of the bit to set. @param bit bit value to set
@brief Set the bit at the given position to the given value. @param data The data to set the bit in. @param position The position of the bit to set. @param byte The data to set the bit to. @param length The length of the data.
@brief Test parity of bit array, check parity for every parity_length block from start
@brief Test parity of given bits @param bits Bits to test parity of @param parity Parity to test against @return true if parity is correct, false otherwise
Restart MCU to launch radio stack firmware if necessary
Initialize start core2 and initialize transport
Is core2 alive and at least FUS is running
Is core2 radio stack present and ready
Set callback for NVM in RAM changes
Start Core2 Radio stack
Stop SHCI thread
Waits for C2 to reports its mode to callback
Disconnect from Central
Forget bonded devices @note Leads to wipe ble key storage and deleting bt.keys
Change BLE Profile @note Call of this function leads to 2nd core restart
Set callback for Bluetooth status change notification
Allocate a file stream with buffered read operations @return Stream*
Closes the file. @param stream pointer to file stream object. @return True on success, False on failure.
Retrieves the error id from the file object @param stream pointer to stream object. @return FS_Error error id
Opens an existing file or creates a new one. @param stream pointer to file stream object. @param path path to file @param access_mode access mode from FS_AccessMode @param open_mode open mode from FS_OpenMode @return True on success, False on failure. You need to close the file even if the open operation failed.
Forces write from cache to the underlying file. @param stream pointer to file stream object. @return True on success, False on failure.
Add item to button menu instance
Allocate and initialize new instance of ButtonMenu model
Free ButtonMenu element
Get button menu view
Clean button menu
Set ButtonMenu header on top of canvas
Set selected item
Add item to button_panel module.
Add label to button_panel module.
Allocate new button_panel module.
Free button_panel module.
Get button_panel view.
Reserve space for adding items.
Free items from button_panel module. Preallocated matrix stays unchanged.
Allocate and initialize byte input. This byte input is used to enter bytes.
Deinitialize and free byte input
Get byte input view
Set byte input header text
Set byte input result callback
Clear canvas
Get current font height
Draw bitmap picture at position defined by x,y.
Draw box of width, height at x,y
Draw circle at x,y with radius r
Draw disc at x,y with radius r
Draw dot at x,y
Draw frame of width, height at x,y
Draw glyph
Draw icon at position defined by x,y.
Draw animation at position defined by x,y.
Draw line from x1,y1 to x2,y2
Draw rounded-corner box of width, height at x,y, with round value raduis
Draw rounded-corner frame of width, height at x,y, with round value radius
Draw string at position of baseline defined by x, y.
Draw aligned string defined by x, y.
Draw triangle with given base and height lengths and their intersection coordinate
Draw XBM bitmap
Get font parameters
Get glyph width
Get Canvas height
Invert drawing color
Set transparency mode
Set drawing color
Set drawing font
Set font swap Argument String Rotation Description
Get string width
Get Canvas width
cbrt
Calibrate oscillator
Flush RX FIFO
Flush TX FIFO
Get Partnumber
Get raw RSSI value
Get status
Get Version
Read FIFO
Read device register
Reset
Set Frequency
Set Intermediate Frequency
Set Power Amplifier level table, ramp
Enable shutdown mode
Strobe command to the device
Switch to idle
Switch to RX
Switch to TX
Write FIFO
Write device register
ceil
Add cli command Registers you command callback
Non-blocking check for interrupt command received
Delete cli command
Read character
New line Send new ine sequence
Print unified cmd usage tip
Read from terminal
Non-blocking read from terminal
Write to terminal Do it only from inside of cli call.
cos
cosf
cosh
cosl
Free resources allocated by init_mutex. This function doesn’t free the memory occupied by ValueMutex itself.
Allocate and initialize dialog
Disable press/release events
Enable press/release events
Deinitialize and free dialog
Get dialog view
Clean dialog
Set center button text
Set dialog context
Set dialog header text
Set dialog icon
Set left button text
Set dialog result callback
Set right button text
Set dialog text
Initialize file browser dialog options and set default values @param options pointer to options structure @param extension file extension to filter @param icon file icon pointer, NULL for default icon
Shows and processes the file browser dialog @param context api pointer @param result_path selected file path string pointer @param path preselected file path string pointer @param options file browser dialog extra options, may be null @return bool whether a file was selected
Allocate and fill message @return DialogMessage*
Free message struct @param message message pointer
Set message buttons text, button text can be NULL if you don’t want to display and process some buttons @param message message pointer @param left left button text, can be NULL if you don’t want to display the left button @param center center button text, can be NULL if you don’t want to display the center button @param right right button text, can be NULL if you don’t want to display the right button
Set message header @param message message pointer @param text text, can be NULL if you don’t want to display the header @param x x position @param y y position @param horizontal horizontal alignment @param vertical vertical alignment
Set message icon @param message message pointer @param icon icon pointer, can be NULL if you don’t want to display the icon @param x x position @param y y position
Set message text @param message message pointer @param text text, can be NULL if you don’t want to display the text @param x x position @param y y position @param horizontal horizontal alignment @param vertical vertical alignment
Show message from filled struct @param context api pointer @param message message struct pointer to be shown @return DialogMessageButton type
Show SD error message (with question sign) @param context @param error_text
Allocate DirWalk @param storage @return DirWalk*
Close directory @param dir_walk
Free DirWalk @param dir_walk
Get error id @param dir_walk @return FS_Error
Open directory @param dir_walk @param path @return true @return false
Read next element from directory @param dir_walk @param return_path @param fileinfo @return DirWalkResult
Set filter callback (Should return true if the data is valid) @param dir_walk @param cb @param context
Set recursive mode (true by default) @param dir_walk @param recursive
div
Deed complete notification. Call it on deed completion. See dolphin_deed.h for available deeds. In futures it will become part of assets. Thread safe, async
Flush dolphin queue and save state Thread safe, blocking
Retrieve dolphin stats Thread safe, blocking
drem
task. h @code{c} eTaskState eTaskGetState( TaskHandle_t xTask ); @endcode
Draw bold rounded frame
Draw bubble frame for text
Draw bubble frame for text with corner
Draw button in center
Draw button in left corner
Draw button in right corner
Draw rounded frame
Draw multiline text
Draw aligned multiline text
Draw framed multiline text
Draw progress bar.
Draw scrollbar on canvas. @note width 3px, height equal to canvas height
Draw scrollbar on canvas at specific position.
Draw slightly rounded box
Draw slightly rounded frame
Trim string buffer to fit width in pixels
Draw text box element
Allocate and initialize empty screen
Deinitialize and free empty screen
Get empty screen view
Emulate bank card @note Answer to application selection and PDOL
Read bank card data @note Search EMV Application, start it, try to read AID, PAN, card name, expiration date, currency and country codes
erf
erfc
erff
erfl
exit
exp
exp2
expf
expl
fabs
fdim
feof
ffs
ffsl
Allocate file stream @return Stream*
Closes the file. @param stream @return true @return false
Retrieves the error id from the file object @param stream pointer to stream object. @return FS_Error error id
Opens an existing file or create a new one. @param stream pointer to file stream object. @param path path to file @param access_mode access mode from FS_AccessMode @param open_mode open mode from FS_OpenMode @return success flag. You need to close the file even if the open operation failed.
Gets the error text from FS_Error @param error_id error id @return const char* error text
@brief Initialize FlipperApplication object @param storage Storage instance @param api_interface ELF API interface to use for pre-loading and symbol resolving @return Application instance
@brief Destroy FlipperApplication object @param app Application pointer
@brief Get pointer to application manifest for preloaded application @param app Application pointer @return Pointer to application manifest
@brief Get text description of load status @param status Status code @return String pointer to description
@brief Check if manifest is compatible with current ELF API interface
@brief Check if manifest is valid
@brief Load sections and process relocations for already pre-loaded application @param app Application pointer @return Load result code
@brief Validate elf file and load application metadata @param app Application pointer @return Preload result code
@brief Validate elf file and load application manifest @param app Application pointer @return Preload result code
@brief Get text description of preload status @param status Status code @return String pointer to description
@brief Create application thread at entry point address, using app name and stack size from metadata. Returned thread isn’t started yet. Can be only called once for application instance. @param app Applicaiton pointer @param args Object to pass to app’s entry point @return Created thread
Allocate FlipperFormat as file, buffered mode. @return FlipperFormat* pointer to a FlipperFormat instance
Closes the file, use only if FlipperFormat allocated as a buffered file. @param flipper_format @return true @return false
Open existing file, buffered mode. Use only if FlipperFormat allocated as a file. @param flipper_format Pointer to a FlipperFormat instance @param path File path @return True on success
Removes the first matching key and its value. Sets the RW pointer to a position of deleted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @return True on success
Allocate FlipperFormat as file. @return FlipperFormat* pointer to a FlipperFormat instance
Closes the file, use only if FlipperFormat allocated as a file. @param flipper_format @return true @return false
Open file. Creates a new file, or deletes the contents of the file if it already exists. Use only if FlipperFormat allocated as a file. @param flipper_format Pointer to a FlipperFormat instance @param path File path @return True on success
Open existing file for writing and add values to the end of file. Use only if FlipperFormat allocated as a file. @param flipper_format Pointer to a FlipperFormat instance @param path File path @return True on success
Open existing file. Use only if FlipperFormat allocated as a file. @param flipper_format Pointer to a FlipperFormat instance @param path File path @return True on success
Open file. Creates a new file, fails if file already exists. Use only if FlipperFormat allocated as a file. @param flipper_format Pointer to a FlipperFormat instance @param path File path @return True on success
Free FlipperFormat. @param flipper_format Pointer to a FlipperFormat instance
Returns the underlying stream instance. Use only if you know what you are doing. @param flipper_format @return Stream*
Get the count of values by key @param flipper_format Pointer to a FlipperFormat instance @param key @param count @return bool
Updates the value of the first matching key to a bool array value, or adds the key and value if the key did not exist. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a float array value, or adds the key and value if the key did not exist. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to an array of hex-formatted bytes, or adds the key and value if the key did not exist. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a int32 array value, or adds the key and value if the key did not exist. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a string value, or adds the key and value if the key did not exist. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a string value, or adds the key and value if the key did not exist. Plain C version. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a uint32 array value, or adds the key and value if the key did not exist. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Check if the key exists. @param flipper_format Pointer to a FlipperFormat instance @param key Key @return true key exists @return false key is not exists
Read array of bool by key @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Read array of float by key @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Read the header (file type and version). @param flipper_format Pointer to a FlipperFormat instance @param filetype File type string @param version Version Value @return True on success
Read array of hex-formatted bytes by key @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Read array of uint64 in hex format by key @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Read array of int32 by key @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Read a string by key @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Read array of uint32 by key @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Rewind the RW pointer. @param flipper_format Pointer to a FlipperFormat instance @return True on success
Move the RW pointer at the end. Can be useful if you want to add some data after reading. @param flipper_format Pointer to a FlipperFormat instance @return True on success
Set FlipperFormat mode. @param flipper_format Pointer to a FlipperFormat instance @param strict_mode True obligates not to skip valid fields. False by default.
Allocate FlipperFormat as string. @return FlipperFormat* pointer to a FlipperFormat instance
Updates the value of the first matching key to a bool array value. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a float array value. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to an array of hex-formatted bytes. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a int32 array value. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a string value. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a string value. Plain C version. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Updates the value of the first matching key to a uint32 array value. Sets the RW pointer to a position at the end of inserted data. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Write key and array of bool @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Write comment @param flipper_format Pointer to a FlipperFormat instance @param data Comment text @return True on success
Write comment. Plain C string version. @param flipper_format Pointer to a FlipperFormat instance @param data Comment text @return True on success
Write key and array of float @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Write the header (file type and version). @param flipper_format Pointer to a FlipperFormat instance @param filetype File type string @param version Version Value @return True on success
Write the header (file type and version). Plain C string version. @param flipper_format Pointer to a FlipperFormat instance @param filetype File type string @param version Version Value @return True on success
Write key and array of hex-formatted bytes @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Write key and array of uint64 in hex format @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Write key and array of int32 @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
Write key and string @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Write key and string. Plain C string version. @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @return True on success
Write key and array of uint32 @param flipper_format Pointer to a FlipperFormat instance @param key Key @param data Value @param data_size Values count @return True on success
fls
flsl
fma
fmaf
fmal
fmax
fmin
fmod
free
Delay in milliseconds
Delay execution
Delay until tick
Delay in microseconds
Allocate FuriEventFlag
Clear flags
Deallocate FuriEventFlag
Get current tick counter
Change BLE app Restarts 2nd core
Clear key storage
Get BT/BLE system component state
Check & switch C2 to given mode
Get key storage buffer address and size
Get radio stack type
Get number of transmitted packets
Set the following consumer key to pressed state and send HID report
Set the following consumer key to released state and send HID report
Set consumer key to released state and send HID report
Press keyboard button
Release keyboard button
Release all keyboard buttons
Set mouse movement and send HID report
Set mouse button to pressed state and send HID report
Set mouse button to released state and send HID report
Set mouse button to released state and send HID report
Set mouse wheel position and send HID report
Start Hid Keyboard Profile
Stop Hid Keyboard Profile
Initialize
Checks if BLE state is active
Get BT/BLE system component state
Check if radio stack supports BLE GAT/GAP
Check if radio stack supports testing
Lock core2 state transition
Get SRAM2 hardware semaphore @note Must be called before SRAM2 read/write operations
Release SRAM2 hardware semaphore @note Must be called after SRAM2 read/write operations
Reinitialize core2
Notify that application buffer is empty
Set Serial service events callback
Start Serial Profile
Stop Serial Profile
Send data through BLE
Set key storage change callback
Start advertising
Start BLE app
Start receiving packets
Start sending ble packets at a given frequency and datarate
Start radio stack
Set up the RF to listen to a given RF channel
Start ble tone tx at given channel and power
Stop advertising
Stop sending ble packets
Stop RF listenning
Stop ble tone tx
Lock core2 state transition
Update battery level
Update battery power state
Early deinitialization
Initialize clocks
Early initialization
Disable clock output on MCO pin
Enable clock output on MCO pin
Continue SysTick counter operation
Stop SysTick counter without resetting
Switch to HSI clock
Switch to PLL clock
Allocate encoder and decoder
Free encoder and decoder
Initialize icon decoder
Printf-like plain uart interface @warning Will not work in ISR context @param format @param …
Microseconds delay
Early init stage for cortex
Get instructions per microsecond count
Check if timer expired
Wait for timer expire
Initialize cryptography layer This includes AES engines, PKA and RNG
Store key in crypto storage
Init AES engine and load key from crypto store
Unload key engine and deinit AES engine
Disable MCU debug
Enable MCU debug
Early FuriHal deinit
Erase Flash
Get flash base address
Get expected flash cycles count
Get free flash end address
Get first free page start address
Get free flash start address
Get flash page number for address
Get flash page size
Get flash read block size
Get flash write block size
Init flash, applying necessary workarounds
Forces a reload of OB data from flash to registers
Get raw OB storage data
Writes OB word, using non-compl. index of register in Flash, OPTION_BYTE_BASE
Write aligned page data (up to page size)
Write double word (64 bits)
Add and enable interrupt @param gpio GpioPin @param cb GpioExtiCallback @param ctx context for callback
Disable interrupt @param gpio GpioPin
Enable interrupt @param gpio GpioPin
GPIO initialization function, normal version @param gpio GpioPin @param mode GpioMode @param pull GpioPull @param speed GpioSpeed
GPIO initialization function, extended version @param gpio GpioPin @param mode GpioMode @param pull GpioPull @param speed GpioSpeed @param alt_fn GpioAltFn
GPIO initialization function, simple version @param gpio GpioPin @param mode GpioMode
Remove interrupt @param gpio GpioPin
Set the following consumer key to pressed state and send HID report
Set the following consumer key to released state and send HID report
Get USB HID keyboard leds state
Get USB HID connection state
Set the following key to pressed state and send HID report
Set the following key to released state and send HID report
Clear all pressed keys and send HID report
Set mouse movement and send HID report
Set mouse button to pressed state and send HID report
Set mouse button to released state and send HID report
Set mouse wheel position and send HID report
Set USB HID connect/disconnect callback
Get received U2F HID packet
Get HID U2F connection state
Send U2F HID response packet
Set HID U2F event callback
Acquire i2c bus handle
Early DeInit I2C
Early Init I2C
Check if I2C device presents on bus
Perform I2C device memory read
Perform I2C device register read (8-bit)
Perform I2C device register read (16-bit)
Release i2c bus handle
Perform I2C rx transfer
Perform I2C tx and rx transfers
Perform I2C tx transfer
Perform I2C device memory
Perform I2C device register write (8-bit)
Perform I2C device register write (16-bit)
Attach interrupt callback to iButton pin @param cb callback @param context context
Get pin level @return true if level is high @return false if level is low
Sets the pin to high (float in iButton pin modes)
Sets the pin to low
Remove interrupt callback from iButton pin
Sets the pin to normal mode (open collector), and sets it to float
Sets the pin to normal mode (open collector), and clears pin EXTI interrupt. Used in EXTI interrupt context.
Sets the pin to interrupt mode (EXTI interrupt on rise or fall), and sets it to float
Sets the pin to interrupt mode (EXTI interrupt on rise or fall), and clears pin EXTI interrupt. Used in EXTI interrupt context.
Sets the pin to analog mode, and sets it to float
Get device information
Setup callback for previously initialized INFRARED RX interrupt.
Setup hal for receiving silence timeout.
Setup callback for reaching silence timeout on INFRARED port.
Initialize INFRARED RX timer to receive interrupts.
Deinitialize INFRARED RX interrupt.
Set callback providing new data.
Set callback for end of signal transmission
Start IR asynchronous transmission.
Stop IR asynchronous transmission and free resources.
Wait for end of IR asynchronous transmission and free resources.
Check if INFRARED is in use now.
Init FuriHal
Early FuriHal init, only essential subsystems
Initialize interrupt subsystem
Set ISR and enable interrupt with default priority We don’t clear interrupt flags for you, do it by your self. @param index - interrupt ID @param isr - your interrupt service routine or use NULL to clear @param context - isr context
Set ISR and enable interrupt with custom priority We don’t clear interrupt flags for you, do it by your self. @param index - interrupt ID @param priority - 0 to 15, 0 highest @param isr - your interrupt service routine or use NULL to clear @param context - isr context
Set color in hardware LED blinking mode
Start hardware LED blinking mode
Stop hardware LED blinking mode
Init light driver
Execute sequence
Set light value
@brief Allocate memory from separate memory pool. That memory can’t be freed.
@brief Get free memory pool size
@brief Init memory pool manager
@brief Get max free block size from memory pool
@brief Disable memory protection unit
@brief Enable memory protection unit
@brief Initialize memory protection unit
Activate NFC-A tag
Emulate NFC-A Target @note RFAL based implementation
NFC stop sleep
NFC field off
NFC field on
Check if nfc worker is busy
Check if nfc is initialized
NFC listen
Read data in Target Listen mode @note Must be called only after furi_hal_nfc_listen_start()
Set Target in Sleep state
Start Target Listen mode @note RFAL free implementation
NFC deactivate and start sleep
NFC start sleep
NFC data exchange
NFC data full exhange
Check OTG status and disable it if falt happened
Check if deep sleep availble
Disable 3.3v on external gpio and sd card
Get power system component state
Enable 3.3v on external gpio and sd card
Check if gauge is ok
Get battery health state in percents
Get battery current in A
Get battery capacity in mAh from battery profile
Get full charge battery capacity in mAh
Get remaining battery battery capacity in mAh
Get battery voltage in V
Get predicted remaining battery capacity in percents
Get USB voltage in V
Get power information
Initialize drivers
Enter insomnia mode Prevents device from going to sleep @warning Internally increases insomnia level Must be paired with furi_hal_power_insomnia_exit
Exit insomnia mode Allow device to go to sleep @warning Internally decreases insomnia level. Must be paired with furi_hal_power_insomnia_enter
Get current insomnia level
Get charging status
Get charge complete status
Poweroff device
Reset device
Switch MCU to SHUTDOWN
Go to sleep
Check if sleep availble
Enter supress charge mode.
Exit supress charge mode
Set PWM channel parameters
Enable PWM channel and set parameters
Disable PWM channel
Fill buffer with random data
Get random value
Get Region Data.
Get band data for frequency
Get region name
Initialize region
Сheck if transmission is allowed on this frequency for your flipper region
Check if region data provisioned
Set device region data
Сhanges the configuration of the RFID timer “on a fly”
Set comparator callback
Start/Enable comparator
Stop/Disable comparator
Initialize RFID subsystem
Pulldown rfid pull pin
Release rfid pull pin
Config rfid pins to emulate state
Config rfid pins to read state
Config rfid pins to reset state
Set emulation timer period
Set emulation timer pulse
Set read timer period
Set read timer pulse
Config rfid timer to emulate state
Start emulation timer
Stop emulation timer
Config rfid timer to read state
Start read timer
Stop read timer
Config rfid timers to reset state
Early deinitialization
Initialize RTC subsystem
Early initialization
Acquire SPI bus
Deinitialize SPI Bus
Deinitialize SPI Bus Handle
Initialize SPI Bus Handle
Initialize SPI Bus
SPI Receive
SPI Transmit and Receive
SPI Transmit
Early deinitialize SPI HAL
Initialize SPI HAL
Early initialize SPI HAL
Release SPI bus
Dump info to stdout
Flush rx FIFO buffer
Flush tx FIFO buffer
Get RSSI value in dBm
Switch to Idle
Initialize and switch to power save mode Used by internal API-HAL initalization routine Can be used to reinitialize device to safe state and send it to sleep
Wait for async transmission to complete
Check if frequency is in valid range
Check if recieved data crc is valid
Load custom registers from preset
Load registers from preset by preset name
Read packet from FIFO
Reset Issue reset command @warning registers content will be lost
Switch to Recieve
Check if recieve pipe is not empty
Set frequency and path This function automatically selects antenna matching network
Shutdown Issue spwd command @warning registers content will be lost
Send device to sleep mode
Enable signal timings capture Initializes GPIO and TIM2 for timings capture
Start async TX Initializes GPIO, TIM2 and DMA1 for signal output
Disable signal timings capture Resets GPIO and TIM2
Stop async transmission and cleanup resources Resets GPIO, TIM2, and DMA1
Switch to Transmit
Write packet to FIFO
Transfer execution to address
Deinit UART Configures GPIO to analog, clears callback and callback context, disables UART hardware @param channel UART channel
Init UART Configures GPIO to UART function, сonfigures UART hardware, enables UART hardware @param channel UART channel @param baud baudrate
Resume UART operation Resumes UART hardware from suspended state @param channel UART channel
Changes UART baudrate @param channel UART channel @param baud baudrate
Sets UART event callback @param channel UART channel @param callback callback pointer @param context callback context
Suspend UART operation Disables UART hardware, settings and callbacks are preserved @param channel UART channel
Transmits data @param channel UART channel @param buffer data @param buffer_size data size (in bytes)
Disable USB device
Enable USB device
Get USB device configuration
USB device low-level initialization
Check if USB device mode switch locked
Lock USB device mode switch
Restart USB device
Set USB device configuration
Set USB state callback
Unlock USB device mode switch
Check target firmware version
Get pointer to target ble local device name
Get BLE MAC address
Get pointer to target device name
Get address of version structure of firmware.
Get hardware body
Get hardware body color
Get hardware connect
Get hardware display id
Get hardware region
Get hardware region name
Get hardware target
Get hardware timestamp
Get hardware version
Get pointer to target name
Init flipper version
Get const pointer to UID
Get platform UID size in bytes
Initialize vibro
Turn on/off vibro
Get kernel systick frequency
Lock kernel, pause process scheduling
Restore kernel lock state
Unlock kernel, resume process scheduling
Get log level
Initialize logging
Print log record
Set log level
Set log output callback
Set timestamp callback
Allocate furi message queue
Get message from queue
Get queue capacity
Get message count in queue
Get queue available space
Put message into queue
Convert milliseconds to ticks
Acquire mutex
Allocate FuriMutex
Free FuriMutex
Get mutex owner thread id
Release mutex
Allocate FuriPubSub
Free FuriPubSub
Publish message to FuriPubSub
Subscribe to FuriPubSub
Unsubscribe from FuriPubSub
Close record
Create record
Destroy record
Check if record exists
Initialize record storage For internal use only.
Open record
Acquire semaphore
Allocate semaphore
Free semaphore
Get semaphore count
Release semaphore
@brief Allocate stream buffer instance. Stream buffer implementation assumes there is only one task or interrupt that will write to the buffer (the writer), and only one task or interrupt that will read from the buffer (the reader).
@brief Queries a stream buffer to see how much data it contains, which is equal to the number of bytes that can be read from the stream buffer before the stream buffer would be empty.
@brief Free stream buffer instance
@brief Queries a stream buffer to see if it is empty.
@brief Queries a stream buffer to see if it is full.
@brief Receives bytes from a stream buffer. Wakes up task waiting for space to become available if called from ISR.
@brief Resets a stream buffer to its initial, empty, state. Any data that was in the stream buffer is discarded. A stream buffer can only be reset if there are no tasks blocked waiting to either send to or receive from the stream buffer.
@brief Sends bytes to a stream buffer. The bytes are copied into the stream buffer. Wakes up task waiting for data to become available if called from ISR.
@brief Queries a stream buffer to see how much free space it contains, which is equal to the amount of data that can be sent to the stream buffer before it is full.
@brief Set trigger level for stream buffer. A stream buffer’s trigger level is the number of bytes that must be in the stream buffer before a task that is blocked on the stream buffer to wait for data is moved out of the blocked state.
@brief Allocate new FuriString. @return FuriString*
@brief Allocate new FuriString and move source string content to it. Allocate the string, set it to the other one, and destroy the other one. @param source @return FuriString*
@brief Allocate new FuriString and printf to it. Initialize and set a string to the given formatted value. @param format @param … @return FuriString*
@brief Allocate new FuriString and set it to string. Allocate & Set the string a to the string. @param source @return FuriString*
@brief Allocate new FuriString and set it to C string. Allocate & Set the string a to the C string. @param cstr_source @return FuriString*
@brief Allocate new FuriString and printf to it. Initialize and set a string to the given formatted value. @param format @param args @return FuriString*
@brief Append a string to the string. Concatenate the string with the other string. @param string_1 @param string_2
@brief Append to the string the formatted string of the given printf format. @param string @param format @param … @return int
@brief Append a C string to the string. Concatenate the string with the C string. @param string_1 @param cstring_2
@brief Append to the string the formatted string of the given printf format. @param string @param format @param args @return int
@brief Compare two strings and return the sort order. @param string_1 @param string_2 @return int
@brief Compare string with C string and return the sort order. @param string_1 @param cstring_2 @return int
@brief Compare two strings (case insensitive according to the current locale) and return the sort order. Note: doesn’t work with UTF-8 strings. @param string_1 @param string_2 @return int
@brief Compare string with C string (case insensitive according to the current locale) and return the sort order. Note: doesn’t work with UTF-8 strings. @param string_1 @param cstring_2 @return int
@brief Check that string is empty or not @param string @return bool
@brief Test if the string ends with the given string. @param string @param end @return bool
@brief Test if the string ends with the given C string. @param string @param end @return bool
@brief Test if two strings are equal. @param string_1 @param string_2 @return bool
@brief Test if the string is equal to the C string. @param string_1 @param cstring_2 @return bool
@brief Free FuriString. @param string
@brief Get the character at the given index. Return the selected character of the string. @param string @param index @return char
@brief Return the string view a classic C string. @param string @return const char*
@brief Compute a hash for the string. @param string @return size_t
@brief Trim the string left to the first ‘index’ bytes. @param string @param index
@brief Trim the string from position index to size bytes. See also furi_string_set_n. @param string @param index @param size
@brief Move string_2 content to string_1. Set the string to the other one, and destroy the other one. @param string_1 @param string_2
@brief Format in the string the given printf format @param string @param format @param … @return int
@brief Append a character to the string. @param string @param c
@brief Replace a string ‘needle’ to string ‘replace’ in a string from ‘start’ position. By default, start is zero. Return STRING_FAILURE if ‘needle’ not found or replace position. @param string @param needle @param replace @param start @return size_t
@brief Replace all occurrences of ‘needle’ string into ‘replace’ string. @param string @param needle @param replace
@brief Replace all occurrences of ‘needle’ C string into ‘replace’ C string. @param string @param needle @param replace
@brief Replace in the string the sub-string at position ‘pos’ for ‘len’ bytes into the C string ‘replace’. @param string @param pos @param len @param replace
@brief Replace a C string ‘needle’ to C string ‘replace’ in a string from ‘start’ position. By default, start is zero. Return STRING_FAILURE if ‘needle’ not found or replace position. @param string @param needle @param replace @param start @return size_t
@brief Reserve memory for string. Modify the string capacity to be able to handle at least ‘alloc’ characters (including final null char). @param string @param size
@brief Reset string. Make the string empty. @param s
@brief Trim the string right from the ‘index’ position to the last position. @param string @param index
@brief Search the first occurrence of the needle in the string from the position start. Return STRING_FAILURE if not found. By default, start is zero. @param string @param needle @param start @return size_t
@brief Search for the position of the character c from the position start (include) in the string. Return STRING_FAILURE if not found. By default, start is zero. @param string @param c @param start @return size_t
@brief Reverse search for the position of the character c from the position start (include) in the string. Return STRING_FAILURE if not found. By default, start is zero. @param string @param c @param start @return size_t
@brief Search the first occurrence of the needle in the string from the position start. Return STRING_FAILURE if not found. @param string @param needle @param start @return size_t
@brief Set the string to the other string. Set the string to the source string. @param string @param source
@brief Set the character at the given index. @param string @param index @param c
@brief Set the string to the n first characters of other one. @param string @param source @param offset @param length
@brief Set the string to the other C string. Set the string to the source C string. @param string @param source
@brief Set the string to the n first characters of the C string. @param string @param source @param length
@brief Get string size (usually length, but not for UTF-8) @param string @return size_t
@brief Test if the string starts with the given string. @param string @param start @return bool
@brief Test if the string starts with the given C string. @param string @param start @return bool
@brief Swap two strings. Swap the two strings string_1 and string_2. @param string_1 @param string_2
@brief Trim a string from the given set of characters (default is “ \n\r\t“). @param string @param chars
@brief Main generic UTF8 decoder. It takes a character, and the previous state and the previous value of the unicode value. It updates the state and the decoded unicode value. A decoded unicode encoded value is valid only when the state is FuriStringUTF8StateStarting. @param c @param state @param unicode
@brief Compute the length in UTF8 characters in the string. @param string @return size_t
@brief Push unicode into string, encoding it in UTF8. @param string @param unicode
@brief Format in the string the given printf format @param string @param format @param args @return int
Allocate FuriThread
Disable heap tracing
Enable heap tracing
Release FuriThread
Get FuriThread instance for current thread
Get FreeRTOS FuriThreadId for current thread
Get thread heap size
Get FreeRTOS FuriThreadId for FuriThread instance
Get thread return code
Get FuriThread state
Get thread suspended state
Join FuriThread
Mark thread as service The service cannot be stopped or removed, and cannot exit from the thread body
Resume thread
Set FuriThread callback
Set FuriThread context
Set FuriThread name
Set FuriThread priority
Set FuriThread stack size
Set FuriThread state change callback
Set FuriThread state change context
Set STDOUT callback for thread
Start FuriThread
Flush data to STDOUT
Write data to buffered STDOUT
Suspend thread
Return control to scheduler
Allocate timer
Free timer
Is timer running
Start timer
Stop timer
getc
gets
getw
Add gui canvas commit callback
Add view_port to view_port tree
Get gui canvas frame buffer size
Remove gui canvas commit callback
Remove view_port from rendering tree
Set lockdown mode
Send ViewPort to the back
Send ViewPort to the front
Get SD card status
Init SD card detect
Set SD card detect pin to low
Allocate key @return iButtonKey*
Clear key data @param key
Check if CRC for onewire key is valid @param key @return true @return false
Check if onewire key is a DS1990 key @param key @return true @return false
Free key @param key
Get pointer to key data @param key @return const uint8_t*
Get key data size @param key @return uint8_t
Get max key size @return uint8_t
Get key data size from type @param key_type @return uint8_t
Get type string from key type @param key_type @return const char*
Get key type @param key @return iButtonKeyType
Get key type from string @param type_string @param key_type @return bool
Copy key @param to @param from
Set key data @param key @param data @param data_count
Set key type @param key @param key_type
Allocate ibutton worker @return iButtonWorker*
Set “emulate success” callback @param worker @param callback @param context
Start emulate mode @param worker @param key
Free ibutton worker @param worker
Set “read success” callback @param worker @param callback @param context
Start read mode @param worker @param key
Start ibutton worker thread @param worker
Stop all modes @param worker
Stop ibutton worker thread @param worker
Set “write event” callback @param worker @param callback @param context
Start write mode @param worker @param key
Allocate icon animation instance with const icon data.
Release icon animation instance
Get icon animation height
Get icon animation width
Returns true if current frame is a last one
Set IconAnimation update callback
Start icon animation
Stop icon animation
Get Icon XBM bitmap data
Get icon height
Get icon width
Initialize decoder.
Allocate INFRARED encoder.
Check whether decoder is ready. Functionality is quite similar to infrared_decode(), but with no timing providing. Some protocols (e.g. Sony SIRC) has variable payload length, which means we can’t recognize end of message right after receiving last bit. That’s why application should call to infrared_check_decoder_ready() after some timeout to retrieve decoded message, if so.
Provide to decoder next timing.
Encode previously set INFRARED message. Usage:
Deinitialize decoder and free allocated memory.
Free encoder handler previously allocated with \c infrared_alloc_encoder().
Get address length by protocol enum.
Get protocol enum by protocol name.
Get command length by protocol enum.
Get PWM duty cycle value for selected protocol
Get PWM frequency value for selected protocol
Get protocol name by protocol enum.
Checks whether protocol valid.
Reset INFRARED decoder.
Reset INFRARED encoder and set new message to encode. If it’s not called after receiveing InfraredStatusDone in \c infrared_encode(), encoder will encode repeat messages till the end of time.
Send message over INFRARED.
Send raw data through infrared port.
Send raw data through infrared port, with additional settings.
Allocate InfraredWorker
Free InfraredWorker
Acquire decoded message from interface struct ‘InfraredWorkerSignal’. First, you have to ensure that signal is decoded.
Acquire raw signal from interface struct ‘InfraredWorkerSignal’. First, you have to ensure that signal is raw.
Enable blinking on receiving any signal on IR port.
Enable decoding of received infrared signals.
Set received data callback InfraredWorker
Start InfraredWorker thread, initialise furi_hal, prepare all work.
Stop InfraredWorker thread, deinitialize furi_hal.
Set current decoded signal for InfraredWorker instance
Set current raw signal for InfraredWorker instance
Clarify is received signal either decoded or raw
Callback to pass to infrared_worker_tx_set_get_signal_callback() if signal is steady and will not be changed between infrared_worker start and stop. Before starting transmission, desired steady signal must be set with infrared_worker_make_decoded_signal() or infrared_worker_make_raw_signal().
Set callback for providing next signal to send
Set callback for end of signal transmitting
Start transmitting signal. Callback InfraredWorkerGetSignalCallback should be set before this function is called, as it calls for it to fill buffer before starting transmission.
Stop transmitting signal. Waits for end of current signal and stops transmission.
Creates ValueMutex.
Get human readable input key name @param key - InputKey @return string
Get human readable input type name @param type - InputType @return string
itoa
j0
j0f
j1
j1f
jn
jnf
l64a
labs
ldiv
@brief Load protocol from file to dictionary
@brief Save protocol from dictionary to file
@brief Allocate a new LFRFIDRawFile instance
@brief Free a LFRFIDRawFile instance
@brief Open RAW file for reading @param file @param file_path @return bool
@brief Open RAW file for writing
@brief Read RAW file header
@brief Read varint-encoded pair from RAW file
@brief Write data to RAW file
@brief Write RAW file header
@brief Allocate a new LFRFIDRawWorker instance
@brief Free a LFRFIDRawWorker instance
@brief Start emulate
@brief Start reading
@brief Stop worker
Allocate LF-RFID worker @return LFRFIDWorker*
Emulate raw read mode @param worker @param filename @param callback @param context
Start emulate mode @param worker
Free LF-RFID worker @param worker
@brief Start raw read mode
@brief Start read mode
Start LF-RFID worker thread @param worker
Stop all modes @param worker
Stop LF-RFID worker thread @param worker
@brief Start write mode
Show primary loader
Get loader lock status
Lock application start @retval true on success
Show primary loader
Start application @param name - application name @param args - application arguments @retval true on success
Unlock application start
Show primary loader
Allocate and initialize
Deinitialize and free Loading View
Get Loading view
log
log2
logb
logf
logl
\brief 3DES-CBC buffer encryption/decryption
\brief 3DES-ECB block encryption/decryption
\brief Clear Triple-DES context
\brief Initialize Triple-DES context
\brief Triple-DES key schedule (112-bit, decryption)
\brief Triple-DES key schedule (112-bit, encryption)
\brief Triple-DES key schedule (168-bit, decryption)
\brief Triple-DES key schedule (168-bit, encryption)
\brief DES-CBC buffer encryption/decryption
\brief DES-ECB block encryption/decryption
\brief Clear DES context
\brief Initialize DES context
\brief Check that key parity on the given key is odd.
\brief Check that key is not a weak or semi-weak DES key
\brief Set key parity on the given key to odd.
\brief Checkup routine
\brief Internal function for key expansion. (Only exposed to allow overriding it, see MBEDTLS_DES_SETKEY_ALT)
\brief DES key schedule (56-bit, decryption)
\brief DES key schedule (56-bit, encryption)
\brief SHA-1 process data block (internal use only).
\brief Platform-specific implementation of gmtime_r()
\brief Securely zeroize a buffer
\brief This function calculates the SHA-1 checksum of a buffer.
\brief This function clones the state of a SHA-1 context.
\brief This function finishes the SHA-1 operation, and writes the result to the output buffer.
\brief This function clears a SHA-1 context.
\brief This function initializes a SHA-1 context.
\brief The SHA-1 checkup routine.
\brief This function starts a SHA-1 checksum calculation.
\brief This function feeds an input buffer into an ongoing SHA-1 checksum calculation.
md5
\brief Output = MD5( input buffer )
\brief MD5 final digest
\brief MD5 context setup
\brief MD5 process buffer
@brief Allocate memory from separate memory pool. That memory can’t be freed.
Get free heap size
Get heap watermark
Get total heap size
Memmgr heap disable thread allocation tracking
Memmgr heap enable thread allocation tracking
Memmgr heap get the max contiguous block size on the heap
Memmgr heap get allocatred thread memory
Print the address and size of all free blocks to stdout
@brief Get free memory pool size
@brief Get max free block size from memory pool
Add item to menu
Menu allocation and initialization
Free menu
Get Menu view
Clean menu @note this function does not free menu instance
Set current menu item
Add string representation of the key
Allocate MfClassicDict instance
Delete key at target offset
Free MfClassicDict instance
Get key at target offset as uint64_t
Get key at target offset as string_t
Get total keys count
Rewind to the beginning
modf
nan
nanf
nanl
@brief Send internal (apply to permanent layer) notification message. Think twice before use.
@brief Send internal (apply to permanent layer) notification message and wait for notification end. Think twice before use.
Allocate onewire device with ID @param id_1 @param id_2 @param id_3 @param id_4 @param id_5 @param id_6 @param id_7 @param id_8 @return OneWireDevice*
Attach device to onewire slave bus @param device @param bus
Attach device from onewire slave bus @param device
Deallocate onewire device @param device
Get pointer to device id array @param device @return uint8_t*
Send ID report, called from onewire slave @param device
Allocate onewire host bus @param gpio @return OneWireHost*
Deallocate onewire host bus @param host
Read one byte @param host @return uint8_t
Read one bit @param host @return bool
Read many bytes @param host @param buffer @param count
Reset bus @param host @return bool
@param host @param newAddr @param mode @return uint8_t
Skip ROM command @param host
Start working with the bus @param host
Stop working with the bus @param host
@param host @param family_code
Write one byte @param host @param value
Write one bit @param host @param value
Allocate onewire slave @param pin @return OneWireSlave*
Attach device for emulation @param bus @param device
Detach device from bus @param bus
Free onewire slave @param bus
Set a callback to report emulation success @param bus @param result_cb @param context
Start working with the bus @param bus
Stop working with the bus @param bus
@brief Appends new component to path, adding path delimiter
@brief Appends new component to path, adding path delimiter
@brief Check that path contains only ascii characters
@brief Extract last path component
@brief Extract path, except for last component
@brief Extract file extension from path.
@brief Extract filename string from path.
@brief Extract filename without extension from path.
task. h @code{c} char *pcTaskGetName( TaskHandle_t xTaskToQuery ); @endcode
const char * const pcTimerGetName( TimerHandle_t xTimer );
Allocate and initialize popup
Disable popup timeout
Enable popup timeout
Deinitialize and free popup
Get popup view
Reset popup instance state
Set popup header text
Set popup context
Set popup header text
Set popup icon
Set popup text
Set popup timeout
pow
Enable or disable battery low level notification mesage
Get power info
Get power event pubsub handler
Check battery health
Power off device
Reboot device
powf
powl
putc
puts
putw
void *pvTimerGetTimerID( TimerHandle_t xTimer );
rand
Instead of take-access-give sequence you can use read_mutex and write_mutex functions. Both functions return true in case of success, false otherwise.
Release mutex after end of work with data. Call release_mutex and pass ValueData instance and pointer to data.
\brief RFAL Adjust Regulators
\brief RFAL Calibrate
\brief RFAL Deinitialize
\brief Disable Observation Mode
\brief FeliCa Poll
\brief RFAL Turn Field Off
\brief RFAL Turn Field On and Start GT
\brief RFAL Get Bit Rate
\brief Get Error Handling Mode
\brief RFAL Set FDT Listen
\brief RFAL Set FDT Poll
\brief RFAL Get GT
\brief RFAL Get Mode
\brief Get Observation Mode
\brief Get Transceive RSSI
\brief Get Transceive State
\brief Get Transceive Status
\brief Sends an ISO14443A Anticollision Frame
\brief Transceives an ISO14443A ShortFrame
\brief Sends an ISO15693 Anticollision Frame
\brief Sends an ISO15693 EOF
\brief Sends an ISO15693 Anticollision EOF
\brief RFAL Initialize
\brief Is external Field On
\brief RFAL Is GT expired
\brief Is Transceive in Rx
\brief Is Transceive in Tx
\brief ISO-DEP Send ATTRIB
\brief Deselects PICC
\brief FSxI to FSx
\brief FWI to FWT
\brief Get the APDU Transceive status
\brief Get the ISO-DEP Communication Information
\brief Get the Transceive status
\brief Initialize the ISO-DEP protocol
\brief Initialize the ISO-DEP protocol
\brief Check if the buffer data contains a valid ATTRIB command
\brief Check if the buffer data contains a valid RATS command
\brief Get the current Activation Status
\brief Start Listen Activation Handling
\brief ISO-DEP Send PPS
\brief ISO-DEP Poller Get NFC-A Activation Status
\brief ISO-DEP Poller Handle NFC-A Activation
\brief ISO-DEP Poller Start NFC-A Activation
\brief ISO-DEP Poller Get NFC-B Activation Status
\brief ISO-DEP Poller Handle NFC-B Activation
\brief ISO-DEP Poller Start NFC-B Activation
\brief ISO-DEP Poller Handle S(Parameters)
\brief ISO-DEP Send RATS
\brief ISO-DEP Start APDU Transceive
\brief ISO-DEP Start Transceive
\brief Listen Mode get state
\brief Listen Mode set state
\brief Listen Mode start Sleeping
\brief Listen Mode start
\brief Listen Mode Stop
\brief Low Power Mode Start
\brief Low Power Mode Stop
\brief RFAL NFC Get Data Exchange Status
\brief RFAL NFC Start Data Exchange
\brief RFAL NFC Deactivate
\brief NFC-DEP Initiator ATR (Attribute Request)
\brief Calculate Response Waiting Time
\brief NFC-DEP Initiator DSL (Deselect)
\brief Return the PSU Transceive status
\brief Return the Transceive status
\brief NFCIP Initialize
\brief NFC-DEP Initiator Handle Activation
\brief Check if buffer contains valid ATR_REQ
\brief Get the current NFC-DEP Activation Status
\brief NFCDEP Start Listen Activation Handling
\brief NFC-DEP Initiator PSL (Parameter Selection)
\brief NFC-DEP Initiator RLS (Release)
\brief Set deactivating callback
\brief Start PDU Transceive
\brief Start Transceive
\brief Check is Target has received ATR
\brief RFAL NFC Discovery
\brief RFAL NFC Get Active Device
\brief RFAL NFC Get Devices Found
\brief RFAL NFC Get State
\brief RFAL NFC Initialize
\brief RFAL NFC Select Device
\brief RFAL NFC Worker
\brief NFC-A Listener is SLP_REQ
\brief NFC-A Poller Check Presence
\brief NFC-A Poller Full Collision Resolution
\brief NFC-A Get Full Collision Resolution Status
\brief Initialize NFC-A Poller mode
\brief NFC-A Poller Select
\brief NFC-A Poller Collision Resolution
\brief NFC-A Poller Sleep
\brief NFC-A Poller Full Collision Resolution with Sleep
\brief NFC-A Poller Start Full Collision Resolution
\brief NFC-A Technology Detection
\brief NFC-B Poller Check Presence
\brief NFC-B Poller Collision Resolution
\brief Initialize NFC-B Poller mode
\brief Set NFC-B Poller parameters
\brief NFC-B Poller Sleep
\brief NFC-B Poller Slot Marker
\brief NFC-B Poller Collision Resolution Slotted
\brief NFC-B Technology Detection
\brief NFC-B TR2 code to FDT
\brief NFC-F Listener is T3T Request
\brief NFC-F Poller Check/Read
\brief NFC-F Poller Check Presence
\brief NFC-F Poller Full Collision Resolution
\brief Initialize NFC-F Poller mode
\brief NFC-F Poller Poll
\brief NFC-F Poller Update/Write
\brief NFC-V Poller Check Presence
\brief NFC-V Poller Full Collision Resolution
\brief NFC-V Extended Get System Information
\brief NFC-V Poller Extended Lock Single Block
\brief NFC-V Poller Extended Read Multiple Blocks
\brief NFC-V Poller Extended Read Single Block
\brief NFC-V Poller Extended Write Multiple Blocks
\brief NFC-V Poller Extended Write Single Block
\brief NFC-V Get System Information
\brief Initialize NFC-V Poller mode
\brief NFC-F Poller Poll
\brief NFC-V Poller Extended Lock Single Block
\brief NFC-V Poller Read Multiple Blocks
\brief NFC-V Poller Read Single Block
\brief NFC-V Poller Select
\brief NFC-V Poller Sleep
\brief NFC-V Poller Full Collision Resolution With Sleep
\brief NFC-V Transceive Request
\brief NFC-V Poller Write Multiple Blocks
\brief NFC-V Poller Write Single Block
\brief RFAL Set Bit Rate
\brief Set Error Handling Mode
\brief RFAL Set FDT Listen
\brief RFAL Set FDT Poll
\brief RFAL Set GT
\brief RFAL Set Mode
\brief Set Observation Mode
\brief RFAL Set Post Tx Callback
\brief RFAL Set Pre Tx Callback
\brief RFAL Set System Callback
\brief ST25TB Poller Check Presence
\brief ST25TB Poller Collision Resolution
\brief ST25TB Poller Completion
\brief ST25TB Get UID
\brief Initialize ST25TB Poller mode
\brief ST25TB Poller Initiate
\brief ST25TB Poller Pcall
\brief ST25TB Poller Read Block
\brief ST25TB Poller Reset to Inventory
\brief ST25TB Poller Select
\brief ST25TB Poller Slot Marker
\brief ST25TB Poller Write Block
\brief RFAL Set transceive context
\brief Initialize NFC-A T1T Poller mode
\brief NFC-A T1T Poller RALL
\brief NFC-A T1T Poller RID
\brief NFC-A T1T Poller Write
\brief Transceive Blocking Rx
\brief Transceive Blocking Tx
\brief Transceive Blocking
\brief Wake-Up Has Woke
\brief Wake-Up Mode Start
\brief Wake-Up Mode Stop
\brief RFAL Worker
Set callback context
Set RFAL state changed callback
rint
Close RPC session It is guaranteed that no callbacks will be called as soon as session is closed. So no need in setting callbacks to NULL after session close.
Give bytes to RPC service to decode them and perform command
Get available size of RPC buffer
Open RPC session
Set callback to notify that buffer is empty
Set callback to be called when RPC command to close session is received WARN: It’s forbidden to call RPC API within RpcSessionClosedCallback
Set session context for callbacks to pass
Set callback to send bytes to client WARN: It’s forbidden to call RPC API within RpcSendBytesCallback
Set callback to be called when RPC session is closed
Scene Manager allocation and configuration
Free Scene Manager with allocated Scenes
Back event handler
Custom event handler
Tick event handler
Search previous Scene
Add and run next Scene
Run previous Scene
Clear Scene stack and switch to another Scene
Search and switch to previous Scene
Search and switch to previous Scene, multiple choice
Exit from current scene
Generates random name @param name buffer to write random name @param max_name_size length of given buffer
sin
sinf
sinh
sinl
sqrt
Copy file, file must not be open @param app pointer to the api @param old_path old path @param new_path new path @return FS_Error operation result
Gets general information about the storage @param app pointer to the api @param fs_path the path to the storage of interest @param total_space pointer to total space record, will be filled @param free_space pointer to free space record, will be filled @return FS_Error operation result
Copy one folder contents into another with rename of all conflicting files @param app pointer to the api @param old_path old path @param new_path new path @return FS_Error operation result
Creates a directory @param app pointer to the api @param path directory path @return FS_Error operation result
Removes a file/directory from the repository, the directory must be empty and the file/directory must not be open @param app pointer to the api @param path @return FS_Error operation result
Renames file/directory, file/directory must not be open @param app pointer to the api @param old_path old path @param new_path new path @return FS_Error operation result
Retrieves information about a file/directory @param app pointer to the api @param path path to file/directory @param fileinfo pointer to the read FileInfo, may be NULL @return FS_Error operation result
Retrieves unix timestamp of last access
Close the directory. Also free file handle structure and point it to the NULL. @param file pointer to a file object. @return bool success flag
Opens a directory to get objects from it @param app pointer to the api @param file pointer to file object. @param path path to directory @return bool success flag. You need to close the directory even if the open operation failed.
Reads the next object in the directory @param file pointer to file object. @param fileinfo pointer to the read FileInfo, may be NULL @param name pointer to name buffer, may be NULL @param name_length name buffer length @return success flag (if the next object does not exist, it also returns false and sets the file error id to FSE_NOT_EXIST)
Rewinds the read pointer to first item in the directory @param file pointer to file object. @return bool success flag
Retrieves the error text from the error id @param error_id error id @return const char* error text
Allocates and initializes a file descriptor @return File*
Close the file. @param file pointer to a file object, the file object will be freed. @return success flag
Checks that the r/w pointer is at the end of the file @param file pointer to file object. @return bool success flag
@brief Check that file exists
Frees the file descriptor. Closes the file if it was open.
Retrieves the error id from the file object @param file pointer to file object. Pointer must not point to NULL. YOU CANNOT RETREIVE THE ERROR ID IF THE FILE HAS BEEN CLOSED @return FS_Error error id
Retrieves the error text from the file object @param file pointer to file object. Pointer must not point to NULL. YOU CANNOT RETREIVE THE ERROR TEXT IF THE FILE HAS BEEN CLOSED @return const char* error text
Retrieves the internal (storage-specific) error id from the file object @param file pointer to file object. Pointer must not point to NULL. YOU CANNOT RETREIVE THE INTERNAL ERROR ID IF THE FILE HAS BEEN CLOSED @return FS_Error error id
Tells if the file is a directory @param file pointer to a file object @return bool true if file is a directory
Tells if the file is open @param file pointer to a file object @return bool true if file is open
Opens an existing file or create a new one. @param file pointer to file object. @param path path to file @param access_mode access mode from FS_AccessMode @param open_mode open mode from FS_OpenMode @return success flag. You need to close the file even if the open operation failed.
Reads bytes from a file into a buffer @param file pointer to file object. @param buff pointer to a buffer, for reading @param bytes_to_read how many bytes to read. Must be less than or equal to the size of the buffer. @return uint16_t how many bytes were actually read
Moves the r/w pointer @param file pointer to file object. @param offset offset to move the r/w pointer @param from_start set an offset from the start or from the current position @return success flag
Gets the size of the file @param file pointer to file object. @return uint64_t size of the file
Writes file cache to storage @param file pointer to file object. @return bool success flag
Gets the position of the r/w pointer @param file pointer to file object. @return uint64_t position of the r/w pointer
Truncates the file size to the current position of the r/w pointer @param file pointer to file object. @return bool success flag
Writes bytes from a buffer to a file @param file pointer to file object. @param buff pointer to buffer, for writing @param bytes_to_write how many bytes to write. Must be less than or equal to the size of the buffer. @return uint16_t how many bytes were actually written
@brief Get next free filename.
Get storage pubsub. Storage will send StorageEvent messages. @param storage @return FuriPubSub*
Backs up internal storage to a tar archive @param api pointer to the api @param dstmane destination archive path @return FS_Error operation result
Restores internal storage from a tar archive @param api pointer to the api @param dstmane archive path @param converter pointer to filename conversion function, may be NULL @return FS_Error operation result
Formats SD Card @param api pointer to the api @return FS_Error operation result
Retrieves SD card information @param api pointer to the api @param info pointer to the info @return FS_Error operation result
Retrieves SD card status @param api pointer to the api @return FS_Error operation result
Will unmount the SD card @param api pointer to the api @return FS_Error operation result
Creates a directory @param storage @param path @return true on success or if directory is already exist
Removes a file/directory, the directory must be empty and the file/directory must not be open @param storage pointer to the api @param path @return true on success or if file/dir is not exist
Recursively removes a file/directory, the directory can be not empty @param storage pointer to the api @param path @return true on success or if file/dir is not exist
Clean (empty) Stream @param stream Stream instance
Copy data from one stream to another. Data will be copied from current rw pointer and to current rw pointer. @param stream_from @param stream_to @param size @return size_t
Copy data from one stream to another. Data will be copied from start of one stream and to start of other stream. @param stream_from @param stream_to @return size_t
Remove N chars from the stream, starting at the current pointer. The size may be larger than stream size, the stream will be cleared from current rw pointer to the end. @param stream Stream instance @param size how many chars need to be deleted @return true if the operation was successful @return false on error
Delete N chars from the stream and write data by calling write_callback(context) @param stream Stream instance @param delete_size size of data to be deleted @param write_callback write callback @param context write callback context @return true if the operation was successful @return false on error
Delete N chars from the stream and insert char to the stream @param stream Stream instance @param delete_size size of data to be deleted @param c char value @return true if the operation was successful @return false on error
Delete N chars from the stream and insert const char* to the stream @param stream Stream instance @param delete_size size of data to be deleted @param string c-string value @return true if the operation was successful @return false on error
Delete N chars from the stream and insert formatted string to the stream @param stream Stream instance @param delete_size size of data to be deleted @param format @param … @return true if the operation was successful @return false on error
Delete N chars from the stream and insert string to the stream @param stream Stream instance @param delete_size size of data to be deleted @param string string value @return true if the operation was successful @return false on error
Delete N chars from the stream and insert formatted string to the stream, va_list version @param stream Stream instance @param delete_size size of data to be deleted @param format @param args @return true if the operation was successful @return false on error
Dump stream inner data (size, RW positiot, content) @param stream Stream instance
Indicates that the rw pointer is at the end of the stream @param stream Stream instance @return true if rw pointer is at the end of the stream @return false if rw pointer is not at the end of the stream
Free Stream @param stream Stream instance
Insert N chars to the stream, starting at the current pointer. Data will be inserted, not overwritteт, so the stream will be increased in size. @param stream Stream instance @param data data to be inserted @param size size of data to be inserted @return true if the operation was successful @return false on error
Insert char to the stream @param stream Stream instance @param c char value @return true if the operation was successful @return false on error
Insert const char* to the stream @param stream Stream instance @param string c-string value @return true if the operation was successful @return false on error
Insert formatted string to the stream @param stream Stream instance @param format @param … @return true if the operation was successful @return false on error
Insert string to the stream @param stream Stream instance @param string string value @return true if the operation was successful @return false on error
Insert formatted string to the stream, va_list version @param stream Stream instance @param format @param args @return true if the operation was successful @return false on error
Loads data to the stream from a file. Data will be loaded to the current RW pointer. RW pointer will be moved to the end of the stream. @param stream Stream instance @param storage @param path @return size_t
Read N bytes from stream @param stream Stream instance @param data data to be read @param count size of data to be read @return size_t how many bytes was read
Read line from a stream (supports LF and CRLF line endings) @param stream @param str_result @return true if line lenght is not zero @return false otherwise
Moves the rw pointer to the start @param stream Stream instance
Writes data from a stream to a file. Data will be saved starting from the current RW pointer. RW pointer will be moved to the end of the stream. @param stream Stream instance @param storage @param path @param mode @return size_t
Moves the rw pointer. @param stream Stream instance @param offset how much to move the pointer @param offset_type starting from what @return true @return false
Gets the size of the stream @param stream Stream instance @return size_t size of the stream
Splits one stream into two others. The original stream will remain untouched. @param stream @param stream_left @param stream_right @return true @return false
Gets the value of the rw pointer @param stream Stream instance @return size_t value of the rw pointer
Write N bytes to the stream @param stream Stream instance @param data data to write @param size size of data to be written @return size_t how many bytes was written
Write char to the stream @param stream Stream instance @param c char value @return size_t how many bytes was written
Write const char* to the stream @param stream Stream instance @param string c-string value @return size_t how many bytes was written
Write formatted string to the stream @param stream Stream instance @param format @param … @return size_t how many bytes was written
Write string to the stream @param stream Stream instance @param string string value @return size_t how many bytes was written
Write formatted string to the stream, va_list version @param stream Stream instance @param format @param args @return size_t how many bytes was written
Allocate string stream @return Stream*
Deserialize data SubGhzBlockGeneric. @param instance Pointer to a SubGhzBlockGeneric instance @param flipper_format Pointer to a FlipperFormat instance @return true On success
Get name preset. @param preset_name name preset @param preset_str Output name preset
Serialize data SubGhzBlockGeneric. @param instance Pointer to a SubGhzBlockGeneric instance @param flipper_format Pointer to a FlipperFormat instance @param preset The modulation on which the signal was received, SubGhzRadioPreset @return true On success
Allocate SubGhzEnvironment. @return SubGhzEnvironment* pointer to a SubGhzEnvironment instance
Free SubGhzEnvironment. @param instance Pointer to a SubGhzEnvironment instance
Get filename to work with Came Atomo. @param instance Pointer to a SubGhzEnvironment instance @return Full path to the file
Get pointer to a SubGhzKeystore* instance. @return SubGhzEnvironment* pointer to a SubGhzEnvironment instance
Get filename to work with Nice Flor-S. @param instance Pointer to a SubGhzEnvironment instance @return Full path to the file
Get list of protocols names. @param instance Pointer to a SubGhzEnvironment instance @param idx index protocols @return Pointer to a SubGhzProtocolRegistry
Get list of protocols to work. @param instance Pointer to a SubGhzEnvironment instance @return Pointer to a SubGhzProtocolRegistry
Downloading the manufacture key file. @param instance Pointer to a SubGhzEnvironment instance @param filename Full path to the file @return true On succes
Set filename to work with Came Atomo. @param instance Pointer to a SubGhzEnvironment instance @param filename Full path to the file
Set filename to work with Nice Flor-S. @param instance Pointer to a SubGhzEnvironment instance @param filename Full path to the file
Set list of protocols to work. @param instance Pointer to a SubGhzEnvironment instance @param protocol_registry_items Pointer to a SubGhzProtocolRegistry
Allocate SubGhzKeystore. @return SubGhzKeystore* pointer to a SubGhzKeystore instance
Free SubGhzKeystore. @param instance Pointer to a SubGhzKeystore instance
Get array of keys and names manufacture @param instance Pointer to a SubGhzKeystore instance @return SubGhzKeyArray_t*
Loading manufacture key from file @param instance Pointer to a SubGhzKeystore instance @param filename Full path to the file
Save RAW encrypted to file @param input_file_name Full path to the input file @param output_file_name Full path to the output file @param iv IV, 16 bytes in hex
Get decrypt RAW data to file @param file_name Full path to the input file @param offset Offset from the start of the RAW data @param data Returned array @param len Required data length @return true On success
Save manufacture key to file @param instance Pointer to a SubGhzKeystore instance @param filename Full path to the file @return true On success
Add data bit when decoding. @param decoder Pointer to a SubGhzBlockDecoder instance @param bit data, 1bit
Compute Addition of a number of bytes
Add data to_128 bit when decoding. @param decoder Pointer to a SubGhzBlockDecoder instance @param head_64_bit Pointer to a head_64_bit @param bit data, 1bit
Generic Cyclic Redundancy Check CRC-8. Example polynomial: 0x31 = x8 + x5 + x4 + 1 (x8 is implicit) Example polynomial: 0x80 = x8 + x7 (a normal bit-by-bit parity XOR)
“Little-endian” Cyclic Redundancy Check CRC-8 LE Input and output are reflected, i.e. least significant bit is shifted in first
CRC-16 LSB. Input and output are reflected, i.e. least significant bit is shifted in first. Note that poly and init already need to be reflected
Get data bit when encoding HEX array. @param data_array Pointer to a HEX array @param read_index_bit Number get a bit in the array starting from the left @return bool value bit
Getting the hash sum of the last randomly received parcel. @param decoder Pointer to a SubGhzBlockDecoder instance @return hash Hash sum
Get parity the data bitwise
Generating an upload from data. @param data_array Pointer to a HEX array @param count_bit_data_array How many bits in the array are processed @param upload Pointer to a LevelDuration @param max_size_upload upload size, check not to overflow @param duration_bit duration 1 bit
Digest-8 by “LFSR-based Toeplitz hash”
Digest-8 by “LFSR-based Toeplitz hash”, byte reflect, bit reflect
Digest-16 by “LFSR-based Toeplitz hash”
Compute bit parity of a single byte (8 bits)
Compute bit parity of a number of bytes
Flip the data bitwise
Set data bit when encoding HEX array. @param bit_value The value of the bit to be set @param data_array Pointer to a HEX array @param set_index_bit Number set a bit in the array starting from the left @param max_size_array array size, check not to overflow
Compute XOR (byte-wide parity) of a number of bytes
Deserialize data SubGhzProtocolDecoderBase. @param decoder_base Pointer to a SubGhzProtocolDecoderBase instance @param flipper_format Pointer to a FlipperFormat instance @return true On success
Getting the hash sum of the last randomly received parcel. @param decoder_base Pointer to a SubGhzProtocolDecoderBase instance @return hash Hash sum
Getting a textual representation of the received data. @param decoder_base Pointer to a SubGhzProtocolDecoderBase instance @param output Resulting text
Serialize data SubGhzProtocolDecoderBase. @param decoder_base Pointer to a SubGhzProtocolDecoderBase instance @param flipper_format Pointer to a FlipperFormat instance @param preset The modulation on which the signal was received, SubGhzRadioPreset @return true On success
Set a callback upon completion of successful decoding of one of the protocols. @param decoder_base Pointer to a SubGhzProtocolDecoderBase instance @param callback Callback, SubGhzProtocolDecoderBaseRxCallback @param context Context
Allocate SubGhzProtocolDecoderRAW. @param environment Pointer to a SubGhzEnvironment instance @return SubGhzProtocolDecoderRAW* pointer to a SubGhzProtocolDecoderRAW instance
Deserialize data SubGhzProtocolDecoderRAW. @param context Pointer to a SubGhzProtocolDecoderRAW instance @param flipper_format Pointer to a FlipperFormat instance @return true On success
Parse a raw sequence of levels and durations received from the air. @param context Pointer to a SubGhzProtocolDecoderRAW instance @param level Signal level true-high false-low @param duration Duration of this level in, us
Free SubGhzProtocolDecoderRAW. @param context Pointer to a SubGhzProtocolDecoderRAW instance
Getting a textual representation of the received data. @param context Pointer to a SubGhzProtocolDecoderRAW instance @param output Resulting text
Reset decoder SubGhzProtocolDecoderRAW. @param context Pointer to a SubGhzProtocolDecoderRAW instance
Allocate SubGhzProtocolEncoderRAW. @param environment Pointer to a SubGhzEnvironment instance @return SubGhzProtocolEncoderRAW* pointer to a SubGhzProtocolEncoderRAW instance
Deserialize and generating an upload to send. @param context Pointer to a SubGhzProtocolEncoderRAW instance @param flipper_format Pointer to a FlipperFormat instance @return true On success
Free SubGhzProtocolEncoderRAW. @param context Pointer to a SubGhzProtocolEncoderRAW instance
Forced transmission stop. @param context Pointer to a SubGhzProtocolEncoderRAW instance
Getting the level and duration of the upload to be loaded into DMA. @param context Pointer to a SubGhzProtocolEncoderRAW instance @return LevelDuration
Set callback on completion of file transfer. @param instance Pointer to a SubGhzProtocolEncoderRAW instance @param callback_end Callback, SubGhzProtocolEncoderRAWCallbackEnd @param context_end Context
File generation for RAW work. @param flipper_format Pointer to a FlipperFormat instance @param file_path File path
Get the number of samples received SubGhzProtocolDecoderRAW. @param instance Pointer to a SubGhzProtocolDecoderRAW instance @return count of samples
Open file for writing @param instance Pointer to a SubGhzProtocolDecoderRAW instance @param dev_name File name @param preset The modulation on which the signal was received, SubGhzRadioPreset @return true On success
pause writing to flash. @param context Pointer to a SubGhzProtocolEncoderRAW instance @param pause pause writing
Stop writing file to flash @param instance Pointer to a SubGhzProtocolDecoderRAW instance
Getting the number of registered protocols. @param protocol_registry SubGhzProtocolRegistry @return Number of protocols
Registration protocol by index in array SubGhzProtocol. @param protocol_registry SubGhzProtocolRegistry @param index Protocol by index in array @return SubGhzProtocol* pointer to a SubGhzProtocol instance
Registration by name SubGhzProtocol. @param protocol_registry SubGhzProtocolRegistry @param name Protocol name @return SubGhzProtocol* pointer to a SubGhzProtocol instance
Allocate and init SubGhzReceiver. @param environment Pointer to a SubGhzEnvironment instance @return SubGhzReceiver* pointer to a SubGhzReceiver instance
Parse a raw sequence of levels and durations received from the air. @param instance Pointer to a SubGhzReceiver instance @param level Signal level true-high false-low @param duration Duration of this level in, us
Free SubGhzReceiver. @param instance Pointer to a SubGhzReceiver instance
Reset decoder SubGhzReceiver. @param instance Pointer to a SubGhzReceiver instance
Search for a cattery by his name. @param instance Pointer to a SubGhzReceiver instance @param decoder_name Receiver name @return SubGhzProtocolDecoderBase* pointer to a SubGhzProtocolDecoderBase instance
Set the filter of receivers that will work at the moment. @param instance Pointer to a SubGhzReceiver instance @param filter Filter, SubGhzProtocolFlag
Set a callback upon completion of successful decoding of one of the protocols. @param instance Pointer to a SubGhzReceiver instance @param callback Callback, SubGhzReceiverCallback @param context Context
Allocate and init SubGhzTransmitter. @param environment Pointer to a SubGhzEnvironment instance @return SubGhzTransmitter* pointer to a SubGhzTransmitter instance
Deserialize and generating an upload to send. @param instance Pointer to a SubGhzTransmitter instance @param flipper_format Pointer to a FlipperFormat instance @return true On success
Free SubGhzTransmitter. @param instance Pointer to a SubGhzTransmitter instance
Get protocol instance. @param instance Pointer to a SubGhzTransmitter instance
Forced transmission stop. @param instance Pointer to a SubGhzTransmitter instance
Getting the level and duration of the upload to be loaded into DMA. @param context Pointer to a SubGhzTransmitter instance @return LevelDuration
Allocate SubGhzTxRxWorker @return SubGhzTxRxWorker* Pointer to a SubGhzTxRxWorker instance
SubGhzTxRxWorker, get available data @param instance Pointer to a SubGhzTxRxWorker instance @return size_t data size
Free SubGhzTxRxWorker @param instance Pointer to a SubGhzTxRxWorker instance
Check if worker is running @param instance Pointer to a SubGhzTxRxWorker instance @return bool - true if running
SubGhzTxRxWorker, read data @param instance Pointer to a SubGhzTxRxWorker instance @param data *data @param size max data size, which can be read @return size_t data size, how much is actually read
Сallback SubGhzTxRxWorker when there is data to read in an empty buffer @param instance Pointer to a SubGhzTxRxWorker instance @param callback SubGhzTxRxWorkerCallbackHaveRead callback @param context
Start SubGhzTxRxWorker @param instance Pointer to a SubGhzTxRxWorker instance @return bool - true if ok
Stop SubGhzTxRxWorker @param instance Pointer to a SubGhzTxRxWorker instance
SubGhzTxRxWorker, add data to transfer @param instance Pointer to a SubGhzTxRxWorker instance @param data *data @param size data size @return bool true if ok
Allocate SubGhzWorker. @return SubGhzWorker* Pointer to a SubGhzWorker instance
Free SubGhzWorker. @param instance Pointer to a SubGhzWorker instance
Check if worker is running. @param instance Pointer to a SubGhzWorker instance @return bool - true if running
Context callback SubGhzWorker. @param instance Pointer to a SubGhzWorker instance @param context
Overrun callback SubGhzWorker. @param instance Pointer to a SubGhzWorker instance @param callback SubGhzWorkerOverrunCallback callback
Pair callback SubGhzWorker. @param instance Pointer to a SubGhzWorker instance @param callback SubGhzWorkerOverrunCallback callback
Start SubGhzWorker. @param instance Pointer to a SubGhzWorker instance
Stop SubGhzWorker @param instance Pointer to a SubGhzWorker instance
Add item to submenu
Allocate and initialize submenu
Deinitialize and free submenu
Get submenu view
Remove all items from submenu
Set optional header for submenu
Set submenu item selector
@brief Write T5577 tag data to tag
tan
tanf
tanh
tanl
Allocate and initialize text_box
Deinitialize and free text_box
Get text_box view
Clean text_box
Set TextBox focus @note Use to display from start or from end
Set TextBox font
Set text for text_box
Allocate and initialize text input
Deinitialize and free text input
Get text input view
Clean text input view Note: this function does not free memory
Set text input header text
Set text input result callback
time
\brief Calculate Timer
\brief Performs a Delay
\brief Checks if a Timer is Expired
\brief Stopwatch Measure
\brief Stopwatch start
task. h @code{c} uint32_t ulTaskNotifyTakeIndexed( UBaseType_t uxIndexToWaitOn, BaseType_t xClearCountOnExit, TickType_t xTicksToWait );
task. h @code{c} uint32_t ulTaskNotifyValueClearIndexed( TaskHandle_t xTask, UBaseType_t uxIndexToClear, uint32_t ulBitsToClear );
task. h @code{c} configRUN_TIME_COUNTER_TYPE ulTaskGetIdleRunTimeCounter( void ); configRUN_TIME_COUNTER_TYPE ulTaskGetIdleRunTimePercent( void ); @endcode
\brief Polls USB for events \param dev Pointer to device structure \note can be called as from main routine as from USB interrupt
utoa
task. h @code{c} uint16_t uxTaskGetNumberOfTasks( void ); @endcode
task.h @code{c} UBaseType_t uxTaskGetStackHighWaterMark( TaskHandle_t xTask ); @endcode
task.h @code{c} configSTACK_DEPTH_TYPE uxTaskGetStackHighWaterMark2( TaskHandle_t xTask ); @endcode
configUSE_TRACE_FACILITY must be defined as 1 in FreeRTOSConfig.h for uxTaskGetSystemState() to be available.
task. h @code{c} UBaseType_t uxTaskPriorityGet( const TaskHandle_t xTask ); @endcode
task. h @code{c} UBaseType_t uxTaskPriorityGetFromISR( const TaskHandle_t xTask ); @endcode
UBaseType_t uxTimerGetReloadMode( TimerHandle_t xTimer );
task.h @code{c} void vApplicationGetIdleTaskMemory( StaticTask_t ** ppxIdleTaskTCBBuffer, StackType_t ** ppxIdleTaskStackBuffer, uint32_t *pulIdleTaskStackSize ) @endcode
task.h @code{c} void vApplicationGetTimerTaskMemory( StaticTask_t ** ppxTimerTaskTCBBuffer, StackType_t ** ppxTimerTaskStackBuffer, uint32_t *pulTimerTaskStackSize ) @endcode
task. h @code{c} void vTaskAllocateMPURegions( TaskHandle_t xTask, const MemoryRegion_t * const pxRegions ); @endcode
task. h @code{c} void vTaskDelay( const TickType_t xTicksToDelay ); @endcode
task. h @code{c} void vTaskDelete( TaskHandle_t xTaskToDelete ); @endcode
task. h @code{c} void vTaskEndScheduler( void ); @endcode
task. h @code{c} void vTaskNotifyGiveIndexedFromISR( TaskHandle_t xTaskHandle, UBaseType_t uxIndexToNotify, BaseType_t *pxHigherPriorityTaskWoken ); void vTaskNotifyGiveFromISR( TaskHandle_t xTaskHandle, BaseType_t *pxHigherPriorityTaskWoken ); @endcode
task. h @code{c} void vTaskGetInfo( TaskHandle_t xTask, TaskStatus_t *pxTaskStatus, BaseType_t xGetFreeStackSpace, eTaskState eState ); @endcode
task. h @code{c} void vTaskGetRunTimeStats( char *pcWriteBuffer ); @endcode
task. h @code{c} void vTaskList( char *pcWriteBuffer ); @endcode
task. h @code{c} void vTaskPrioritySet( TaskHandle_t xTask, UBaseType_t uxNewPriority ); @endcode
task. h @code{c} void vTaskResume( TaskHandle_t xTaskToResume ); @endcode
task.h @code{c} void vTaskSetTimeOutState( TimeOut_t * const pxTimeOut ); @endcode
task. h @code{c} void vTaskStartScheduler( void ); @endcode
task. h @code{c} void vTaskSuspend( TaskHandle_t xTaskToSuspend ); @endcode
task. h @code{c} void vTaskSuspendAll( void ); @endcode
void vTimerSetReloadMode( TimerHandle_t xTimer, const UBaseType_t uxAutoReload );
void vTimerSetTimerID( TimerHandle_t xTimer, void *pvNewID );
Get item context
Get item current selected index
Add item to VariableItemList
Allocate and initialize VariableItemList
Deinitialize and free VariableItemList
Get VariableItemList View instance
Clear all elements from list
Set item current selected index
Set item current selected text
Set number of values for item
Get current running firmware version handle.
Get build date.
Get flag indicating if this build is “dirty” (source code had uncommited changes)
Get git branch.
Get number of commit in git branch.
Get git commit hash.
Get hardware target this firmware was built for
Get build version. Build version is last tag in git history.
Allocate and init View @return View instance
Allocate view model.
Commit view model
Add view to ViewDispatcher
Allocate ViewDispatcher instance
Attach ViewDispatcher to GUI
Enable queue support
Free ViewDispatcher instance
Remove view from ViewDispatcher
Run ViewDispatcher
Send ViewPort of this ViewDispatcher instance to back
Send ViewPort of this ViewDispatcher instance to front
Set event callback context
Set navigation event handler
Stop ViewDispatcher
Free View
Free view model data memory.
Get view model data
ViewPort allocator
ViewPort event callbacks
Enable or disable view_port rendering.
ViewPort deallocator
Set view_port height.
Set ViewPort orientation.
Set view_port width.
Emit update signal to GUI system.
Set View Draw callback
Set View Custom callback
Set View Draw callback
Set Enter callback
Set Exit callback
Set View Input callback
Set View Orientation
Set Navigation Previous callback
Set Update callback
Set View Draw callback
Add View to ViewStack. Adds View on top of ViewStack.
Allocate and init ViewStack
Free ViewStack instance
Get View of ViewStack. Should this View to any view manager such as ViewDispatcher or ViewHolder.
Remove any View in ViewStack. If no View to remove found - ignore.
Tie IconAnimation with View
Add Button Element
Add Frame Element
Add Icon Element
Add String Element
Add Multi String Element
Add Text Box Element
Add Text Scroll Element
Allocate Widget that holds Widget Elements
Free Widget @note this function free allocated Widget Elements
Get Widget view
Reset Widget
task. h @code{c} BaseType_t xTaskAbortDelay( TaskHandle_t xTask ); @endcode
task.h @code{c} BaseType_t xTaskCallApplicationTaskHook( TaskHandle_t xTask, void *pvParameter ); @endcode
task.h @code{c} BaseType_t xTaskCatchUpTicks( TickType_t xTicksToCatchUp ); @endcode
task.h @code{c} BaseType_t xTaskCheckForTimeOut( TimeOut_t * const pxTimeOut, TickType_t * const pxTicksToWait ); @endcode
task. h @code{c} BaseType_t xTaskDelayUntil( TickType_t *pxPreviousWakeTime, const TickType_t xTimeIncrement ); @endcode
task. h @code{c} BaseType_t xTaskNotifyIndexed( TaskHandle_t xTaskToNotify, UBaseType_t uxIndexToNotify, uint32_t ulValue, eNotifyAction eAction ); BaseType_t xTaskNotify( TaskHandle_t xTaskToNotify, uint32_t ulValue, eNotifyAction eAction ); @endcode
task. h @code{c} BaseType_t xTaskNotifyIndexedFromISR( TaskHandle_t xTaskToNotify, UBaseType_t uxIndexToNotify, uint32_t ulValue, eNotifyAction eAction, BaseType_t *pxHigherPriorityTaskWoken ); BaseType_t xTaskNotifyFromISR( TaskHandle_t xTaskToNotify, uint32_t ulValue, eNotifyAction eAction, BaseType_t *pxHigherPriorityTaskWoken ); @endcode
task. h @code{c} BaseType_t xTaskNotifyStateClearIndexed( TaskHandle_t xTask, UBaseType_t uxIndexToCLear );
task. h @code{c} BaseType_t xTaskNotifyWaitIndexed( UBaseType_t uxIndexToWaitOn, uint32_t ulBitsToClearOnEntry, uint32_t ulBitsToClearOnExit, uint32_t *pulNotificationValue, TickType_t xTicksToWait );
task. h @code{c} TaskHandle_t xTaskGetHandle( const char *pcNameToQuery ); @endcode
xTaskGetIdleTaskHandle() is only available if INCLUDE_xTaskGetIdleTaskHandle is set to 1 in FreeRTOSConfig.h.
task. h @code{c} TickType_t xTaskGetTickCount( void ); @endcode
task. h @code{c} TickType_t xTaskGetTickCountFromISR( void ); @endcode
task. h @code{c} BaseType_t xTaskResumeAll( void ); @endcode
task. h @code{c} void xTaskResumeFromISR( TaskHandle_t xTaskToResume ); @endcode
TickType_t xTimerGetExpiryTime( TimerHandle_t xTimer );
TickType_t xTimerGetPeriod( TimerHandle_t xTimer );
TaskHandle_t xTimerGetTimerDaemonTaskHandle( void );
BaseType_t xTimerIsTimerActive( TimerHandle_t xTimer );
BaseType_t xTimerPendFunctionCall( PendedFunction_t xFunctionToPend, void *pvParameter1, uint32_t ulParameter2, TickType_t xTicksToWait );
BaseType_t xTimerPendFunctionCallFromISR( PendedFunction_t xFunctionToPend, void *pvParameter1, uint32_t ulParameter2, BaseType_t *pxHigherPriorityTaskWoken );
y0
y0f
y1
y1f
yn
ynf

Type Definitions

Prototype for Scene on_enter handler
Prototype for Scene on_event handler
Prototype for Scene on_exit handler
Callback type to call for handling selecting button_panel items
Callback for any button menu actions
callback that is executed when byte buffer is changed
callback that is executed on save button press
Cli callback function pointer. Implement this interface and use add_cli_command @param args string with what was passed after command @param context pointer to whatever you gave us on cli_add_command
DialogEx result callback type @warning comes from GUI thread
Serial service callback type
FuriHal i2c bus event callback
FuriHal i2c handle event callback
Callback type called every time another key-value pair of device information is ready
Signature of callback function for receiving continuous INFRARED rx signal.
Signature of callback function for reaching silence timeout on INFRARED port.
Callback type for providing data to INFRARED DMA TX system. It is called every tim
Callback type called every time signal is sent by DMA to Timer.
Callback type called by furi_hal_power_info_get every time another key-value pair of information is ready
FuriHal spi bus event callback
FuriHal spi handle event callback
Async TX callback type @param context callback context @return LevelDuration
Signal Timings Capture callback
FuriPubSub Callback type
@brief An unicode value.
FuriThreadCallback Your callback to run in new thread @warning never use osThreadExit in FuriThread
FuriThreadId proxy type to OS low level functions
FuriThread state change calback called upon thread state change @param state new thread state @param context callback context
Write to stdout callback @param data pointer to data @param size data size @warning your handler must consume everything
Interrupt callback prototype
Gui Canvas Commit Callback
Icon Animation Callback. Used for update notification
Callback type for providing next signal to send. Should be used with infrared_worker_make_decoded_signal() or infrared_worker_make_raw_signal()
Callback type for ‘message is sent’ event
Callback type to call by InfraredWorker thread when new signal is received
Menu Item Callback
Popup result callback type @warning comes from GUI thread
Callback to be executed on each RFAL state change
Callback to notify client that buffer is empty
Callback to send to client any data (e.g. response to command)
Callback to notify transport layer that close_session command is received. Any other actions lays on transport layer. No destruction or session close preformed.
Callback to notify transport layer that session was closed and all operations were finished
Internal LFS Functions
View callback @param context, pointer to context @warning called from GUI thread
View Custom callback @param event, number of custom event @param context, pointer to context @return true if event handled, false if event ignored
Prototype for custom event callback
Prototype for navigation event callback
Prototype for tick event callback
View Draw callback @param canvas, pointer to canvas @param view_model, pointer to context @warning called from GUI thread
View Input callback @param event, pointer to input event data @param context, pointer to context @return true if event handled, false if event ignored @warning called from GUI thread
View navigation callback @param context, pointer to context @return next view id @warning called from GUI thread
ViewPort Draw callback @warning called from GUI thread
ViewPort Input callback @warning called from GUI thread
View Update Callback Called upon model change, need to be propagated to GUI throw ViewPort update @param view, pointer to view @param context, pointer to context @warning called from GUI thread
NFCF Poll Response NFC Forum Digital 1.1 Table 44
NFC-DEP callback to check if upper layer has deactivation pending
Callback to be executed after a Transceive
Callback to be executed before a Transceive
System callback to indicate an event that requires a system reRun
\brief USB set configuration callback function \details called when SET_CONFIGURATION request issued \param[in] dev pointer to USB device \param[in] cfg configuration number. \note if config is 0 device endpoints should be de-configured \return TRUE if success
\brief USB control callback function. \details Uses for the control request processing. Some requests will be handled by core if callback don’t process it (returns FALSE). If request was not processed STALL PID will be issued. - GET_CONFIGURATION - SET_CONFIGURATION (passes to \ref usbd_cfg_callback) - GET_DESCRIPTOR (passes to \ref usbd_dsc_callback) - GET_STATUS - SET_FEATURE, CLEAR_FEATURE (endpoints only) - SET_ADDRESS \param[in] dev points to USB device \param[in] req points to usb control request \param[out] *callback USB control transfer completion callback, default is NULL (no callback) \return usbd_respond status.
\brief Represents a USB device data.
\brief USB get descriptor callback function \details Called when GET_DESCRIPTOR request issued \param[in] req pointer to usb control request structure \param[in,out] address pointer to the descriptor in memory. Points to req->data by default. You can use this buffer. \param[in,out] dsize descriptor size. maximum buffer size by default. \return usbd_ack if you passed the correct descriptor, usbd_fail otherwise.
\brief Generic USB device event callback for events and endpoints processing \param[in] dev pointer to USB device \param event \ref USB_EVENTS “USB event” \param ep active endpoint number \note endpoints with same indexes i.e. 0x01 and 0x81 shares same callback.
Connects or disconnects USB hardware to/from usb host \param connect Connects USB to host if TRUE, disconnects otherwise \return lanes connection status.
\brief Enables or disables USB hardware \param enable Enables USB when TRUE disables otherwise.
\brief Configures endpoint \param ep endpoint address. Use USB_EPDIR_ macros to set endpoint direction \param eptype endpoint type. Use USB_EPTYPE_* macros. \param epsize endpoint size in bytes \return TRUE if success
\brief De-configures, cleans and disables endpoint \param ep endpoint index \note if you have two one-direction single-buffered endpoints with same index (i.e. 0x02 and 0x82) both will be deconfigured.
\brief Checks endpoint for stalled state \param ep endpoint address \return TRUE if endpoint is stalled
\brief Reads data from OUT or control endpoint \param ep endpoint index, should belong to OUT or CONTROL endpoint. \param buf pointer to read buffer \param blen size of the read buffer in bytes \return size of the actually received data, -1 on error. \note if data does not fit buffer it will be truncated
Stalls and unstalls endpoint \param ep endpoint address \param stall endpoint will be stalled if TRUE and unstalled otherwise. \note Has no effect on inactive endpoints.
\brief Writes data to IN or control endpoint \param ep endpoint index, hould belong to IN or CONTROL endpoint \param buf pointer to data buffer \param blen size of data will be written \return number of written bytes
\brief Gets frame number from usb hardware.
\brief Makes a string descriptor contains unique serial number from hardware ID’s \param[in] buffer pointer to buffer for the descriptor \return of the descriptor in bytes
\addtogroup USBD_HW @{ */ \return Hardware status and capabilities \ref USBD_HW_CAPS
\brief Polls USB hardware for the events \param[in] dev pointer to usb device structure \param callback callback to event processing subroutine
\brief Sets USB hardware address \param address USB address
\brief USB control transfer completed callback function. \param[in] dev pointer to USB device \param[in] req pointer to usb request structure \note usbd_device->complete_callback will be set to NULL after this callback completion.