Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Support for Tolino Vision 6 #398

Open
cl0rm opened this issue Jan 3, 2023 · 8 comments
Open

Add Support for Tolino Vision 6 #398

cl0rm opened this issue Jan 3, 2023 · 8 comments

Comments

@cl0rm
Copy link

cl0rm commented Jan 3, 2023

Light Controller should be the same as EPOS (TolinoRoot)

ACTUAL_BRIGHTNESS_FILE would need a similar switch as COLOR_FILE
(/sys/class/backlight/mxc_msp430_fl.0/actual_brightness needs to be /sys/class/backlight/mxc_msp430.0/actual_brightness for the Vision 6).
The files are even writable without root.

Of course DeviceInfo.kt and LightsFactory.kt should be updated as well with a new device definition (TOLINO_VISION5 would be the obvious name for this). I am still trying to understand how everything works here (build system, file structure and so on)(C guy here, I don't know much about lua and kotlin). Maybe I will be able to create a version where it works.

Manufacturer: Rakuten kobo inc.
Brand: rakturenkobo
Model: tolino vision 6
Device/Product: tolino
Platform: virgo
Hardware: sun8iw15p1

E-Ink works rather well out of the box. Refreshing does not seem to work, but the image quality seems OK even without it. Buttons also work. I will still Try and see if I will find more info about the EPD

@cl0rm
Copy link
Author

cl0rm commented Jan 3, 2023

The EPD driver MIGHT be the same as this issue:
#344
because the platform and hardware seem to match

@cl0rm
Copy link
Author

cl0rm commented Jan 4, 2023

This does not seem to be that easy (at least for me, without a lot of android development knowledge).
I did set up the development environment and compile the app.
I was also able add the device to the known ones and create variables for it so it does get detected.
The problem is that it does not have the rights to write to the sysfs files, and root does also not seem to work.
(just executing su -c "echo VAL > path/to/sysfs_file" - I do get the root prompt, so something gets done, but the display does not change. I have no idea why, because exactly that command works flawless from adb shell)

@NiLuJe
Copy link
Member

NiLuJe commented Jan 4, 2023

Is your adb shell a root one, perhaps?

@NiLuJe
Copy link
Member

NiLuJe commented Jan 4, 2023

(FWIW, our experience on other ntx boards is that the sysfs nodes require root, which is why we're not using 'em on Android).

@pazos
Copy link
Member

pazos commented Jan 4, 2023

This does not seem to be that easy (at least for me, without a lot of android development knowledge). I did set up the development environment and compile the app. I was also able add the device to the known ones and create variables for it so it does get detected. The problem is that it does not have the rights to write to the sysfs files, and root does also not seem to work. (just executing su -c "echo VAL > path/to/sysfs_file" - I do get the root prompt, so something gets done, but the display does not change. I have no idea why, because exactly that command works flawless from adb shell)

The answer is one hoop away: koreader/koreader#8429 (comment)

:)

@pazos
Copy link
Member

pazos commented Jan 4, 2023

root does also not seem to work

Root is nastier on each new android version because mitigations and SELinux. Even on older versions you need to execute su commands on the proper runtime (just like the TolinoRoot is doing in https://github.com/koreader/android-luajit-launcher/blob/master/app/src/main/java/org/koreader/launcher/device/lights/TolinoRootController.kt#L83, for instance)

@pazos
Copy link
Member

pazos commented Jan 4, 2023

Light Controller should be the same as EPOS (TolinoRoot)

It doesn't make much sense for a new device. I think you will be luckier using https://github.com/koreader/android-luajit-launcher/blob/master/app/src/main/java/org/koreader/launcher/device/lights/TolinoNtxController.kt (as is or as a base for required changes)

@cl0rm
Copy link
Author

cl0rm commented Jan 5, 2023

SELinux seems to be the real issue, because I execute the commands exactly like in the RootController and they still do not work (despite of asking for root - so the command definitely gets executed)
I do not think the NTX controller will work, as I did not have any luck with the ntx_io file at all

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants