Follow

there were some things i ddn't knew about raspberry pis:

"Linux runs on that ARM CPU, we know that, but we might be surprised to learn that Linux on this device is only a second class citizen. The GPU cores run a real time operating system called ThreadX. This operating system is closed source and rules the system without the open source Linux Kernel being aware of it."

ownyourbits.com/2019/02/02/wha

and guess who bought the ThreadX operating system last april?

en.wikipedia.org/wiki/ThreadX

anyway this thing is making me reconsider my massive use of raspberry pis

why an extra kernel running on an already weak GPU? it seems unnecessarily byzantine

@joshavanier when i read "microsoft" i imagined you throwing the table away

@ice at least you can decide to spare some money!

@npisanti Well not really, the core of the Zynthian box I received a week ago is a Pi 3 B+... I guess I’ll look for an alternative when I’ll feel the need to upgrade it though.

@ice it's fine to use what you've got if it's already there

i was just wondering why put another microkernel in the GPU? no way it would lead to poor graphics performance and shitty openGL drivers (and also there are no plan for Vulkan support)

@npisanti Your Intel CPU has an entire microcode environment that is in fact a hardware backed interpreter dynamically reconciling everything you do. Your GPU conforms to a spec but has it's own embedded operating system to service that.

@xj9 @endomain @npisanti
I thought MINIX was running on the PCH (mobo chipset), not on the CPU...

@npisanti The GPU hardware spec is not public. Whatever talks to it is going to be closed-source. Just as well it's a thin layer Linux can talk to.

@npisanti @neauoire I saw this on the mastodon TL and had to open the thread to understand whether it was about software or gender.

@npisanti

Sure, but most if not all of our primary computing devices have some degree of closed source component. That's a dimension to be minimized, but if it's a deal breaker you can't even buy Olimex.

The net positive of having cheap, youth focused single board computers is big IMO, and if we start uniquely penalizing them when most of our hardware is full of things in the same condition, that's not very good for the community.

I already see folks in your mentions saying that having a closed source component currently owned by a big tech company that Slashdot hates is a deal breaker, and that's probably a bad meme.

@endomain @Vamp898
@a1batross

sorry my hardware knowledge was something like 15 years out of date so i didn't thought things got so convoluted and pervasive in the meanwhile

at this point no way i could get some work done if i worry about this ( this makes it just sadder )

@npisanti @endomain @a1batross
It was already like this in 1989 with the first version of ATA ;)

@Vamp898 @endomain @a1batross

ok so i was living in turing hyperuranium, where all the idealized hardware live

@npisanti @Vamp898 @endomain oh, it's fine. We all do. At least hoping that closed code don't do nasty things.

@a1batross @npisanti @endomain
Well they are all slaves of the kernel. So the most important thing is, that the kernel and the OS are free.

The more that is free the better, but firmware blobs are not as harmful as people make them

@endomain @npisanti
Question is, is the #RaspberryPi Foundation contributing to the downward trend in openness or are they working against it?

@grainloom @endomain @npisanti

its easy to forget Acorn/ARM have *never* been a "right-on" company, back in the day they were fully supportive of proprietary tech/lock in (as they were market leaders in the education niche market), they worked closely with contractors for MOD and the Police (many BBC Micros were built by Cleartone who today make surveillance equipment for traffic Police cars, watch any European "reality traffic cops" show and you will see Cleartone screens all the time)

@grainloom @endomain @npisanti

it is maybe up to the profs in the places of education and hackers/hobbyists to challenge the downward trend in openness (and a big part of this is making people aware it is happening as it doesn't often immediately affect the enduser (even technically skilled ones like coders or hardware hackers).

@vfrmedia @grainloom @npisanti

I don't see these two lines as separable. We can and should work towards more open SBCs and processors. But the truth is we don't have them today.

Vendors like Olimex and the communities forming around them are a good start.

@npisanti yeah; I’ve been avoiding using Pi’s in my designs for these sort of reasons.

It’s too bad, they have a great community, but they’ve been growing more and more closed over the years.

@npisanti i hate raspberry pis and will not use them

@npisanti
Every Harddisk/SSD controller runs its own tiny Operating System since they exists and there is nothing you can do about it.

There is software in hardware since always and this can't be changed and will never change.

All modern CPUs also run tiny operating systems (Intel CPUs even run MINIX)

@npisanti no wonder. GPU actually initializes everything on RPi.

RPi was never "free". It's just good marketing.

If you want a free ARM board, look up to old Allwinners maybe, I'm unsure.
@npisanti also, don't forget about TrustZone.

But unlike Intel/AMD it's actually programmable by vendor. Who knows what's inside?

@npisanti
Have you seen FSF's summary on Single-Board Computers?

fsf.org/resources/hw/single-bo

Basically, i.MX6 is the most free SoC at the moment, closely followed by some Allwiners, Rockchips, OMAPs, and the Ingenic used by MIPS Creator.

Those will boot without blobs, though some optional features like GPU or video decoding may not work without blobs.

All the rest - Broadcom VideoCore, Samsung Exynos, Quallcomm Snapdragon - don't give you control over the boot process.

I'm not sure about Tegra though.

@npisanti I guess @thog may know more about whether it's possible to boot Tegra without blobs.

@Wolf480pl

@thog

actually i need the gpu, i'm making mostly creative coding stuff with openFrameworks, and i was worried about those blobs being cause of poor gpu performance and strange shaders behavior

@Wolf480pl @npisanti well the GPU blobs are mostly firmware for some TSEC that use a custom ISA... you need at least one for gpu channel scheduling so well...

@Wolf480pl @npisanti but hopefully, this firmware is only signed and you can clearly reverse it and reimplement it... but well still... The Tegra X1 have ~16 different TSEC/Falcon across the board and you need those blobs for USB and SATA...

@thog @npisanti
so basically it's as bad as VideoCore or even worse?

@Wolf480pl @npisanti well nouveau guys have done some search on the Falcon so the ISA is actually mostly known but well it's not as bad as VideoCore because you don't boot from a GPU and the init procedure is defined in the TRM :kappa:

@npisanti I never trusted ARM SoC GPUs - I mean their are a hell to install and they are very FOSS-unfriendly

@Nicola Pisanti
Now I start to wonder - are there any REAL opensource devices for IoT?

@alpherie i think it could be a lot easier to just use microcontrollers

(the problem for me is that i want to use rpis for doing generative graphics on little displays so i need GPU and linux and a decent openFrameworks support, i'm not a maker or an IT person)

@Nicola Pisanti
Microcontrollers can be not powerful enough, and not very good at networking, and very difficult to develop for.

@alpherie
so i have no alternative, sorry i'm not really into IOT

Sign in to participate in the conversation
Merveilles

Revel in the marvels of the universe. We are a collective of forward-thinking individuals who strive to better ourselves and our surroundings through constant creation. We express ourselves through music, art, games, and writing. We also put great value in play. A warm welcome to any like-minded people who feel these ideals resonate with them. Check out our Patreon to see our donations.