Remora - ethernet NVEM / EC300 / EC500 cnc board
- scotta
- Topic Author
- Offline
- Platinum Member
Less
More
- Posts: 890
- Thank you received: 464
05 Aug 2023 21:59 #277062
by scotta
Replied by scotta on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
Thanks for sharing, and yes the Pico is a super easy way. I've use my Pico Probe and received a Pico last week with the intent to do a YouTube video to demonstrate how to set it up and flash the board.
I really think I should take down the stuff relating to the DAPlink. It's causing more issues then it solved.
CMSIS-DAP has been the most successful but converting an ST-Link is a pain.
There is a solution, a PicoProbe! Just tested and works out of the box with pyOCD.
pyocd remora-rt1052-1.0.0.bin --target mimxrt1050_quadspi
Brand new to LinuxCNC. Couldn't find any Mesa controller in stock and bumped into Scott's YouTube videos. Ordered an EC300, which arrived today. I didn't have any ST-Link but had a few RPI Pico boards so I gave it a try. Worked first time. Now I have a long and steep learning curve ahead on how to configure it all
~/Downloads ❯ pyocd flash ./remora-rt1052-1.1.0.bin --target mimxrt1050_quadspi 0000751 I Loading /xxx/xxx/Downloads/remora-rt1052-1.1.0.bin [load_cmd] 100% 0008795 I Erased 0 bytes (0 sectors), programmed 0 bytes (0 pages), skipped 321536 bytes (1256 pages) at 39.07 kB/s [loader] [attachment=54853]IMG_1386.jpeg[/attachment] [attachment=54851]IMG_1387.jpeg[/attachment] [attachment=54852]IMG_1388.jpeg[/attachment]
Please Log in or Create an account to join the conversation.
- Dogmaphobic
- Offline
- New Member
Less
More
- Posts: 3
- Thank you received: 2
05 Aug 2023 22:07 #277063
by Dogmaphobic
Thanks a bunch for all the work!
Replied by Dogmaphobic on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
Yeah, that was the easy part. I can the ping the board fine but whenever I jog any axis, I get an error (can't remember the exact error right now and I'm not in front of it). I've ordered an RS232-USB cable so I can see the board's output. It takes at least a week to get anything here so it's in the back burner.
Thanks for sharing, and yes the Pico is a super easy way. I've use my Pico Probe and received a Pico last week with the intent to do a YouTube video to demonstrate how to set it up and flash the board.
Thanks a bunch for all the work!
Please Log in or Create an account to join the conversation.
- raf1110
- Offline
- Senior Member
Less
More
- Posts: 46
- Thank you received: 5
06 Aug 2023 11:05 #277103
by raf1110
Replied by raf1110 on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
Hi
Where this part of code needs adding:#spindle DAC 0-10 control
loadrt scale count=1
addf scale.0 servo-thread
setp scale.0.gain 1 #this will make m3 s1000 give 100% output and m3 s100 10%
net spindle-speed-scale spindle.0.speed-out => scale.0.in
net spindle-speed-abs scale.0.out => abs.0.in
net spindle-speed-DAC abs.0.out => remora.SP.3
Do I need to upload config.txt with python_upload to made changes if .ini file changes?
After uploading default congfig.txt I had no responses from E-stop but I can move axis within soft limits. Seems inputs are not sensing.
I have noticed also my board V5 have COM instaead of 12V comparing to V2. Would this mean I need invert all pins?
Where this part of code needs adding:#spindle DAC 0-10 control
loadrt scale count=1
addf scale.0 servo-thread
setp scale.0.gain 1 #this will make m3 s1000 give 100% output and m3 s100 10%
net spindle-speed-scale spindle.0.speed-out => scale.0.in
net spindle-speed-abs scale.0.out => abs.0.in
net spindle-speed-DAC abs.0.out => remora.SP.3
Do I need to upload config.txt with python_upload to made changes if .ini file changes?
After uploading default congfig.txt I had no responses from E-stop but I can move axis within soft limits. Seems inputs are not sensing.
I have noticed also my board V5 have COM instaead of 12V comparing to V2. Would this mean I need invert all pins?
Please Log in or Create an account to join the conversation.
- Eugene64
- Offline
- New Member
Less
More
- Posts: 10
- Thank you received: 0
07 Aug 2023 16:56 - 08 Aug 2023 07:01 #277254
by Eugene64
Replied by Eugene64 on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
Hello, please help me configure hal and ini for the 2hss86 engine drivers using the standard remora settings does not work. Please, if there is, publish such a hal file.
Last edit: 08 Aug 2023 07:01 by Eugene64.
Please Log in or Create an account to join the conversation.
- scotta
- Topic Author
- Offline
- Platinum Member
Less
More
- Posts: 890
- Thank you received: 464
09 Aug 2023 00:28 #277384
by scotta
Replied by scotta on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
Possible to have some further details of the issue(s)?Hello, please help me configure hal and ini for the 2hss86 engine drivers using the standard remora settings does not work. Please, if there is, publish such a hal file.
Please Log in or Create an account to join the conversation.
- Eugene64
- Offline
- New Member
Less
More
- Posts: 10
- Thank you received: 0
09 Aug 2023 10:55 #277421
by Eugene64
Replied by Eugene64 on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
When sending a command, the motor moves more than the set value, then returns to this value what settings are needed to turn the motor to the values I need, here are my ini settings -
[EMC]
MACHINE = Remora-NVEM
DEBUG = 0
VERSION = 1.1
[DISPLAY]
DISPLAY = axis
CYCLE_TIME = 0.100
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
ARCDIVISION = 64
MAX_FEED_OVERRIDE = 10
MAX_SPINDLE_OVERRIDE = 1.0
DEFAULT_LINEAR_VELOCITY = 50.00
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 125.00
DEFAULT_ANGULAR_VELOCITY = 36.00
MIN_ANGULAR_VELOCITY = 0
MAX_ANGULAR_VELOCITY = 45.00
PROGRAM_PREFIX = ~/linuxcnc/nc_files
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
INCREMENTS = 50mm 10mm 5mm 1mm .5mm .1mm .05mm .01mm
[KINS]
JOINTS = 3
#KINEMATICS =trivkins coordinates=XYZ kinstype=BOTH
# kinstype=BOTH means that the machine can move in joint mode and world mode
# not good for gantrys or double z axes.
KINEMATICS =trivkins coordinates=XYZ
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[RS274NGC]
PARAMETER_FILE = linuxcnc.var
SUBROUTINE_PATH = ~/linuxcnc/subroutines
USER_M_PATH = ~/linuxcnc/m_codes
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 0
SERVO_PERIOD = 1000000
[HAL]
HALFILE = remora-nvem.hal
# remove comment from next line to enable the NVEM NVMPG
#HALFILE = remora-nvem-mpg.hal
POSTGUI_HALFILE = postgui_call_list.hal
HALUI = halui
[TRAJ]
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_LINEAR_VELOCITY = 100.00
MAX_LINEAR_VELOCITY = 200.00
NO_FORCE_HOMING = 1
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[AXIS_X]
MAX_VELOCITY = 175
MAX_ACCELERATION = 2000.0
MIN_LIMIT = -25.0
MAX_LIMIT = 300.0
[JOINT_0]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -25.0
MAX_LIMIT = 300.0
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
STEPGEN_MAXACCEL = 2200.0
SCALE = 160.0
FERROR = 1.0
MIN_FERROR = 0.5
#HOME_SEARCH_VEL = -10.0
#HOME_LATCH_VEL = -3.0
#HOME_FINAL_VEL = 20
#HOME_IGNORE_LIMITS = YES
#HOME_USE_INDEX = NO
#HOME_OFFSET = -25.0
#HOME = 0.0
#HOME_SEQUENCE = 1
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0
[AXIS_Y]
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
MIN_LIMIT = -0.01
MAX_LIMIT = 300.0
[JOINT_1]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -5.0
MAX_LIMIT = 300.0
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
STEPGEN_MAXACCEL = 2200.0
SCALE = 160.0
FERROR = 1.0
MIN_FERROR = 0.5
#HOME_SEARCH_VEL = -10.0
#HOME_LATCH_VEL = -3.0
#HOME_FINAL_VEL = 20
#HOME_IGNORE_LIMITS = YES
#HOME_USE_INDEX = NO
#HOME_OFFSET = -20.0
#HOME = -10.0
#OME_SEQUENCE = 2
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0
[AXIS_Z]
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
MIN_LIMIT = -10
MAX_LIMIT = 280
[JOINT_2]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -10
MAX_LIMIT = 280
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
STEPGEN_MAXACCEL = 2200.0
SCALE = 160.0
FERROR = 1.0
MIN_FERROR = 0.5
#HOME_SEARCH_VEL = -10.0
#HOME_LATCH_VEL = -3.0
#HOME_FINAL_VEL = 20
#HOME_IGNORE_LIMITS = YES
#HOME_USE_INDEX = NO
#HOME_OFFSET = -20.0
#HOME = -10.0
#OME_SEQUENCE = 3
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0
[EMC]
MACHINE = Remora-NVEM
DEBUG = 0
VERSION = 1.1
[DISPLAY]
DISPLAY = axis
CYCLE_TIME = 0.100
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
ARCDIVISION = 64
MAX_FEED_OVERRIDE = 10
MAX_SPINDLE_OVERRIDE = 1.0
DEFAULT_LINEAR_VELOCITY = 50.00
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 125.00
DEFAULT_ANGULAR_VELOCITY = 36.00
MIN_ANGULAR_VELOCITY = 0
MAX_ANGULAR_VELOCITY = 45.00
PROGRAM_PREFIX = ~/linuxcnc/nc_files
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
INCREMENTS = 50mm 10mm 5mm 1mm .5mm .1mm .05mm .01mm
[KINS]
JOINTS = 3
#KINEMATICS =trivkins coordinates=XYZ kinstype=BOTH
# kinstype=BOTH means that the machine can move in joint mode and world mode
# not good for gantrys or double z axes.
KINEMATICS =trivkins coordinates=XYZ
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[RS274NGC]
PARAMETER_FILE = linuxcnc.var
SUBROUTINE_PATH = ~/linuxcnc/subroutines
USER_M_PATH = ~/linuxcnc/m_codes
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 0
SERVO_PERIOD = 1000000
[HAL]
HALFILE = remora-nvem.hal
# remove comment from next line to enable the NVEM NVMPG
#HALFILE = remora-nvem-mpg.hal
POSTGUI_HALFILE = postgui_call_list.hal
HALUI = halui
[TRAJ]
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_LINEAR_VELOCITY = 100.00
MAX_LINEAR_VELOCITY = 200.00
NO_FORCE_HOMING = 1
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[AXIS_X]
MAX_VELOCITY = 175
MAX_ACCELERATION = 2000.0
MIN_LIMIT = -25.0
MAX_LIMIT = 300.0
[JOINT_0]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -25.0
MAX_LIMIT = 300.0
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
STEPGEN_MAXACCEL = 2200.0
SCALE = 160.0
FERROR = 1.0
MIN_FERROR = 0.5
#HOME_SEARCH_VEL = -10.0
#HOME_LATCH_VEL = -3.0
#HOME_FINAL_VEL = 20
#HOME_IGNORE_LIMITS = YES
#HOME_USE_INDEX = NO
#HOME_OFFSET = -25.0
#HOME = 0.0
#HOME_SEQUENCE = 1
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0
[AXIS_Y]
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
MIN_LIMIT = -0.01
MAX_LIMIT = 300.0
[JOINT_1]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -5.0
MAX_LIMIT = 300.0
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
STEPGEN_MAXACCEL = 2200.0
SCALE = 160.0
FERROR = 1.0
MIN_FERROR = 0.5
#HOME_SEARCH_VEL = -10.0
#HOME_LATCH_VEL = -3.0
#HOME_FINAL_VEL = 20
#HOME_IGNORE_LIMITS = YES
#HOME_USE_INDEX = NO
#HOME_OFFSET = -20.0
#HOME = -10.0
#OME_SEQUENCE = 2
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0
[AXIS_Z]
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
MIN_LIMIT = -10
MAX_LIMIT = 280
[JOINT_2]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -10
MAX_LIMIT = 280
MAX_VELOCITY = 175.0
MAX_ACCELERATION = 2000.0
STEPGEN_MAXACCEL = 2200.0
SCALE = 160.0
FERROR = 1.0
MIN_FERROR = 0.5
#HOME_SEARCH_VEL = -10.0
#HOME_LATCH_VEL = -3.0
#HOME_FINAL_VEL = 20
#HOME_IGNORE_LIMITS = YES
#HOME_USE_INDEX = NO
#HOME_OFFSET = -20.0
#HOME = -10.0
#OME_SEQUENCE = 3
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0
Please Log in or Create an account to join the conversation.
- damancuso
- Offline
- New Member
Less
More
- Posts: 1
- Thank you received: 1
10 Aug 2023 09:40 - 10 Aug 2023 09:46 #277519
by damancuso
Replied by damancuso on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
Hi Scott,
First I'd like to thank you for your huge work, I've just discovered and I think it's great!
I may be a bit late to the flashing party, and I'm not sure if you or someone already did it, but I've managed to flash the RT1052 NVEM, I'm going to try soon with the EC500 with J-Link. So for people that already use J-Link this may be an easier path than converting other probes to DAPLink:
I'm using J-Link EDU with the latest FW at the time of writing (SEGGER J-Link Commander V7.90).
1) J-Link uses the target VCC rail to drive the level translators for the IOs, to I'm using the last pin on the connector to connect to VRef, which happens to go to 3.3V when you press the button to put the board into flashing mode.
2) jlinkexe -device 'MIMXRT1052XXXXB?BankAddr=0x60000000&Loader=QSPI’
3) J-Link>exec EnableEraseAllFlashBanks
4) J-Link>LoadFile remora-rt1052-EC300-020.bin, 0x60000000
It seems that SEGGER added the flash loader algo but the documentation is a bit hidden ( wiki.segger.com/J-Link_Multiple_Flashloa...mmand_line_parameter and wiki.segger.com/i.MXRT1050)
Next steps will be to try it on the EC500 and set everything for my machine. Some pictures here below. I've designed this vertical mill from scratch, with zero knowledge of machining or machine design (I have an Electronics background not mechanics), but so far it's working great and I've been struggling with Mach3 for a few months (a piece of buggy old shht) so I've finally decided to get into LinuxCNC.
By the way, if anyone is interesting on building something similar, I could share the design files and some experience, just let me know.
Cheers!
First I'd like to thank you for your huge work, I've just discovered and I think it's great!
I may be a bit late to the flashing party, and I'm not sure if you or someone already did it, but I've managed to flash the RT1052 NVEM, I'm going to try soon with the EC500 with J-Link. So for people that already use J-Link this may be an easier path than converting other probes to DAPLink:
I'm using J-Link EDU with the latest FW at the time of writing (SEGGER J-Link Commander V7.90).
1) J-Link uses the target VCC rail to drive the level translators for the IOs, to I'm using the last pin on the connector to connect to VRef, which happens to go to 3.3V when you press the button to put the board into flashing mode.
2) jlinkexe -device 'MIMXRT1052XXXXB?BankAddr=0x60000000&Loader=QSPI’
3) J-Link>exec EnableEraseAllFlashBanks
4) J-Link>LoadFile remora-rt1052-EC300-020.bin, 0x60000000
It seems that SEGGER added the flash loader algo but the documentation is a bit hidden ( wiki.segger.com/J-Link_Multiple_Flashloa...mmand_line_parameter and wiki.segger.com/i.MXRT1050)
Next steps will be to try it on the EC500 and set everything for my machine. Some pictures here below. I've designed this vertical mill from scratch, with zero knowledge of machining or machine design (I have an Electronics background not mechanics), but so far it's working great and I've been struggling with Mach3 for a few months (a piece of buggy old shht) so I've finally decided to get into LinuxCNC.
By the way, if anyone is interesting on building something similar, I could share the design files and some experience, just let me know.
Cheers!
Attachments:
Last edit: 10 Aug 2023 09:46 by damancuso.
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- scotta
- Topic Author
- Offline
- Platinum Member
Less
More
- Posts: 890
- Thank you received: 464
10 Aug 2023 21:43 #277572
by scotta
Replied by scotta on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
Thanks for the details of the J-Link flashing method. This would be a good addition to the documentation when I finally get to updating it.
Nice mill BTW, would love that in my shed!
Nice mill BTW, would love that in my shed!
The following user(s) said Thank You: damancuso
Please Log in or Create an account to join the conversation.
- Eugene64
- Offline
- New Member
Less
More
- Posts: 10
- Thank you received: 0
14 Aug 2023 13:23 #277953
by Eugene64
Replied by Eugene64 on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
Why does my servo motor continue to move beyond the desired coordinate and then return to the desired coordinate in a pendulum-like motion before stopping? On the LinuxCNC display, the toolhead has reached the desired coordinate, but the servo motor continues to undergo pendulum-like motion. The motor used is an 86HSE156-12N-BC38 with an encoder, connected to a 2HSS86 driver, which is then connected to an nvem v2 controller running the Remora firmware, downloaded from this link:
github.com/scottalford75/Remora-NVEM/tre...-NVEM-STM32/Firmware
. For LinuxCNC, I used the components downloaded from this link:
github.com/scottalford75/Remora/tree/fea...omponents/Remora-eth
. The basic configuration settings are based on this link:
github.com/scottalford75/Remora/tree/fea...es/remora-nvem-basic
. What settings and configurations can I use to ensure that my servo motor stops at the desired coordinate without pendulum-like motion? Thank you in advance for your help. The first video demonstrates the motion of the servo motor, while the second video and photos show my bandsaw machine, which I have decided to operate using LinuxCNC. drive.google.com/file/d/1jJDNG6hYWBoRETlz9izDYw1h9rfm58Wx/view drive.google.com/file/d/1jM1X9l3MrauTQSL...gvX_5EcQu/view?pli=1
Please Log in or Create an account to join the conversation.
- cakeslob
- Offline
- Platinum Member
Less
More
- Posts: 790
- Thank you received: 230
14 Aug 2023 13:46 - 15 Aug 2023 01:02 #277956
by cakeslob
Replied by cakeslob on topic Remora - ethernet NVEM / EC300 / EC500 cnc board
Hey, I cant watch the video right now but I will go out on a limb here
github.com/cakeslob/Remora/blob/nucleo_s...c/remora-xyz.hal#L33
github.com/cakeslob/Remora/blob/nucleo_s...c/remora-xyz.ini#L96
the 3 lines about gain and deadband, add them to your ini/hal file for each joint. you may need to adjust the values
edit, holy shit that overshoots by a lot, but try that thing I said
that machine looks awesome btw
github.com/cakeslob/Remora/blob/nucleo_s...c/remora-xyz.hal#L33
github.com/cakeslob/Remora/blob/nucleo_s...c/remora-xyz.ini#L96
the 3 lines about gain and deadband, add them to your ini/hal file for each joint. you may need to adjust the values
edit, holy shit that overshoots by a lot, but try that thing I said
that machine looks awesome btw
Last edit: 15 Aug 2023 01:02 by cakeslob.
Please Log in or Create an account to join the conversation.
Time to create page: 0.341 seconds