Advanced Search

Search Results (Searched for: raspberry pi 3)

  • TheProcessTechnician
  • TheProcessTechnician
10 Oct 2024 18:38
Permission denied with gpio was created by TheProcessTechnician

Permission denied with gpio

Category: HAL

Hello There
new problem, new topic:

Newbie here, i am trying to set up my milling machine, but i keep getting errors from hal_gpio:

Note: Using POSIX realtime
The GPIO line GPIO4 can not be found
hal_gpio: rtapi_app_main: Operation not permitted (-1)

if I am trying to do it in the terminal it still doesnt work:

halcmd: loadrt hal_gpio outputs=GPIO13,GPIO19
Note: Using POSIX realtime
The GPIO line GPIO13 can not be found
hal_gpio: rtapi_app_main: Operation not permitted (-1)
<stdin>:6: waitpid failed /usr/bin/rtapi_app hal_gpio
<stdin>:6: /usr/bin/rtapi_app exited without becoming ready
<stdin>:6: insmod for hal_gpio failed, returned -1

Tried fixes:
adduser and gpasswd
linuxcnc.org/docs/devel/html/dr ... _gpio.html troubleshooting
archlinuxarm.org/forum/viewtopi ... 65&t=16838 (i know its arch, not debian..)
viewtopic.php?t=8999 (poor mans fix)

i really need some help quickly, have to present it to my team in 12 hours. Thanks for everything in advance!

Setup:
Raspi5
LinuxCNC 2.9.1 (debian)
Milling machine BADOG Cubique
Driver: Badog CNC MikroNC
me (Noob, LinuxCNC beginner)
  • xenon-alien
  • xenon-alien's Avatar
09 Oct 2024 16:46

Linuxcnc 2.9.2 and 2.93 images for Raspberry Pi 4b & 5

Category: Installing LinuxCNC

I did something, to display the correct time choosing Kyiv (Ukraine) in local.... something (and want to use other languages to type and search on the internet)
May be that was the cause?
  • xenon-alien
  • xenon-alien's Avatar
09 Oct 2024 12:27

Linuxcnc 2.9.2 and 2.93 images for Raspberry Pi 4b & 5

Category: Installing LinuxCNC

I can't finish the PncConf...
After setting the steps/mm pressing the forward button pops up this massage. Is it possible to solve it?

 
  • xenon-alien
  • xenon-alien's Avatar
09 Oct 2024 08:57 - 11 Oct 2024 16:54

Linuxcnc 2.9.2 and 2.93 images for Raspberry Pi 4b & 5

Category: Installing LinuxCNC

Thanks!
I will try it at home.

If there is any issue with the "because device is strictly unmanaged" while activating the connection, this helped me

Bookworm
Since bookworm, the configuration has moved. Now we need to create a new file at /etc/network/interfaces.d/eth0

allow-hotplug eth0
iface eth0 inet static
address 10.10.10.2
#network 10.0.0.0
netmask 255.255.255.0
#gateway 10.0.0.1
  • dave.franchino@gmail.com
  • dave.franchino@gmail.com
09 Oct 2024 01:04
My Cable Robot CNC Foam Cutter is running! was created by dave.franchino@gmail.com

My Cable Robot CNC Foam Cutter is running!

Category: Show Your Stuff

Hey kind folks,

I thought I’d share a quick video showing the status of our Linux CNC foam-cutter project. I’m brand new to LinuxCNC and basically just took this on as a fun project to learn a bit. 

photos.app.goo.gl/ksw5mnEoJEibSiqs5

The drive drums are custom designed 3D printed hypocycloidal drives running a pair of cables to a hot wire knife.  The 3D printed drives are a bit janky but actually work surprisingly well.  Not sure how durable they’d be in the long term. 

While this test-bed is quite small, the objective is to be able to mount the drum modules on a wall some 12 feet apart and in doing so be able to cut shapes out of large foam sheets. The objective is to be able to build an ultra-low cost CNC foam cutter for less than $200.  I could then manually stack the cut sheets together like a loaf of bread and build very large 3D printed objects ala a huge FDM (albiet with 2” thick layers).

Given the lower speed we’re running the unit on a Raspberry Pi.  I’m sure the latency is a mess but it appears to be tracking.  The forward and inverse kinematics functions were the majority of the challenge - I made life much more difficult by running the cables tangential to the drums instead of through a fixed ferrule but I was eventually able to solve the kinematics.  The inverse kinematics were just trig but the forward kinematics required numerical methods (Newton-Raphson) which I only sort of understand but seem to work.

