LinuxCNC + Orange Pi (allwincnc)

More
5 years 4 weeks ago #222165 by Cncninja
Replied by Cncninja on topic LinuxCNC + Orange Pi (allwincnc)
Looking good, waiting for your write-up. I'm interested in your config for the video drivers etc.

Please Log in or Create an account to join the conversation.

More
5 years 3 weeks ago #222210 by 109jb
Replied by 109jb on topic LinuxCNC + Orange Pi (allwincnc)
Regarding the video drivers, I didn't do anything special with them. I simply used whatever Armbian installed.

Please Log in or Create an account to join the conversation.

More
5 years 3 weeks ago #222239 by Cncninja
Replied by Cncninja on topic LinuxCNC + Orange Pi (allwincnc)
Did you do the isolcpus=1,2,3 idle=poll and the speed forced to max

Please Log in or Create an account to join the conversation.

More
5 years 3 weeks ago #222240 by Bari
Replied by Bari on topic LinuxCNC + Orange Pi (allwincnc)
This where sanely developed u-boot firmware should come in. The user should be expected to be using an adequate heat sink and power supply. Next u-boot should be locking the cores to the highest stable speed and not even allow user space to mess with any speed governors or power management.

Please Log in or Create an account to join the conversation.

More
5 years 3 weeks ago #222248 by envyvan
Replied by envyvan on topic LinuxCNC + Orange Pi (allwincnc)
Hi 109jb,
I use the MPG with 2 PC817 Optocoupler, convert 5V logic level to 3.3v.

Below is my MPG setting in .hal file:

# MPG setup
loadrt arisc pwm="p,p,p,v" out="PA12,PA11,PA1,PA10,PA9,PA13,PA14,PA0,PA3,PC4" in="PC0,PC1,PC2,PC3,PG6,PG7,PG8,PG9" encoders=1

loadrt conv_float_s32 count=1

setp arisc.encoder.0.enable 1
setp arisc.encoder.0.x4-mode 0
setp arisc.encoder.0.pos-scale 4
setp arisc.encoder.0.A-port 6 # 6=PG
setp arisc.encoder.0.A-pin 6 # PG6
setp arisc.encoder.0.B-port 6 # 6=PG
setp arisc.encoder.0.B-pin 7 # PG7
setp arisc.gpio.PG6-pull -1
setp arisc.gpio.PG6-multi-drive-level 0
setp arisc.gpio.PG7-pull -1
setp arisc.gpio.PG7-multi-drive-level 0

net conv0 conv-float-s32.0.in <= arisc.encoder.0.pos
net jog-counter <= conv-float-s32.0.out
net jog-counter => joint.0.jog-counts axis.x.jog-counts
net jog-counter => joint.1.jog-counts axis.y.jog-counts
net jog-counter => joint.2.jog-counts axis.z.jog-counts

I also setup pyvcp to select which axis I want to use with MPG.
loadrt mux16 count=1
addf mux16.0 servo-thread
# connect radiobutton to jog-enable
setp axis.x.jog-vel-mode 0
setp axis.y.jog-vel-mode 0
setp axis.z.jog-vel-mode 0
net jog-enable-x pyvcp.jog-enable.X axis.x.jog-enable
net jog-enable-y pyvcp.jog-enable.Y axis.y.jog-enable
net jog-enable-z pyvcp.jog-enable.Z axis.z.jog-enable

# connect jog scale selector
setp mux16.0.in00 0
setp mux16.0.in01 0.000
setp mux16.0.in02 0.100
setp mux16.0.in03 0
setp mux16.0.in04 0.010
setp mux16.0.in05 0
setp mux16.0.in06 0
setp mux16.0.in07 0
setp mux16.0.in08 0.001
setp mux16.0.in09 0
setp mux16.0.in10 0

net selected-jog-scale mux16.0.out-f => axis.x.jog-scale
net selected-jog-scale mux16.0.out-f => axis.y.jog-scale
net selected-jog-scale mux16.0.out-f => axis.z.jog-scale

net jog-sel1 pyvcp.jog-scale.OFF => mux16.0.sel0
net jog-sel2 pyvcp.jog-scale.0.100 => mux16.0.sel1
net jog-sel3 pyvcp.jog-scale.0.010 => mux16.0.sel2
net jog-sel4 pyvcp.jog-scale.0.001 => mux16.0.sel3
The following user(s) said Thank You: 109jb

Please Log in or Create an account to join the conversation.

More
5 years 3 weeks ago #222283 by 109jb
Replied by 109jb on topic LinuxCNC + Orange Pi (allwincnc)
 

Did you do the isolcpus=1,2,3 idle=poll and the speed forced to max
 
I did do the "isolcpus-1,2,3 idle=poll", but don't know about the speed forced to max that you are referring to. How do you do this?

Please Log in or Create an account to join the conversation.

Time to create page: 0.444 seconds
Powered by Kunena Forum