Difference between revisions of "PineNote Development/TODOs"

From PINE64
Jump to navigation Jump to search
 
(21 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Template:Under construction}}
== Kernel/driver TODOs ==
These exist, but they haven't been written down yet.
 
== Artifacting ==
 
There is some artifacting with the current driver that has been difficult to diagnose and resolve. The github issue tracking this is here: https://github.com/PNDeb/pinenote-debian-image/issues/47
 
Some members of the community have been considering hiring an e-ink professional to consult on this issue. The thought is to hire someone with expertise in developing drivers for e-ink displays to provide advice and pointers, not to do the actual work (because that's expensive).
 
== Userspace TODOs ==
The TODOs in this space are organized around what functionality they enable. A table of the important functions that a user may want in the PineNote and a status are listed below:
 
{| class="wikitable plainrowheaders" border="1"
! scope="col" | Functionality
! scope="col" | Approaches (apps)
! scope="col" | Level of support (subjective)
! scope="col" | Supports
! scope="col" | Does not yet support
! scope="col" | Notes
|-
! scope="row" rowspan="3" | Reading Documents
| <code>[https://github.com/koreader/koreader Koreader]</code>
! style="background:LightGreen; text-align:center;" | Great
| Fully featured ebook reader; Supports many filetypes;
| Handwritten notes
| Large user base on many devices; codebase has a somewhat of a reputation for being messy
|-
| <code>[https://github.com/xournalpp/xournalpp Xournalpp]</code>
| style="background:LightGreen; text-align:center;" | Good
| Reading/writing PDFs and other files;
| No definition support (long-press for definition)
| Billed more as a note-taking app than a document reading app
|}
 
=== Themes ===
A lot of getting the PineNote to work nicely will be theming things appropriately. Please list themes for various components here:
==== GNOME ====
Untested: https://github.com/fujimo-t/gnome-shell-theme-e-ink
 
==== GTK ====
TODO
 
=== GNOME Configurations ===
See [https://wiki.pine64.org/wiki/PineNote_Development/Apps#Gnome here].
=== Sway Configurations ===
See [https://wiki.pine64.org/wiki/PineNote_Development/Apps#Sway here].
 
== Documentation TODOs ==
 
* Pin Mesa Packages so they don't update when we upgrade other packages
** Add the information near step 5 [https://wiki.pine64.org/wiki/PineNote_Development/Building_Kernel#Steps_to_build here].
* Control the backlight
* Building alacritty correctly
* Force a screen refresh?
** See conversation here: https://matrix.to/#/!QtTzSRYMuozjbOQkzJ:matrix.org/$tfumBpnP2UPouNpaeFrggR40ZkrD_pHAtJdQmQvzL-o?via=matrix.org&via=kde.org&via=tchncs.de


[[PineNote|Back to PineNote main page]]
=== Status table draft ===


= Status =
This table is a draft for the wiki development page:


{| class="wikitable plainrowheaders" border="1"
{| class="wikitable plainrowheaders" border="1"
! scope="col" | Functionality
! scope="col" | Functionality
! scope="col" style="min-width: 260px;"  | Component
! scope="col" style="min-width: 260px;"  | Component
! scope="col" style="width: 120px;" | Status (factory)
! scope="col" style="width: 120px;" | Status (Android from factory)
! scope="col" style="width: 120px;" | Status (updated)
! scope="col" style="width: 120px;" | Status (Linux)
! scope="col" | Notes
! scope="col" | Notes
|-
|-
Line 16: Line 70:
| style="background:LightGreen; text-align:center;" | Android only
| style="background:LightGreen; text-align:center;" | Android only
| style="background:LightYellow; text-align:center;" | WIP for Linux
| style="background:LightYellow; text-align:center;" | WIP for Linux
| Booting into linux requires a patched uboot. [https://wiki.pine64.org/wiki/PineNote_Development/Booting_Linux Instructions here.]
| Booting into linux requires a patched U-Boot. [https://wiki.pine64.org/wiki/PineNote_Development/Booting_Linux Instructions here.]
|-
|-


Line 49: Line 103:
|-
|-
| <code>Bluetooth</code>
| <code>Bluetooth</code>
| colspan="2" style="background:LightGreen; text-align:center;" | Works
| colspan="2" style="background:LightGreen; text-align:center;" | Works, audio stutters
| Some folks have reported poor BT performance, but [https://wiki.pine64.org/wiki/PineNote_Development/Building_Kernel#Fixing_Bluetooth switching the driver may help.]
| [https://wiki.pine64.org/wiki/PineNote_Development/Building_Kernel#Fixing_Bluetooth Switching the driver] provides stable connections for keyboards, but audio still stutters. Trying to fix this [https://wiki.pine64.org/wiki/PineNote_Development/Software_Tweaks#Preliminary_fix_for_stuttering_bluetooth_audio here].
|-
|-
| <code>Sensors</code>
| <code>Sensors</code>
Line 66: Line 120:
| colspan="2" style="background:lightcoral; text-align:center;" | Not available yet
| colspan="2" style="background:lightcoral; text-align:center;" | Not available yet
| Spare parts currently not available yet in the store.
| Spare parts currently not available yet in the store.
|-
! | Software notes
| <code>Firefox</code>
| colspan="2" style="background:LightYellow; text-align:center;" | GPU Rendering Possible
| Requires patched mesa and <pre>MOZ_ENABLE_WAYLAND=1</pre>. [https://wiki.pine64.org/wiki/PineNote_Development/Apps#Firefox See here.]
|-
|-
|}
|}


= Kernel/driver TODOs =
These exist, but they haven't been written down yet.
= Userspace TODOs=
The TODOs in this space are organized around what functionality they enable. A table of the important functions that a user may want in the Pinenote and a status are listed below:
{| class="wikitable plainrowheaders" border="1"
! scope="col" | Functionality
! scope="col" | Approaches (apps)
! scope="col" | Level of support (subjective)
! scope="col" | Supports
! scope="col" | Does not yet support
! scope="col" | Notes
|-
! scope="row" rowspan="3" | Reading Documents
| <code>[https://github.com/koreader/koreader Koreader]</code>
! style="background:LightGreen; text-align:center;" | Great
| Fully featured ebook reader; Supports many filetypes;
| Handwritten notes
| Large user base on many devices; codebase has a somewhat of a reputation for being messy
|-
| <code>[https://github.com/xournalpp/xournalpp Xournalpp]</code>
| style="background:LightGreen; text-align:center;" | Good
| Reading/writing PDFs and other files;
| No definition support (long-press for definition)
| Billed more as a note-taking app than a document reading app
|}
== Themes ==
A lot of getting the PineNote to work nicely will be theming things appropriately. Please list themes for various components here:
=== GNOME ===
Untested as far as I know: https://github.com/fujimo-t/gnome-shell-theme-e-ink
=== GTK ===
Todo
== GNOME Configurations ==
See [https://wiki.pine64.org/wiki/PineNote_Development/Apps#Gnome here].
== Sway Configurations ==
See [https://wiki.pine64.org/wiki/PineNote_Development/Apps#Sway here].
== Open questions that would be helpful during development ==
# How do we pin packages so Mesa isn't updated when we update using our package manger?
= Documentation TODOs =
{{info|These are things we know how to do, but they just haven't been documented in the wiki yet. If you know how to do one of these things, please make a page for it. If you aren't sure where to put it or just don't feel like doing it, please just message @aarondabomb on matrix and I'll be happy to document it.}}


=== Pin Mesa Packages so they don't update when we upgrade other packages ===
[[Category:PineNote]]
Should be super simple, I just don't know how. If you know, it would be helpful for you to add that information near step 5 [https://wiki.pine64.org/wiki/PineNote_Development/Building_Kernel#Steps_to_build here].
=== Control the backlight? ===
=== Building alacritty correctly ===
=== Force a screen refresh? ===
Maximilian mentioned how to do this, but I don't know enough to know what it means XD see conversation here: https://matrix.to/#/!QtTzSRYMuozjbOQkzJ:matrix.org/$tfumBpnP2UPouNpaeFrggR40ZkrD_pHAtJdQmQvzL-o?via=matrix.org&via=kde.org&via=tchncs.de

Latest revision as of 19:45, 12 November 2023

Kernel/driver TODOs

These exist, but they haven't been written down yet.

Artifacting

There is some artifacting with the current driver that has been difficult to diagnose and resolve. The github issue tracking this is here: https://github.com/PNDeb/pinenote-debian-image/issues/47

Some members of the community have been considering hiring an e-ink professional to consult on this issue. The thought is to hire someone with expertise in developing drivers for e-ink displays to provide advice and pointers, not to do the actual work (because that's expensive).

Userspace TODOs

The TODOs in this space are organized around what functionality they enable. A table of the important functions that a user may want in the PineNote and a status are listed below:

Functionality Approaches (apps) Level of support (subjective) Supports Does not yet support Notes
Reading Documents Koreader Great Fully featured ebook reader; Supports many filetypes; Handwritten notes Large user base on many devices; codebase has a somewhat of a reputation for being messy
Xournalpp Good Reading/writing PDFs and other files; No definition support (long-press for definition) Billed more as a note-taking app than a document reading app

Themes

A lot of getting the PineNote to work nicely will be theming things appropriately. Please list themes for various components here:

GNOME

Untested: https://github.com/fujimo-t/gnome-shell-theme-e-ink

GTK

TODO

GNOME Configurations

See here.

Sway Configurations

See here.

Documentation TODOs

Status table draft

This table is a draft for the wiki development page:

Functionality Component Status (Android from factory) Status (Linux) Notes
Bootloader Bootloader Android only WIP for Linux Booting into linux requires a patched U-Boot. Instructions here.
Operating System Stability WIP Users have successfully booted Arch, Manjaro, and Debian. Debian has most support right now.
Suspend Works This kernel patch adds suspend support.
Updates WIP GPU libs (mesa) and mutter rely on patched packages. These should not be updated via the package manager at the moment, make sure to exclude them.
Networking Works
Components E-Paper Display WIP Mostly functional. There is some ghosting and work remains, but the device and screen are usable.
Touch Works
Bluetooth Works, audio stutters Switching the driver provides stable connections for keyboards, but audio still stutters. Trying to fix this here.
Sensors Unsure Light sensors? Rotational sensors?
Buttons Works Power button works.
Accessory compatibility, spare parts Spare parts Not available yet Spare parts currently not available yet in the store.