More to come to make this more useful. If there is any interest I’ll likely open-source the whole thing when it’s a bit more stable and refined.

Thanks to all of you who helped on here through my rough patches. 
  • tommylight
  • tommylight's Avatar
08 Oct 2024 20:59

Linuxcnc 2.9.2 and 2.93 images for Raspberry Pi 4b & 5

Category: Installing LinuxCNC

Can you tell me how can I rotate the touch part of the screen too?

Try this, otherwise it is a mess to sift through endless posts on several forums to get the right answer, been there and done that, twice.
gist.github.com/mildmojo/48e9025070a2ba40795c
  • xenon-alien
  • xenon-alien's Avatar
08 Oct 2024 19:00

Linuxcnc 2.9.2 and 2.93 images for Raspberry Pi 4b & 5

Category: Installing LinuxCNC

THANK YOU VERRY MUCH!!!!

It looks great!
Finally i can rotate the screen! Also there is sound on the mini HDMI monitor .
Can you tell me how can I rotate the touch part of the screen too?
 
  • unromeo21
  • unromeo21
08 Oct 2024 08:36 - 08 Oct 2024 08:40

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

Category: Driver Boards

Hi everybody, 

many thanks for the great work you are puting into this Project. 

I have some issues, maybe somebody can guide me into debugging it. 

I bought a 5A-75B V8.2 and managed to flash it without issues using a Raspberry Pi 4. The JSON used was the example from the documentation , 5a-75b_v8.0_i12o14p6s6e6 . I have not made any changes to it yet, as I just wanted to test the whole process first and see if I get into issues down the road. Now, I don't know if using the json for version 8.0 is causing the issues that I have. 

The board is pingable over network, and can also be loaded into halrun: 

halcmd: loadrt litexcnc connections="eth:10.0.0.10"Note: Using POSIX realtimelitexcnc: Loading Litex CNC driver version 1.2.4
litexcnc: Loading and registering default modules:
litexcnc: Registered module gpio
litexcnc: Registered module pwm
litexcnc: Registered module encoder
litexcnc: Registered module step
litexcnc: Setting up board drivers:
litexcnc: Registered driver eth
LitexCNC-eth: connected to board on '10.0.0.10:1234'
litexcnc: Setting up modules...
litexcnc: Reading 36 bytes
litexcnc:  - Watchdog
litexcnc:  - Wallclock
litexcnc:  - gpio ... done!
litexcnc:  - pwm ... done!
litexcnc:  - encoder ... done!
litexcnc:  - step ... done!
litexcnc: Creating read and write buffers...
litexcnc: Base addresses: init: 00000000, reset: 00000044, config: 00000048, write: 0000004C, read: 000000C8
litexcnc:  - Write buffer: 124 bytes
litexcnc:  - Read buffer: 116 bytes
litexcnc: Exporting functions...

Show Pin works : 


halcmd: show pin
Component Pins:
Owner   Type  Dir         Value  Name
     4  s32   OUT             0  5A-75B:V8.0.encoder.00.counts
     4  bit   IN          FALSE  5A-75B:V8.0.encoder.00.index-enable
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.00.index-pulse
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.00.overflow-occurred
     4  float OUT             0  5A-75B:V8.0.encoder.00.position
     4  s32   OUT             0  5A-75B:V8.0.encoder.00.raw-counts
     4  bit   I/O         FALSE  5A-75B:V8.0.encoder.00.reset
     4  float OUT             0  5A-75B:V8.0.encoder.00.velocity
     4  float OUT             0  5A-75B:V8.0.encoder.00.velocity-rpm
     4  s32   OUT             0  5A-75B:V8.0.encoder.01.counts
     4  bit   IN          FALSE  5A-75B:V8.0.encoder.01.index-enable
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.01.index-pulse
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.01.overflow-occurred
     4  float OUT             0  5A-75B:V8.0.encoder.01.position
     4  s32   OUT             0  5A-75B:V8.0.encoder.01.raw-counts
     4  bit   I/O         FALSE  5A-75B:V8.0.encoder.01.reset
     4  float OUT             0  5A-75B:V8.0.encoder.01.velocity
     4  float OUT             0  5A-75B:V8.0.encoder.01.velocity-rpm
     4  s32   OUT             0  5A-75B:V8.0.encoder.02.counts
     4  bit   IN          FALSE  5A-75B:V8.0.encoder.02.index-enable
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.02.index-pulse
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.02.overflow-occurred
     4  float OUT             0  5A-75B:V8.0.encoder.02.position
     4  s32   OUT             0  5A-75B:V8.0.encoder.02.raw-counts
     4  bit   I/O         FALSE  5A-75B:V8.0.encoder.02.reset
     4  float OUT             0  5A-75B:V8.0.encoder.02.velocity
     4  float OUT             0  5A-75B:V8.0.encoder.02.velocity-rpm
     4  s32   OUT             0  5A-75B:V8.0.encoder.03.counts
     4  bit   IN          FALSE  5A-75B:V8.0.encoder.03.index-enable
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.03.index-pulse
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.03.overflow-occurred
     4  float OUT             0  5A-75B:V8.0.encoder.03.position
     4  s32   OUT             0  5A-75B:V8.0.encoder.03.raw-counts
     4  bit   I/O         FALSE  5A-75B:V8.0.encoder.03.reset
     4  float OUT             0  5A-75B:V8.0.encoder.03.velocity
     4  float OUT             0  5A-75B:V8.0.encoder.03.velocity-rpm
     4  s32   OUT             0  5A-75B:V8.0.encoder.04.counts
     4  bit   IN          FALSE  5A-75B:V8.0.encoder.04.index-enable
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.04.index-pulse
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.04.overflow-occurred
     4  float OUT             0  5A-75B:V8.0.encoder.04.position
     4  s32   OUT             0  5A-75B:V8.0.encoder.04.raw-counts
     4  bit   I/O         FALSE  5A-75B:V8.0.encoder.04.reset
     4  float OUT             0  5A-75B:V8.0.encoder.04.velocity
     4  float OUT             0  5A-75B:V8.0.encoder.04.velocity-rpm
     4  s32   OUT             0  5A-75B:V8.0.encoder.05.counts
     4  bit   IN          FALSE  5A-75B:V8.0.encoder.05.index-enable
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.05.index-pulse
     4  bit   OUT         FALSE  5A-75B:V8.0.encoder.05.overflow-occurred
     4  float OUT             0  5A-75B:V8.0.encoder.05.position
     4  s32   OUT             0  5A-75B:V8.0.encoder.05.raw-counts
     4  bit   I/O         FALSE  5A-75B:V8.0.encoder.05.reset
     4  float OUT             0  5A-75B:V8.0.encoder.05.velocity
     4  float OUT             0  5A-75B:V8.0.encoder.05.velocity-rpm
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.00.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.01.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.02.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.03.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.04.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.05.out
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.06.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.06.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.07.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.07.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.08.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.08.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.09.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.09.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.10.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.10.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.11.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.11.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.12.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.12.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.13.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.13.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.14.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.14.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.15.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.15.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.16.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.16.in-not
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.17.in
     4  bit   OUT         FALSE  5A-75B:V8.0.gpio.17.in-not
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.18.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.19.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.20.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.21.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.22.out
     4  bit   IN          FALSE  5A-75B:V8.0.gpio.23.out
     4  float OUT             0  5A-75B:V8.0.pwm.00.curr_dc
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.00.curr_period
     4  float OUT             0  5A-75B:V8.0.pwm.00.curr_pwm_freq
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.00.curr_width
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.00.dither_pwm
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.00.enable
     4  float IN              1  5A-75B:V8.0.pwm.00.max_dc
     4  float IN              0  5A-75B:V8.0.pwm.00.min_dc
     4  float IN              0  5A-75B:V8.0.pwm.00.offset
     4  float IN         100000  5A-75B:V8.0.pwm.00.pwm_freq
     4  float IN              1  5A-75B:V8.0.pwm.00.scale
     4  float IN              0  5A-75B:V8.0.pwm.00.value
     4  float OUT             0  5A-75B:V8.0.pwm.01.curr_dc
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.01.curr_period
     4  float OUT             0  5A-75B:V8.0.pwm.01.curr_pwm_freq
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.01.curr_width
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.01.dither_pwm
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.01.enable
     4  float IN              1  5A-75B:V8.0.pwm.01.max_dc
     4  float IN              0  5A-75B:V8.0.pwm.01.min_dc
     4  float IN              0  5A-75B:V8.0.pwm.01.offset
     4  float IN         100000  5A-75B:V8.0.pwm.01.pwm_freq
     4  float IN              1  5A-75B:V8.0.pwm.01.scale
     4  float IN              0  5A-75B:V8.0.pwm.01.value
     4  float OUT             0  5A-75B:V8.0.pwm.02.curr_dc
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.02.curr_period
     4  float OUT             0  5A-75B:V8.0.pwm.02.curr_pwm_freq
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.02.curr_width
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.02.dither_pwm
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.02.enable
     4  float IN              1  5A-75B:V8.0.pwm.02.max_dc
     4  float IN              0  5A-75B:V8.0.pwm.02.min_dc
     4  float IN              0  5A-75B:V8.0.pwm.02.offset
     4  float IN         100000  5A-75B:V8.0.pwm.02.pwm_freq
     4  float IN              1  5A-75B:V8.0.pwm.02.scale
     4  float IN              0  5A-75B:V8.0.pwm.02.value
     4  float OUT             0  5A-75B:V8.0.pwm.03.curr_dc
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.03.curr_period
     4  float OUT             0  5A-75B:V8.0.pwm.03.curr_pwm_freq
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.03.curr_width
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.03.dither_pwm
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.03.enable
     4  float IN              1  5A-75B:V8.0.pwm.03.max_dc
     4  float IN              0  5A-75B:V8.0.pwm.03.min_dc
     4  float IN              0  5A-75B:V8.0.pwm.03.offset
     4  float IN         100000  5A-75B:V8.0.pwm.03.pwm_freq
     4  float IN              1  5A-75B:V8.0.pwm.03.scale
     4  float IN              0  5A-75B:V8.0.pwm.03.value
     4  float OUT             0  5A-75B:V8.0.pwm.04.curr_dc
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.04.curr_period
     4  float OUT             0  5A-75B:V8.0.pwm.04.curr_pwm_freq
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.04.curr_width
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.04.dither_pwm
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.04.enable
     4  float IN              1  5A-75B:V8.0.pwm.04.max_dc
     4  float IN              0  5A-75B:V8.0.pwm.04.min_dc
     4  float IN              0  5A-75B:V8.0.pwm.04.offset
     4  float IN         100000  5A-75B:V8.0.pwm.04.pwm_freq
     4  float IN              1  5A-75B:V8.0.pwm.04.scale
     4  float IN              0  5A-75B:V8.0.pwm.04.value
     4  float OUT             0  5A-75B:V8.0.pwm.05.curr_dc
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.05.curr_period
     4  float OUT             0  5A-75B:V8.0.pwm.05.curr_pwm_freq
     4  u32   OUT    0x00000000  5A-75B:V8.0.pwm.05.curr_width
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.05.dither_pwm
     4  bit   IN          FALSE  5A-75B:V8.0.pwm.05.enable
     4  float IN              1  5A-75B:V8.0.pwm.05.max_dc
     4  float IN              0  5A-75B:V8.0.pwm.05.min_dc
     4  float IN              0  5A-75B:V8.0.pwm.05.offset
     4  float IN         100000  5A-75B:V8.0.pwm.05.pwm_freq
     4  float IN              1  5A-75B:V8.0.pwm.05.scale
     4  float IN              0  5A-75B:V8.0.pwm.05.value
     4  s32   OUT             0  5A-75B:V8.0.read.time
     4  float IN              0  5A-75B:V8.0.stepgen.00.acceleration-cmd
     4  u32   OUT    0x00000000  5A-75B:V8.0.stepgen.00.counts
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.00.debug
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.00.enable
     4  float IN              0  5A-75B:V8.0.stepgen.00.position-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.00.position-feedback
     4  float OUT             0  5A-75B:V8.0.stepgen.00.position-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.00.velocity-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.00.velocity-feedback
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.00.velocity-mode
     4  float OUT             0  5A-75B:V8.0.stepgen.00.velocity-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.01.acceleration-cmd
     4  u32   OUT    0x00000000  5A-75B:V8.0.stepgen.01.counts
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.01.debug
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.01.enable
     4  float IN              0  5A-75B:V8.0.stepgen.01.position-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.01.position-feedback
     4  float OUT             0  5A-75B:V8.0.stepgen.01.position-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.01.velocity-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.01.velocity-feedback
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.01.velocity-mode
     4  float OUT             0  5A-75B:V8.0.stepgen.01.velocity-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.02.acceleration-cmd
     4  u32   OUT    0x00000000  5A-75B:V8.0.stepgen.02.counts
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.02.debug
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.02.enable
     4  float IN              0  5A-75B:V8.0.stepgen.02.position-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.02.position-feedback
     4  float OUT             0  5A-75B:V8.0.stepgen.02.position-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.02.velocity-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.02.velocity-feedback
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.02.velocity-mode
     4  float OUT             0  5A-75B:V8.0.stepgen.02.velocity-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.03.acceleration-cmd
     4  u32   OUT    0x00000000  5A-75B:V8.0.stepgen.03.counts
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.03.debug
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.03.enable
     4  float IN              0  5A-75B:V8.0.stepgen.03.position-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.03.position-feedback
     4  float OUT             0  5A-75B:V8.0.stepgen.03.position-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.03.velocity-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.03.velocity-feedback
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.03.velocity-mode
     4  float OUT             0  5A-75B:V8.0.stepgen.03.velocity-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.04.acceleration-cmd
     4  u32   OUT    0x00000000  5A-75B:V8.0.stepgen.04.counts
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.04.debug
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.04.enable
     4  float IN              0  5A-75B:V8.0.stepgen.04.position-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.04.position-feedback
     4  float OUT             0  5A-75B:V8.0.stepgen.04.position-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.04.velocity-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.04.velocity-feedback
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.04.velocity-mode
     4  float OUT             0  5A-75B:V8.0.stepgen.04.velocity-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.05.acceleration-cmd
     4  u32   OUT    0x00000000  5A-75B:V8.0.stepgen.05.counts
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.05.debug
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.05.enable
     4  float IN              0  5A-75B:V8.0.stepgen.05.position-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.05.position-feedback
     4  float OUT             0  5A-75B:V8.0.stepgen.05.position-prediction
     4  float IN              0  5A-75B:V8.0.stepgen.05.velocity-cmd
     4  float OUT             0  5A-75B:V8.0.stepgen.05.velocity-feedback
     4  bit   IN          FALSE  5A-75B:V8.0.stepgen.05.velocity-mode
     4  float OUT             0  5A-75B:V8.0.stepgen.05.velocity-prediction
     4  u32   I/O    0x00000000  5A-75B:V8.0.wallclock.ticks_lsb
     4  u32   OUT    0x00000000  5A-75B:V8.0.wallclock.ticks_msb
     4  bit   I/O         FALSE  5A-75B:V8.0.watchdog.has_bitten
     4  s32   OUT             0  5A-75B:V8.0.write.time

and also Show Param: 

halcmd: show param
Parameters:
Owner   Type  Dir         Value  Name
     4  bit   RW          FALSE  5A-75B:V8.0.debug
     4  float RW              0  5A-75B:V8.0.encoder.00.position-scale
     4  bit   RW          FALSE  5A-75B:V8.0.encoder.00.x4-mode
     4  float RW              0  5A-75B:V8.0.encoder.01.position-scale
     4  bit   RW          FALSE  5A-75B:V8.0.encoder.01.x4-mode
     4  float RW              0  5A-75B:V8.0.encoder.02.position-scale
     4  bit   RW          FALSE  5A-75B:V8.0.encoder.02.x4-mode
     4  float RW              0  5A-75B:V8.0.encoder.03.position-scale
     4  bit   RW          FALSE  5A-75B:V8.0.encoder.03.x4-mode
     4  float RW              0  5A-75B:V8.0.encoder.04.position-scale
     4  bit   RW          FALSE  5A-75B:V8.0.encoder.04.x4-mode
     4  float RW              0  5A-75B:V8.0.encoder.05.position-scale
     4  bit   RW          FALSE  5A-75B:V8.0.encoder.05.x4-mode
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.00.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.01.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.02.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.03.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.04.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.05.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.18.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.19.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.20.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.21.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.22.invert_output
     4  bit   RW          FALSE  5A-75B:V8.0.gpio.23.invert_output
     4  s32   RW              0  5A-75B:V8.0.read.tmax
     4  bit   RO          FALSE  5A-75B:V8.0.read.tmax-increased
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.00.dir-hold-time
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.00.dir-setup-time
     4  float RO              0  5A-75B:V8.0.stepgen.00.frequency
     4  float RW              0  5A-75B:V8.0.stepgen.00.max-acceleration
     4  float RW              0  5A-75B:V8.0.stepgen.00.max-velocity
     4  float RW              0  5A-75B:V8.0.stepgen.00.position-scale
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.00.steplen
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.00.stepspace
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.01.dir-hold-time
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.01.dir-setup-time
     4  float RO              0  5A-75B:V8.0.stepgen.01.frequency
     4  float RW              0  5A-75B:V8.0.stepgen.01.max-acceleration
     4  float RW              0  5A-75B:V8.0.stepgen.01.max-velocity
     4  float RW              0  5A-75B:V8.0.stepgen.01.position-scale
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.01.steplen
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.01.stepspace
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.02.dir-hold-time
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.02.dir-setup-time
     4  float RO              0  5A-75B:V8.0.stepgen.02.frequency
     4  float RW              0  5A-75B:V8.0.stepgen.02.max-acceleration
     4  float RW              0  5A-75B:V8.0.stepgen.02.max-velocity
     4  float RW              0  5A-75B:V8.0.stepgen.02.position-scale
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.02.steplen
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.02.stepspace
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.03.dir-hold-time
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.03.dir-setup-time
     4  float RO              0  5A-75B:V8.0.stepgen.03.frequency
     4  float RW              0  5A-75B:V8.0.stepgen.03.max-acceleration
     4  float RW              0  5A-75B:V8.0.stepgen.03.max-velocity
     4  float RW              0  5A-75B:V8.0.stepgen.03.position-scale
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.03.steplen
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.03.stepspace
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.04.dir-hold-time
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.04.dir-setup-time
     4  float RO              0  5A-75B:V8.0.stepgen.04.frequency
     4  float RW              0  5A-75B:V8.0.stepgen.04.max-acceleration
     4  float RW              0  5A-75B:V8.0.stepgen.04.max-velocity
     4  float RW              0  5A-75B:V8.0.stepgen.04.position-scale
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.04.steplen
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.04.stepspace
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.05.dir-hold-time
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.05.dir-setup-time
     4  float RO              0  5A-75B:V8.0.stepgen.05.frequency
     4  float RW              0  5A-75B:V8.0.stepgen.05.max-acceleration
     4  float RW              0  5A-75B:V8.0.stepgen.05.max-velocity
     4  float RW              0  5A-75B:V8.0.stepgen.05.position-scale
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.05.steplen
     4  u32   RW     0x00000000  5A-75B:V8.0.stepgen.05.stepspace
     4  u32   RO     0x00000000  5A-75B:V8.0.watchdog.timeout_cycles
     4  u32   RW     0x00000000  5A-75B:V8.0.watchdog.timeout_ns
     4  s32   RW              0  5A-75B:V8.0.write.tmax
     4  bit   RO          FALSE  5A-75B:V8.0.write.tmax-increased


