site  contact  history  index

Kernel 5.15.159 compiled

May 19, 2024 — BarryK

I compiled 5.15.158 a few days ago, and it is in EasyOS 5.8.3. Normally, I would wait at least a few weeks before bumping the kernel; however, some kernel issues are discussed here:

https://forum.puppylinux.com/viewtopic.php?t=9411

OK, I have compiled 5.15.159, with these settings:

CONFIG_HID_MULTITOUCH=y (changed from a module)
CONFIG_MT7663S=m
CONFIG_MT7921E=m

This will be in the next release of EasyOS. Kernel source, with patches and build scripts here:

https://distro.ibiblio.org/easyos/source/kernel/5.15.x/5.15.159-20240519/    

Tags: easy

EasyOS Kirkstone-series version 5.8.3 released

May 19, 2024 — BarryK

Version 5.8.2 was released on May 13, see announcement:

https://bkhome.org/news/202405/easyos-582-released.html

If you are a newcomer to EasyOS, it is a good idea to read the 5.7 announcement, as it has more introduction details:

https://bkhome.org/news/202402/easyos-kirkstone-series-version-57-released.html

The online readme file is also a good intro read:

http://distro.ibiblio.org/easyos/amd64/releases/kirkstone/2024/5.8.3/readme.htm

Release notes for 5.8.3:

http://distro.ibiblio.org/easyos/amd64/releases/kirkstone/2024/5.8.3/release-notes.htm

Download the 5.8.3 drive-image file from here:

http://distro.ibiblio.org/easyos/amd64/releases/kirkstone/2024/5.8.3/

Feedback is welcome at the forum:

https://forum.puppylinux.com/viewtopic.php?p=120114#p120114    

Tags: easy

Weight of an electric recumbent tadpole trike

May 18, 2024 — BarryK

In a post yesterday, I showed a photo of my Mark-2 front suspension mounted on the trike frame:

https://bkhome.org/news/202405/recumbent-trike-front-suspension-mark-2-assembled.html

I picked up the front of the trike, and using a block of wood, put it into my bathroom scale. Weight is 13kg. Obviously that is not the weight of the entire trike. So what does an "entire trike" actually weigh?

Here are some very basic trikes, without any front or rear suspension, non-electric:

https://mrrecumbenttrikes.com/newtrikes/

...weight is around 18 - 20kg.

A motor and battery adds about 10kg, bringing the weight up to nearly 30kg. Add rear and front suspension, adds even more, quite easily hitting 35kg. Here is an example, electric tadpole trike with 500W motor, 20Ah 48V battery, rear suspension, no front suspension, 20" fat tyres, the same company that makes my "320" trike, weight 38kg:

https://www.alibaba.com/product-detail/500watt-Motor-20ah-Lithium-Battery-Electric_62583559842.html

Could you lift a 38kg trike? I could, if I want to put my back out.

These weights put things in perspective; I don't need to obsess over making the front suspension very light. A couple of extra kilos doesn't matter. Here is the original front assembly for my trike:

img1

...weight is 6.5kg. That is the cross-beam to which the wheels will attach, and the steering.

Notice that aluminium plate bolted to the cross-beam. That is the mounting to hold the battery. Interesting, they decided to put the battery right up the front. If I do that, with my front suspension, that would be good in one respect; dampening bumps. On the otherhand, I have fairly soft suspension up front, so will need to experiment how to distribute the weight.

While that original front assembly was on the floor, took the opportunity to measure total width, that is, right to the ends of the wheel spindles. 915mm! Oh man, that is wide. The police in WA might turn a blind eye to bikes, trikes and mobility vehicles being a bit too wide, but if I was to ride that on a footpath, even a dual-purpose footpath, if the police person was in a bad mood, they might be inclined to book me. Another reason to do a custom front suspension.

The original battery, also weighed that, 5.5kg:

img2

Note, I'm not going to use that battery in the trike. Main reason, it is "NMC" technology, as are in most bikes, trikes and scooters. NMC means Nickel Manganeses Cobalt, also known as "lithium ternary" batteries. Apart from the ethical issues how those minerals are mined, NMC batteries have shorter life and are more prone to catching fire than "LFP" technology batteries.

LFP means Lithium Iron (ferrous) Phosphate. These do not have any nickel, manganese or cobalt. They are also slightly cheaper than NMC. The downside is that they have lower energy density, which would be the main reason they aren't used in bikes and trikes.

LFP are also named LiFePo4, which is the standard for caravans, motorhomes and other RVs. They are not so bothered about energy density.

I purchased a 10Ah 48V LFP battery from China (with matching mains charger), and will be using that. As I am planning to be solar-powered, I reasoned that smaller capacity is OK. And it will save about 3kg.

