Commit Graph

129 Commits

Author SHA1 Message Date
あく
3a6fbff8c3
FL-339: cli diagnostic interface for power subsystem. (#256)
* Core, API: add externs for c++
* Makefile: improve debug speed, flash with openocd, cleanup f2 config
* Power: add cli diagnostic.
* Local: fix api hal externs
* Local: fix externs in main and flipper_hal
* F2: power state dump stabs
* Bootloader flashing with openocd
* F3: move bq drivers to libs
* temporary do not build drivers on local
* temporary do not build drivers on f2

Co-authored-by: aanper <mail@s3f.ru>
2020-12-02 13:47:13 +03:00
coreglitch
f58b322bb5
FL-353 Cc1101 rx (#255)
* enable transparent mode
* rssi ok, transmit ok, fifo ok
* I see the signal
* successful async rx (registers from smartrf)
* refactor rfstudio register config
* rewrite config, found some issues
* handle G0 interrupts
* g0 irq enable after cc1101 init
* update cube
2020-12-01 21:47:46 +03:00
DrZlo13
1f761d7fbb
[FL-84] iButton app, dallas emulate + cyfral read, cyfral emulate (#253)
* maxim crc function
* one wire template device and ds1990 classes
* 3 fields for addr
* cyfral emulator lib
* add cyfral read mode, refract rendering and events
* add ADC1_IN14, add adc interrupt
* cyfral read mode
* rename and move api-hal includes folder
* build onewire libs only if we build app
* start in mode 0
2020-11-25 10:25:13 +03:00
あく
758e37e294
Enable RTC for all platforms and add cli date command (#252)
* F2: enable RTC. Cli: add date command.
2020-11-23 16:26:19 +03:00
DrZlo13
a96f23af9b
fix multithread logic in template app, update gpio HAL (#250)
* fix multithread logic
* more buffer for dallas id string
* update apps to use new logic
* delay_us small speedup
* add consant qualifier to gpio records and some core api
* fix some apps to use simpler method of getting gpio record
* fix ibutton app, stupid stack problem
2020-11-19 15:25:32 +03:00
coreglitch
ccd40497eb
FL-176 LF RFID RX (#248)
* pulldown ibutton pin during rfid read
* enable and handle COMP interrupts
* send events from comparator IRQ and handle in app
* manchester encode
* successfully read em4100
* read-emulate
* led
2020-11-19 14:11:03 +03:00
DrZlo13
27ae2a8fa9
#FL-303 fix for some spi bugs, test app for sd-nfc interconnection (#247)
* sd-nfc test app

* do not hold spi in disable mode

* disable pullups in nfc chip
2020-11-18 16:01:25 +03:00
DrZlo13
9bbc8fafe5
fix too early mode render (#249)
iButton app, bugfix
2020-11-18 15:51:23 +03:00
coreglitch
f0bda07742
Rearrange menu (#246)
* rearrange menu
2020-11-18 12:39:10 +03:00
coreglitch
6d7ecf9a44
Floopper bloopper (#245)
* add floopper bloopper build
* enhance canvas api
* update submodule
2020-11-18 11:01:51 +03:00
あく
d57b7fd448
Cli: fix memleak, add more commands. (#244)
* Cli: add statndard applications, fix memory leak, add reset and reset to dfu.

* Lib: pass proper data pointer to osMessageQueueGet

* App-loader: optional cli

* Format sources
2020-11-17 20:08:31 +03:00
あく
459b61720c
Assets: add more menu icons, add stubs to menu. (#241)
* Assets: add more menu icons, add stubs to menu.

* Format sources
2020-11-17 19:21:54 +03:00
DrZlo13
1abc98086e split resources, fix format 2020-11-17 07:39:48 +10:00
DrZlo13
c17f4c9d38 format fix 2020-11-17 07:20:58 +10:00
DrZlo13
799eefd754 ibutton app, only read mode 2020-11-17 07:10:58 +10:00
DrZlo13
a8fdbc6376 Merge branch 'master' into ibutton-app 2020-11-17 06:21:45 +10:00
DrZlo13
3d6af91dd1
simple music player app (#240)
* split power-cli dependence
* music_player application
* add player to release mode
* fix stupid error
2020-11-16 20:12:05 +03:00
coreglitch
3d5563b169
init nfc later (#239) 2020-11-16 18:26:34 +03:00
DrZlo13
4eeac6579f ibutton init 2020-11-16 21:21:58 +10:00
あく
3749eb0eed
USB VCP Cli (#237)
* Core: ring buffer.
* Api: usb vcp. F3: vcp glue code.
* Applications: cli draft version.
* Cli: basic working version, includes help and version commands
* HAL: vcp on f2
* Makefile: update openocd conf
* F3: vcp rx with freertos stream
* Cli: help
* Cli: standard commands, api-hal-uid
* Power: cli poweroff.
2020-11-16 13:16:34 +03:00
DrZlo13
714d732745
FL-78 Microsd test application (#230)
* variable cluster size, label info functions for targets
* app record
* init, mount, get label, get sn, get space
* enable exfat
* more stack for the stack god
* remove c app and add cpp app
* remove MULTI_PARTITION
* fix 4gb bug
* update app to new template lib, add animated waiting
* tiny buffer configuration
* write speed benchmark
* fnv1a hash library
* make DEFAULT_STACK_SIZE and MAX_TASK_COUNT defined per target
* fully functional sd card app
* build sd test app to release firmware
* cpp, not c
* light up red led if error
* flags for c++
* linking with g++
* suppres snprintf warning
* move format work area to heap

Co-authored-by: coreglitch <mail@s3f.ru>
2020-11-14 19:24:38 +03:00
coreglitch
afcfcd4d4a
FL-103 Gpio test (#236)
* fail build
* add gpio tester
2020-11-14 13:08:07 +03:00
coreglitch
a61eef0f99
FL-186 Add vibro demo (#234)
* add vibro demo
* add F2 support
2020-11-12 22:26:49 +03:00
coreglitch
bf2f6e89ca
FL-172 Cc1101 freq (#233)
* specify freq list, remove unused code
* use system resource led
* fix rssi offset
2020-11-12 21:08:40 +03:00
あく
608d458b9a
NFC: move worker to separate file, use LED for IO indication, field on/off menu (#231) 2020-11-12 12:44:35 +03:00
DrZlo13
9d8c36810e
IR RX simple app (#218)
* split falling and rising ir rx events
* fix irda
* simple irda rx function for app
* add extern timer
* fix timer num for f2
2020-11-11 10:36:27 +03:00
あく
f05ffddbde
Power: bq25896 and bq27220 drivers, portable power api. (#224)
* Power: add portability layer, port to F3.
* F3: bq25896 driver stab
* GUI: new primary and secondary fonts
* F3: bq25896 register map, basic functions
* F3: move bq27220 command descritpion to separate file. Code format.
* Power: OTG enable/disable
* Power: choose more correct profile
* F3: pet bq25896 watchdog sometimes
2020-11-11 09:31:35 +03:00
DrZlo13
49fdb28871
sd detect pin feature (#222)
* test sd detect pin
* sd detect support for f2 board
2020-11-11 09:17:53 +03:00
coreglitch
1fbfc5a61a
Blink strobe (#213)
* blink all led and control freq by button
* rename to strobe
2020-11-07 12:24:40 +03:00
DrZlo13
f4d4604a03
rgb blink (#223) 2020-11-07 11:42:00 +03:00
coreglitch
bce6f867f1
show target version, date, commit hash and branch (#221) 2020-11-06 12:31:06 +03:00
coreglitch
eb2679b982
Refactor F2/local before F3 merge (#220)
* add files from f3
* rollback lfs
* Move assets from LFS
* remove lfs from build

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2020-11-06 11:31:59 +03:00
DrZlo13
979af6c165
Core code cleanup (#206)
* add delay function
* todo about delay_isr
* remove arduino defines and fix all apps to use core-api/hal-api
* delay for local target
* remove warnings of task_equal
* fix BSP_SD_Init
* fix USBD_static
* grio read constant pointer to gpio
* add TODO about ISR context
* const void* arg for pubsub api
* mark unused functions
* app pointers now pointed to constant apps
* fix printf format
* fix "unused" warnings in local target
* fix const pin read in local target
* fix int to pointer warnings in local target
* power read mutex error fix
* delete old makefile
* add -werror

Co-authored-by: Aleksandr Kutuzov <aku@plooks.com>
Co-authored-by: aanper <mail@s3f.ru>
2020-10-29 10:58:19 +03:00
あく
0af239ebc0
GUI: status bar rendering. Power: battery indicator. (#207)
* Menu: animation. Irukagotchi: idle image.
* Power: battery, usb activity widget
* Power: tune battery max voltage and clamp overshoot
* get initial charge state

Co-authored-by: Aleksandr Kutuzov <aku@plooks.com>
Co-authored-by: aanper <mail@s3f.ru>
2020-10-29 10:11:16 +03:00
DrZlo13
8aeafd8179
furi_check - a new way to asserting (#204)
* hal-related task_is_isr_context function
* furi_check implementation
* change application to use furi_check
* add second level of assertion
* add TODO about ISR context
* Applications: refactor furi_check and furi_assert.
* Apploader: propwer widget usage. Menu: check on furi resource request.
* refactor furi_check

Co-authored-by: Aleksandr Kutuzov <aku@plooks.com>
Co-authored-by: coreglitch <mail@s3f.ru>
2020-10-29 09:27:17 +03:00
coreglitch
de968b13b4
Implement LF RFID emulation (#208)
* migrate code from old repo, not work
* fix emulation
* disable irq handling while RFID emulating
* add testcase
2020-10-28 11:38:04 +03:00
あく
665f6d7d9c
Assets, Icons, UI toolkit. Part 1. (#202)
* Assets: import from gdrive
* Assets: fully working build pipeline and registry
* NFC: menu icon
* Gui: layers. Irukagotchi: base app to handle input on idle screen. Makefile: reboot after flash in dfu mode.
* ValueMutex: with lambda
* Assets: proper animation frames sorting
* ValueMutex: proper furi_open usage
* Assets,GUI: split icon into icon data and icon state.
* Format source code
* Docker: add python3 and imagemagic
* Irukagotchi: cleanup
* GUI: event lock moved to gui.
* Rfid: proper gui layer
* GUI: elements. Menu: frame and scroll
* GUI, Menu: format code.
* Menu: dual font main menu
* Menu: format sources
* GUI: 0 total scrollbar
* CI: enable lfs
* Menu: pixel perfect main menu

Co-authored-by: Aleksandr Kutuzov <aku@plooks.com>
Co-authored-by: aanper <mail@s3f.ru>
2020-10-26 20:00:17 +03:00
coreglitch
e699c4a31e
Lf rfid (#196)
* add lf rfid workaround
* add pwmn
* carrier generator
* proper exit for lf rfid

Co-authored-by: DrZlo13 <who.just.the.doctor@gmail.com>
2020-10-26 12:56:46 +03:00
Vadim Kaushan
bb68fca20b
Implement ValueManager and ValueComposer (#183)
* Fix ValueManager implementation
* Implement ValueComposer
* Add constructor for ValueManager
* Add value-expanders.h to flipper_v2.h set
* Move COPY_COMPOSE body into a .c file
* Add test for ValueManager
* Add destructors for ValueMutex, ValueManager and ValueComposer
* Use destructors in tests
* Move composition logic into perform_compose()
* Add docs for perform_compose()
* Add test for ValueComposer
* Replace atomic_bool with bool as g++ compiler doesn't support C11 atomics
* Add Event type
* Add semaphore support to the local target
* Add test for Event
* Update input records and relevant examples
* Rename Event to AppEvent in the cc1101-workaround example
* Rename Event to AppEvent in the irda example
* Use Event in ValueComposer to wait for update request
* Add perform_compose_internal() function
* fix Event/AppEvent

Co-authored-by: aanper <mail@s3f.ru>
2020-10-26 12:26:15 +03:00
DrZlo13
69d97afea8
IRDA samsung protocol (#200)
* samsung irda protocol implementation
* app for samsung irda protocol
* smaller strings and hal pwm

Co-authored-by: aanper <mail@s3f.ru>
2020-10-26 10:27:27 +03:00
coreglitch
f5b342abbe
Api hw gpio pwm (#199)
* initial gpio layer

* move temlplate.c to template.c.example in preparing to applications.mk rework

* separate arduino layer

* separate flipper_hal.x

* prepare to switch applications on v2 core gpio api

* swithch applications to v2 gpio api

* gpio api for local target

* better gpio_disable handling

* remove pwm functions from local target

* inline gpio funcs

* common function to init all api's

* fix local example blink

* move delay us to hal api folder

* move pwm_set/pwm_stop to hal api folder

* update applications to use hal pwm api

* remove gpio mode case warning

* add speaker demo to build

Co-authored-by: DrZlo13 <who.just.the.doctor@gmail.com>
2020-10-26 10:16:54 +03:00
DrZlo13
37fc47a24f
IR transmit example (#180)
* DWT-based microsecond delay

* simple ir app (work only with NEC protocol and predefined address - command)

* remove space from file name, add delay_us_init_DWT header

* float-based delay us

* init tim2 by CubeMX

* fix simple pwm functions

* simple pwm timer based ir nec protocol

* ir gui test app

Co-authored-by: aanper <mail@s3f.ru>
2020-10-23 12:39:11 +03:00
aanper
83dad63813 fix brace 2020-10-22 10:06:40 +03:00
aanper
736225c90e fix syntax 2020-10-22 09:59:33 +03:00
aanper
fe89c81bfa add example template code 2020-10-22 09:58:51 +03:00
aanper
b607e6e5f5 add todo about dispatcher lock implementation 2020-10-21 15:19:43 +03:00
Aleksandr Kutuzov
1595ec782e CC1101: format sources 2020-10-21 15:13:26 +03:00
Aleksandr Kutuzov
aced0ee961 CC1101: explicitly configure SPI 2020-10-21 15:06:18 +03:00
aanper
4e4965fad3 syntax check 2020-10-21 13:59:52 +03:00
aanper
a1780154df not start worker if err 2020-10-21 13:52:51 +03:00