But no matter which out pin I set to enable with setp command,, there are no changes measured on the board, and I measured ALL pins. 
The 5A-75B:V8.0.watchdog.has_bitten is FALSE.

halcmd: setp 5A-75B:V8.0.gpio.00.out 1
halcmd: getp 5A-75B:V8.0.gpio.00.out
TRUE


Thanks again for your help.  
  • Giovanni
  • Giovanni
05 Oct 2024 10:59 - 05 Oct 2024 11:02
Replied by Giovanni on topic NativeCam on LinuxCNC 2.9.3

NativeCam on LinuxCNC 2.9.3

Category: NativeCAM

Now NativeCAM is running with Python3 and Gtk "without" problems, at least as standalone.
There are some problems and Gtk deprecations to fix. but it works.
On my Raspberry Pi machine it runs enbedded in LinuxCNC too.
I think all of you could run it as embedded configuring paths etc...

Regards
Giovanni
  • flyingbrick
  • flyingbrick
05 Oct 2024 10:24 - 05 Oct 2024 10:26

Linuxcnc 2.9.2 and 2.93 images for Raspberry Pi 4b & 5

Category: Installing LinuxCNC

2.93 seems to work great on my pi5. No network manager is a bit hard for my brain but we'll get there.

Blazing fast compared to the img I had loaded up earlier, lcnc boots up faster than I thought was possible

