Information about OS / Kernel / Prototypes

Go to page

Administrator

Welcome to this information section.
This section is primarily meant for the prototype preorderers to get some information about the unit they just received, but it also gathers the information about where to post bug reports and feature requests.
It will be updated regularly.

1. Known issues with the currently delivered prototypes

Congrats on receiving your prototype and thanks a lot for helping out the project with that
Here are some notes you should know when using your prototype:

Touchscreen not 100% accurate at the edges: Unfortunately, this is a problem with resistive touchscreens: It's always unresponsive at the edges. The touchscreen would need to be a bit bigger to compensate that,but modern displays don't have a huge surrounding. It should work fine in normal use though.

Soft reboot (either using reboot or Power + top-left shoulderbutton) doesn't work and the Pyra hangs. This is a software bug. If that happens, press and hold the power button for 8 seconds which should switch off the unit completely.

When powered off, the battery is drained! This only happens with our own OS, according to Nikolaus, Letux OS doesn't have that issue. Something probably isn't powered down completely, my guess is that it's the modem.

The modem needs a few minutes to appear. This also only happens with our own OS, it's instantly available in Letux OS. Might also be related to the power drain issue.

The lid switch doesn't do anything at the moment - it's not configured to do anything. Additionally, I've tried different magnets and some in the prototypes are probably too weak.

The display flickers - that's due to the power regulator used in the display board. It's too weak. The final units will use a different regulator for the backlight which doesn't have that issue.

Keyboard brightness changes sometimes: The OS sees the keyboard backlight as the display brightness, which is the reason it lowers the light after a few seconds and increases the brightness when you press a key. It seems to use its own brightness settings though, so it interferes with our own script which is why it sometimes increases the brightness to full strength.

Audio wheel currently changes the speaker volume in ALSA, it does not change the master volume (which would make more sense). So the headset volume needs to be changed manually using ALSAMixer

If the volume is set too high, the following two things can happen:
a) It overdrives and distorts (DC-Offset and Gain need to be setup in the driver)
b) The driver somehow outputs some weird loud noise after a while until you stop the current audio stream.
So make sure the volume isn't set too high.

Per default, the unit runs on kernel 4.19.60-letux-lpae-pyra. You can install other Letux kernels via apt install. To boot them, you either need to edit extlinux.conf and change the default one or boot with serial output (connect the middle Micro-USB to a PC) where you'll see a bootmenu when you switch on the unit.

We're still discussing about how and where to best report / post these.
At the moment, you can either use this forum section (I've created prefixes so you can use them similar as bugtracker) or post them on this git project: https://dev.pyra-handheld.com/EvilDragon/pyra-os/issues
We'll take care moving them to the appropriate place.

This is even more a mystery right now. We're basically using Letux kernel, so any reports to kernel related stuff would make most sense on the Letux project. I'm currently waiting for an answer from Nikolaus if he's okay with that and which GIT and tracker we should use for that.
So for the moment, please also use this forum section or the pyra kernel git project: https://dev.pyra-handheld.com/kernel/pyra-kernel/issues
This project is a temporary working kernel. We plan to submit all patches to Letux and then switch over using Letux Kernels as standard in the Pyra.

Yes, but on the Pandora it's a hardware switch. The chip has only one audio output which goes through the headset jack to the speakers. When the headset it plugged in, the switch routes the traces into the headset instead to the speakers.

On the Pyra, it's a GPIO. It sends a event to the OS which can then do whatever you want it to do (normally: enable / disable the speakers).

The Pyra audio chip can output multiple streams at once. You could for example play a game through the speakers whil your wife listen to music using the headset at the same time.

Forum Addict!

Or, theoretically then, could it supply one audio stream to the headphone jack, a 2nd audio stream to a set of BT headphones and a 3rd to the speakers? If so, then I could theoretically play my wife's music for her on the bluetooth headset while I listen to entirely different music on the headphone jack. An interesting capability that might require testing?

Advanced Member

Or, theoretically then, could it supply one audio stream to the headphone jack, a 2nd audio stream to a set of BT headphones and a 3rd to the speakers? If so, then I could theoretically play my wife's music for her on the bluetooth headset while I listen to entirely different music on the headphone jack. An interesting capability that might require testing?

A fairly common use case for me is playing music over my BT speakers around the apartment while I browse the web or read or work. All other audio is routed to my speakers/headset/headphones. When I browse to a video or get a notification, that goes through speakers/headphones/headset and doesn’t disturb the music around the apartment.

moonstruck

@EvilDragon Would you please update your list in the first post to add how many pixel lines/columns wide/high that inaccurate edge would be, if the powered-off drain is rather fast or slow, and to correct the USB-C misinformation. Thanks in advance.

Administrator

@EvilDragon Would you please update your list in the first post to add how many pixel lines/columns wide/high that inaccurate edge would be, if the powered-off drain is rather fast or slow, and to correct the USB-C misinformation. Thanks in advance.

Forum Addict!

Something that occurred to me in light of the recently discovered issue on the shoulder button and eMMC OS version. I don't see any means or method for naming or differentiating which version of the OS we are using for any issue/bug report. What we do know, though, is that they are not all the same. I have encountered three different OS builds in just the time I have fiddled with my prototype.

1. The OS ED installed on the eMMC before shipping.
2. The OS supplied as a link to "install-nobat.img.zizp" which created an eMMC flasher bootable SD card.
3. The OS supplied as a link to "pyra-debian-buster-mate.img.xz" which created a bootable SD card.

A fourth one is supposed to be 'in the works' to fix the issue I encountered on #2 above. So far they have all had generic names and whatnot - which was likely fine when it was just the dev team and communications lines were shorter.

We need a version / naming convention so that the other prototypes and I (and future Pyra owners) can know which OS build we are referencing when we report good/bad/kudos/bugs back to you and the build team.

Forum Addict!

Thought, Warfare Inc, I really liked that game clear back in my Tapwave Zodiac days. Then I realized I don't have a solid idea of how these DBP packages are supposed to install, and there isn't anything for directions on the site above. Poking around I found this that is likely related to 'doing that': https://pyra-handheld.com/repo/debiandbp-getsh.

The, 'how do I get from this site to having a working game on my Pyra,' may be obvious to the dev team. It isn't to me. I could spend a chunk of time fiddling around and trying things at random until they work. But - if I'm unsure how to proceed, odds are that others will be to.

The dbp system is a large improvement over the pnd system. yet everything that was cool with the pnd system is still there.
All you need to do is download the dbp you want and put it in

Code:

/dragonbox/packages/

of a sdcard. (just like the pnd system)

I made a guide to install and use the dbp-get.sh script here. But that's completely optionnal, and have been made as an interim solution until someone write a real frontend for the pyra. slaeshjag have made a library to interact with the dbp system... we'll see when this happen