We're Hiring a Project Maintainer and an OpenGL Expert! 🚀

Hey Guys,

I’m excited to share that we are extending our team with these two new positions. Of course, in both cases it’s a huge plus, if you are already an LVGL contributor. :slightly_smiling_face:

Project Maintainer
As a Project Maintainer, you will play a crucial role in steering the direction of the LVGL library. Your responsibilities will include managing the project’s roadmap, overseeing contributions, and ensuring the library remains cutting-edge and user-friendly. If you have a strong background in software project management, a passion for open-source projects, and excellent communication skills, we want to hear from you! Learn more here.

OpenGL Expert
We are also seeking an OpenGL Expert to enrich our team’s expertise in advanced graphics rendering techniques. This role involves optimizing LVGL’s use of OpenGL for enhanced performance and capabilities, developing new features, and contributing to the library’s evolution. If you have deep knowledge of OpenGL, experience in embedded systems, and a desire to push the boundaries of what’s possible in embedded graphics, let’s connect. Learn more here.

Joining LVGL means becoming part of a dynamic, supportive community dedicated to making high-quality embedded graphics accessible to everyone. We offer a collaborative environment where your work will have a direct impact on millions of devices worldwide.

If you are ready to take on exciting challenges and contribute to the future of embedded graphics, check out the detailed job descriptions and apply through the links provided. We’re excited to welcome new talents to our team and together, continue shaping the future of embedded graphics!

I’m looking forward to hear from you! :blush:

Cheers,
Gabor

2 Likes

It sounds like a new LVGL direction :slight_smile:

1 Like

Well, LVGL is getting larger, more and more partners are coming with custom needs and we need to scale up a a little bit. :slight_smile:

It will be interesting to see how this develops. After all, unlike e.g. QML/Qt, OpenGL was not meant to define user input behavior but ofc I am sure you know that.

We are planning to use OpenGL to render the widgets with it by utilizing the video card. There is a big company who is interested in it, and now we need an expert for that :slight_smile:

1 Like

Why OpenGL and not using direct hardware API’s. After all there are only really 3 major video card vendors these days. Nvidia, ATI (AMD) and Intel. This is a rather strange thing to do. While I do understand why someone would want to use OpenGL the reality is that OpenGL is made to provide a common API across many video cards. The issue there is there is the API is only going to support the the features that are common across the adapters. So anything that an adapter might have in terms of advanced rendering techniques will not be benefited from.

OpenGL is also not going to be written in a manner that makes it efficient in both program size and also resource use. This is the single driving thing behind LVGL. It is the reason why LVGL was created in the first place.

I know that it would be easier form a maintenance standpoint to only code the single renderer but you will loose too much in doing that.

It’s kind of like selling your sole for an easier path to get to heaven. LOL.

Well that is really strange point. 1st of all it not “just” 3 its OMG 3. 2nd its for sure not 3, you forgot qcom adreno, powervr and arm mali both of those are common to find on embedded system and there is apple silicon, didn’t see that used on embedded devices tho. And then should i remind how much time was spent to write drivers for them that would provide OpenGL, and even to this date there are some GPUs that have no oss driver.

It looks like specific drivers would have to be written for adreno, powervr and arm mali because they have their own way of dealing with openGL. It doesn’t look like you could use a single opengGL SDK and have it support everything that is out there. You would still need to write specific drivers for each of those. So why not just bypass the whole openGL aspect and go directly to the hardware API to do the same thing.

OpenGL is cross-platform, may be what you refer to is lack of OpenGL in downstream drivers doe mali, adreno and powervr. They only support openGL ES, but that is easy to resolv on mai and adreno by using mesa as your driver, on adreno you can even use mesa userspace with downstream kernel driver. And OpenGL is same on all platform as long as platform fully support version of OpenGL you use.

Hi @luka177,

Aren’t you interested in a contractor work with OpenGL? :slight_smile:

Hi!
I would be, but sadly i doubt my level of knowledge in hardware rendering and OpenGL in common is deep enough for such complicated but interesting project.
Anyway sorry for flooding this thread if that was a concern.

I imagine it as caching software rendered bitmaps to textures and making OpenGL blend those textures. Once we touch this topic we can also add some drivers to make the whole software or OpenGL rendered UI pushed into a texture. This way we could use normal OpenGL things in an other texture(s) and LVGL together.

Not at all! Having great conversions is always good. I was asking because it’s clearly that you have a great understanding of the topic.

Hint: Maybe you can take a look at Dear ImGui. This project supports various rendering backends and one of them is OpenGL. For example, it uses imstb_rectpack.h for e.g. packing rectangular textures into an atlas. I think, similar to LVGL, it also has a list of drawing commands which are then rendered by the backend.

1 Like

Hi Guys,

I’m happy to share that Liam Howatt joined as a project maintainer. :tada: