How to start programing microcontroller in Julia ? is any package?

Right, any 8/16 bit MCUs/CPUs, such as Arduino, are impossible, as I thought (see answer to my question on it). Except for Julia2C loophole. See below.

Julia supports ARM, and there is one non-8/16-bit Arduino, the 32-bit ARM-based Arduino Due (or Zero or M0 variant currently sold out). That’s the one potentially having the fewest issues to get working with Julia.Note the ARM-based MCUs, at least these ones may only support “Thumb ARM”, not full ARM, so I’m not even sure Julia would support such variants currently. A better bet might be x86 based Arduino: Arduino Official Store | Boards Shields Kits Accessories

The link in the thread above to Arduino.jl is broken, but from memory it’s just to interface to it, same as SerialPorts.jl that actually has a “Arduino submodule”. [This may even be the same code? I’m not sure if the name was changed as it was misleading or that package copied from the former.]

You can use Julia with/for C programs as you say; but also there was Intel’s Julia2C project. It seems to have bitrotted. If it would get maintained (or just using very old Julia syntax…) you could translate Julia to C and then get the code on the MCU. Possibly almost any MCU, even 8/16 bit ones. I’m however ignoring all OS issues. Julia by default requires running in an OS. A project similar to MicroPython, done for Julia, could help with that, and there’s a Discourse thread on it.

Unless you get around the OS/Linux requirement of Julia you need to look into this thread and answers there:

We can customize the Linux to run on Due.
But what we want to achieve with this?
Any value added that we are getting with this?

1 Like