Commit graph

862 commits

Author SHA1 Message Date
Clemens von Molo 5e1f4839da InfiniPaint vibrate on colorchange, fix color rotation 2021-10-31 21:23:43 +01:00
JF 0aa73c2279
Merge pull request #791 from evergreen22/recovery-boot
Fix recovery firmware build
2021-10-31 10:00:19 +01:00
Reinhold Gschweicher f9613d28c0 MotionService: fix not needed '/' in include 2021-10-30 22:51:49 +02:00
Riku Isokoski 30520d262b Memory savings by replacing strings 2021-10-29 13:22:14 +03:00
James A. Jerkins 4560844994 Fix recovery firmware build 2021-10-28 20:38:59 -05:00
Jean-François Milants 71ce13d309 Motion service : fix step notifications that were sent as a single byte instead of 4 (uint32_t). 2021-10-26 20:31:18 +02:00
Riku Isokoski 60a717b1a2 Make it so special actions can be input while sleeping, like in #480 2021-10-25 17:45:48 +03:00
Riku Isokoski 887c409b13 Only wake up on press. Fixes issue with longer press and sleep 2021-10-25 17:13:02 +03:00
Riku Isokoski 351c60a131 Return button action instead of pushing messages 2021-10-25 16:57:29 +03:00
Riku Isokoski b19a2a760b Use enum classes, remove old comment 2021-10-25 13:40:43 +03:00
Riku Isokoski d5dfa80876 Newer buttonhandler 2021-10-25 12:53:14 +03:00
JF 82ca526ec2
Merge pull request #754 from InfiniTimeOrg/add-motion-service
Add motion service
2021-10-24 20:06:52 +02:00
JF 9538eb9716
Merge pull request #586 from hubmartin/wake-time
Improve wake-up time
2021-10-23 10:24:27 +02:00
JF 6c3f56bb59
Merge pull request #740 from Riksu9000/flashlight_brightness
Flashlight brightness control
2021-10-23 10:14:14 +02:00
Jean-François Milants b3a8228899 Add mention to Call characteristic (which was missing in the doc) and change the UUID of the new Motion service from 00020000-* to 00030000-*. 2021-10-20 20:52:04 +02:00
Jean-François Milants 2c5015add7 Enable/disable notifications for motion service. 2021-10-17 08:42:49 +02:00
Jean-François Milants 60a49af886 Add MotionService : expose step count and RAW X/Y/Z values to the host. 2021-10-17 08:23:44 +02:00
Jean-François Milants d1f50157c7 MotionService : fix typo and characteristic array size + send notification only if the host subscribed to them. 2021-10-17 08:23:01 +02:00
JF bf83493c8d
Merge pull request #746 from Quantum-cross/recovery-fix
fix building of Recovery image
2021-10-16 14:11:40 +02:00
JF 8165c8676c
Merge pull request #652 from dyamon/wake-on-notification
Make new notifications refresh idle timer
2021-10-16 14:11:06 +02:00
JF 77e73fea32
Merge pull request #507 from Riksu9000/fit_more_tasks
Fit more tasks in SystemInfo
2021-10-16 14:10:09 +02:00
JF fafb998b8c
Merge pull request #655 from NeroBurner/paddle_hor_fix
Paddle: compare ballX coordinate with horizontal resolution
2021-10-16 14:09:05 +02:00
mabuch 1d76d9170e Replaced "JF002" in github URLs with "InfiniTimeOrg" 2021-10-15 18:03:10 +02:00
Quantum-cross 4a59e544ba fix building of Recovery image. 2021-10-14 23:32:58 -04:00
Federico Igne 59ce48a3f3 Make new notifications refresh idle timer 2021-10-14 21:21:01 +01:00
Riku Isokoski fd4fbfddb9 Flashlight brightness control 2021-10-13 13:04:40 +03:00
Reinhold Gschweicher 7cd4929bfd Paddle: compare ballX coordinate with horizontal resolution
Fix the comment as the comparison checks if the ball is at the right
side of the screen.

Compare the x coordinate of the ball with the horizontal resolution of
the screen, instead of the vertical resolution. On the PinePhone this
does make no difference as we have square 240x240 screen. Change it
anyways to be completely correct.
2021-10-11 21:46:19 +02:00
Jean-François Milants 6d0e68d626 Merge branch 'update_touch_driver' of git://github.com/Riksu9000/InfiniTime into Riksu9000-update_touch_driver
# Conflicts:
#	src/displayapp/Apps.h
2021-10-10 16:48:45 +02:00
Jean-François Milants f2357b36e5 Setting SetDate/SetTime : replace #defines by constexpr variables, NULL by nullptr and other small cleanings. 2021-10-10 16:18:14 +02:00
Jean-François Milants 7cbd56896a DateTimeController : remove unused methods and variables. 2021-10-10 16:08:19 +02:00
Jean-François Milants cf9e149b33 Merge with develop and fix conflicts from timaios:set-datetime-manually. 2021-10-10 16:01:43 +02:00
Jean-François Milants 977faebcb8 Remove call to batteryController.Update(); which was replaced by batteryController.MeasureVoltage(). 2021-10-09 21:17:59 +02:00
JF 9a831a6fe4
Merge pull request #715 from hubmartin/gpiote-fix
Fix GPIOTE not calling ISR when button is held during boot
2021-10-09 20:36:49 +02:00
JF b969272c90
Merge pull request #719 from Riksu9000/improve_battery_reporting
Improve battery percentage calculation and reporting
2021-10-09 20:11:31 +02:00
JF c99feeea31
Merge pull request #728 from hubmartin/charge-wake
Add wake-up on charge event
2021-10-09 20:04:27 +02:00
JF 0ca018b309
Merge pull request #522 from jonvmey/fix-nav-uuid-docs
Fix Navigation Service UUID docs
2021-10-09 19:58:24 +02:00
JF f99f71cc6e
Merge pull request #524 from jonvmey/ble-uuid-c-casts
Remove unnecessary C-style casts with BLE UUIDs
2021-10-09 19:53:41 +02:00
JF 4118f97812
Merge pull request #701 from maksalees/close-info-popup-with-back-button-in-alarm
Alarm: Close the popup with information about the time until alarm with the back button
2021-10-09 19:50:36 +02:00
Riku Isokoski 1777b9dee8 Don't measure and notify percentage on charging event. 2021-10-09 13:39:27 +03:00
hubmartin 98e74a3217 Call also ReloadIdleTimer 2021-10-08 17:01:27 +02:00
hubmartin fc2241fbf4 Add wake on charge event 2021-10-08 16:53:49 +02:00
Riku Isokoski f61e88b842 Merge branch 'develop' into update_touch_driver 2021-10-05 12:45:03 +03:00
Riku Isokoski a9f7153fdf Improve battery percentage calculation and reporting
While charging, percentage should only go up, and while discharging,
percentage should only go down.
2021-10-04 01:41:38 +03:00
hubmartin 9ef1babb9d Code cleanup 2021-10-03 17:03:08 +02:00
hubmartin f5725714d1 Call battery controller update 2021-10-03 17:00:38 +02:00
hubmartin 2aebbe3f47 GPIOTE fix of button and power detection experiment 2021-10-03 16:47:01 +02:00
JF b84a546920
Merge pull request #623 from Riksu9000/lvgl_queuetimeout
Let LVGL control queueTimeout
2021-10-03 16:20:20 +02:00
JF fa6c291d3e
Merge pull request #638 from Riksu9000/detect_full_charge
Detect full charge and improve watchface battery display
2021-10-03 16:13:39 +02:00
JF 3442085a3c
Merge pull request #692 from danielgjackson/fix-fs-size
Fix the size of the filesystem.
2021-10-03 16:06:30 +02:00
Tim Keller dafdf33062 Remove static declartion on batteryValue preventing read attribute from updating. 2021-10-02 03:22:12 +00:00
Maxim Leshchenko 05f8850acf Fixes based on code reviews 2021-09-29 19:15:48 +03:00
Maxim Leshchenko d86ae69961 Alarm: Close the popup with information about the time until alarm with the back button
Previously, pressing the back button would close the alarm app anyway. Now if you press on it and the popup with information is open, it will first close and the second press will close the application
2021-09-28 22:50:09 +03:00
Daniel Jackson 7ba00b0157
Fix the size of the filesystem.
Correct typo: 0x400000 - 0x0B4000 = 0x34C000.
2021-09-27 02:42:53 +01:00
Daniel Jackson d7ca217872
Correctly return the tick at which the RF will be fully enabled.
Always returning 0 (when `MYNEWT_VAL_BLE_LL_RFMGMT_ENABLE_TIME` is not defined), rather than a time near to the current tick, causes an issue in at least one place: `ble_ll_adv_sm_start()`, where the calculation of `delta` overflows when the system timer is at 0x80000000 or above -- causing an incorrect, huge adjustment to be made to the scheduled time, ultimately stopping adverts from being sent.
2021-09-25 23:48:53 +01:00
JF002 8a2b86dc83
Merge pull request #664 from Riksu9000/disable_notif_only
Toggle notifications only, keep vibrations.
2021-09-23 20:13:42 +02:00
Riku Isokoski 980ac17388 Show plug icon while plugged in 2021-09-22 13:58:45 +03:00
Riku Isokoski b210090837 Merge branch 'develop' into detect_full_charge 2021-09-22 12:03:41 +03:00
Riku Isokoski d7dfe5d4ed Remove unused variable 2021-09-21 15:36:31 +03:00
Jean-François Milants 1c3c3c8db9 Merge branch 'develop' of github.com:JF002/Pinetime into develop 2021-09-19 17:43:28 +02:00
Jean-François Milants f3b5da0049 Fix the display of the date after a reset : when the date/time was restored from the noinit area, the date was displayed as "--" instead of the actual date.
This issue was caused by DateTime::SetCurrentTime() that would not update the internal state of the class : dayOfWeek, Month, Year were not properly updated according to the current time.
2021-09-19 17:42:50 +02:00
JF002 52eb94cfc4
Merge pull request #669 from NeroBurner/fix_unsigned_comparison_warning_metronome
Fix unsigned/signed comparison warning in Metronome.cpp
2021-09-18 20:33:45 +02:00
Riku Isokoski e468acc99e
Merge branch 'develop' into update_touch_driver 2021-09-18 19:22:59 +03:00
Jean-François Milants f556003de3 Merge branch 'PersistantStorage' of git://github.com/geekbozu/InfiniTime into geekbozu-PersistantStorage
# Conflicts:
#	src/systemtask/SystemTask.cpp
2021-09-18 17:37:37 +02:00
Jean-François Milants 7af7db74cd Fix DisplayAppRecovery : add AlarmController to ctor(). 2021-09-18 17:20:33 +02:00
Mark Russell b9e56843a2 resolve conflict in src/systemtask/Messages.h 2021-09-16 16:20:39 -04:00
Mark Russell cdf99b08f4 Revert "Merge upstream"
This reverts commit 1d43adcdfa.
2021-09-16 16:12:20 -04:00
hubmartin 27366bdfdf Merge branch 'develop' into wake-time 2021-09-16 22:04:31 +02:00
Mark Russell 1d43adcdfa Merge upstream 2021-09-16 16:01:25 -04:00
Mark Russell f857a757a7 Fixes per Riksu9000's feedback 2021-09-16 15:38:31 -04:00
Reinhold Gschweicher 63477fc096 Fix unsigned/signed comparison warning in Metronome.cpp
`xTaskGetTickCount()` returns a `TickType_t`, which is defined as an
`uint32_t`. This is compared to the `bpm` variable, which is a `int16_t`
in the range of 40 to 220 as defined in the constructor.

