- Posts: 97
- Thank you received: 0
Realtime delay with custom Mesa firmware
- TangentAudio
- Topic Author
- Offline
- Premium Member
-
Less
More
2 years 5 months ago #300118
by TangentAudio
Realtime delay with custom Mesa firmware was created by TangentAudio
I've got an old 7i43-400 EPP card that I'm using for testing on a conversion. I had no latency errors while I was using it with one of the stock servo-only firmware images (SV8.BIT). I needed to add a couple of stepgens on specific pins for testing, so I built FPGA firmware with a custom pinout.
The stepgens seem to work just fine, except that now, whenever I start linuxcnc, I get a realtime delay/latency error that I was not getting before. It happens right at launch every time.
Here are the modules enabled in my FPGA pin file. I've attached the whole thing as well.
Any obvious culprits I should look for? I don't have access to my config files at the moment (forgot to push them up to github last night), but I will be back at the machine later today.
thanks,
Steve
The stepgens seem to work just fine, except that now, whenever I start linuxcnc, I get a realtime delay/latency error that I was not getting before. It happens right at launch every time.
Here are the modules enabled in my FPGA pin file. I've attached the whole thing as well.
Code:
(HM2DPLLTag, x"00", ClockLowTag, x"01", HM2DPLLBaseRateAddr&PadT, HM2DPLLNumRegs, x"00", HM2DPLLMPBitMask),
(WatchDogTag, x"00", ClockLowTag, x"01", WatchDogTimeAddr&PadT, WatchDogNumRegs, x"00", WatchDogMPBitMask),
(IOPortTag, x"00", ClockLowTag, x"02", PortAddr&PadT, IOPortNumRegs, x"00", IOPortMPBitMask),
(QcountTag, x"02", ClockLowTag, x"06", QcounterAddr&PadT, QCounterNumRegs, x"00", QCounterMPBitMask),
(PWMTag, x"00", ClockHighTag, x"03", PWMValAddr&PadT, PWMNumRegs, x"00", PWMMPBitMask),
(StepGenTag, x"02", ClockLowTag, x"02", StepGenRateAddr&PadT, StepGenNumRegs, x"00", StepGenMPBitMask),
(AddrXTag, x"00", ClockLowTag, x"01", TranslateRAMAddr&PadT, TranslateNumRegs, x"00", TranslateMPBitMask),
(SSerialTag, x"00", ClockLowTag, x"01", SSerialCommandAddr&PadT, SSerialNumRegs, x"10", SSerialMPBitMask),
Any obvious culprits I should look for? I don't have access to my config files at the moment (forgot to push them up to github last night), but I will be back at the machine later today.
thanks,
Steve
Please Log in to join the conversation.
2 years 5 months ago #300128
by PCW
Replied by PCW on topic Realtime delay with custom Mesa firmware
I would check the tmax values, it may be that the I/O time
accessing the added functions is too great for the servo period
halcmd show param *.tmax
(when LinuxCNC is running)
These times are in CPU cycles on X86
accessing the added functions is too great for the servo period
halcmd show param *.tmax
(when LinuxCNC is running)
These times are in CPU cycles on X86
Please Log in to join the conversation.
Time to create page: 0.071 seconds
