timower / rm2-stuff Goto Github PK
View Code? Open in Web Editor NEWCollection of reMarkable related apps, utilities and libraries.
License: GNU General Public License v3.0
Collection of reMarkable related apps, utilities and libraries.
License: GNU General Public License v3.0
rM2-stuff/libs/rMlib/FrameBuffer.cpp
Line 199 in 9126d7f
If the framebuffer has a different resolution or virtual resolution than normal for any reason, you will get a Bus error
crash when launching yaft or tilem. I assume rocket has the same flaw.
Hello!
Thanks so much for the port of yaft to RM. I was wondering how much work it would be to also support screen rotation? I see that this is a feature in this branch 1, but I'm unsure if that's ported to the RM.
No worries, if it's a lot of work; I'm just curious. Pointers to how I can implement this myself would be appreciated!
Thanks!
hi everyone
first I'M new here and I'm sorry for my English
my request is that I wanna install koreader in my remarkable 2 which have Version 3.9
I dont konw if this is possible ; i think I can't do it without tolec after version 2.15
note : I'm not a programmer I just know basics things about computer that's why I hope there are some steps which I need just use ssh commend to
install it
thanks in advance
I had to jump through a variety of unintuitive hoops to get things working, and improving that process would be helpful.
here are some of the issues I encountered [on debian 12]- I am very inexperienced with building software for the remarkable, so I might be using the wrong terminology here. Apologies.
CMAKE_BUILD_WITH_INSTALL_RPATH
to true in CMakePresets.json to avoid this error:The install of the [program] target requires changing an RPATH from the build tree, but this is not supported with the Ninja generator unless on an ELF-based or XCOFF-based platform.
LD_PRELOAD
for you, or explain to you that it needs to be setwhich cmake
before sourcing the toolchain, and referring to cmake by its path (e.g. /home/me/.local/bin/cmake --preset dev
).What versions are exactly supported by rm2fb?
it seems like the keyboard is accepting input only from stylus and not touch. Anyway to fix it?
Sorry it is my first time reporting a bug I may have done it badly.
The keymap handling here interferes with the type folio (i'm using the UK one). For instance KEY_APOSTROPHE is always mapped to the incorrect key.
Yaft should migrate to keyboard handling via https://github.com/reMarkable/epaper-qpa when the folio is attached.
rM2-stuff/apps/yaft/keyboard.cpp
Line 155 in 97a35cb
It seems that there is a new version of Remarkable (3.10) with interesting news:
https://remarkable.com/blog/remarkable-software-version-310
Would it be possible to update rm2fb to work with this version?
Thanks in advance!
It is really awesome that rm2fb has support for 3.3.x and even 3.5.x, but for some reason when I try to install th rm2fb.ipk the opkg (I used Evidlo's Entware) outputs:
`
I can enable xochitl by systemctl enable xochitl
.
I can run xochitl by xochitl
.
I have tried to opkg install /rm2fb
on 2.15, 3.3, 3.5, and 3.8 using fake updates with no avail. I am not sure what to do.
Is it possible to use a different font with yaft?
It seems like this should be possible due to font_path in Canvas.cpp.
I tried creating a symlink to a different font but that did not seem to have any affect on yaft, though it did on other applications (such as vnsee).
It seems that Yaft currently has its glyphs hardcoded in glyph.h, with a pixel size of 16×32 per glyph.
For the sake of legibility and accessibility a larger font size would be great.
Would it be possible to create generate different glyph sets (larger ones) and switch between them with a configuration parameter?
Opening mines (from toltec) crashes rocket
First of all, great work on porting yaft to reMarkable. It's so light and fast, keyboard works with 0 visual delay and I love it so much!
So I tried to add more keys on another row to the list. Unfortunately, a bug consistently happened that Ctrl, shift and alt are always on. It led to invalid key and Segmentation fault all the time whenever I hit something (except ctrl, shift and alt tho).
After a "few" hours investigating, the bug is due to you using addresses of elements in vector<Key> keys
for shiftKey
, ctrlKey
and altKey
. These addresses are potentially changed after emplacing more elements to the vector
.
Unless vector are reserved enough memory space prior any emplacing operation, vector would reallocate all elements to new space. To prevent bugs in the future, you can either:
keys.reserve(num_rows * row_size);
Or use std::vector<Key>::iterator
instead of address.
right now long press esc on the virtual keyboard hides the keyboard except the last row.
when using an external keyboard it would be better to hide it altogether.
what about swipe up/down gestures at the bottom to show/hide the whole keyboard?
can somebody give instructions on how to set this up on a rm2? or point to somewhere where it is explained?
would be super thankful
version: 3.3.2
rm2fb seems to not be recognized or used after installation.
desperately, I tried both installing rm2stuff.ipk and installing each packages seperately (running toltecctl uninstall
beforehand)
process:
toltecctl uninstall
wget http://toltec-dev.org/bootstrap
echo "04a28483286f88c5c7f39e352afb62adc57f6162a29fd7e124d832205bb0980e bootstrap" | sha256sum -c && bash bootstrap
reboot
opkg install rm2stuff.ipk
reboot
running yaft
I got:
">>FATAL<< framebuffer initialize failed"
I suspect the system couldn't recognize rm2fb or some files are missing, as when I ran opkg install remux && remux
, I got:
"remux: error while loading shared libraries: librm2fb_client.so.1: cannot open shared object file: No such file or directory"
Sorry for asking hand-holdings, is there a set of bash commands that is methodologically correct for installing yaft and rocket/remux on a fresh machine running 3.3.2 or 3.5.x?
I would recommend tweaking the tilem port to download the rom over https.
The current ipk provides tilem and yaft, but doesn't mark itself as providing them, or as conflicting with the toltec packages.
The main readme links to the yaft readme, but no such readme exists.
I installed Tilem with toltec but launching Tilem from a launcher shows a blank white screen.
I am using the remarkable 2 version 2.10.3.379
Your current handling of input events doesn't currently handle dropping an event if SYN_DROPPED is encountered. This could be useful to make the event flood slightly less noisy if every application supported it properly.
It seems that there is a new version of Remarkable (3.6)
Would it be possible to update rm2fb to work with this version?
Thanks in advance!
using gcc-9.3.0
$ make
[ 6%] Built target swtcon
Scanning dependencies of target rMlib
[ 7%] Building CXX object libs/rMlib/CMakeFiles/rMlib.dir/Input.cpp.o
In file included from /nix/store/kj0fqg18lp9mghjl01g56naa6yl1yyq2-armv7l-unknown-linux-gnueabihf-stage-final-gcc-debug-9.3.0/armv7l-unknown-linux-gnueabihf/sys-include/sys/select.h:123,
from /nix/store/kj0fqg18lp9mghjl01g56naa6yl1yyq2-armv7l-unknown-linux-gnueabihf-stage-final-gcc-debug-9.3.0/armv7l-unknown-linux-gnueabihf/sys-include/sys/types.h:179,
from /nix/store/kj0fqg18lp9mghjl01g56naa6yl1yyq2-armv7l-unknown-linux-gnueabihf-stage-final-gcc-debug-9.3.0/armv7l-unknown-linux-gnueabihf/sys-include/stdlib.h:394,
from /nix/store/kj0fqg18lp9mghjl01g56naa6yl1yyq2-armv7l-unknown-linux-gnueabihf-stage-final-gcc-debug-9.3.0/armv7l-unknown-linux-gnueabihf/include/c++/9.3.0/cstdlib:75,
from /nix/store/kj0fqg18lp9mghjl01g56naa6yl1yyq2-armv7l-unknown-linux-gnueabihf-stage-final-gcc-debug-9.3.0/armv7l-unknown-linux-gnueabihf/include/c++/9.3.0/ext/string_conversions.h:41,
from /nix/store/kj0fqg18lp9mghjl01g56naa6yl1yyq2-armv7l-unknown-linux-gnueabihf-stage-final-gcc-debug-9.3.0/armv7l-unknown-linux-gnueabihf/include/c++/9.3.0/bits/basic_string.h:6493,
from /nix/store/kj0fqg18lp9mghjl01g56naa6yl1yyq2-armv7l-unknown-linux-gnueabihf-stage-final-gcc-debug-9.3.0/armv7l-unknown-linux-gnueabihf/include/c++/9.3.0/string:55,
from /home/dev/src/remarkable/rM2-stuff/libs/rMlib/include/Error.h:4,
from /home/dev/src/remarkable/rM2-stuff/libs/rMlib/include/Input.h:3,
from /home/dev/src/remarkable/rM2-stuff/libs/rMlib/Input.cpp:1:
/home/dev/src/remarkable/rM2-stuff/libs/rMlib/include/Input.h: In member function ‘std::optional<typename std::conditional<(sizeof... (ExtraFds) == 0), std::vector<std::variant<rmlib::input::TouchEvent, rmlib::input::PenEvent, rmlib::input::KeyEvent> >, std::pair<std::vector<std::variant<rmlib::input::TouchEvent, rmlib::input::PenEvent, rmlib::input::KeyEvent> >, std::array<bool, sizeof... (ExtraFds)> > >::type> rmlib::input::InputManager::waitForInput(std::optional<std::chrono::duration<long long int, std::ratio<1, 1000000> > >, ExtraFds ...)’:
/home/dev/src/remarkable/rM2-stuff/libs/rMlib/include/Input.h:114:13: error: parameter packs not expanded with ‘...’:
114 | (FD_SET(extraFds, &fds), ...);
| ^
/home/dev/src/remarkable/rM2-stuff/libs/rMlib/include/Input.h:114:13: note: ‘extraFds’
/home/dev/src/remarkable/rM2-stuff/libs/rMlib/include/Input.h:129:37: error: parameter packs not expanded with ‘...’:
129 | ((extraResult[i++] = FD_ISSET(extraFds, &fds)), ...);
| ^
/home/dev/src/remarkable/rM2-stuff/libs/rMlib/include/Input.h:129:37: note: ‘extraFds’
At global scope:
cc1plus: warning: unrecognized command line option ‘-Wno-gnu-statement-expression’
make[2]: *** [libs/rMlib/CMakeFiles/rMlib.dir/build.make:82: libs/rMlib/CMakeFiles/rMlib.dir/Input.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:361: libs/rMlib/CMakeFiles/rMlib.dir/all] Error 2
make: *** [Makefile:149: all] Error 2
Inside yaft on a rm2, i ssh to a server, this works fine, and i get a remote shell nicely.
then I try to start for example emacs, and it complains "there is no such terminal definition yaft-256color" or similar error.
I compile and install yaft on the remote server, just so I can get the terminfo file, and it does install in /usr/share/terminfo/yaft-256color. So far so good.
Still, I get the same missing terminal definition problem.
If I use some other terminal definition, like "export TERM=xterm-256color" it works, and looks nice, but I do get some visual glitches probably because the termdef does not match.
Have I missed some step in installing the terminfo file or something?
I just installed yaft from the current toltec. I tried to run nano and it won't start, complaining cannot open yaft-256color. If I try to run 'vi', it first complains about some "cm" capability missing, and then I get the welcome screen quite weird... when trying to type commands, I get like Ctrl (^) characters... really weird.
OTOH, if I go to the screenshot you have in your docs folder, I see you have 'vi' running very nicely, even with two terminal views, one showing 'top' or similar, and you even have function keys in the keyboard (which I don't, see my screenshot). Can you tell me the steps and keys you pressed for getting that screenshot? (I mean this: https://github.com/timower/rM2-stuff/blob/master/doc/yaft.png)
Hey, Im new to tmux, but encountered it very useful in combination with yaft and the type folio.
Ive been trying around a bit with the colour configuration and how the colours are displayed in yaft.
The problem I have is: I cant figure out which colour I could set for the border which can be seen fort instance in splitview, like the grey one between vim and htop in this screenshot:
Whatever I do - it stays white on white for me in yaft...
So could you maybe share your tmux.conf? I think that would be a great help :)
Hi.
First of all, thanks for you super-cool work! I have installed yaft
with opkg install yaft
and it works great. But I would like to build the latest changes on the dev branch to get more control over the keymapping from the type folio. I have downloaded the docker image with the toltec toolchain and I am able to build:
However when I copy this over to my remarkable I am running into some issues.
The rm2stuff.ipk package has a conflict with my already installed rm2fb-client:
root@reMarkable:~# opkg install rm2stuff.ipk
Installing rm2-stuff (0.0.1) to root...
Collected errors:
* check_conflicts_for: The following packages conflict with rm2-stuff:
* check_conflicts_for: display * check_conflicts_fo
When I copy over the yaft2 executable directly and try executing it I get the following error:
root@reMarkable:~# ./yaft2
yaft2: /home/erling/tools/remarkable/rM2-stuff/libs/rMlib/FrameBuffer.cpp:49: static ErrorOr<rmlib::fb::FrameBuffer::Type> rmlib::fb::FrameBuffer::detectType(): Assertion `false' failed.
Aborted
I realize that these are probably issues arising from my limited understanding of what is going on here. I am posting an issue here hoping someone could help me out.
opkg install yaft
. Should I uninstall it and let opkg find a new version of rm2fb-client?Again, thanks for your really cool work. I hope someone could help me out with some info or some pointers to where I can read up on cross-compiling for rm2 with toltec, opkg, ipk etc etc
Hi,
When installing the rm2fb ipk I am getting a white screen on boot. Is there a way to fix this?
Sincerely,
C
how to use an external keyboard from /dev/input/event3?
running yaft on rM1:
reMarkable: /etc/terminfo/y/ ~/apps/yaft
rM1 currently untested, please open a github issue if you encounter any issues
Max FD: 6
Max FD: 6
Max FD: 6
Max FD: 6
...
Max FD: 6
^C
and displays:
it is possible the width is incorrect (1404 vs 1408) somewhere which often causes tearing like that
Hi,
I tried to run rm-docker but the proccess faild on this
RUN cmake --preset dev-host && cmake --build build/host --target rm2fb-emu
error: downloading 'https://github.com/frida/frida/releases/download/16.1.4/frida-gum-devkit-16.1.4-linux-aarch64.tar.xz' failed
0.934 status_code: 22
0.934 status_string: "HTTP response code said error"
How do you open the calculator app inside of a notebook like you show in the readme?
Copied the .ipk files in the Releases to the remarkable2 on V3.8.2 and installed them using opkg but if I try to start anyone of them i get the following:
FATAL: Unsupported device, please install rm2fb
Aborted
Here are the logs from the opkg:
reMarkable: ~/ opkg install rm2fb.ipk
Multiple replacers for rm2fb, using first one (rm2fb).
Multiple replacers for rm2fb, using first one (rm2fb).
Installing rm2fb (0.1.1) to root...
Removing package display from root...
make sure to disable / uninstall any launchers like draft, oxide or remux before
rebooting your tablet to complete the uninstallation
Removing package rm2fb-client from root...
Configuring rm2fb.
reMarkable: ~/
As part of investigating integrating your version of rm2fb into toltec for 3.5.2 and 3.8.2 support, I've discovered what I would consider a blocking bug.
When the launchers switch between running applications they will often fail to fully render the saved screen for the application. This behaviour does not happen with the upstream rm2fb on older OS versions.
You can find some screenshots of the issue in the following comments:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.