[FL-2957] Unified Info API, App Error, Data Xchange (#1998)

* Update protobuf definitions
* Add Property subsystem entry point function
* Key-based system info and power info function stubs
* Remove unneeded functions
* Working power info
* Working system info
* Replace #defines with string literals
* Remove unneeded field
* Simplify system info formatting
* Refactor output callback handling
* Handle the last info element correctly
* Optimise power info, rename methods
* Add comments
* Add power debug
* Remove unneeded definitions
* Rename some files and functions
* Update protobuf definitions
* Implement App GetError and DataExchange APIs
* Send GetErrorReply with correct command_id
* Add RPC debug app stub
* Add more scenes
* Add warning, increase stack size
* Add receive data exchange scene
* Improve data exchange
* Add notifications
* Update application requirements
* Bump format version for property-based infos
* Correctly reset error text
* RCP: sync protobuf repo to latest release tag

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
This commit is contained in:
Georgii Surkov
2022-11-29 12:08:08 +03:00
committed by GitHub
parent 849afc8798
commit 0261dc3075
30 changed files with 1452 additions and 222 deletions

View File

@@ -1,5 +1,5 @@
entry,status,name,type,params
Version,+,7.6,,
Version,+,8.1,,
Header,+,applications/services/bt/bt_service/bt.h,,
Header,+,applications/services/cli/cli.h,,
Header,+,applications/services/cli/cli_vcp.h,,
@@ -1120,7 +1120,7 @@ Function,+,furi_hal_ibutton_start_drive_in_isr,void,
Function,+,furi_hal_ibutton_start_interrupt,void,
Function,+,furi_hal_ibutton_start_interrupt_in_isr,void,
Function,+,furi_hal_ibutton_stop,void,
Function,+,furi_hal_info_get,void,"FuriHalInfoValueCallback, void*"
Function,+,furi_hal_info_get,void,"PropertyValueCallback, char, void*"
Function,+,furi_hal_infrared_async_rx_set_capture_isr_callback,void,"FuriHalInfraredRxCaptureCallback, void*"
Function,+,furi_hal_infrared_async_rx_set_timeout,void,uint32_t
Function,+,furi_hal_infrared_async_rx_set_timeout_isr_callback,void,"FuriHalInfraredRxTimeoutCallback, void*"
@@ -1185,10 +1185,10 @@ Function,+,furi_hal_nfc_tx_rx_full,_Bool,FuriHalNfcTxRxContext*
Function,-,furi_hal_os_init,void,
Function,+,furi_hal_os_tick,void,
Function,+,furi_hal_power_check_otg_status,void,
Function,+,furi_hal_power_debug_get,void,"PropertyValueCallback, void*"
Function,+,furi_hal_power_deep_sleep_available,_Bool,
Function,+,furi_hal_power_disable_external_3_3v,void,
Function,+,furi_hal_power_disable_otg,void,
Function,+,furi_hal_power_dump_state,void,
Function,+,furi_hal_power_enable_external_3_3v,void,
Function,+,furi_hal_power_enable_otg,void,
Function,+,furi_hal_power_gauge_is_ok,_Bool,
@@ -1201,7 +1201,7 @@ Function,+,furi_hal_power_get_battery_temperature,float,FuriHalPowerIC
Function,+,furi_hal_power_get_battery_voltage,float,FuriHalPowerIC
Function,+,furi_hal_power_get_pct,uint8_t,
Function,+,furi_hal_power_get_usb_voltage,float,
Function,+,furi_hal_power_info_get,void,"FuriHalPowerInfoCallback, void*"
Function,+,furi_hal_power_info_get,void,"PropertyValueCallback, char, void*"
Function,-,furi_hal_power_init,void,
Function,+,furi_hal_power_insomnia_enter,void,
Function,+,furi_hal_power_insomnia_exit,void,
@@ -2039,6 +2039,7 @@ Function,+,powf,float,"float, float"
Function,-,powl,long double,"long double, long double"
Function,-,printf,int,"const char*, ..."
Function,-,prng_successor,uint32_t,"uint32_t, uint32_t"
Function,+,property_value_out,void,"PropertyValueContext*, const char*, unsigned int, ..."
Function,+,protocol_dict_alloc,ProtocolDict*,"const ProtocolBase**, size_t"
Function,+,protocol_dict_decoders_feed,ProtocolId,"ProtocolDict*, _Bool, uint32_t"
Function,+,protocol_dict_decoders_feed_by_feature,ProtocolId,"ProtocolDict*, uint32_t, _Bool, uint32_t"
@@ -2284,10 +2285,14 @@ Function,+,rpc_session_set_context,void,"RpcSession*, void*"
Function,+,rpc_session_set_send_bytes_callback,void,"RpcSession*, RpcSendBytesCallback"
Function,+,rpc_session_set_terminated_callback,void,"RpcSession*, RpcSessionTerminatedCallback"
Function,+,rpc_system_app_confirm,void,"RpcAppSystem*, RpcAppSystemEvent, _Bool"
Function,+,rpc_system_app_exchange_data,void,"RpcAppSystem*, const uint8_t*, size_t"
Function,+,rpc_system_app_get_data,const char*,RpcAppSystem*
Function,+,rpc_system_app_send_exited,void,RpcAppSystem*
Function,+,rpc_system_app_send_started,void,RpcAppSystem*
Function,+,rpc_system_app_set_callback,void,"RpcAppSystem*, RpcAppSystemCallback, void*"
Function,+,rpc_system_app_set_data_exchange_callback,void,"RpcAppSystem*, RpcAppSystemDataExchangeCallback, void*"
Function,+,rpc_system_app_set_error_code,void,"RpcAppSystem*, uint32_t"
Function,+,rpc_system_app_set_error_text,void,"RpcAppSystem*, const char*"
Function,-,rpmatch,int,const char*
Function,+,saved_struct_load,_Bool,"const char*, void*, size_t, uint8_t, uint8_t"
Function,+,saved_struct_save,_Bool,"const char*, void*, size_t, uint8_t, uint8_t"
1 entry status name type params
2 Version + 7.6 8.1
3 Header + applications/services/bt/bt_service/bt.h
4 Header + applications/services/cli/cli.h
5 Header + applications/services/cli/cli_vcp.h
1120 Function + furi_hal_ibutton_start_interrupt void
1121 Function + furi_hal_ibutton_start_interrupt_in_isr void
1122 Function + furi_hal_ibutton_stop void
1123 Function + furi_hal_info_get void FuriHalInfoValueCallback, void* PropertyValueCallback, char, void*
1124 Function + furi_hal_infrared_async_rx_set_capture_isr_callback void FuriHalInfraredRxCaptureCallback, void*
1125 Function + furi_hal_infrared_async_rx_set_timeout void uint32_t
1126 Function + furi_hal_infrared_async_rx_set_timeout_isr_callback void FuriHalInfraredRxTimeoutCallback, void*
1185 Function - furi_hal_os_init void
1186 Function + furi_hal_os_tick void
1187 Function + furi_hal_power_check_otg_status void
1188 Function + furi_hal_power_debug_get void PropertyValueCallback, void*
1189 Function + furi_hal_power_deep_sleep_available _Bool
1190 Function + furi_hal_power_disable_external_3_3v void
1191 Function + furi_hal_power_disable_otg void
Function + furi_hal_power_dump_state void
1192 Function + furi_hal_power_enable_external_3_3v void
1193 Function + furi_hal_power_enable_otg void
1194 Function + furi_hal_power_gauge_is_ok _Bool
1201 Function + furi_hal_power_get_battery_voltage float FuriHalPowerIC
1202 Function + furi_hal_power_get_pct uint8_t
1203 Function + furi_hal_power_get_usb_voltage float
1204 Function + furi_hal_power_info_get void FuriHalPowerInfoCallback, void* PropertyValueCallback, char, void*
1205 Function - furi_hal_power_init void
1206 Function + furi_hal_power_insomnia_enter void
1207 Function + furi_hal_power_insomnia_exit void
2039 Function - powl long double long double, long double
2040 Function - printf int const char*, ...
2041 Function - prng_successor uint32_t uint32_t, uint32_t
2042 Function + property_value_out void PropertyValueContext*, const char*, unsigned int, ...
2043 Function + protocol_dict_alloc ProtocolDict* const ProtocolBase**, size_t
2044 Function + protocol_dict_decoders_feed ProtocolId ProtocolDict*, _Bool, uint32_t
2045 Function + protocol_dict_decoders_feed_by_feature ProtocolId ProtocolDict*, uint32_t, _Bool, uint32_t
2285 Function + rpc_session_set_send_bytes_callback void RpcSession*, RpcSendBytesCallback
2286 Function + rpc_session_set_terminated_callback void RpcSession*, RpcSessionTerminatedCallback
2287 Function + rpc_system_app_confirm void RpcAppSystem*, RpcAppSystemEvent, _Bool
2288 Function + rpc_system_app_exchange_data void RpcAppSystem*, const uint8_t*, size_t
2289 Function + rpc_system_app_get_data const char* RpcAppSystem*
2290 Function + rpc_system_app_send_exited void RpcAppSystem*
2291 Function + rpc_system_app_send_started void RpcAppSystem*
2292 Function + rpc_system_app_set_callback void RpcAppSystem*, RpcAppSystemCallback, void*
2293 Function + rpc_system_app_set_data_exchange_callback void RpcAppSystem*, RpcAppSystemDataExchangeCallback, void*
2294 Function + rpc_system_app_set_error_code void RpcAppSystem*, uint32_t
2295 Function + rpc_system_app_set_error_text void RpcAppSystem*, const char*
2296 Function - rpmatch int const char*
2297 Function + saved_struct_load _Bool const char*, void*, size_t, uint8_t, uint8_t
2298 Function + saved_struct_save _Bool const char*, void*, size_t, uint8_t, uint8_t