Advanced Search

Search Results (Searched for: raspberry pi 3)

25 Feb 2024 03:19

Preparing native Raspberry Pi OS for LinuxCNC

Category: Installing LinuxCNC

Small correction it’s not the amount of memory used to build the image it’s the size of the file on disk used to create the boot & root partitions and file systems in, later on during the process these are mounted, as you would a physical disk partition, as well as some of the “virtual” file systems, and qemu “boots” and your have your virtual arm64 machine, and this is the environment that everything is installed for the final file system.
Actually after the image has been finalised you can start a qemu session with it and make any fine adjustments and these will be in the image after you exit the qemu session. I haven’t attempted a full GUI session but a text mode session is fine. Of course you need to setup and mount the image and add the virtual file systems before hand, but if you look through the code you’ll see how this is done.
Basically the same as when you create a virtual machine with say for example VirtualBox. You’re asked how big you want your disk to be. Then a file is created (can be a fixed size or dynamically allocated) and when you boot partitions and file systems are created in the file.

I suspect you missed the pain caused by buggy changes made by upstream that broke my build....
25 Feb 2024 01:19

Preparing native Raspberry Pi OS for LinuxCNC

Category: Installing LinuxCNC

Small correction it’s not the amount of memory used to build the image it’s the size of the file on disk used to create the boot & root partitions and file systems in, later on during the process these are mounted, as you would a physical disk partition, as well as some of the “virtual” file systems, and qemu “boots” and your have your virtual arm64 machine, and this is the environment that everything is installed for the final file system.
Actually after the image has been finalised you can start a qemu session with it and make any fine adjustments and these will be in the image after you exit the qemu session. I haven’t attempted a full GUI session but a text mode session is fine. Of course you need to setup and mount the image and add the virtual file systems before hand, but if you look through the code you’ll see how this is done.
Basically the same as when you create a virtual machine with say for example VirtualBox. You’re asked how big you want your disk to be. Then a file is created (can be a fixed size or dynamically allocated) and when you boot partitions and file systems are created in the file.
24 Feb 2024 23:50

Preparing native Raspberry Pi OS for LinuxCNC

Category: Installing LinuxCNC

Yes, I used 20 cores....
You need to read and understand userdata.txt.
There are basically 3 steps.
1. Get the Pi kernel source and build the lernel
2. Build the root file system
3. Build the image.

The relevant preempt_rt patch 6.1.69-rt21 from kernel.org  is in userpatches
The commit is from the Raspberry 6.1.y kernel source github.com/raspberrypi/linux
This is the very next commit after the 6.1.69 kernel was merged into the raspberry kernel repo
This is important because without locking in the commit to get, the kernel can diverge a lot and it will become unstable with that patch
You could look for later  RT patches and find a later kernel release that matches it.
After the Pi5 was released it took a long time before such a merge happened or the happened out of step. The current version  is common for both the Pi5 and Pi4

Also from userdata.txt
### CUSTOM KERNEL - Comment out the one not required
CUSTOM_DEFCONFIG="0"
#MYCONFIG="linuxcnc-pi4_defconfig"
#MYCONFIG="linuxcnc-pi5_defconfig"
Once you configure the kernel with menuconfig, you can save the generated defconfig and tell it to use that. This means that on future builds, it skips menuconfig.

Also in custom.txt, try changing the image size to 12288MB. (12gb) This is how much memory is used when building the image. This might let you use the pi imager to burn the image. I found some bugs in their IMG shrink routine so made it big. I can't remember if the upstream changes have been merged in to fix this.

I installed network manager but Andy observed latency got worse so I took it out. You could add it to USER_PKGS 
github.com/rodw-au/rpi-img-builder-lcnc/...ata.txt#L24C1-L24C11

I deliberately kept the image as standard as possible to stay as close to what the x86 installer offers




 
24 Feb 2024 23:11

Preparing native Raspberry Pi OS for LinuxCNC

Category: Installing LinuxCNC

1 it’s the host and user name for the final image.
2 the commit is from the RPi kernel source
3 the script applies the patch

Rods script creates a purely Debian based image, completely different to the Official Raspberry Pi image.
The config.txt file is in a different location, some of the RPi utilities aren’t there. There’s no GUI network manager, rod claims this adds latency, but when I produced images with it included no one complained about any latency issues, apart from one user comparing their image that isolated 2 cores and the one I provided having no cores isolated. The gvfs modules I also included, again no complaints about latency issues.
My thought on the issue, the official RPi image is a double edged sword, everything is there to get up and going, but lacks some of the things included in the official Raspberry Pi Foundation images, as well as the config.txt and boot.txt being in different locations. So on one hand being an easy way to get up and going but a little confusing if the docs aren’t read.
To get an understanding of how the build scripts work you need to read through the sources, it’s not all that complicated and it’s quite modular. Getting the locales to work was a bit hit and miss to begin with.
Rod has put some really hard work into the image builder, during the initial stages we were bouncing ideas off each other, I had a few different ideas of the build process and what should be included and what not, but it was his baby from the beginning I really didn’t push the point.
It’s good and works.
24 Feb 2024 21:37

Preparing native Raspberry Pi OS for LinuxCNC

Category: Installing LinuxCNC

Hello! I've started playing around with point 2 from your reply - it really faster to build a kernel on 16 adult cores instead 4 children - thanks a lot, great job!
Can I ask you the questions about some parameters?

1. What are these two?
### WHOAMI AND HOST
KBUSER="linuxcnc"
KBHOST="raspberrypi"
2. Commit - it is from linuxcnc repo, right?
COMMIT="342c7ee49e862edc30c893f141f55b9211b7a43b
3. rt-patch is automatically taken fresh or it is assumed that I had to update it manually?

Thnks again!
24 Feb 2024 18:28
Replied by Joha on topic LinuxCNC on Raspberry Pi 5

LinuxCNC on Raspberry Pi 5

Category: Installing LinuxCNC

sudo apt install notification-daemon still produces the same error message after installation.

Is any configuration of the notification-daemon needed or should a installation be enough?

What I see is the linuxcnc startup logo and then the same error message is received. Same as before.
24 Feb 2024 16:52
Replied by cakeslob on topic LinuxCNC on Raspberry Pi 5

LinuxCNC on Raspberry Pi 5

Category: Installing LinuxCNC

joha , install notification-daemon?
24 Feb 2024 11:22

2.9.2 Bookworm on Raspi 5. Setting up EDIMAX Wifi dongle

Category: General LinuxCNC Questions

Hi,
Its a while since I delved into Linux, and things not quite as I recall.
My setup is fresh from the box and the linuxcnc download site. I have successfully run apt update and apt upgrade, so the cable connection set itself up fine.
Was expecting to find a networking setup GUI to include the wifi dongle.
Linuxcnc on my PI-5 is otherwise running as I expect, but as I will use it with a 7i95T, then I think I should setup this wifi dongle to leave to wired port available.
My wifi device is an EDIMAX EW-8811Un and I have followed this guide, 
SHA - - - Raspberry Pi - Installing the Edimax EW-7811Un USB WiFi Adapter (WiFiPi) (savagehomeautomation.com)
However, on running ifup wlan0
I get wpa_supplcant: /sbin/wpa_supplicant daemon failed to start
exited with return code 1
ifup: failed to bring up wlan0

I ran journalctl -f to see the syslog.
That says:  the wlan0 supplicant interface is disconnected.

I'd appreciate some advice on how to resolve this mess I've got myself into.
Thanks

 
24 Feb 2024 10:36 - 24 Feb 2024 13:12
Replied by Joha on topic LinuxCNC on Raspberry Pi 5

LinuxCNC on Raspberry Pi 5

Category: Installing LinuxCNC

