Advanced Search

Search Results (Searched for: raspberry)

21 Oct 2023 00:49

Debian 12 - 2.10 master branch image for the Raspberry Pi 4b/400

Category: Installing LinuxCNC

Please download this version of the Rpi image 
drive.google.com/file/d/10lxh9Icf07pw9ki.../view?usp=share_link
This should be the final version that goes into the 2.9.1 release of linuxcnc
Because Andy has built the 2.9.1 debs, we use those instead of building from source and the image size has shrunk to 1.2 Gb!
New in this release are repositories for ethercat including the hal driver. 

To install ethercat and the hal driver (I hope):
sudo apt install ethercat-master libethercat-dev linuxcnc-ethercat
Then follow the sticky in the ethercat section to complete installation
forum.linuxcnc.org/ethercat/45336-etherc...-how-to-step-by-step

I'd love to hear feedback on the ethercat installation. I dopn't have a working pin anymore.

I can't include QTPYVCP repositories as they don't publish debs for the Raspberry Pi.
20 Oct 2023 16:05 - 20 Oct 2023 16:06

Installing troubles Rasberry Pi 4 model B 4 GB

Category: Installing LinuxCNC

Hi Jeffy,

Did you manage to figure out how to get it working?
This morning i also got my raspberry PI4B 4GB + Mesa 7i96S delivered and when trying to install get same error:
start4.elf: is not compatible
This board required newer software.

i downloaded from linuxcnc.org/downloads/ LinuxCNC 2.8.1 Raspberry Pi OS based on Debian 10 Buster and used Raspberry Pi Imager V1.7.5 to write image to card.

writing the stock images selected on the pi imager, the PI boots up ok but when loading the "Pi OS based on Debian 10 Buster" "2021-01-20-linuxcnc-pi4.img" file get error .
16 Oct 2023 19:19

LitexCNC: firmware and driver for 5A-75B and 5A-75E

Category: Driver Boards

In a previous  topic  firmware and driver has been developed for the 5A-75B and the 5A-75E, originally by the user Romanetz. Based this work I created a generic CNC firmware and driver for FPGA cards which are supported by LiteX, hence the name Litex-CNC . Configuration of the board and driver is done using json-files. The supported boards are the Colorlight boards 5A-75B and 5A-75E, as these are fully supported with the open source toolchain.

Installation
At this moment, version 1.0.2 has been released on pypi.org . You can install using pip:pip install litexcnc[cli]

NOTE: Suffix 

[cli]
 required!
The suffix 
[cli]
 is required to install the command-line interface. Without this suffix the scripts referenced below will not work.

After installation of LitexCNC the following scripts are available to the user:litexcnc install_driver
litexcnc install_litex
litexcnc install_toolchain
litexcnc build_driverFor a full overview on how to use the commands, please refer to the  documentation .

Supported modules
Currently the following modules are supported:
  • GPIO
  • Stepgen
  • PWM / PDM
  • Encoders
The platform can be extended by creating more modules. These modules can be maintained outside the LitexCNC main branch, meaning external parties can also contribute, or make specific modules aimed at their machines.

Future developments
At this moment the connection between the PC running LinuxCNC and the 5A-75X is done by Ethernet. Specifically for the Raspberry Pi currently a connection over SPI has been developed. This feature is still experimental and requires installation from source.If you want to try it, please let me know and I'll guide you through the installation. This feature will be released as soon as it has been tested further with my other development: the HUB75HAT (more details will follow).

Modules are relatively easy to create. Please post ideas for new modules in the GitHub discussions for future expansion of the possibilities.

Need help?
Feel free to drop a message on this forum, or start a new  in the GitHub discussions .

 
13 Oct 2023 18:07

Remora - ethernet NVEM cnc board

Category: Computers and OS's

I decided to try to install Raspberry Pi OS 64 bit, so Debian 12, and try to install the latest realtime kernel, which turned not to be that difficult when I found the correct resources.
All went well and I installed the Remora-nv component. Did a ping to the NVEM with the following result
64 bytes from 10.10.10.10: icmp_seq=35 ttl=255 time=0.169 ms
64 bytes from 10.10.10.10: icmp_seq=36 ttl=255 time=0.174 ms
64 bytes from 10.10.10.10: icmp_seq=37 ttl=255 time=0.160 ms
64 bytes from 10.10.10.10: icmp_seq=38 ttl=255 time=0.167 ms
64 bytes from 10.10.10.10: icmp_seq=39 ttl=255 time=0.185 ms
64 bytes from 10.10.10.10: icmp_seq=40 ttl=255 time=0.158 ms
64 bytes from 10.10.10.10: icmp_seq=41 ttl=255 time=0.173 ms
64 bytes from 10.10.10.10: icmp_seq=42 ttl=255 time=0.178 ms
64 bytes from 10.10.10.10: icmp_seq=43 ttl=255 time=0.151 ms
64 bytes from 10.10.10.10: icmp_seq=44 ttl=255 time=0.160 ms
64 bytes from 10.10.10.10: icmp_seq=45 ttl=255 time=0.164 ms
64 bytes from 10.10.10.10: icmp_seq=46 ttl=255 time=0.150 ms
64 bytes from 10.10.10.10: icmp_seq=47 ttl=255 time=0.208 ms
64 bytes from 10.10.10.10: icmp_seq=48 ttl=255 time=0.171 ms
64 bytes from 10.10.10.10: icmp_seq=49 ttl=255 time=0.164 ms
64 bytes from 10.10.10.10: icmp_seq=50 ttl=255 time=0.168 ms
64 bytes from 10.10.10.10: icmp_seq=51 ttl=255 time=0.183 ms
64 bytes from 10.10.10.10: icmp_seq=52 ttl=255 time=0.164 ms

So a lot better than before!

Started LinuxCNC. "Following error"...

I'm not the kind that gives up easily, but this is getting seriously annoying. I'm trying to read up on how to set up PID controller in LinuxCNC, but like everything else in Linux, it's all greek to me [img]/media/kunena/emoticons/dizzy.png[/img]
 

Uhm, pass...? I was given the advice to add PGAIN, but I might have misinterpreted that as adding PID parameters to the joints in the ini-file.
13 Oct 2023 17:24

Remora - ethernet NVEM cnc board

Category: Computers and OS's

I decided to try to install Raspberry Pi OS 64 bit, so Debian 12, and try to install the latest realtime kernel, which turned not to be that difficult when I found the correct resources.
All went well and I installed the Remora-nv component. Did a ping to the NVEM with the following result
64 bytes from 10.10.10.10: icmp_seq=35 ttl=255 time=0.169 ms
64 bytes from 10.10.10.10: icmp_seq=36 ttl=255 time=0.174 ms
64 bytes from 10.10.10.10: icmp_seq=37 ttl=255 time=0.160 ms
64 bytes from 10.10.10.10: icmp_seq=38 ttl=255 time=0.167 ms
64 bytes from 10.10.10.10: icmp_seq=39 ttl=255 time=0.185 ms
64 bytes from 10.10.10.10: icmp_seq=40 ttl=255 time=0.158 ms
64 bytes from 10.10.10.10: icmp_seq=41 ttl=255 time=0.173 ms
64 bytes from 10.10.10.10: icmp_seq=42 ttl=255 time=0.178 ms
64 bytes from 10.10.10.10: icmp_seq=43 ttl=255 time=0.151 ms
64 bytes from 10.10.10.10: icmp_seq=44 ttl=255 time=0.160 ms
64 bytes from 10.10.10.10: icmp_seq=45 ttl=255 time=0.164 ms
64 bytes from 10.10.10.10: icmp_seq=46 ttl=255 time=0.150 ms
64 bytes from 10.10.10.10: icmp_seq=47 ttl=255 time=0.208 ms
64 bytes from 10.10.10.10: icmp_seq=48 ttl=255 time=0.171 ms
64 bytes from 10.10.10.10: icmp_seq=49 ttl=255 time=0.164 ms
64 bytes from 10.10.10.10: icmp_seq=50 ttl=255 time=0.168 ms
64 bytes from 10.10.10.10: icmp_seq=51 ttl=255 time=0.183 ms
64 bytes from 10.10.10.10: icmp_seq=52 ttl=255 time=0.164 ms

So a lot better than before!

Started LinuxCNC. "Following error"...

I'm not the kind that gives up easily, but this is getting seriously annoying. I'm trying to read up on how to set up PID controller in LinuxCNC, but like everything else in Linux, it's all greek to me [img]/media/kunena/emoticons/dizzy.png[/img]

Which PID Controller?
13 Oct 2023 16:06

Remora - ethernet NVEM cnc board

Category: Computers and OS's

I decided to try to install Raspberry Pi OS 64 bit, so Debian 12, and try to install the latest realtime kernel, which turned not to be that difficult when I found the correct resources.
All went well and I installed the Remora-nv component. Did a ping to the NVEM with the following result
64 bytes from 10.10.10.10: icmp_seq=35 ttl=255 time=0.169 ms
64 bytes from 10.10.10.10: icmp_seq=36 ttl=255 time=0.174 ms
64 bytes from 10.10.10.10: icmp_seq=37 ttl=255 time=0.160 ms
64 bytes from 10.10.10.10: icmp_seq=38 ttl=255 time=0.167 ms
64 bytes from 10.10.10.10: icmp_seq=39 ttl=255 time=0.185 ms
64 bytes from 10.10.10.10: icmp_seq=40 ttl=255 time=0.158 ms
64 bytes from 10.10.10.10: icmp_seq=41 ttl=255 time=0.173 ms
64 bytes from 10.10.10.10: icmp_seq=42 ttl=255 time=0.178 ms
64 bytes from 10.10.10.10: icmp_seq=43 ttl=255 time=0.151 ms
64 bytes from 10.10.10.10: icmp_seq=44 ttl=255 time=0.160 ms
64 bytes from 10.10.10.10: icmp_seq=45 ttl=255 time=0.164 ms
64 bytes from 10.10.10.10: icmp_seq=46 ttl=255 time=0.150 ms
64 bytes from 10.10.10.10: icmp_seq=47 ttl=255 time=0.208 ms
64 bytes from 10.10.10.10: icmp_seq=48 ttl=255 time=0.171 ms
64 bytes from 10.10.10.10: icmp_seq=49 ttl=255 time=0.164 ms
64 bytes from 10.10.10.10: icmp_seq=50 ttl=255 time=0.168 ms
64 bytes from 10.10.10.10: icmp_seq=51 ttl=255 time=0.183 ms
64 bytes from 10.10.10.10: icmp_seq=52 ttl=255 time=0.164 ms

So a lot better than before!

Started LinuxCNC. "Following error"...

I'm not the kind that gives up easily, but this is getting seriously annoying. I'm trying to read up on how to set up PID controller in LinuxCNC, but like everything else in Linux, it's all greek to me
13 Oct 2023 12:03

lcec_conf: ERROR: couldn't allocate user/RT shared memory

Category: EtherCAT

I have placed the two compiled deb files at mirrors.geekros.com/pool/main/focal/. They are linuxcnc-ethercat-dbgsym_0.9.4_arm64.deb and linuxcnc-ethercat_0.9.4_arm64.deb. You can directly download them and migrate to your own software repository if needed.

I haven't tested it on the Raspberry Pi yet. Below is the information of my current device, which in theory should be universally compatible.
root@armcnc:~# uname -a
Linux armcnc 4.14.87 #5 SMP PREEMPT RT Wed Sep 13 15:15:26 CST 2023 aarch64 GNU/Linux
root@armcnc:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 12 (bookworm)
Release:        12
Codename:       bookworm
13 Oct 2023 10:46

lcec_conf: ERROR: couldn't allocate user/RT shared memory

Category: EtherCAT

I am trying to build a deb based on github.com/rodw-au/linuxcnc-ethercat. I will notify you if it works. However, the chip on my development board is not quite the same as the Raspberry Pi, but it should be usable.
13 Oct 2023 09:51

