2
0
mirror of https://github.com/koreader/koreader synced 2024-11-13 19:11:25 +00:00
Commit Graph

202 Commits

Author SHA1 Message Date
David Engster
bfd55c76c2 device/kobo/powerd: Read natural light configuration
Define 'frontlight_settings' table for all Kobo devices, and read
configuration from settings file.
2018-03-13 22:09:29 +01:00
David Engster
a912e00aa3 device/kobo/sysfs_light: Make used exponent in formulas a variable 2018-03-13 22:09:29 +01:00
David Engster
effc7135a1 device/kobo/sysfs_light: Explicitly handle warmth/brightness = 0
For warmth and/or brightness = 0, we need to make sure that the
red/green/white LEDs are actually turned off, regardless of the values
for gain/offset.
2018-03-13 22:09:29 +01:00
David Engster
201370a220 device/kobo/sysfs_light: Use current brightness/warmth if none given 2018-03-13 22:09:29 +01:00
cairnsh
f74f19bd9f [feat] Make touch work on the H2O2 (#3715) 2018-03-04 18:31:46 +01:00
Frans de Jonge
68e63df442
[feat] Add H2O2 natural light (#3709)
See https://www.mobileread.com/forums/showpost.php?p=3664352&postcount=66
2018-03-02 23:03:00 +01:00
David Engster
f77ce9bf7c kobo/powerd, kobo/nickel_conf: Support reading/setting natural light
Nickel stores the 'warmth' values as 'ColorSetting' in a linear
mapping from '1500' to '6400'.
2018-02-06 10:21:16 +01:00
David Engster
5c1f97eeb3 kobo/powerd: Use sysfs interface for natural light support
If the device has natural light support (currently only KA1), use the
sysfs interface instead of the ioctl-based one. It might also be
usable on other Kobo devices for setting brightness without natural
light, but since I cannot test this, this is currently restricted to
the KA1.
2018-02-06 10:21:16 +01:00
David Engster
7aefad6de9 kobo/device: Add field for natural light support
Currently, only the Kobo Aura One has natural light.
2018-02-06 10:21:16 +01:00
David Engster
6b4a548fe1 kobo: Add sysfs-based interface to frontlight
By default, the ioctl interface is used for accessing the
frontlight. However, the ioctl interface has two problems: the overall
brightness seems to be lower (issue #2321), and it does not support
the natural light support from the Kobo Aura One (issue #2285). This
interface is the first step to fix both these issues.

From observing Nickel's behavior, it appears the white/green/red
intensities are roughly linear dependent on the 4th root of brightness
and warmth values. This leads to a very quick increase of the
intensities for lower brightness/warmth values, which then saturate
for larger ones. The values for gain/offset were determined by a
simple linear regression, but the plan is to create a widget so that
users may adapt these values to their liking.
2018-02-06 10:21:16 +01:00
Frans de Jonge
021e3db002
kobo/device: finetune KoboStar (Aura 2) viewport (#3513)
See https://github.com/koreader/koreader/issues/2418#issuecomment-346287297 and  https://github.com/koreader/koreader/issues/2418#issuecomment-346426685
2017-11-24 17:15:37 +01:00
Frans de Jonge
aa7d4f9751
[Kobo] Update H2O2 to nearly working touch. (#3481)
See https://www.mobileread.com/forums/showpost.php?p=3610605&postcount=24 for evtest output.
2017-11-13 08:38:42 +01:00
Frans de Jonge
ed3c0e707a [Kobo] Add preliminary Kobo Aura H2O2 definition (#3372)
Cf. ongoing discussion in KSM8 thread: https://www.mobileread.com/forums/showthread.php?p=3596020#post3596020
2017-10-18 22:42:59 -07:00
Robert
5258643a85 Add a date setting (#3234) 2017-09-18 19:04:36 +02:00
poire-z
0122c086f2 Fix crash on exit on Kobo devices with no frontlight (#3221) 2017-09-15 20:05:46 +02:00
poire-z
d4fd0b9428 frontlight on kobo: a few fixes (#3163)
* frontlight on kobo: a few fixes

Rewritten to not update NickelConf on every change, and never
if KOBO_SYNC_BRIGHTNESS_WITH_NICKEL = false.
Reintroduce global settings frontlight_intensity and
is_frontlight_on to keep level and state across koreader
sessions.
Fix a few of the remaining issues on kobo light.
Ensure settings are saved when rebooting/powering off from
File browser.

* Ensure untoggle works when starting with light off
2017-09-04 21:05:05 +02:00
poire-z
c6cfed92d7 Fix kobo fl_min and frontlightwidget (#3143)
* Put back fl_min=0 as it is for all other devices (the idea
fl_min should be 1 and toggling managed some other way is
not implemented in current code).
* Fix a few frontlightwidget issues
2017-08-29 17:37:08 +02:00
Robert
7f58a13626 Ability to setup clock (#3085)
* Ability to setup clock
2017-08-15 19:54:02 +02:00
Hzj_jie
a4d5165f7a Several fixes in frontlight logic (#2991)
* Use PluginShare to exchange data between plugins

* Remove legacy code in reader.lua and kobo/device.lua, and move KOBO_LIGHT_ON_START to kobo/powerd.lua

* A better sync config logic

* Consider kobo without hardware frontlight toggle

* update frontlight widget once toggle is tapped.
2017-06-29 08:23:32 +02:00
Hzj_jie
c8be27481c Fix synchronizing issue of Kobo front light between KOReader and nickel (#2977) 2017-06-21 19:10:44 -07:00
Hzj_jie
b5c77af15c Typo in last change. (BasePowerD -> KoboPowerD) 2017-06-20 23:58:33 -07:00
Hzj_jie
05769872c7 Allow Kobo to entirely turn off the front light. 2017-06-20 23:57:18 -07:00
Hzj_jie
63f2284f21 Fix several crash errors triggered by legacy code (#2962) 2017-06-15 15:27:04 -07:00
Hzj_jie
53eb4dee50 AutoFrontlight plugin (#2941)
* Add AutoFrontlight plugin

* Add configuration to control autofrontlight feature
2017-06-14 19:32:16 +02:00
Martín Fernández
474c011f21 [kobo]: add reboot and poweroff menu actions (#2888) 2017-05-14 09:43:08 -07:00
Robert
9a247e86ae Screensaver on Kindle without Special Offers (#2757) 2017-04-13 19:55:31 +02:00
Hzj_jie
0b29e73e2e BatteryStat plugin and instruction of KoboLight plugin (#2643)
* Start battery stat plugin

* BatteryStat & kobolight

* Several minor improvements

* Remove a useless function

* flush settings

* Some review feedbacks

* Resolve review comments

* Remaining Minutes -> Remaining Hours

* Add dump_file

* typo

* realpath

* realpath on folder

* Remove useless os.time()

* Resolve review comments

* warning

* Add BatteryStat.debugging flag

* treat log as txt

* Minor improvement

* Charging hour should be positive

* Use warn instead of info

* onSuspend in Kobo

* Charging events for kobo and kindle

* More events

* dumpOrLog

* Warnings

* Typo

* More space

* Singleton

* slightly format change

* BatteryStat singleton

* Init

* Remove debugging flag

* sleeping percentage is still negative

* Read settings

* Do not need to change was_suspending and was_charging

* Typo

* Remove debugging flag

* Not charging should happen before suspend

* Resolve review comments

* was_suspend and was_charging should be updated each time in onCallback()
2017-03-23 23:36:15 -07:00
Qingping Hou
d168db9db5 kobo(suspend): put device back to sleep after unexpected wakeup 2017-03-06 07:47:20 +01:00
Qingping Hou
06562fa582 input(optimization): replace ev type reflection with table lookup 2017-03-06 07:47:20 +01:00
Qingping Hou
f402ee5f6f chore: remove all echo shell out in kobo resume routine 2017-01-30 05:53:44 -08:00
Qingping Hou
f95ad00b9e feat: add logger module & rewrite kobo suspend script in lua 2017-01-02 19:52:09 -08:00
Frans de Jonge
0fb29e9cd3 Kobo: fix Kobo Aura second edition highlighting 2016-12-16 22:37:19 -08:00
Frans de Jonge
69f70ac16e Kobo: initial support for Kobo Aura second edition (Kobo star)
This fixes #2418.
2016-12-13 14:39:24 -08:00
Qingping Hou
d1f9cf932b kobo(minor): add debug log for suspend action 2016-12-10 16:06:51 -08:00
Bastien Dejean
c71b176e0a Kobo Aura ONE: no viewport adjustments needed
Test image:
https://cloud.githubusercontent.com/assets/159419/20651651/5e344d1c-b4e9-11e6-8450-6fb165c792db.png

Fixes #2372.
2016-11-28 10:06:25 +01:00
Qingping Hou
816d0a551a kobo: handle charging/uncharging event 2016-10-30 15:25:51 -07:00
Qingping Hou
705d3e4cb4 doc(minor): document alternative usb plug event source for kobo 2016-10-17 23:45:47 -07:00
Qingping Hou
ef5c8ced60 chore: disable wrong usbplug event handler 2016-10-08 15:53:02 -07:00
Qingping Hou
902403bf0a kobo(fix): prevent usb plug events from interrupting sleep 2016-09-21 23:32:56 -07:00
Qingping Hou
93b3262db7 kobo(fix): make sure sleep cover is not interrupting sleeping when ignore_power_sleepcover is set 2016-09-21 23:29:22 -07:00
Qingping Hou
ebc7055b43 chore: move kobo specific code into kobo/device.lua 2016-09-19 01:10:53 -07:00
Matej Mihelič
6600410c08 Aura One support 2016-09-13 06:50:07 +01:00
Hzj_jie
da2c57f93a Automatically connect WIFI after Kobo has been resumed (#2215)
* Add bash scripts to control WIFI / IP, so we can share them with frontend/device/kobo/device.lua.

* add test cases
2016-09-01 00:05:40 -07:00
chrox
9afad43a3e refactoring utils to tools as discussed in #2197 2016-08-11 19:29:09 +08:00
NiLuJe
2013a66fdd Some more Kobo suspend tweaks...
Disable wakeup_count handling, that's often causing more harm than
anything else...
Nickel doesn't even use it, that should have been a hint ;).

Make the logging slightly less confusing.
Add commented out debug features (dumping relevant dmesg output).

Re #2188
2016-07-31 19:01:15 +02:00
Qingping Hou
20eb36a03d feat: add network management UI for kobo 2016-07-11 23:50:19 -07:00
Qingping Hou
44d62f6f41 networkmanager: move device specific code into device module 2016-07-10 23:25:32 -07:00
Qingping Hou
38a1758889 kobo: detect non-epoch timestamp using current second 2016-06-05 14:19:37 -07:00
Qingping Hou
82a3e0f9ad automatically adjust ev time for kobo touch 2016-05-23 23:21:14 -07:00
NiLuJe
103e4eaeb8 Use the GloHD quirks on the Touch 2.0...
re #2005
2016-05-15 20:44:07 +02:00
NiLuJe
9a7c46e8f5 Unbreak previous commit
Weeeeee!
2016-05-15 20:44:07 +02:00
NiLuJe
467e65be3d Don't crash on the Kobo Touch 2.0
I wouldn't go so far as to say "support", though, since I don't have the
device, and the touch protocol might be wrong ;).

re #2005
2016-05-15 20:44:07 +02:00
Cosmin Gorgovan
19338cb439 Kobo: Offer to power off if the power button is held for at least 3 seconds 2016-05-01 14:09:21 +01:00
Zijie He
f33f78cf08 Add an ignore_power_sleepcover setting to ignore Kobo power_sleepcover keycode 2016-04-20 10:21:09 -07:00
Hzj_jie
1be9264a0c Resolve review comments 2016-04-17 22:30:46 -07:00
Zijie He
7d4bd076f7 Resolve review comments 2016-04-15 13:21:39 -07:00
NiLuJe
f43cbc74e6 Always forcibly wake the H2O IR grid on wakeup
Fix #1862
Fix #1943
2016-04-09 17:51:39 +02:00
Qingping Hou
eb37d9b8b6 kobo: fix screen probe for touch 2016-04-02 23:06:09 -07:00
Qingping Hou
c35aad3ae1 fix(kobo): return 0 frontlight level config to signal frontlight off state 2016-03-20 23:58:59 -07:00
Qingping Hou
824bdb4463 comment for kobo sleep 2016-03-10 18:39:36 -08:00
Zijie He
767e6e2b71 Add a sleep after kobo resume to resolve partial blank screen issue (#1874) 2016-03-10 15:35:06 -08:00
Qingping Hou
e812f7d0d6 kobo: fix typo during refactoring, luacheck is the best check 2016-03-05 13:02:33 -08:00
Qingping Hou
cf70e86552 kobo: move reader setting outside of nicke_conf module 2016-03-02 23:25:39 -08:00
NiLuJe
e60de3044c Keep intensity in sync at the config level too
Make sure frontlight_intensity in reader.lua settings matches what we
write into Nikcel's config
2016-03-02 19:16:02 +01:00
Qingping Hou
4751aba46c kobo: rewording, turns out has_toggle_btn != has_state_cfg :( 2016-03-02 18:25:17 +01:00
Qingping Hou
8190093f83 kobo: don't create FrontLightState config if it didn't exist to begin with 2016-03-02 18:25:17 +01:00
Qingping Hou
8b7658b8cd kobo: always keep intensity value and is_fl_on in sync 2016-03-02 18:25:17 +01:00
Qingping Hou
cf3b97537b kobo: build fl_state based on fl_intensity if model does not support toggle 2016-03-02 18:25:17 +01:00
Qingping Hou
9afae91b13 chore: rename frontlight related variables to keep style consistent
flIntensity -> fl_intensity
flState -> is_fl_on
fallback_FrontLightLevel -> fallback_fl_level
2016-03-02 18:25:17 +01:00
NiLuJe
f213fb6405 Bypass flState on suspend/wakeup
We pretty much always want to turn it off on suspend, and turn it on to
some measure on wakeup.

That, and nickel's FrontLightState is completely nonsensical on my device anyway...
2016-03-02 18:24:14 +01:00
NiLuJe
770625d756 Tweak the 'IR down on resume' workaround...
Only apply it when started from nickel, because I'm guessing we'd have
seen a number of reports of this if it happened more widely...
2016-03-02 18:24:14 +01:00
NiLuJe
85737e2b9d Forcibly re-activate IR grid on resume...
re #1862
2016-03-02 18:24:14 +01:00
NiLuJe
6c8bbfd470 Unbreak Kobo frontlight -> off when suspending.
If no-one touches anything, flState stays false...
And anyway, we should unconditionally disable the fl on sleep.
2016-03-02 18:09:38 +01:00
zijiehe
a183c1c64b Slightly refector device & powerd component, remove some magic code 2016-02-28 14:38:14 +08:00
zijiehe
e84093c414 Add a flState in Kobo, and KoboPowerD:toggleFrontlight uses flState to control the light instead of intensity. 2016-02-26 15:34:23 +08:00
Qingping Hou
59c17ef420 minor: more luacheck fixes 2016-02-15 01:33:48 -08:00
Qingping Hou
71ef994318 test: add nickle conf spec 2016-02-03 10:35:47 -08:00
Qingping Hou
1609becd61 Merge pull request #1772 from dset0x/frontlight-sync
WIP Synchronise frontlight level with nickel config
2016-02-01 21:15:00 -08:00
Qingping Hou
5a3b9c6856 style: make staick-check happier 2016-01-31 15:08:24 -08:00
Dimitrios Semitsoglou-Tsiapos
699781de68 nickel_conf: handle missing file/key/section 2016-01-12 16:22:37 +02:00
Dimitrios Semitsoglou-Tsiapos
eb47c5a39f Synchronise frontlight level with nickel config
* Drops support for mocking the frontlight setting internally which may
  cause incorrect in-memory values.

* Adds new supported value for `KOBO_LIGHT_ON_START` (-2), which sets
  'Kobo eReader.conf' as the source to update `settings.reader.lua`'s
  brightness setting on startup, thus using the value from it
  indirectly.

* Adds the `KOBO_SYNC_BRIGHTNESS_WITH_NICKEL` configuration variable
  which updates 'Kobo eReader.conf' every time the brightness setting is
  changed within koreader.

* Fixes missing call to save brightness when modifying via two-finger
  swipe.

Closes #1523.
2016-01-11 23:30:22 +02:00
Guangda Hu
7491cd7b9d fix spaces 2015-05-15 21:57:00 -04:00
Guangda Hu
69db627136 Glo HD support 2015-05-15 17:46:16 -04:00
NiLuJe
a6a2b3d6a3 Try to get the Kobo codename from the env first
My batch of startup script tweaks should ensure PRODUCT is always
exported.
Leave the fallback in place, to avoid blowing up in weird corner-cases I
haven't thought about.
2015-04-27 13:15:02 +02:00
NiLuJe
c6a3f9002c Tweak the H2O viewport to make it pixel-perfect.
As confirmed by checking a fb dump via fbgrab, and nickel's
broken cropping of screenshots ;).
2015-04-26 19:11:47 +02:00
Cosmin Gorgovan
41045dab99 Fix charging detection for Kobo devices
I've tested this on a N905C. I assume this implementation never
worked (since charge_now is supposed to show state of charge), but
it would be useful to get a confirmation.
2015-02-02 16:46:46 +00:00
chrox
d0b450efde refresh battery capacity when going out of suspend
This should fix #1383.
2015-02-01 12:49:49 +08:00
Michael Hall
9a66805b5a Handle Kobo Touch Key 2014-12-26 11:45:09 +00:00
Hans-Werner Hilse
3d73ff5ae7 only open frontlight device on Kobo devices that actually have light 2014-12-02 11:18:19 +01:00
Hans-Werner Hilse
173de615db Revert "smaller viewport for Kobo H2O (bezel overlaps bottom)"
This reverts commit fc36d6db37.
2014-11-27 16:01:00 +00:00
Hans-Werner Hilse
fc36d6db37 smaller viewport for Kobo H2O (bezel overlaps bottom) 2014-11-27 15:46:03 +00:00
Hans-Werner Hilse
dacb59f6b2 move debug function handover, set viewport for Kobo Mini
in order to have debugging facilities in framebuffer:init(), we hand
over the debug function as soon as we can.

Also, set a viewport for Kobo Mini. Hopefully, it fits most people -
I can only test on my unit.
2014-11-27 15:46:03 +00:00
Hans-Werner Hilse
4a497cfcfb fix initialization order on Kobos
notably, this will set up input offsets for viewport stuff after the
input rotation has been set up.
2014-11-27 15:46:02 +00:00
Hans-Werner Hilse
bf7ea7af6d add device names as comments
we use mostly code names internally, but it is probably a good idea
to annotate the actual device names.
2014-11-27 10:14:24 +00:00
Hans-Werner Hilse
63af71188a refactor refresh
Lots of the device-related distinction wandered into
base/ffi/framebuffer_<driver>. This eases the refresh logic in
UI manager, which basically only decides what kind of refresh
to trigger. The device specific configuration in the framebuffer
driver decides how to realize that whish.

screen.lua is gone, in its place is now the framebuffer driver.
The device abstraction decides what framebuffer driver to load.
2014-11-23 12:13:32 +00:00
chrox
8384eba810 consider also the screen size when scaling by DPI 2014-11-20 18:02:50 +08:00
Andrey Golovizin
f785b29f34 Fix the viewport on Kobo Aura (phoenix). 2014-11-16 09:53:52 +01:00
WS64
67c4bb365d Center screen for Kobo Aura
Why was it 
viewport = Geom:new{x=6, y=12, w=752, h=1012},?
viewport = Geom:new{x=0, y=0, w=752, h=1012}, looks way better!
2014-11-10 13:48:46 +01:00
Frans de Jonge
c4f1687c22 Remove KOBO_LIGHT_OFF_ON_SUSPEND option and move workaround to ffi/kobolight.ua 2014-11-09 16:37:15 +01:00
Frans de Jonge
011c5b6544 Fix Kobo resume in new hardware abstraction. 2014-11-06 10:33:48 +01:00
Qingping Hou
8927f901da fix(input): use elseif conditional logic in adjustTouchSwitchXY 2014-11-05 02:54:04 -05:00
Hans-Werner Hilse
3066c86e38 Refactoring hardware abstraction
This is a major overhaul of the hardware abstraction layer.
A few notes:

General platform distinction happens in
  frontend/device.lua
which will delegate everything else to
  frontend/device/<platform_name>/device.lua
which should extend
  frontend/device/generic/device.lua

Screen handling is implemented in
  frontend/device/screen.lua
which includes the *functionality* to support device specifics.
Actually setting up the device specific functionality, however,
is done in the device specific setup code in the relevant
device.lua file.

The same goes for input handling.
2014-11-02 21:19:04 +01:00