Difference between revisions of "Beamo Hacking"

From Eleccelerator Wiki
Jump to: navigation, search
(Created page with "The FLUX Beamo is a relatively inexpensive and small laser cutter. Its brain is made of a Raspberry Pi married to a STM32F103 microcontroller. This page is also probably appli...")

Revision as of 20:24, 1 July 2020

The FLUX Beamo is a relatively inexpensive and small laser cutter. Its brain is made of a Raspberry Pi married to a STM32F103 microcontroller. This page is also probably applicable to the Beambox.

Contents

Obtaining Raspberry Pi Access

On boot, there's no prompt, no desktop access. SSH access is enabled but the password is unknown. Changing the cmdline.txt file will not help grant access to the shell. UART also does not provide a shell, just the boot log.

The microSD card can be removed and the EXT4 partition on it can be mounted into any Linux desktop computer. From this point, all the files on it can be accessed.

To obtain SSH access, follow instructions on https://www.maketecheasier.com/reset-root-password-linux/ , but instead of changing the root password, instead, make a new account with a new password. Add the new user to the sudo-er list.

Editing Screen Interface

The screen is displaying a web page. The contents are located in /var/fluxmonitor/data/panel/

Recent FC Files

Files sent to the Beamo are found inside /var/gcode/userspace/Recent/

Firmware Updates

Files are found in /var/db/fluxmonitord/update_fw

fxfw files are actually ZIP files. Inside, there will be a .bin file for the STM32, and a Python .egg file for the Raspberry Pi.

The .bin file is loaded to the STM32 using its built-in bootloader over UART. This is well documented, look for ST's document CD00264342.

Old Source Code

Some outdated source code can be found inside /home/pi/fluxmonitor/

FLUX Task (fc) Files

I have taken some clues from the source code to be able to understand the fc files that Beam Studio generates. Have a look at https://frank26080115.github.io/flux-fcode-tools/ for conversion tools that I've written.

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox