Commit Graph

70 Commits

Author SHA1 Message Date
Hubert Chrzaniuk
9c7e4139db [EGD-3784] Add service audio non blocking API (#789) 2020-10-08 10:15:46 +02:00
kkleczkowski
330c57e1d0 Egd 3259 (#781)
* [EGD-3259] Updating RTC time from network time.

* [EGD-3259] Updated changelog.

* [EGD-3259] Missing files.

* [EGD-3259] Time updaten notification.

* [EGD3259] Fixed SET_TIME_ZONE_REPORTING command.

* [EGD3259] SET_TIME_ZONE_REPORTING fixed properly.

* [EGD-3259] Commands added to factory.

* [EGD-3259] Fixes after rebase.

* [EGD-3259] Style fix.

* [EGD-3259] PR applied.

* [EGD-3259] PR applied again.

Co-authored-by: Kuba Kleczkowski <dd>
2020-10-07 15:33:46 +02:00
Marcin Smoczyński
fa471405d1 [EGD-3461] sys: update service header comments (#774)
Remove TODOs, update Deinit/Close handlers doxygen comments.

Make CloseHandler final - it must not be overloaded.
2020-10-06 11:36:50 +02:00
Adam
f5f27d642f EGD-2955 EGD-3588 Timers fully refactored & updated (#721)
* Timers now are Application thread safe
* Timers now have consistent API independend of Application (no more c style timers)
* Timers can have either: callback or override onTimer() method - this
  way we can create more complicated timers or just use existing ones
* gui::Timer added via adapter class GuiTimer to decouple sys::Timer
  with gui::Timer
* Fixed race in wrapper
* Updated docs
* fixed using std and cpp_freertos and DataReceivedHandler hidden in Application.hpp
2020-10-02 14:04:57 +02:00
Marcin Smoczyński
c74e7577c7 [EGD-3457] sys: improve workers destroying (#753)
Implement termination of worker threads. To achieve the goal so called
control queue has been introduced which is handled in Worker base class.
Once worker thread receives stop message it tries to kill itself. It is
possible to join a worker thread before deinit know thanks to a
semaphore given before thread termination.

Some improvements to the interface and implementation has been made
including state sanity checks. It is assumed that only service that owns
the worker is allowed to stop it, which allows not to consider code
reentrancy.

Worker destroying procedure has been updated in services that already
own workers.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
2020-09-30 15:24:57 +02:00
alek
f146723e04 some style and spelling fixes 2020-07-23 23:02:05 +02:00
kkleczkowski
e46d2a2829 Egd 3244 antenna manager (#490)
* [EGD-3244] Service antenna + utils State.

* [EGD-3244] CellularAPI + at::response.

* [EGD-3244-antenna-manager] Changes in application Antenna.

* [EGD-3244-antenna-manager] Changes in antenna app ( antenna switch multicast ).

* [EGD-3244-antenna-manager] Changed Antenna app GUI.

* [EGD-3244-antenna-manager] Basic algorithm.

* [EGD-3244-antenna-manager] Fixes in algorithm.

* [EGD-3244-antenna-manager] Small fixes + service blocking.

* [EGD-3244-antenna-manager] Little cleanup.

* [EGD-3244-antenna-manager] Restored Cellular call in Application Antenna.

* [EGD-3244-antenna-manager] Style fix.

* [EGD-3244-antenna-manager] Sewrvice antenna disabled.

* [EGD-3244-antenna-manager] PR suggestions + linux buil fixed.

* [EGD-3244-antenna-manager] Updated changelog

* [EGD-3244-antenna-manager] Style fix.

* [EGD-3244-antenna-manager] Fixed submodule.

* [EGD-3244-antenna-manager] PR suggestions + toNumeric UT.

* [EGD-3244-antenna-manager] PR suggstions again.

Co-authored-by: Kuba Kleczkowski <dd>
2020-07-07 10:54:47 +02:00
Radoslaw Wicik
af47be76fd [EGD-3245] Add Fota Service 2020-06-10 14:38:25 +02:00
Radoslaw Wicik
60c3edafeb [EGD-3233] Add sys:bus debug messages 2020-05-28 17:23:52 +02:00
Radoslaw Wicik
733a7c8d6b [EGD-3230] Increase Total HEAP_SIZE so Linux implementatio of CelularService fit memory 2020-05-26 11:46:49 +02:00
Marcin Smoczyński
a91365b421 fix building with gcc8 2020-04-17 14:16:48 +02:00
Adam Dobrowolski
352074cea6 EGD-3056 Renamed subscribe to connect (following signal -> slot nomenclature) 2020-04-15 16:50:19 +02:00
Adam Dobrowolski
32f51fd796 EGD-3056 PR review applied 2020-04-15 16:50:19 +02:00
Adam Dobrowolski
5b162efbd0 EGD-3056 ./config/pre-commit-check-only.hook --branch-fix applied 2020-04-15 16:50:19 +02:00
Adam Dobrowolski
b7db6a57ed EGD-3056 Added message to continue system shutdown on power plug ejection 2020-04-15 16:50:19 +02:00
Adam Dobrowolski
62d8f4c094 EGD-3056 Improved events logs 2020-04-15 16:50:19 +02:00
Adam Dobrowolski
82793cf84f EGD-3056 Added c_str() to Keys and std::string operator for messages
* c_str() needed for pretty debug logs (to not log integers which means nothing)
* std::string operator needed to log not only message, ale it's content
  if provided (similar to __repr__ from pytohon
2020-04-15 16:50:19 +02:00
Adam Dobrowolski
19c1f66733 EGD-3056 Messages debugging print edbug.hpp option added 2020-04-15 16:50:19 +02:00
Adam Dobrowolski
2cee195e09 EGD-3056 subscribtion based execution (on typeid) added and works fine
Till now there was no clear way to register hanlder for message in
Service, with this approach one can register function/lambda handler
for Message which encurages handling messages in functions rather than
in hudge switch cases.
With aproach like this our Messages resembe something between Command
and State pattern. In state pattern `Message` would be `Event` send,
whereas Service would be `Context`.
2020-04-15 16:50:19 +02:00
Adam Dobrowolski
714b3c1e18 EGD-3056 Removed LogOutput to use LOG_... instead
LogOutput was not needed, confusing and didn't work on target
Therefore it was removed
2020-04-15 16:50:19 +02:00
Alek Rudnik
09cf520c12 Egd 558 adjust volume during a call (#283)
* [EGD-558][fix] change error to info

* [EGD-558] added volume control of currently active audio operation

* [EGD-558] added ringing on incoming call

* [EGD-558] mini clean up in callwindow

* [EGD-558] removed reinterpret_casts and added some logging

* [EGD-558] rewritten methods to increment/decrement volume

* [EGD-558] clean up

* [EGD-558] moved volume control to application class
added nullptr checks

* [EGD-558] fixed types

* [EGD-558] added some audio debug logs

* [EGD-558] left a comment why ringing sound is currently disabled

* [EGD-558] PR fixes

* [EGD-558] PR fix

* [EGD-558] added propper error codes on pointer checking in Audio.cpp
2020-04-10 11:00:17 +02:00
Adam Dobrowolski
106220d75b [FIX] '%s' check build-linux fail fixed 2020-04-08 14:00:45 +02:00
Adam Dobrowolski
4a61f400e7 EGD-3055 Fixed printf issues 2020-04-08 12:23:53 +02:00
Radoslaw Wicik
a8573a404c Apply new style 2020-03-17 10:03:16 +01:00
pawel-mudita
d1665ed3ba [EGD-2855][EGD-2856] Parser for desktop app (#188)
* [EGD-2306] DESKTOP application initial commit

most of this code is foreign and unverified
it's low level magic numbers for the platform

on Linux i used PTY to simulate a serial line

* [EGD-2306] Add contact-list and contact-count commands

* [EGD-2306] Add command for geting contact by id and minor fixes

* [EGD-2856][WIP] Add basic serial parser

* [EGD-2855] Set usb device config buffer property cacheable

* [EGD-2856] Separate handlers from fsms, add status codes

* [EGD-2855] fd passed to state machine for linux renderer support

* [EGD-2856] Fix warnings

* [EGD-2855] New send task added and buffer queque

* [EGD-2856] Add simple ServiceDesktop documentation

* [EGD-2855] rt1051 worker refactor

* [EGD-2855] Added service workers for desktop app.
Changed linux USB driver mock up.
Added queue name mapping for service workers.
Added queue registry support (maybe redundant with mapping)

* [EGD-2855] Added proper message pointer to queue send and memory free
Added bsp driver namespace for linux and rt1051

* [EGD-2856] Major cleanup

* [EGD-2856] Fix typo

* [EGD-2856] Fix warnings

* [EGD-2856] Delete recursive fsm calling to prevent stack overflow

* [EGD-2856] Reduce http codes

* [EGD-2856] Rename serial parser to parser

* [EGD-2855] USB_CDC drives renames and cleanups
Service Worker queue cleanups

* [EGD-2855] Service Worker queue cleanups

* [EGD2855] Fixed external driver import

* [EGD-2856] Remove redundant message type

* [EGD-2856] Switch on enums instead of ints, and other minor changes requested after code review

* [EGD-2855] usb driver moved to bsp directory structure, pull request fixes

* [EGD-2855] clang #include fix

* [EGD-2856] Add tinyfsm as git submodule, update readme and minor fix

Co-authored-by: rkubiak01 <56821808+rkubiak01@users.noreply.github.com>
Co-authored-by: PrzeBrudny <60609703+PrzeBrudny@users.noreply.github.com>
2020-02-27 15:34:42 +01:00
Przemyslaw Brudny
5955c358e6 Service Worker queue cleanups 2020-02-24 12:28:02 +01:00
Przemyslaw Brudny
c54e56f6ba service worker queue name map and global queue registry added 2020-02-24 12:28:02 +01:00
Adam Dobrowolski
ae915f3512 [EGD-2571] Clenup: removed MessageType static_casts, fixed debug.h defines. Added GPIO event 2020-02-12 13:31:13 +00:00
pholat
2b275d7951 [EGD-2571] added GSM command sending & small refactor
* added GSM AT commands on 'Commands' channel
* refactor (for better console/script) handling
* docs update
* GSM request asynch send back on uart to requester
2020-02-11 08:41:26 +00:00
Adam Dobrowolski
5407355177 [EGD-2508] Pre PR cleanup 2020-01-22 08:26:20 +01:00
Adam Dobrowolski
956068e1a3 [EGD-2508] test_harness sending keypresses ok, system start detection ok 2020-01-22 08:26:20 +01:00
Adam Dobrowolski
906b0951ec [EGD-2508] [WIP] test_harness: sending keypress works ok 2020-01-22 08:26:20 +01:00
Mateusz Grzywacz
aeaf39191b [EGD-2368] moved all AppTimer objects definitions to init list, to get rid of default AppTimer() ctor 2020-01-02 14:53:34 +01:00
Mateusz Grzywacz
e2cafcee70 [EGD-2368] changes requested in a PR 2020-01-02 14:53:34 +01:00
Mateusz Grzywacz
33ac431af4 [EGD-2368] Approach 2: timer object for use in Application. 2020-01-02 14:53:34 +01:00
Mateusz Grzywacz
c09df40905 [EGD-2368] Approach 1: list of timers 2020-01-02 14:53:34 +01:00
Adam Dobrowolski
306cab225b Sys: Added assert() for invalid message parameters 2019-10-25 14:53:36 +02:00
Adam Dobrowolski
8c2622b2c2 Bluetooth compiles and starts on Purephone and Linux fine 2019-10-14 15:32:06 +02:00
Mateusz
7459153d2c Fix: Data msgs queue order during blocking SendUnicast 2019-09-20 09:33:29 +02:00
Mateusz
2785d46fde WiP: Pwrmgr implementation 2019-09-16 14:09:54 +02:00
Mateusz
8b4cf5e35a WiP: Added Suspend/Resume API 2019-08-30 10:37:51 +02:00
Mateusz
e8babd16d5 WiP: Removed unneeded WakeUp/GoSleep handlers
WiP: Added new handler - > SwitchPowerMode
2019-08-29 11:40:31 +02:00
Mateusz
d299f0916e Auto stash before merge of "EGD-2080_evtmgrdeinit" and "origin/EGD-2079_pwrmgr_services"
Fix: Service's params order
2019-08-28 10:51:48 +02:00
Mateusz
1456751b59 Fix: Keyboard init/deinit procedure 2019-08-27 11:35:34 +02:00
Mateusz
ce7ce7157c Merge remote-tracking branch 'origin/EGD-2079_pwrmgr_services' into EGD-2080_evtmgrdeinit 2019-08-27 08:03:45 +02:00
Mateusz
86d32793c7 Fix: WorkerEvent and Worker deinit procedure 2019-08-27 07:51:28 +02:00
Robert Borzecki
59d6522dcd Merge branch 'master' of github.com:muditacom/PurePhone into EGD-2015_database_model 2019-08-26 12:32:25 +02:00
Mati
9c1f919e2e Services: Added parent/child feature
Fix: Raised ApplicationSettings stack to 4kB
Fix: eINK deep refresh fix
2019-08-26 09:31:50 +02:00
Mateusz
61896bf8e8 #MATI SUPER FIX: added responseTo field 2019-08-12 12:32:11 +02:00
Mateusz
1a59b7b6cb #MATI SUPER FIX, fixed async msg handling in DataReceivedHandler 2019-08-12 12:18:59 +02:00