Anyone getting errors when using QtPlasmac on the image ( RPI5 image) linked to earlier in this thread?

I have tested to run Linux CNC with one of the "Sim" configs and then it starts, but when i run the wizard and selecting the QtPlasmac GUI then i receive this error when starting linuxCNC based on the config i created during the pncconf wizard:

"[QTvcp.QTVCP.LIB.SYS_NOTIFY][[33mWARNING[0m]  Desktop Notify not available:: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Notifications was not provided by any .service files (sys_notify.py:71)"


Error report created by /usr/lib/tcltk/linuxcnc/show_errors.tcl:

Print file information:
RUN_IN_PLACE=no
LINUXCNC_DIR=
LINUXCNC_BIN_DIR=/usr/bin
LINUXCNC_TCL_DIR=/usr/lib/tcltk/linuxcnc
LINUXCNC_SCRIPT_DIR=
LINUXCNC_RTLIB_DIR=/usr/lib/linuxcnc/modules
LINUXCNC_CONFIG_DIR=
LINUXCNC_LANG_DIR=/usr/lib/tcltk/linuxcnc/msgs
INIVAR=inivar
HALCMD=halcmd
LINUXCNC_EMCSH=/usr/bin/wish8.6
LINUXCNC - 2.10.0~pre0
Machine configuration directory is '/home/admin/linuxcnc/configs/my_LinuxCNC_machine'
Machine configuration file is 'my_LinuxCNC_machine.ini'
INIFILE=/home/admin/linuxcnc/configs/my_LinuxCNC_machine/my_LinuxCNC_machine.ini
VERSION=1.1
PARAMETER_FILE=linuxcnc.var
TPMOD=
HOMEMOD=
TASK=milltask
HALUI=halui
DISPLAY=qtvcp qtplasmac
COORDINATES=XYYZ
KINEMATICS=trivkins coordinates=XYYZ
Starting LinuxCNC...
Starting LinuxCNC server program: linuxcncsvr
linuxcncsvr (6484) emcsvr: machine 'my_LinuxCNC_machine'  version '1.1'
Loading Real Time OS, RTAPI, and HAL_LIB modules
linuxcnc TPMOD=tpmod HOMEMOD=homemod EMCMOT=motmod
Starting TASK program: milltask
milltask (6498) task: machine 'my_LinuxCNC_machine'  version '1.1'
Starting HAL User Interface program: halui
halui (6500) halui: machine 'my_LinuxCNC_machine'  version '1.1'
Found file(REL): ./my_LinuxCNC_machine.hal
Found file(lib): /usr/share/linuxcnc/hallib/qtplasmac_comp.hal
Found file(REL): ./custom.hal
USRMOT: ERROR: command 30 timeout
emcMotionInit: emcTrajInit failed
Starting DISPLAY program: qtvcp
task: main loop took 0.103235 seconds
command (EMC_TASK_PLAN_EXECUTE) cannot be executed until the machine is out of E-stop and turned on
task: main loop took 0.754576 seconds
Shutting down and cleaning up LinuxCNC...
Running HAL shutdown script
task: 0 cycles, min=0.000013, max=0.754576, avg=-1.000000, 2 latency excursions (> 10x expected cycle time of 0.010000s)

identityKinematicsSetup: coordinates:XYYZ
   Joint 0 ==> Axis X
   Joint 1 ==> Axis Y
   Joint 2 ==> Axis Y
   Joint 3 ==> Axis Z
identityKinematicsSetup: Recommend: kinstype=both

hm2: loading Mesa HostMot2 driver version 0.15
hm2_eth: loading Mesa AnyIO HostMot2 ethernet driver version 0.2
hm2_eth: 10.10.10.10: INFO: Hardware address (MAC): 00:60:1b:16:02:7a
hm2_eth: discovered 7I96
hm2/hm2_7i96.0: Low Level init 0.15
hm2/hm2_7i96.0: Smart Serial Firmware Version 43
hm2/hm2_7i96.0: 51 I/O Pins used:
hm2/hm2_7i96.0:     IO Pin 000 (TB3-01): IOPort
hm2/hm2_7i96.0:     IO Pin 001 (TB3-02): IOPort
hm2/hm2_7i96.0:     IO Pin 002 (TB3-03): IOPort
hm2/hm2_7i96.0:     IO Pin 003 (TB3-04): IOPort
hm2/hm2_7i96.0:     IO Pin 004 (TB3-05): IOPort
hm2/hm2_7i96.0:     IO Pin 005 (TB3-06): IOPort
hm2/hm2_7i96.0:     IO Pin 006 (TB3-07): IOPort
hm2/hm2_7i96.0:     IO Pin 007 (TB3-08): IOPort
hm2/hm2_7i96.0:     IO Pin 008 (TB3-09): IOPort
hm2/hm2_7i96.0:     IO Pin 009 (TB3-10): IOPort
hm2/hm2_7i96.0:     IO Pin 010 (TB3-11): IOPort
hm2/hm2_7i96.0:     IO Pin 011 (TB3-13/TB3-14): SSR #0, pin Out-00 (Output)
hm2/hm2_7i96.0:     IO Pin 012 (TB3-15/TB3-16): SSR #0, pin Out-01 (Output)
hm2/hm2_7i96.0:     IO Pin 013 (TB3-17/TB3-18): SSR #0, pin Out-02 (Output)
hm2/hm2_7i96.0:     IO Pin 014 (TB3-19/TB3-20): SSR #0, pin Out-03 (Output)
hm2/hm2_7i96.0:     IO Pin 015 (TB3-21/TB3-22): SSR #0, pin Out-04 (Output)
hm2/hm2_7i96.0:     IO Pin 016 (TB3-23/TB3-24): SSR #0, pin Out-05 (Output)
hm2/hm2_7i96.0:     IO Pin 017 (TB1-02/TB1-03): StepGen #0, pin Step (Output)
hm2/hm2_7i96.0:     IO Pin 018 (TB1-04/TB1-05): StepGen #0, pin Direction (Output)
hm2/hm2_7i96.0:     IO Pin 019 (TB1-08/TB1-09): StepGen #1, pin Step (Output)
hm2/hm2_7i96.0:     IO Pin 020 (TB1-10/TB1-11): StepGen #1, pin Direction (Output)
hm2/hm2_7i96.0:     IO Pin 021 (TB1-14/TB1-15): StepGen #2, pin Step (Output)
hm2/hm2_7i96.0:     IO Pin 022 (TB1-16/TB1-17): StepGen #2, pin Direction (Output)
hm2/hm2_7i96.0:     IO Pin 023 (TB1-20/TB1-21): StepGen #3, pin Step (Output)
hm2/hm2_7i96.0:     IO Pin 024 (TB1-22-TB1-23): StepGen #3, pin Direction (Output)
hm2/hm2_7i96.0:     IO Pin 025 (TB2-02/TB2-03): StepGen #4, pin Step (Output)
hm2/hm2_7i96.0:     IO Pin 026 (TB2-04/TB2-05): StepGen #4, pin Direction (Output)
hm2/hm2_7i96.0:     IO Pin 027 (TB2-07/TB2-08): Encoder #0, pin A (Input)
hm2/hm2_7i96.0:     IO Pin 028 (TB2-10/TB2-11): Encoder #0, pin B (Input)
hm2/hm2_7i96.0:     IO Pin 029 (TB2-13/TB2-14): Encoder #0, pin Index (Input)
hm2/hm2_7i96.0:     IO Pin 030 (TB2-16/TB2-17): IOPort
hm2/hm2_7i96.0:     IO Pin 031 (TB2-18/TB2-19): IOPort
hm2/hm2_7i96.0:     IO Pin 032 (internal): IOPort
hm2/hm2_7i96.0:     IO Pin 033 (internal): SSR #0, pin AC Ref (internal) (Output)
hm2/hm2_7i96.0:     IO Pin 034 (P1-01/DB25-01): IOPort
hm2/hm2_7i96.0:     IO Pin 035 (P1-02/DB25-14): IOPort
hm2/hm2_7i96.0:     IO Pin 036 (P1-03/DB25-02): IOPort
hm2/hm2_7i96.0:     IO Pin 037 (P1-04/DB25-15): IOPort
hm2/hm2_7i96.0:     IO Pin 038 (P1-05/DB25-03): IOPort
hm2/hm2_7i96.0:     IO Pin 039 (P1-06/DB25-16): IOPort
hm2/hm2_7i96.0:     IO Pin 040 (P1-07/DB25-04): IOPort
hm2/hm2_7i96.0:     IO Pin 041 (P1-08/DB25-17): IOPort
hm2/hm2_7i96.0:     IO Pin 042 (P1-09/DB25-05): IOPort
hm2/hm2_7i96.0:     IO Pin 043 (P1-11/DB25-06): IOPort
hm2/hm2_7i96.0:     IO Pin 044 (P1-13/DB25-07): IOPort
hm2/hm2_7i96.0:     IO Pin 045 (P1-15/DB25-08): IOPort
hm2/hm2_7i96.0:     IO Pin 046 (P1-17/DB25-09): IOPort
hm2/hm2_7i96.0:     IO Pin 047 (P1-19/DB25-10): IOPort
hm2/hm2_7i96.0:     IO Pin 048 (P1-21/DB25-11): IOPort
hm2/hm2_7i96.0:     IO Pin 049 (P1-23/DB25-12): IOPort
hm2/hm2_7i96.0:     IO Pin 050 (P1-25/DB25-13): IOPort
hm2/hm2_7i96.0: registered
hm2_eth: in hm2_eth_reset
hm2_eth: HostMot2 ethernet driver unloaded
hm2: unloading
Removing HAL_LIB, RTAPI, and Real Time OS modules
Removing NML shared memory segments

Debug file information:
Note: Using POSIX realtime
[QTvcp.QTVCP.LIB.SYS_NOTIFY][[33mWARNING[0m]  Desktop Notify not available:: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Notifications was not provided by any .service files (sys_notify.py:71)
[QTvcp.QTVCP.LIB.AUDIO_PLAYER][[33mWARNING[0m]  audio alerts - Is python3-gst1.0 installed? (audio_player.py:37)
[7550:1:0224/111931.818897:FATAL:page_allocator_internals_posix.h(169)] Check failed: . : Invalid argument (22)
/usr/bin/linuxcnc: line 968:  7417 Segmentation fault      $EMCDISPLAY -ini "$INIFILE" $EMCDISPLAYARGS $EXTRA_ARGS
6488
6498
Stopping realtime threads
Unloading hal components
Note: Using POSIX realtime




Info report created by linuxcnc_info:
The file:    /tmp/linuxcnc_info.txt
can be posted to a forum or a web site like:
     pastebin.com
in order to provide information about the linuxcnc
system and configuration.

                Date: Sat 24 Feb 11:20:03 CET 2024
            UTC Date: Sat 24 Feb 10:20:03 UTC 2024
        this program: /usr/bin/linuxcnc_info
              uptime: 11:20:03 up 35 min, 1 user, load average: 11.61, 10.04, 5.41
     lsb_release -sa: Debian Debian GNU/Linux 12 (bookworm) 12 bookworm
            linuxcnc: /usr/bin/linuxcnc
                 pwd: /home/admin/linuxcnc/configs/my_LinuxCNC_machine
                USER: admin
             LOGNAME: admin
                HOME: /home/admin
              EDITOR: 
              VISUAL: 
            LANGUAGE: 
                TERM: dumb
           COLORTERM: 
             DISPLAY: :1
             DESKTOP: LXDE-pi-wayfire
/usr/bin/linuxcnc_info: line 133: xdpyinfo: command not found
        display size: 
                PATH: /usr/bin:/home/admin/linuxcnc/configs/my_LinuxCNC_machine/bin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games

uname items:
         nodename -n: pilinuxcnc
      kernel-name -s: Linux
      kernel-vers -v: #1 SMP PREEMPT_RT Thu Dec 7 13:43:31 CET 2023
          machine -m: aarch64
        processor -p: unknown
         platform -i: unknown
      oper system -o: GNU/Linux

/proc items:
             cmdline: coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safe snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1 smsc95xx.macaddr=2C:CF:67:01:28:6E vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000 console=ttyAMA10,115200 console=tty1 root=PARTUUID=a8df8bc3-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles isolcpus=2,3 max.processor.cstate=1 cfg80211.ieee80211_regdom=SE
          model name: 
               cores: 
             cpu MHz: 
             parport: 
              serial: 

Versions:
                 gcc: gcc (Debian 12.2.0-14) 12.2.0
              python: Python 3.11.2
                 git: git version 2.39.2
          git commit: NA
                 tcl: 8.6
                  tk: 8.6
               glade: not_in_PATH

linuxcnc_var all:

     LINUXCNCVERSION: 2.10.0~pre0
LINUXCNC_AUX_GLADEVCP: /usr/share/linuxcnc/aux_gladevcp
LINUXCNC_AUX_EXAMPLES: /usr/share/linuxcnc/aux_examples
            REALTIME: /usr/lib/linuxcnc/realtime
                 RTS: uspace
          HALLIB_DIR: /usr/share/linuxcnc/hallib
              PYTHON: /usr/bin/python3

dpkg -l '*linuxcnc*':
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                Version       Architecture Description
+++-===================-=============-============-==============================================
un  linuxcnc            <none>        <none>       (no description available)
un  linuxcnc-dev        <none>        <none>       (no description available)
un  linuxcnc-doc        <none>        <none>       (no description available)
un  linuxcnc-doc-en     <none>        <none>       (no description available)
un  linuxcnc-doc-es     <none>        <none>       (no description available)
un  linuxcnc-doc-fr     <none>        <none>       (no description available)
un  linuxcnc-sim        <none>        <none>       (no description available)
un  linuxcnc-sim-dev    <none>        <none>       (no description available)
ii  linuxcnc-uspace     1:2.10.0~pre0 arm64        motion controller for CNC machines and robots
ii  linuxcnc-uspace-dev 1:2.10.0~pre0 arm64        PC based motion controller for real-time Linux
 
24 Feb 2024 04:17

ESP32/S2/S3 LinuxCNC Controller (6 axis hardware step gen), USB plug-and-play

Category: Computers and Hardware

  • ESP32-S2 (Single Core!)
  • USB Networking (No Ethernet)
  • Waveshare Pico S2 module
  • Raspberry PI 4
  • 4 Axis
  • High speed test
23 Feb 2024 21:20

Preparing native Raspberry Pi OS for LinuxCNC

Category: Installing LinuxCNC

I did this about a week ago using a precompiled kernel.

One thing I did as well was change form wayland to X.
23 Feb 2024 20:43

Preparing native Raspberry Pi OS for LinuxCNC

Category: Installing LinuxCNC

Great to see somebody else experimenting. There are a couple of other methods you can try if you like the experimentation :)
1. Download the Debian Image for the pi raspi.debian.net/  install a desktop using tasksel, install the Debian RT kernel from their repo, install linuxcnc using the scripted install mentioned in the 2.9 Getting linuxcnc docs
2. clone my cross compiled builder which is used to make the images available on the downlods page github.com/rodw-au/rpi-img-builder-lcnc/tree/linuxcnc-2.9.2 (get the 2.9.2 branch)

So option 2 runs on a normal desktop PC which substantially reduces compile times. It downloads the official Raspberry kernel source, applies the RT patch and builds a kernel, Then it Installs Debian with that kernel. We install the xfce desktop (from userdata.txt settings) and linuxcnc in userscripts github.com/rodw-au/rpi-img-builder-lcnc/....2/files/userscripts This installer used to build linuxcnc from source but during the 2.9 release process, a deb file was created on the linuxcnc repo so we use it now.

Have fun
23 Feb 2024 18:19 - 23 Feb 2024 18:38

Preparing native Raspberry Pi OS for LinuxCNC

Category: Installing LinuxCNC

Hello,

I successfully finished with the experiment whether could I reach the same performance as LinuxCNC 'native Debian 12 Bookworm' image but using a regular Raspberry Pi OS (64bit) on Raspberry Pi 4b.

uname -a
# Linux pi-cnc 6.1.77-rt24-v8-ago+ #1 SMP PREEMPT_RT Thu Feb 22 01:29:42 MSK 2024 aarch64 GNU/Linux

latency-histogram --nobase --sbins 1000

https://github.com/golyakoff/linux-info/blob/main/img/latency-histogram.png?raw=true

I received maximum jitter value ~80 μs (80,000 ns) with 8 `glxgears` (and it is with out-of-the-box vnc server working over wifi).

I prepared a step-by-step instruction for building the RT-patched kernel (based on Raspberry Pi OS 64bit) on my GitHub page github.com/golyakoff/linux-info/blob/mai...aspberryOS/README.md.

I am not sure if it is better to post here all the text (please let me know)
Hope this will help someone, thanks!
 
22 Feb 2024 19:14

Beckhoff ethercat 64 with bit linuxcnc, How to install.

Category: EtherCAT

Hi,
I'm trying to get a module working that is not already supported and I hope someone can help me.  I followed the instructions on the first page of this thread as best I could.  

First I was trying to get an EL3068 8 port analog card working and it was successful.  I'm using it to read some potentiometers. 

Now I'm trying to get an EL5102 module working and I thought this would be the easier one since the EL5101 is already supported. After following the process linuxcnc doesn't complain about it being in my hal file but the module doesn't leave preop stage.

I copied the EL5101.h and EL5101.c files to lcec_El5102.h and .c
modified them to substitute 5101 to 5102 and changed the ProductCode field (from ethercat xml -p7)
I didn't try adding the second channel in the .c file.  I looked but how to do it wasn't obvious.
did make clean and then make
cp lcec.so ../../linuxcnc-dev/rtlib/
sudo cp lcec_conf /usr/bin/
cp lcec_conf ../../linuxcnc/configs/wedm/

ethercat slaves gives: (with linuxcnc started)
 0  0:0   OP     +  EK1100 EtherCAT-Koppler (2A E-Bus)
 1  0:1   OP     +  EL1809 16K. Dig. Eingang 24V, 3ms
 2  0:2   OP     +  EL2008 8K. Dig. Ausgang 24V, 0.5A
 3  0:3   OP     +  EL3068 8K. Ana. Eingang 0-10V
 4  0:4   OP     +  EK1100 EtherCAT-Koppler (2A E-Bus)
 5  0:5   OP     +  EL1008 8K. Dig. Eingang 24V, 3ms
 6  0:6   OP     +  EL2008 8K. Dig. Ausgang 24V, 0.5A
 7  0:7   PREOP  +  EL5102 2Ch. Inc. Encoder 5V (RS422,TTL)
 8  0:8   OP     +  EL7342 2K. DC-Motor-Endstufe (50V, 3.5A)
 9  0:9   OP     +  DVS_ETHCAT_v1.004
10  0:10  OP     +  DVS_ETHCAT_v1.004

if I set ethercat debug 1 and look at dmesg I see it checking the time offset when starting up but later it just skips over it when going through each device.
[...]
[186186.355310] EtherCAT DEBUG 0-4: Checking system time offset.
[186186.375331] EtherCAT DEBUG 0-4: DC 64 bit system time offset calculation: system_time=761845177497583898 (corrected with 20000000), app_time=761845177496618367, diff=-965531
[186186.375339] EtherCAT DEBUG 0-4: Not touching time offset.
[186186.395306] EtherCAT DEBUG 0-7: Checking system time offset.
[186186.415328] EtherCAT DEBUG 0-7: DC 64 bit system time offset calculation: system_time=761845177537569111 (corrected with 20000000), app_time=761845177536577318, diff=-991793
[186186.415336] EtherCAT DEBUG 0-7: Not touching time offset.
[186186.435301] EtherCAT DEBUG 0-8: Checking system time offset.
[186186.455318] EtherCAT DEBUG 0-8: DC 64 bit system time offset calculation: system_time=761845177577586331 (corrected with 20000000), app_time=761845177576580029, diff=-1006302
[186186.455327] EtherCAT DEBUG 0-8: Setting time offset to 761658983053803698 (was 761658983054810000)
[...]
[186186.860091] EtherCAT DEBUG 0-6: Now in SAFEOP.
[186186.862084] EtherCAT DEBUG 0-6: Now in OP. Finished configuration.
[186186.895348] EtherCAT DEBUG 0-8: Changing state from PREOP to OP.
[186186.895356] EtherCAT DEBUG 0-8: Configuring...
[186186.898094] EtherCAT DEBUG 0-8: Now in INIT.


ethercat slaves -v gives:
=== Master 0, Slave 7 ===
Device: Main
State: PREOP
Flag: +
Identity:
  Vendor Id:       0x00000002
  Product code:    0x13ee3052
  Revision number: 0x00100000
  Serial number:   0x00000000
DL information:
  FMMU bit operation: no
  Distributed clocks: yes, 64 bit
  DC system time transmission delay: 1880 ns
Port  Type  Link  Loop    Signal  NextSlave  RxTime [ns]  Diff [ns]   NextDc [ns]
   0  EBUS  up    open    yes             6   3045771182           0         145
   1  EBUS  up    open    yes             8   3045771492         310         155
   2  N/A   down  closed  no              -            -           -           -
   3  N/A   down  closed  no              -            -           -           -
Mailboxes:
  Bootstrap RX: 0x1000/244, TX: 0x10f4/244
  Standard  RX: 0x1000/128, TX: 0x1100/128
  Supported protocols: CoE, FoE
General:
  Group: Measuring
  Image name: 
  Order number: EL5102
  Device name: EL5102 2Ch. Inc. Encoder 5V (RS422,TTL)
  CoE details:
    Enable SDO: yes
    Enable SDO Info: yes
    Enable PDO Assign: yes
    Enable PDO Configuration: no
    Enable Upload at startup: no
    Enable SDO complete access: yes
  Flags:
    Enable SafeOp: no
    Enable notLRW: no
  Current consumption: 210 mA
  
  
  
uname -a
Linux Charmilles 4.19.71-rt24-v7l+ #1 SMP PREEMPT RT Fri Jan 1 21:15:16 GMT 2021 armv7l GNU/Linux

LINUXCNC - 2.8.4

This is a raspberry PI and built following instructions from MetalMusings
forum.linuxcnc.org/ethercat/42048-notes-...at-on-raspberry-pi-4

I'm sure I did a bunch of other stuff after following his instructions but I didn't document exactly what I was doing and don't quite remember.  However, apart from this card it is mostly working.  I/O is working and my ethercat drives are moving are moving the servo motors.  I have a separate issue related to a belt reduction but that should probably be in another thread.
 
22 Feb 2024 09:02

gpio raspberrypi4 linuxcnc help

Category: HAL Examples

Да все эти темы я уже перечитал, но никак не могу понять как через терминал настроить hal gpio и как потом настроить linuxcnc работать с gpio.
Displaying 586 - 600 out of 944 results.
Time to create page: 0.755 seconds
Powered by Kunena Forum