Enrik's home for

Software development

Hello and welcome to my homepage. It’s about software, hardware, robots and AI development. Knowledge is based on embedded targets with systems such as linux, bare metal, RTOS, AUTOSAR but also on a PC basis. Currently working remotely, but you already know, because of Covid-19. Stay healthy.

My wok profile?

Which projects have i worked on over the last few years? Well, in short, software development and architecture development for software.

By joining as a guest: You may not have access to the meeting space. The meeting space allows the host and all participants who join a meeting with a Cisco Webex Meetings Online account to collaborate by sharing files and comments before and after the meeting. You may miss follow-up emails from the host To join as a guest: Open your Cisco Webex Meetings Online invitation email. (If you do not have the invite email, you may also join directly from the Cisco Webex Meetings Online site). Click the Join box for your meeting. The meeting join page appears. Enter your name (This is the name that will appear in the Participants panel for your meeting), your email address, and the meeting password (if required). Click the Join button. You will now be joined into the meeting as a guest or member and are welcome.

Explore my vulkan tutorial based on the developement vulkan guide

See the vulkan overview render architecture.

This tutorial (requires a google login) is an explanation of how to code the graphics card with efficiency and performance. Vulkan is a generic API framework which makes it possible to code efficiently. Vulkan enables this on a very low programming level. I have also provided some sources in my github repository. In that git repository there are 2 branches, one is the Vulkan Render with SDL and Glfw and the second branch additionally uses Imgui. In the second branch both render mechanisms are used in paralel (Vulkan and Imgui). See a presentation of the Pipeline creation architecture, Or the pdf. To get a good rendering, it is usefull to create a renderpass, as shown in this diagram. The most important object is the renderer, it collects all needed attributes, methods and objects used from the vulkan driver to invoke the render process(see more …).  The buffer with the data to be rendered must be updated before we render those, I use a function named updateUniformBuffer (see more …)

See the AI notice document

I am able to use, program & teach state of the art algorithms for many tasks. For example Backpropagation, anealing nets, GAN (Generative adversarial Network), SOM (Self organized maps ), MLP (Multilayer perceptron),  MPC (Model predictive control) and also other kinds of AI modules including reinforcement nets. To see how they behave I use Python or  Tensor Flow, but to implement those in the software I use dlib from Davis King in C++. I have implemented my own solutions and my own tooling, all of it written in C++. In my opinion it is OK to use python for preparing and management of the data, but with C++ we get more performance which is currently needed. Coming soon is a workshop with the proper git repository to demonstrate the use of them in application.    … see the last blog named ‘The tensor’ describes how to use a tensor in AI (state of the art)