Advanced Search

Search Results (Searched for: raspberry)

  • llamatrails
  • llamatrails
13 Apr 2025 21:45

RPi 4, LinuxCNC upgrade doesn't upgrade kernel

Category: Installing LinuxCNC

Raspberry Pi 4 Model B Rev 1.2
Mesa 7c81
Debian GNU/Linux 12 (bookworm) 6.1.54-rt15 #1_RT Fri Nov 17 17:02:27 AEST 2023 aarch64

I installed LinuxCNC 2.9.3 from the linuxcnc ISO image a couple of years ago, and upgraded to 2.9.4 yesterday by:
$ sudo apt update  && sudo apt full-upgrade

I now have:
rick@raspi4:~$ dpkg -l | grep linux-image
ii  linux-image-bcm2711-rpi-4            6.1.54-rt15-1                           arm64        Linux kernel, version 6.1.54-rt15
rick@raspi4:~$ dpkg -l | grep linuxcnc
ii  linuxcnc-doc-en                      1:2.9.4                                 all          motion controller for CNC machines and robots (English documentation)
ii  linuxcnc-uspace                      1:2.9.4                                 arm64        motion controller for CNC machines and robots
ii  linuxcnc-uspace-dev                  1:2.9.4                                 arm64        PC based motion controller for real-time Linux

rick@raspi4:~$ uname -a
Linux raspi4 6.1.54-rt15 #1 SMP PREEMPT_RT Fri Nov 17 17:02:27 AEST 2023 aarch64 GNU/Linux

Is there a newer RT kernel then the one from 2023 ?
If so, how can I upgrade the kernel without having to reload the entire system from the latest ISO image ?

TIA,
Rick
 
  • pgf
  • pgf
12 Apr 2025 14:23

Running an external program from a HAL pin

Category: HAL

I spent my career trying to write reasonably efficient and fast code in firmware, device drivers and system level utilities. I'm afraid I just couldn't stomach adding a polling loop on top of the polling loop (every .2 seconds) that I discovered at the core of halui.

So I've done an end-run around the problem, which works nicely.

My mill runs from a Raspberry Pi, connected via a Mesa ethernet card. It occurred to me that if HAL could twiddle an actual gpio pin, then I could easily read that, and hook it up to action.  And of course if there's one thing the RPi has, it's plenty of gpio.

So I loaded hal_gpio, and hooked up a couple of output pins:
loadrt hal_gpio outputs=GPIO16,GPIO20
addf hal_gpio.write servo-thread
 
net external-estop-off \
        estop-latch.0.fault-out => hal_gpio.GPIO16-out
 
net coolant-mist => hal_gpio.GPIO20-out

Those pins were chosen because they were eacy immediately adjacent to another unused pin.  Gpio 16 is next to 19, and 20 is next to 26.  I jumpered those two pairs.

Then I wrote a short script using gpiomon to watch pins 19 and 26 for transitions.
#!/bin/bash

estop=19
vacuum=26

switch()
{
    echo Turning $1 $2   # e.g. "Turning vacuum on"
    wget -q -O /dev/null http://service:9901/event:cnc-mill-$1-$2 &
}

while read pinevent
do
    echo got $pinevent   # this will be "19-1", "19-0", "26-1", or "26-0"
    case $pinevent in
    $estop-1)
        switch spindle off
        ;;
    $vacuum-0)
        switch vacuum off
        ;;
    $vacuum-1)
        switch vacuum on
        ;;
    esac
done < <( gpiomon  --line-buffered --format="%o-%e" gpiochip0 19 26)

This works perfectly.

While I'm pleased to have found this solution, it sure seems silly to have had to consume 4 gpio pins in order to do it.

Thanks for all your suggestions!
paul
  • robforbes
  • robforbes
09 Apr 2025 18:24 - 09 Apr 2025 22:00

Inexpensive hardware setup: N95 Mini PC, Mesa 7I92T (Ethernet) and G540

Category: Computers and Hardware

Hi all, 

In case anyone else is interested in using inexpensive mini PCs and Mesa ethernet boards, I thought I'd share some details of my new setup. It's early days, but it seems to be working well--I'd be interested to hear about other people's experience with similar setups...

Mini PC, N95 $120 It's tiny, like 3-1/2" square!
Mesa 7192T $110 has ethernet and parallel port for the G540 (you need to build your own enclosure and supply 5v)
Gecko G540

I got the PC off Amazon:
www.amazon.com/dp/B0DGQ1P667?ref=ppx_yo2..._fed_asin_title&th=1
described as:
Mini PC Alder Lake-Ν95 (up to 3.4GHz) 4 Cores 4 Threads, Mini Computers 8GB DDR5 256GB M.2 SSD, Mini PC Dual Lan Support