​​​​​​I wish PiClone was already on there because no Ethernet in the garage and the pi is a pain to remove from the cnc haha 
  • Giovanni
  • Giovanni
03 Oct 2024 16:39 - 03 Oct 2024 16:44
Replied by Giovanni on topic NativeCam on LinuxCNC 2.9.3

NativeCam on LinuxCNC 2.9.3

Category: NativeCAM

I have seen those problems. When I'll have some spare time, I'll try to fix them.

Since at this moment I have no much time I attach a text I have found recently.
Maybe the author is Fernand.
You have a standalone version of NativeCAM working, so I think you have only to made changes to embed it in LinuxCNC.
And I suppose you can run ncam from any place in the terminal simply by typing ncam.

You could follow that guide in the first 4 points to try to have NativeCAM in a LinuxCNC tab.
Remember to verify your paths.
In my case they were different respect those writtten in the guide and I had to adjust them.
One of the differences is the path:
/usr/share/pyshared/gladevcp
on my Raspberry is:
/usr/lib/python3/dists-packages/gladevcp

You can firstly verify the situation listing the directories.
If you write down the changes you make (I haven't... ) the guide could be written by you.

Regards
Giovanni
  • Giovanni
  • Giovanni
30 Sep 2024 19:15 - 30 Sep 2024 19:21
Replied by Giovanni on topic NativeCam on LinuxCNC 2.9.3

NativeCam on LinuxCNC 2.9.3

Category: NativeCAM

Hello,
I am happy to ear that my little fixes are useful to someone.
To me is useful your feedback and I think it would be useful to test NativeCAM on various computers.
I have a question for you real users: if you input numbers in the fields by doing calculations, is the result correct or a huge number is given?

I ask you that because I am testing NativeCAM on two machines: standalone on a iMac and embedded in LinuxCNC on a Raspberry Pi (the real LinuxCNC machine).
Calculations on the Mac are correct, but on Raspberry Pi are wrong.

I am not a Python or a NativeCAM expert (I am learning Python while trying to fix Native CAM), but I hope to be able to fix some problem.

Regards
Giovanni
  • andypugh
  • andypugh's Avatar
28 Sep 2024 08:50
Replied by andypugh on topic Getting LinuxCNC as an option to RPi Imager

Getting LinuxCNC as an option to RPi Imager

Category: Installing LinuxCNC

I asked the RPi foundation about this a few years ago, and they said that they were trying to reduce the number of special purpose installations, rather than increase them.
That policy might have changed in the meantime.

16th September 2020:

"Andy

Thank you for your interest in Raspberry Pi.

We're currently not adding many external OSes to the Imager, but please add your suggestion to the github issues and we'll decide what we do about third party OSes. github.com/raspberrypi/rpi-imager/issues

Regards"
  • Aciera
  • Aciera's Avatar
26 Sep 2024 08:44
Replied by Aciera on topic Struggling with custom kinematics...

Struggling with custom kinematics...

Category: Advanced Configuration

Never the less - I believe I have correctly ascertained the math necessary to compute the left and right drum rotation (from home position of 0,0) to achieve a desired X,Y location for the truncation of the two cables. I believe these are inverse kinematics, correct?

correct

I honestly don't really understand what a hal pin is and whether these are required. I'm running my code on a Raspberry pi if it matters.

hal pins are used to connect signals in the hal layer. If your kinematic does do not need real time information from hal (eg tool length) then you do not need to add any pins.

I don't have any feedback in my device so what does LinuxCNC do with the Forward kinematics?

I believe in your case the forward kinematic is only used until the machine is homed. (ie to calculate the initial XY position) But I might be wrong about that.

Note: Looks like it is possible to also run either inverse / forward kinematics only (but I have never used that or seen it used):
linuxcnc.org/docs/devel/html/motion/kine...rward-transformation
    KINEMATICS_IDENTITY (each joint number corresponds to an axis letter)
    KINEMATICS_BOTH (forward and inverse kinematics functions are provided)
    KINEMATICS_FORWARD_ONLY
    KINEMATICS_INVERSE_ONLY

My inverse kinematics routine computes the drum rotations FROM HOME to a desired X,Y. Is this correct?

That is correct, for HOME = (0,0) and provided you have not built any offsets into your model (eg a tool-offset)

My CableKins.comp file is attached. I'm basically breaking out of the forward kinematics since that was erroring out but I'm not getting expected results. If you see any glaring issues I'd appreciate any guidance.

So what is the error you are getting?
Displaying 706 - 720 out of 911 results.
Time to create page: 0.859 seconds
Powered by Kunena Forum