So what else is really heavy? The motor. Here is the motor assembly, without pedals, weight 6kg:

img3

So, the original battery and motor weigh 5.5 + 6 equals 11.5kg. Wow.   

Tags: light

Recumbent trike front suspension Mark-2 assembled

May 17, 2024 — BarryK

Continuation of the recumbent trike front suspension conversion project, this is the previous blog post:

https://bkhome.org/news/202404/connecting-trike-front-suspension-to-frame.html

I am referring to this as "Mark-2", as there was an earlier design that I partially built then abandoned.

There is going to be a "Mark-3", as I already have in mind many improvements; however, I intend to progress the Mark-2 right through to a rideable trike. The reason for doing this, is there are so many more parts of the trike that have to be built and tested.

The steering for example. There are a lot of questions about that, so have to experiment. Mark-3 is intended to be based on the same dimensions, and whatever is worked out for the steering in Mark-2 should be directly applicable.

Anyway, here is Mark-2 front suspension assembled on the trike:

img1

As you can see, I decided to go with the Heim joints; however, not for Mark-3 as I have conceived of a simpler and likely lighter design for the swing-arms.

The shock absorbers are quite soft, rated at 200 pounds per inch. That was the softest available for that model of shock absorber. Sitting on the trike, suspension seems OK, but won't really know until it is loaded and out on the road. There will be a lot more weight up front due to the electric motor, and I will probably mount the battery at the front. The next rating-up is 350 pounds per inch; anyway, we shall see how it goes.

The suspension retains the ability to be a tilting trike, as where the two shock absorbers meet is a pivot. It is currently locked in place, but by simply removing a bolt it will swing freely. The intention would be that the central pivot will be linked to the steering mechanism, so that the trike will tilt when cornering.

At this stage, don't know if will ever get to implementing the tilting. It depends on cornering stability. My trike is only 750mm wide, measured from the extreme ends of the wheel spindles. The main reason for that is I want it to fit through my front door, so can keep it inside. Also, if I go touring and stay overnight in a motel, want to be able to bring it into the room.

All recumbent trikes (that I know of) are over 800mm wide. My "320" trike is, or rather was, I think, 870mm. Making it narrower will decrease cornering stability. But this is where I need to get out on the road and find out whether 750mm width is OK, or whether have to go for tilting. I'm not going to be racing around corners, so likely it will be OK.

I should also mention that here in Western Australia, the legal maximum width is 800mm. Which means that, technically, all recumbent trikes in WA, apart from mine, are illegal. Not that anyone is bothered by that. Prior to June 2022 here in WA the legal maximum width was only 660mm, but the police turned a blind eye to trikes and mobility vehicles that were wider.

Anyway, it is continuing to be a fun project, as is going to the workshop.   

Tags: light

Snapshot exclusions bug fix

May 17, 2024 — BarryK

This is a serious bug, when taking a snaphot. It explains why some users have reported things disappearing, that really puzzled me. Forum member Caramel spotted this bug:

https://forum.puppylinux.com/viewtopic.php?t=11559

He posted some code that was where the bug was. I saw a problem with that code and fixed it. But Caramel insisted that it was still not fixed.

I have to laugh at myself. The bug was right there in front of me, staring back at me, and I couldn't see it. I had typed '/n' when it should have been '\n'

The '\n' has a special meaning. It means the linefeed character. When the light came on, I fixed it.

The same bug is also in the 'init' script in the initrd, fixed that also.

That bug has been there since 2022. Oh dear, causing mysterious file and folder disappearances after taking a snapshot. On a positive note, it is now found and fixed.   

Tags: easy

Kernel AMD GPU disaster fixed

May 17, 2024 — BarryK

I posted about getting a black screen when the 'amdgpu' kernel module loads, for 5.15.150 and later kernel:

https://bkhome.org/news/202405/kernel-515150-disaster-for-amd-gpu.html

There are three guys who did amdgpu commits between 5.15.149 and 5.15.150, so I sent an email to them explaining the problem. One of those guys (Armin Wolf) responded, giving me basic instructions how to use "git bisect" to identify which commit has caused the problem. I did that, here is a summary of the steps:

# git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
# cd linux-stable
# git tag -l | grep '5\.15\.150'
v5.15.150
# git checkout -b my5.15.150 v5.15.150
Updating files: 100% (65776/65776), done.
Switched to a new branch 'my5.15.150'

Now for the bisecting. Using my '.config' file...

