Cannot get out of Estop
- galmiklos
- Offline
- New Member
-
Less
More
- Posts: 7
- Thank you received: 2
23 Jun 2026 21:34 #347287
by galmiklos
Cannot get out of Estop was created by galmiklos
Hi,
I have a PrintNC machine with a Flexi-HAL board, and installed the customized Expatria LinuxCNC image (github.com/Expatria-Technologies/Flexi-Pi) on a Pi5, then upgraded LinuxCNC to 2.9.8. It all works fine.
I have the Pi5 with an SSD as well as an SD card, so I can kind of multiboot, and the above mentioned setup is on the SSD. I wanted to move from bookworm to trixie, so imaged the SD card with the latest trixie based LinuxCNC image (github.com/LinuxCNC/linuxcnc/releases/do...9.8_arm64_trixie.deb), and copied all the linuxcnc configuration over from the SSD.
LinuxCNC starts with the same configuration, but I cannot get out of ESTOP. I click the big red ESTOP button (using qtdragon_hd), but nothing happens.
Any advise what I can look at?
Thank you in advance!
I have a PrintNC machine with a Flexi-HAL board, and installed the customized Expatria LinuxCNC image (github.com/Expatria-Technologies/Flexi-Pi) on a Pi5, then upgraded LinuxCNC to 2.9.8. It all works fine.
I have the Pi5 with an SSD as well as an SD card, so I can kind of multiboot, and the above mentioned setup is on the SSD. I wanted to move from bookworm to trixie, so imaged the SD card with the latest trixie based LinuxCNC image (github.com/LinuxCNC/linuxcnc/releases/do...9.8_arm64_trixie.deb), and copied all the linuxcnc configuration over from the SSD.
LinuxCNC starts with the same configuration, but I cannot get out of ESTOP. I click the big red ESTOP button (using qtdragon_hd), but nothing happens.
Any advise what I can look at?
Thank you in advance!
Please Log in or Create an account to join the conversation.
- tommylight
-
- Away
- Moderator
-
Less
More
- Posts: 21697
- Thank you received: 7414
23 Jun 2026 21:43 #347288
by tommylight
Replied by tommylight on topic Cannot get out of Estop
Does the machine have a physical e-stop?
What comms between RPI and control board?
What comms between RPI and control board?
Please Log in or Create an account to join the conversation.
- galmiklos
- Offline
- New Member
-
Less
More
- Posts: 7
- Thank you received: 2
23 Jun 2026 23:53 #347293
by galmiklos
Replied by galmiklos on topic Cannot get out of Estop
Yes, there is an ESTOP input on the board, but it is not triggered.
The communication between the RPi5 and the board is SPI. The firmware flashed is a customized version of remora-spi, tailored for the Flexi-HAL board by Expatria (github.com/Expatria-Technologies/remora-flexi-hal).
I don't think there is anything is wrong with the board. As I said, I have multiboot set up with an SSD and an SD card, and I have the customized linuxcnc image on the SSD from Expatria (github.com/Expatria-Technologies/Flexi-Pi). If I boot that, everything works.
My best guess is that it is the communication between the board and the Pi through SPI that isn't working for some reason.
The communication between the RPi5 and the board is SPI. The firmware flashed is a customized version of remora-spi, tailored for the Flexi-HAL board by Expatria (github.com/Expatria-Technologies/remora-flexi-hal).
I don't think there is anything is wrong with the board. As I said, I have multiboot set up with an SSD and an SD card, and I have the customized linuxcnc image on the SSD from Expatria (github.com/Expatria-Technologies/Flexi-Pi). If I boot that, everything works.
My best guess is that it is the communication between the board and the Pi through SPI that isn't working for some reason.
Please Log in or Create an account to join the conversation.
- galmiklos
- Offline
- New Member
-
Less
More
- Posts: 7
- Thank you received: 2
24 Jun 2026 02:49 - 24 Jun 2026 02:51 #347295
by galmiklos
Replied by galmiklos on topic Cannot get out of Estop
Since I had the flexi-pi image on the SSD, I booted it, started linuxcnc in debug mode and saved the output.
I then booted the new LinuxCNC image from, the SD card, and did the same. Started linuxcnc in debug mode and saved the output.
Since the SSD is always connected, I mounted it, and so I could compare the debug output. The only difference was these lines.I don't know where to get this ;library from, I thought it would be part of the "flexi" component that comes withe flexi-pi image.
I then booted the new LinuxCNC image from, the SD card, and did the same. Started linuxcnc in debug mode and saved the output.
Since the SSD is always connected, I mounted it, and so I could compare the debug output. The only difference was these lines.
DEBUG: Initialising RP1 library: rt_rp1lib_init
DEBUG: Base address: 1f00000000, size: 400000, mapped at address: 0x7ffeecb60000
DEBUG: rp1spi_init(), SPI0
DEBUG: SPI0 Base address: 50000, mapped at address: 0x7ffeecbb0000
DEBUG: dws->ver = 3430322a
DEBUG: Synopsys DWC APB SSI v4.02
DEBUG: Detected FIFO size: 64 bytes
DEBUG: Detected 32-bits max data frame size
DEBUG: Pin: MOSI -> GPIO Number: 10, FSEL Number: 0
DEBUG: Pin: MISO -> GPIO Number: 9, FSEL Number: 0
DEBUG: Pin: SCLK -> GPIO Number: 11, FSEL Number: 0
DEBUG: Pin: CS -> GPIO Number: 8, FSEL Number: 0
DEBUG: clk_div = 10
DEBUG: BAUDR = 20000000 hz
Last edit: 24 Jun 2026 02:51 by galmiklos.
Please Log in or Create an account to join the conversation.
- galmiklos
- Offline
- New Member
-
Less
More
- Posts: 7
- Thank you received: 2
24 Jun 2026 14:14 - 24 Jun 2026 14:21 #347305
by galmiklos
Replied by galmiklos on topic Cannot get out of Estop
I found the culprit! 
Apparently, the customized component that handles the SPI communication with the customized remora-spi firmware is not compatible with trixie.
This is the part in the code that breaks it.
The soc ranges path is different in trixie.
I modified the component so, that when the path does not exist, I just consider it as a Raspberry Pi 5 with RP1 chip, and now it works!
I know it's just a quick and dirty workaround, but works for me.
Apparently, the customized component that handles the SPI communication with the customized remora-spi firmware is not compatible with trixie.
This is the part in the code that breaks it.
int rt_peripheral_init(void)
{
int memfd;
FILE *fp;
// assume were only running on >RPi3
if ((fp = fopen("/proc/device-tree/soc/ranges" , "rb")))
{The soc ranges path is different in trixie.
root@raspberrypi:~# hd /proc/device-tree/soc\@107c000000/ranges
00000000 00 00 00 00 00 00 00 10 00 00 00 00 80 00 00 00 |................|
00000010I modified the component so, that when the path does not exist, I just consider it as a Raspberry Pi 5 with RP1 chip, and now it works!
if ((fp = fopen("/proc/device-tree/soc/ranges" , "rb")))
{
. . . . . . . . .
}
else
{
DEBUG_PRINT("Raspberry Pi 5, using RP1 driver\n\n");
rp1 = true;
}I know it's just a quick and dirty workaround, but works for me.
Last edit: 24 Jun 2026 14:21 by galmiklos.
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- tommylight
-
- Away
- Moderator
-
Less
More
- Posts: 21697
- Thank you received: 7414
24 Jun 2026 14:48 #347308
by tommylight
Replied by tommylight on topic Cannot get out of Estop
Thank you for reporting back.
Please Log in or Create an account to join the conversation.
Time to create page: 0.090 seconds