Raspberry Pi4B UI Exporting

What do you want to achieve?

I want to be able to select the right format (micropython,eclipse/sdl, VSC/sdl, other?)to create my project and export from SLS to raspberry pi4B?

What have you tried so far?

Nothing, have not set up raspberry pi yet.

Is there a specific OS for the raspberry pi4B that I need to use to upload my project from SLS? I will be utilizing roughly 10 analogue sensors if that matters.

what drivers need to be installed on pi?

I am currently trying to export the files I’ve created to raspberry pi4B and before I continue and buy SLS I want to get it working first. Guidance with this would be appreciated.

Others

  • **SquareLine Studio version:**1.4
  • **Operating system:**Raspberry pi not set up yet
  • **Target hardware:**Raspberry Pi4B

I’m running on a pi 4. I set it up with regular pi OS. I actually code directly on the pi in eclipse, it was easier and quicker for me than setting up cross compilers and all that. I used the SDL2 (or something like that) drivers and included in the build list in eclipse. Works great, has completely transformed my project. Everything coded in c.

It is fairly easy to cross-compile for the Raspberry Pi from Linux, Raspberry OS too being a Linux itself (less hardware-related surprises). First a local SDL2 ARM development library should be made that the ARM C code can link to (usually built in a Raspberry OS sysroot environment, or maybe directly copied from the SDL2-development package), then the compilation can be done by aarch64-gcc available in the linux software repository or from ARM webpage. On Windows it’s a bit more complicated as you need mingw and build/make-tools too. There’s no much difference between the procedures for the full Raspberry OS or desktop-environtment-less Rasberry OS Lite targets except an SDL2 with kmsdrm support should be built for the latter as that driver is not included in SDL2 of RaspberryOS out-of-the box. SquareLine Studio will make all this easier for you soon.

After I download VSC and SDL on the pi what do I do after that? @Hermit

Today we added the Raspberry Pi support to SquareLine Studio, from now on it’s included in the github repository. You don’t have to do anything it will appear automagically in your ‘Create’ menu and the board-template gets downloaded on demand. The info and the code is found at GitHub - SquareLineStudio/board_raspberry_pi at v1.0.0
The README can be found there as a starting point, we hope it will make it easier for you and we count on your feedbacks.
The required Raspberry Pi ARM SDL2 development library is included in the board-template so you don’t need to get/build it, just the necessary toolchains (CMake, aarch64-gcc).
(The binary that you can buid with this, can be used in the desktop-environment-less Raspberry OS Lite too, but there a special SDL2 runtime library with KMSDRM driver enabled must be built as mentioned above.)

So do I update the squareline studios program and it shows the board that you are talking about?

No need to update SquareLine Studio if you already use version 1.4 of it. The ‘Raspberry’ category should show up in the ‘Create’ menu with the Raspberry Pi board-template inside it.

Yes, it did show up. Now I am just trying to understand how to link the PATH on the bin folder for the compiler.

If the process described in README doesn’t set your PATH you might have a different place in your OS to do that. Document of your OS or the compiler/toolchain can come handy here. You can try in commandline if it’s successful (should always open new commandline if the PATH setting is changed to get it refreshed). (On Linux there’s no need to set PATH if you install aarch64-gcc as package, because the executables are mostly all in one place in the already set PATH.)

So you’re using Linux to cross-build? The raspberry pi board-template is a cross-build tool. Just for the clarification: I hope you’re not trying to cross compile on the Raspberry OS itself. If you try to build in a Raspberry OS system you don’t need the Raspberry cross-build board-template, just a VScode board-template from ‘desktop’ category.
But if you build for the Raspberry from a Linux desktop PC, the Raspberry Pi board-template can be used. On debian the aarch64 GCC toolchain has different name and if you install it from the repo you should use the corresponding bash-file or CMakeLists file. Maybe that’s your problem, trying to use aarch64-none-linux-gcc while you have aarch64-linux-gcc on your machine. You can check by trying these in a command prompt. Btw just speculating as details of your build-system seem not obviously described yet.

Clarification: On Linux, if you install and extract the aarch64 GCC from the ARM webpage to a specific location on your machine (instead of installing it from the package repository) you need to set the $PATH environment variable to its bin folder. Linuxes might differ in the way where to put the command to do this, ~/.bashrc file (i.e. .bashrc file in your home-folder) should work most of the times, at least it works on Debian with commandline and VScode build too. (~/.profile or ~/.xsessionrc doesn’t work on current Debian for me.) You need to read some docs for your distro where to modify $PATH, if .bashrc doesn’t work for you in VScode.
If for example you extract aarch64 GCC to your home folder, the command to append to the ~/.bashrc file would look like: export PATH="$PATH:/home/USER/gcc-arm-10.2-2020.11-x86_64-aarch64-none-linux-gnu/bin