lcec_conf: ERROR: couldn't allocate user/RT shared memory

Category: EtherCAT

A couple of things
1. This repo of mine should compile and create a deb file of the linuxcnc-ethercat driver.
github.com/rodw-au/linuxcnc-ethercat
I had a bit of help here from one of the ethercat developers.
I did this so I could package it for AMD64 and host it. Then the repositories are preinstalled in my installer in the installing linuxcnc section here (as a sticky). forum.linuxcnc.org/9-installing-linuxcnc...or-linuxcnc-x86-only

I have thought of building it for the pi4 and hosting it too.
It should compile on ARM, Please let me now if it does.

2. The ethercat guys now have a repository and support the Raspberry Pi, Please open the spoilers for details here
forum.linuxcnc.org/ethercat/45336-etherc...-how-to-step-by-step 



 
12 Oct 2023 19:33

Remora - ethernet NVEM cnc board

Category: Computers and OS's

Hello, I'm hoping I can get some help here.  I'm beyond frustrated at this point trying to get my board flashed, Ive been at this for 8 hours at this point and am about to give up, a hammer to this ec500 I've got sitting here may be the best solution at this point.  I'm pretty sure I got my st link flashed using the CMSIS-DAP file from the repository.  But it seems no matter what I do I cannot get the pyocd command to flash the board I keep getting the Message, Import Error: No module named abc.  I know its referring to the collections library but have no idea how to fix it to move forward.  Google doesn't seem to have any idea either, other than its a default library that comes with python that seems to be missing something.  The computer I'm working on has a fresh install of linuxcnc on it, and this is the only linux machine I've got to work with here at home.  I've also tried doing all of this using my windows laptop thinking that may help.  Haven't gotten any further there, can't get the pyocd command to work on the command line there.  Im sure something is missing from the PATH variable on that machine.  There again trying to find anything useful online hasn't been much help.  I think I'm missing something simple.  I think I may have finally gotten it.  Downgrading the python version on the windows machine seemed to work.

 

I use my windows machine for flashing and development work. So it is possible to get it working, but as you said this looks to be a python issue. I'd check to see which pythong version etc.

It should be as simple as
python -m pip install -U pyocd
pyocd flash .\remora-rt1052.axf --target mimxrt1050_quadspi

The Raspberry Pi Pico Probe has shown to the easiest out of the box solution for flashing.
12 Oct 2023 12:34

Remora - ethernet NVEM cnc board

Category: Computers and OS's

Hey, Scott (or any volunteer)!

Have you had the time to look at my config files that are causing the following errors? I use the remora-nvem-basic config from github.com/scottalford75/Remora-NVEM/tree/main/LinuxCNC, also attached to this message.
Hi, I've had a look at your config files and they are identical to mine, and I can run with a 1000% feed override without following errors....

Now I'm really scratching my head to understand what could be going on. Do you have the serial debug output connected? It would be interesting to see if there are any issues on the board.
 

Let me explain exactly what I have done. Maybe you can spot something that I've done wrong.
- Full chip erase on NVEM using STM32 ST-LINK Utility
- Flash NVEM with Remora-NVEM-STM32-1.0.0.bin from github.com/scottalford75/Remora-NVEM/tree/main/Firmware using STM32 ST-LINK Utility
- Install Raspberry Pi OS (Legacy) 32 bit
- Install LinuxCNC and realtime Kernel according to forum.linuxcnc.org/9-installing-linuxcnc...n-raspberry-pi-3b-pi
- Copy github.com/scottalford75/Remora-NVEM/tre...es/remora-nvem-basic to /home/pi/linuxcnc/configs
- Copy github.com/scottalford75/Remora-NVEM/tre...Components/Remora-nv to /home/pi/linuxcnc/components
- Install remora-nv component using
sudo halcompile --install remora-nv.c
- Install pyocd using [code]pip3 install pyocd
- Write config to NVEM using [code]python3 upload_config.py config.txt

And that's it I think. Can you spot anything I might have done wrong?

I do not have the serial debug output connected, but I can do that if there is a guide I can follow. Do you happen to have one? [img]/media/kunena/emoticons/smile.png[/img]
[/code][/code]