Here are my somewhat cryptic notes about the configuration process. It's basically an assembly of techniques from other threads on this forum. I changed the IP address of the card from the default, but in hindsight I don't think that was really necessary.

Install linuxcnc from USB stick

Disable Turbo mode in BIOS (not sure this is really necessary)

(Note: there is no hyperthreading option in this particular machine)

Change mesa card jumper for "static IP from EEPROM"

edit /etc/network/interfaces to add static address for the card:
auto enp2s0
  iface enp2s0 inet static
    address 10.10.10.11
    netmask 255.255.255.0

sudo mesaflash --device 7I92T --addr 10.10.10.10 --write 7i92t_g540d.bin

change grub:
  isolcpus=2,3

===== At this point I was getting network timeouts. The fix for this has been posted on this forum, and is as follows: ============

Because of network latency issues it is necessary to install the dkms driver per this thread:
docs.google.com/document/d/1jeV_4VKzVmOI...ading=h.macj649sy0yq
Open a terminal window and Type the following lines: 
sudo apt update 
sudo dpkg -P raspi-firmware
sudo apt dist-upgrade
Note that the second line (sudo dpkg …) removes firmware for the raspberry pi incorrectly installed by Debian and is a bug out of our control

Type:
sudo apt update
you need to install some utilities. Type:
sudo apt install build-essential dkms 
If you have not installed a later kernel as described above install linux-headers. Type:
sudo apt install linux-headers-$(uname -r)
sudo apt install r8168-dkms 

Rob
  • behai
  • behai
09 Apr 2025 07:43

4-Gang 1-Way Switch To Control 3 Power Supplies and a Router Independently

Category: Computers and Hardware

For a control box, the simplest way is to use a switched, EMI filtered and fused IEC connector
www.amazon.com.au/uxcell%C2%AE-IEC320-Sw...Filter/dp/B01FT0VRTS
You can see one of these used at the bottom right of my photo shared earlier.

But in your case, this won't work if you want to switch the router on and off because the current of the router will be too high for the typically 6 amp AC rating. Plus you would not want the electrically noisy router to be on the same side of the EMI filter as your electronics.

So in your case, I would use a fixed power lead and a cable gland to bring mains into the control box to two household breakers around 10 amp. One of these will protect your router circuit and the other your electronics, On the electronics circuit, immediately after the breaker, fit an EMI filter
www.jaycar.com.au/240v-ac-emi-filter/p/MS4001
Then connect all of your power supplies to the filtered mains power.

Filtering the power is really important to avoid spurious triggering from electrical noise. I learnt the hard way.

The next thing to work out is your estop. That's a bit tricky because you need to disable the router and the stepper motor power supply without using any relays that could fail. The estop needs to drop power to your router power and  stepper mains motion. You could use 2 phases of a 3 phase breaker but technically you would then need  to use a safety relay to be compliant.
Its probably acceptable to disable your stepper drivers using the enable pins on them that are usually left disconnected.


 

Thank you Rod,

I have been thinking about your advice on the router, I am trying something I don't have any practical knowledge of, I will just leave this one out, I will get the other three working, as my knowledge increase, I might rewire it again. This just my hobby project. But I really like learning electronics now, I have always been afraid of it.

You are right, the ENABLE pin on the CLT57T-V41 is left unconnected. During my learning of this driver, I used only the Raspberry Pi 4 and Python to program it, setting ENABLE to high disables the motor.

Best regards,

...behai.
 
  • rodw
  • rodw's Avatar
08 Apr 2025 09:31
Replied by rodw on topic LinuxCNC S-Curve Accelerations

LinuxCNC S-Curve Accelerations

Category: General LinuxCNC Questions

Glad you waded into the live build environment. Wait till I get you going on the raspberry Pi 
Sorry it failed for you.. I had plenty of that. The biggest issue I had was getting apt configured and installing the gpt keys.
Bjarne from Etherlab was a big help there.