```cpp
  lv_arc_set_range(bpmArc, 40, 220);
```

Just assume that `bpm` is greater than 0, as this
would result in a divison by zero or negative values, which would
unintentionally underflow to a very large number.
2021-09-16 10:47:09 +02:00
Riku Isokoski 8f0771183c Fix Error screen and optimize GetTouchInfo 2021-09-15 12:25:41 +03:00
Riku Isokoski 93d240a23b
Merge branch 'develop' into disable_notif_only 2021-09-14 23:38:42 +03:00
Riku Isokoski f221f5d744 Merge branch 'develop' into update_touch_driver 2021-09-14 15:34:09 +03:00
Reinhold Gschweicher f89780f332 Remove unused include in MotoController.h
Remove the unused include `app_timer.h` in `MotorController.h`
2021-09-13 22:40:15 +02:00
Mark Russell 2bf339a3f8 License header fix, add missing braces 2021-09-13 16:05:35 -04:00
Mark Russell bfe13d9d68 Fixes based on code reviews (formatting, UI code) 2021-09-13 15:26:28 -04:00
Jean-François Milants 6356c7f276 Fix DisplayAppRecovery : fix include error by forward declaring Controllers in header file. 2021-09-13 20:35:51 +02:00
Riku Isokoski 40765f1173
Merge branch 'develop' into disable_notif_only 2021-09-13 21:22:53 +03:00
Jean-François Milants 9afa412a2a Merge branch 'refactor_adv' of https://github.com/evergreen22/InfiniTime into evergreen22-refactor_adv
# Conflicts:
#	src/components/ble/NimbleController.cpp
2021-09-13 20:22:27 +02:00
JF002 b0bdd2be1c
Merge pull request #549 from hubmartin/pinmap
Put all duplicated GPIO pin definitions to a single file
2021-09-13 20:05:43 +02:00
Tim Gates 84a93b5441
docs: Fix a few typos (#606)
* docs: Fix a few typos

There are small typos in:
- doc/versioning.md
- src/components/ble/NimbleController.cpp
- src/libs/mynewt-nimble/CODING_STANDARDS.md
- src/libs/mynewt-nimble/docs/btshell/btshell_GAP.rst
- src/systemtask/SystemTask.cpp

Fixes:
- Should read `milliseconds` rather than `miliseconds`.
- Should read `unnecessary` rather than `uncesseray`.
- Should read `target` rather than `tharget`.
- Should read `project` rather than `projct`.
- Should read `preferred` rather than `prefered`.
- Should read `functioning` rather than `functionning`.
- Should read `forever` rather than `forver`.
- Should read `existing` rather than `exisiting`.
2021-09-13 20:02:53 +02:00
hubmartin 73d3e41cea Merge branch 'develop' into pinmap 2021-09-13 10:19:07 +02:00
JF002 c9aeef94ea
Merge pull request #617 from ColinKinloch/wake_up_mode_setting_change
Correct change test for wake up mode setting
2021-09-12 18:41:26 +02:00
JF002 8728ac2f6a
Merge pull request #602 from Riksu9000/del_unused
Remove unused variables
2021-09-12 18:34:11 +02:00
JF002 f0329298ac
Merge pull request #580 from Riksu9000/timer_battery_reading
Make battery reading periodic
2021-09-12 18:22:04 +02:00
Riku Isokoski 3ee4876214 Toggle notifications only, keep vibrations. 2021-09-12 11:08:25 +03:00
Mark Russell 1fb5757655 Created basic alarm app 2021-09-10 18:40:13 -04:00
James A. Jerkins 22571d4b38 Advertise fast for at least 30 secs then slow down
On power up, advertise aggressively for at least 30 seconds then switch
to a longer interval to conserve battery life. This fast/slow pattern
is designed to balance connection response time and battery life.

When a disconnect event is received restart the fast/slow pattern.

When a failed connect event is received, restart the fast/slow pattern.

When the screen is activated and ble is not connected, restart the fast/slow pattern.

This pattern is consistent with Apple's BLE developer standards (QA 1931).
2021-09-05 15:53:20 -05:00
James A. Jerkins 4820b2ffe8 Revert "Linear decrease of advert rate to conserve battery"
This reverts commit c32ba844e0.
2021-09-05 15:52:01 -05:00
James A. Jerkins c32ba844e0 Linear decrease of advert rate to conserve battery
Start advertising aggressively when powered on then
slow down linearly over 75 seconds. This will conserve
battery by not advertising rapidly the whole time we
are seeking a connection. The slowest rate is
approximately once every 4.5 seconds to balance
responsiveness and battery life.

We use a fixed advertising duration of 5 seconds and start
with a 62.5 ms advertising interval. Every 5 seconds
(the advertising duration) we step up to a larger
advertising interval (slower advertising). We continue
to increase the advertising interval linearly for
75 seconds from the start of advertising. At 75 seconds
we have an advertising interval of 4.44 seconds which we
keep until connected. A reboot will restart the sequence.

When we receive a disconnect event we restart the sequence
with fast advertising and then slow down as described above.
Note that we are not using the BLE high duty cycle setting to
change the advertising rate. The rate is managed by repeatedly
setting the minimum and maximum intervals.

The linear rate of decrease and the slowest interval size
were determined experimentally by the author. The 5.3 Core
spec suggests that you not advertise slower than once
every 1.2 seconds to preserve responsiveness but we
ignored that suggestion.
2021-09-04 15:57:07 -05:00
Riku Isokoski b31b2425f8 Use percentage instead of IsFull 2021-09-03 16:57:00 +03:00
Riku Isokoski ac2ccaeff6 Auto realign battery icon in Analog watch face 2021-09-03 14:57:07 +03:00
Riku Isokoski fd52ca8fe6 Detect full charge and improve watchface display 2021-09-03 14:35:38 +03:00
Tim Keller 28fdc376b2 Add some comments 2021-09-02 23:01:12 +00:00
Itai Nelken bd1a571399
Update Settings.cpp 2021-09-02 23:20:25 +03:00
James A. Jerkins 3e1fe687b8 Fix styles issues - no change to functionality 2021-09-01 22:50:56 -05:00
James A. Jerkins d69a8e84fa Fix race condition, connect->disconnect->discovery 2021-09-01 22:48:01 -05:00
Jean-François Milants 1635bfafb3 Fix notifications that wouldn't auto close when the timeout elapsed (in preview mode). 2021-08-31 21:56:21 +02:00
James A. Jerkins 00a3f84ea7 Completely reset connection state on fail 2021-08-30 23:17:16 -05:00
Riku Isokoski 21d37d1e23 Merge remote-tracking branch 'upstream/develop' into timer_battery_reading 2021-08-30 10:15:19 +03:00