[code][code][url=https://github.com/scottalford75/Remora-NVEM/tree/main/LinuxCNC/Components/Remora-nv][code][code][code]Ping response times are longer than I'm getting though, averaging around 0.17ms. Do you have a router in between the NVEM and computer?
 
No router. 2 meter cable directly from the Pi to the NVEM. Is the response time high enough to cause these errors you think?



As the response time becomes worse it changes the amount of pre-anticipation the linuxcnc software has to take in the algorithm hence PGain in order to make up for it. High ping time can cause ferror, but also can not having enough response time from the cpu on linuxcnc itself. I highly recommend you make sure your linuxcnc setup is correct and your following all recommendations by linuxcnc, also older kernels are slower and have worse response time in the real time kernel, so if linuxcnc has a timer thats supposed to go off every 1ms and the raspberrypi cpu timer goes off at 1.1ms and then the response time on the board is 0.3ms or up to 0.6ms now you are 1.13 to 1.16ms out of sync.
[/code][/code][/url][/code][/code][/code]
 

Thanks a lot for your explanation! I knew LinuxCNC wouldn't be easy, but this is just something else...

I did a quick search for LinuxCNC PID, and there are a lot of parameters to use, but I would guess that not all are used. Do you, or anyone else, happen to have a small demo of what it would look like if I were to implement it?

You wrote something about disabling background services in Debian. Could you elaborate? I'm pretty much completely new when it comes to Linux, so I wouldn't know what services to disable, or how to disable them.

I will also give a go at installing Debian 12 and the latest realtime kernel if I can figure out how to install it. So far I've been relying on other people's step-by-step guides on this forum.
12 Oct 2023 03:47

Debian 12 - 2.10 master branch image for the Raspberry Pi 4b/400

Category: Installing LinuxCNC

Hi Rod,
Thanks for creating the image. Last night I installed it and even managed to change the Linux GUI to Cinnamon. It’s easier for me to navigate with.
Over the weekend I’ll have a crack at configuring it for my Taig Mill.

Cheers
Peter

Thanks Peter, I'll be keen to hear how you get on.

Now you've made it to the dark side, how about becoming a Mesa Distributor Down under? The closest one is in NZ which is not terribly convenient.
12 Oct 2023 02:57

Ethercat installation summary

Category: EtherCAT

Ok, I'll do some reading before continuing.

As an update, it looks like I'm pretty close.
The only changes I applied so fare are to the cia402 component:
- I wait for the ECT60 to confirm homing
if (home) {
opmode = OPMODE_HOMING;
if (opmode_homing) {
controlword |= (home << 4);
}
}

- I lie with the current position to linuxcnc during homing

[code]//home states
if (opmode_homing) {
// hack
pos_fb = pos_cmd;
stat_homed = ((statusword >> 10) & 1) && ((statusword >> 12) & 1);
stat_homing = !stat_homed && !((statusword >> 10) & 1);
}


Current tested behavior is:
- I press "home all"
- joint sets cia402 home (joint.0.index-enable => cia402.0.home)
- the drive follows the homing sequence and finds the edge of the home sensor
- the drive exits the homing mode
- at that point, the next "write all" sends again the current pos_cmd and the drive moves back to the position before the homing started

I'll study homing.c - I was hoping to find a solution that didn't involve rebuilding linuxcnc (I'm running off of the 2.8.1 raspberry pi image right now).
[/code]
 

So I picked up where you left off here. I decided to ignore the following error issue and just set the following error limits to a large value and focus on the jumping after homing.

I removed the "
[code]pos_fb = pos_cmd;" and still noticed jumping. After looking at some Halscope traces it became apparent that the drive was being put back into cyclic position mode before the position register was cleared from homing. I made a small change in order of a few lines of code forcing the homing procedure in the drive to finish before setting the drive back to position mode. 
[/code]
  // OP Mode
  // set to position mode
  if (stat_voltage_enabled && !home ) {
    opmode = OPMODE_CYCLIC_POSITION;
  }
  // set velo mode
  if (stat_voltage_enabled && !pos_mode && !home) {
    opmode = OPMODE_CYCLIC_VELOCITY;
  }
 
  // reset home command  
  if (home && (stat_homed && !stat_homed_old) && opmode_homing) {
    home = 0;  
  }

This works well, and the motor no longer jumps. I then decided to make a hacky solution for the following error. I added a couple of input pins to the CIA402 component to store the standard following error parameters from the INI file, and a couple of output pins to set the current following error. The component keeps the output pins equal to the input pins except during homing. During homing the output following error pins are set to a high value, 1e38. 

Then you just connect up the following error output pins to the following error pins and result is Linuxcnc ignoring following error during homing, but not at other times without modifying the Linuxcnc code. 

you can see the example config attached. I changed the CIA402 component name to CIA402JAG just to I could do side by side comparison of the two components on my system.

What do you think? To hacky?
11 Oct 2023 21:19

Debian 12 - 2.10 master branch image for the Raspberry Pi 4b/400

Category: Installing LinuxCNC

Hi Rod,
Thanks for creating the image. Last night I installed it and even managed to change the Linux GUI to Cinnamon. It’s easier for me to navigate with.
Over the weekend I’ll have a crack at configuring it for my Taig Mill.

Cheers
Peter
11 Oct 2023 18:27

Remora - ethernet NVEM cnc board

Category: Computers and OS's

Hey, Scott (or any volunteer)!

Have you had the time to look at my config files that are causing the following errors? I use the remora-nvem-basic config from github.com/scottalford75/Remora-NVEM/tree/main/LinuxCNC, also attached to this message.
Hi, I've had a look at your config files and they are identical to mine, and I can run with a 1000% feed override without following errors....

Now I'm really scratching my head to understand what could be going on. Do you have the serial debug output connected? It would be interesting to see if there are any issues on the board.
 

Let me explain exactly what I have done. Maybe you can spot something that I've done wrong.
- Full chip erase on NVEM using STM32 ST-LINK Utility
- Flash NVEM with Remora-NVEM-STM32-1.0.0.bin from github.com/scottalford75/Remora-NVEM/tree/main/Firmware using STM32 ST-LINK Utility
- Install Raspberry Pi OS (Legacy) 32 bit
- Install LinuxCNC and realtime Kernel according to forum.linuxcnc.org/9-installing-linuxcnc...n-raspberry-pi-3b-pi
- Copy github.com/scottalford75/Remora-NVEM/tre...es/remora-nvem-basic to /home/pi/linuxcnc/configs
- Copy github.com/scottalford75/Remora-NVEM/tre...Components/Remora-nv to /home/pi/linuxcnc/components
- Install remora-nv component using
sudo halcompile --install remora-nv.c
- Install pyocd using [code]pip3 install pyocd
- Write config to NVEM using [code]python3 upload_config.py config.txt

And that's it I think. Can you spot anything I might have done wrong?

I do not have the serial debug output connected, but I can do that if there is a guide I can follow. Do you happen to have one? [img]/media/kunena/emoticons/smile.png[/img]
[/code][/code]

[code][code]Ping response times are longer than I'm getting though, averaging around 0.17ms. Do you have a router in between the NVEM and computer?
 
No router. 2 meter cable directly from the Pi to the NVEM. Is the response time high enough to cause these errors you think?
[/code][/code]

As the response time becomes worse it changes the amount of pre-anticipation the linuxcnc software has to take in the algorithm hence PGain in order to make up for it. High ping time can cause ferror, but also can not having enough response time from the cpu on linuxcnc itself. I highly recommend you make sure your linuxcnc setup is correct and your following all recommendations by linuxcnc, also older kernels are slower and have worse response time in the real time kernel, so if linuxcnc has a timer thats supposed to go off every 1ms and the raspberrypi cpu timer goes off at 1.1ms and then the response time on the board is 0.3ms or up to 0.6ms now you are 1.13 to 1.16ms out of sync.
Displaying 706 - 720 out of 967 results.
Time to create page: 2.313 seconds
Powered by Kunena Forum