I think Linuxcnc builds all of the Debs in the one go.
There was a really interesting pull request from Stefan Moller that has yet to be committed which installed the dependencies the Debian way (eg. Just using one command. It would have been nice to see it in the code by now.
  • Krimbles13
  • Krimbles13
04 Apr 2025 10:14 - 04 Apr 2025 10:18

Remora - Rpi Software Stepping Using External Microcontroller via SPI

Category: Computers and Hardware

Hey,
sorry to bother you with this but i can't get this to work and i'm kinda frustrated.
I can't get out of e-stop and get a bad spi payload = 646174

My hardware:
Raspberry Pi 4B
BTT Octopus Pro v1.1 with stm32f446
TMC2209 Drivers with jumpers in SPI mode

I did the wiring acording to the docs and also the installation.
With cutecom i get the output in the attached file for the octopus xyz.hal.
SPI and UART are activated on the Pi and i already did a rewiring of the whole thing.
I'm tottaly new to LinuxCNC so i would really appreciate your help on this.

Thanks! peter

 

File Attachment:

File Name: debugoutput.txt
File Size:2 KB
  • unknown
  • unknown
03 Apr 2025 21:37

Linuxcnc & the Raspberry Pi (4 & 5) Official Images Only!!!

Category: Installing LinuxCNC

Look for the ethercat thread, process is the same for as for the amd64 platform.

I have gone through the installation process and it completes without any errors.
  • atrex77
  • atrex77's Avatar
03 Apr 2025 20:11

Developing a Raspberry Pi Pico-based I/O Board for LinuxCNC

Category: General LinuxCNC Questions

Houston, we have a problem, i ordered the io port expander (mcp23017) in wrong package so28 instead of ssop28, and the zener diodes is missing from the order, and i missed the i2c port pullup resistors from the design this need a littlebit of workaround, but the outputs are working now (tbd 62783). Tested with 5v and 24v without load, i messed up 1 of the w5100s-evb-pico-s usb port by pulling the whole microusb inside out but now this programmed trough the SWD debug port, the positive side is i do not need to printing debug info in the usb serial port.
  • jdowsonjr
  • jdowsonjr
03 Apr 2025 16:03

Linuxcnc & the Raspberry Pi (4 & 5) Official Images Only!!!

Category: Installing LinuxCNC

I can give it a try, could you please share more details on how you got ethercat installed so i can reproduce your setup?
  • unknown
  • unknown
03 Apr 2025 04:29

PCIe - No parport registered at "0x " . This is not Always an error.Continuing.

Category: Advanced Configuration

Just gone 3pm here in Sydney.

No something interesting.

I worked on a little project using an FPGA dev board to run MESA's hostmot2 firmware. First attempt was based on the 7c81 using either SPI (raspberry pi) or EPP (best on motherboard based parallel ports). The issue with the board I used is that the EEPROM need to be changed and the headers were already soldered on.
That same hardware can also be used with the LinuxcncRIO project.

Another project I had a go at was modding the 7i90 Smart serial firmware to support 4 encoders to run on a dev board.

For my latest I've grabbed a different dev board (eeprom is correct size & bought with the headers unslodered, but this time I'll be trying a Ethernet interface, chip is same as use on the Mesa products, so no having to rewrite a driver, which requires a couple of steps, first being working out the instructions of the softcore, working how the driver talks to the chip and then how it integrates with the rest.

Some pics, 2x17 ports from breakout boards (mesa 25 pin daughter boards can be used as well) and 4 extra pins for 2 smart serial ports or extra I\O.

First off is the FPGA from aliexpress:
 

The Ethernet board, this is experiment only, the FPGA board sits on top, disregard the type of 2x25 headers they can be changed to suit. Should have the boards in a couple of weeks.
 

One of the daughter boards from the orignal project.
 
  • H-S-W
  • H-S-W
02 Apr 2025 07:35

Script to update 2.9.x ISO to use Linuxcnc Version 2.10 (master branch)

Category: Installing LinuxCNC

cnc@raspberrypi:~$ sudo apt-add-repository "deb buildbot2.highlab.com/debian/ bookworm master-uspace 2.9-uspace"
sudo: apt-add-repository: command not found
  • ContinenteCNC
  • ContinenteCNC's Avatar
01 Apr 2025 00:56 - 01 Apr 2025 00:57
Replied by ContinenteCNC on topic Configuring 6 axis robot arm with lcnc

Configuring 6 axis robot arm with lcnc

Category: HAL

Congratulations on your results so far.

I have never tryied LinuxCNC in Raspberry Pi. But, based on my experience in PC based LCNC, I don't think you will ever have any reliability issues running it in step/dir. LinuxCNC is a hell of a reliable motion controller.

 
  • chuckp47
  • chuckp47
31 Mar 2025 13:31
Activity Light was created by chuckp47

Activity Light

Category: General LinuxCNC Questions

We would like our LinuxCNC system to control an activity light. This would be a red light on the machine active when the motors are engaged. Does LinuxCNC already have a feature to control such a thing? Where should I look to find the interface?
We are using a Mesa board and a Raspberry Pi. Can I route a control signal through to an output pin on the Mesa board?

Thank you.
  • H-S-W
  • H-S-W
31 Mar 2025 08:56

Script to update 2.9.x ISO to use Linuxcnc Version 2.10 (master branch)

Category: Installing LinuxCNC

Maybe not.. now it stops at:

cnc@raspberrypi:~$ sudo echo "deb buildbot2.highlab.com/debian/ bookworm master-uspace 2.9-uspace" >> /etc/apt/sources.list
bash: /etc/apt/sources.list: Permission denied
Displaying 136 - 150 out of 898 results.
Time to create page: 1.518 seconds
Powered by Kunena Forum