# make menuconfig
# git bisect start -- drivers/gpu/drm/amd
# git bisect bad
# git bisect good v5.15.149
Bisecting: 1 revision left to test after this (roughly 1 step)
[b9a61ee2bb2704e42516e3da962f99dfa98f3b20] drm/amdgpu: reset gpu for s3 suspend abort case
# make
# rm -rf /boot2
# mkdir -p /boot2/lib/modules
# make INSTALL_MOD_STRIP=1 INSTALL_MOD_PATH=/boot2 modules_install
# cp arch/x86/boot/bzImage /boot2/vmlinuz

I copied the kernel and modules into a QV usb-stick, booted it on the laptop; works!

# git bisect good
Bisecting: 0 revisions left to test after this (roughly 0 steps)
[56b522f4668167096a50c39446d6263c96219f5f] drm/amdgpu: init iommu after amdkfd device init
# make
# rm -rf /boot2
# mkdir -p /boot2/lib/modules
# make INSTALL_MOD_STRIP=1 INSTALL_MOD_PATH=/boot2 modules_install
# cp arch/x86/boot/bzImage /boot2/vmlinuz

Same thing, tested on QV usb-stick; black screen!

# git bisect bad
56b522f4668167096a50c39446d6263c96219f5f is the first bad commit
commit 56b522f4668167096a50c39446d6263c96219f5f
Author: Yifan Zhang <yifan1.zhang@amd.com>
Date: Tue Sep 28 15:42:35 2021 +0800

drm/amdgpu: init iommu after amdkfd device init

[ Upstream commit 286826d7d976e7646b09149d9bc2899d74ff962b ]

This patch is to fix clinfo failure in Raven/Picasso:

Number of platforms: 1
Platform Profile: FULL_PROFILE
Platform Version: OpenCL 2.2 AMD-APP (3364.0)
Platform Name: AMD Accelerated Parallel Processing
Platform Vendor: Advanced Micro Devices, Inc.
Platform Extensions: cl_khr_icd cl_amd_event_callback

Platform Name: AMD Accelerated Parallel Processing Number of devices: 0

Signed-off-by: Yifan Zhang <yifan1.zhang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
Tested-by: James Zhu <James.Zhu@amd.com>
Acked-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>

drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

That's it, that's the bad commit.

On May 9, sent this result to those three guys, waited until yesterday, 7 days, no reply.

So, yesterday I created a patch that reverts Yifan Zhang's commit, and compiled the 5.15.158 kernel. Success on my laptop, confirming that this commit is the culprit. This morning I sent that patch to those guys.

Here is my reverting patch, quite small:

diff -Naur linux-5.15ORIG/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c linux-5.15/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
--- linux-5.15ORIG/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c 2024-05-17 03:14:28.813312020 +0800
+++ linux-5.15/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c 2024-05-17 03:21:24.446637456 +0800
@@ -2487,6 +2487,10 @@
if (r)
goto init_failed;

+ r = amdgpu_amdkfd_resume_iommu(adev);
+ if (r)
+ goto init_failed;
+
r = amdgpu_device_ip_hw_init_phase1(adev);
if (r)
goto init_failed;
@@ -2525,10 +2529,6 @@
if (!adev->gmc.xgmi.pending_reset)
amdgpu_amdkfd_device_init(adev);

- r = amdgpu_amdkfd_resume_iommu(adev);
- if (r)
- goto init_failed;
-
amdgpu_fru_get_product_info(adev);

init_failed:

So, hopefully they will take it onboard to fix. Here is the offending commit:

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=56b522f4668167096a50c39446d6263c96219f5f    

Tags: easy

Download latest Ungoogled Chromium

May 17, 2024 — BarryK

Forum member Federico requested this:

https://forum.puppylinux.com/viewtopic.php?p=119671#p119671

Yes, might as well go that extra step and also offer Ungoogled Chromium in the menu:

img1

This can download a new install of Ungoogled Chromium and also update to the latest version. Testing for the first time:

img2

Then:

img3

...and it works. Just noticed a typo in the above snapshot.   

Tags: easy

EasyOS 5.8.2 released

May 13, 2024 — BarryK

I have uploaded version 5.8.2; however, the menu item "Rollback to previous version" in the initrd does not work.

I checked the logic of the code carefully before releasing 5.8.2. Updated a 5.6.7 installation to 5.8.2 ok; however, when I tried to rollback to 5.6.7, it failed. I discovered that busybox grep in the initrd does not recognize the "-A" option.

I need to sort that, either tonight or tomorrow, and will follow up with version 5.8.3.

Version 5.8.2 release notes:

http://distro.ibiblio.org/easyos/amd64/releases/kirkstone/2024/5.8.2/release-notes.htm

Download:

http://distro.ibiblio.org/easyos/amd64/releases/kirkstone/2024/5.8.2/

The delta files are massive. Updating from 5.6.7, the download is 808MB.  

Tags: easy