.. for uspace systems with /dev/spidev. This is mildly tested on odroid
u3 with a 7i43 custom firmware and with a real 7i90.
Note that on many systems out there, including odroid, /dev/spidev is lousy
for realtime performance. Some kernel-side changes, available at
https://github.com/jepler/odroid-linux.git in branch odroid-3.8.13-rt
give good performance on my odroid u3 system.
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
This removes mention of the pet_watchdog function from all docs, and
updates some out-of-date information about the watchdog.
But we still export the pet_watchdog function to HAL, for now. It does
nothing but complain about its own obsolescence, watchdog-petting happens
in hm2's write function now. We should remove pet_watchdog before 2.7.
Signed-off-by: Sebastian Kuzminsky <seb@highlab.com>
* Don't require specification of MAC address at all. Instead,
request the hardware address from the attached hostmot2 ethernet
board. (of all the ways to get the MAC address automatically,
this seemed like the best one. Alternate ways involved parsing
/proc/net/arp; or using SIOCGARP which requires correctly filling
in the interface name that the hostmot2 card is connected to, and
also still requires sending a packet to the board)
* When SIOCSARP (set arp entry) fails, report it; this will happen if
you did not "sudo make setuid".
* When an ARP entry was successfully pinned in init_net, delete it
in close_net with SIOCDARP.
This is almost entirely a copy of the 7i43 driver, with a few tiny tweaks.
Should be integrated with the 7i43 driver so they share more code,
but that can happen in the master branch later.
The hm2 driver exports pins called "hm2_BLAH.X.encoder.YY.rawcounts",
but the manpage incorrectly called them ".rawcount". Fix the manpage
to match the existing pin name.
The recent addition of support for table mode to the Hostmot2 stepgen had an unfortunate
and unintended consequence. Some of the existing bitfiles did have wide stepgens included
but this was masked by the driver. Users that have configured these stepgen pins as GPIO
are likely to find that important parts of their machines no longer work.
This patch adds an extra parameter to the hm2 modparams so that system builders
have to actively choose to use the wide stepgens.
Signed-off-by: andy pugh <andy@bodgesoc.org>
ver. 1.0.2
- solved a spindle button issue and included a check so it
is no possible to exceed the limits of the spindle with
override values. i.e. a spindle has a max of 6000 rpm and
the user enters S 5500 M3 now he can increase the spindle
override, but it will be limited by 109 %, because otherwise
he would ask the spindle to run faster than allowed.
This only works for firmwares that offer that facility for more than 2 pins
(which I do not think is any of the ones in the wild)
Signed-off-by: Andy Pugh <andy@bodgesoc.org>
If no format length was specified then the formatting would break for any value with a zero in its representation.
Signed-off-by: Andy Pugh <andy@bodgesoc.org>
Fix some bugs in the lcd component
Signed-off-by: Andy Pugh <andy@bodgesoc.org>
Update the manpage to show that the ioaddr and ioaddr_hi arguments
(and the others) all take arrays, not single scalars.
Thanks to Peter Wallace for the bug report.
when motion creates the base and servo thread,
the base thread doesn't support floating point.
When using brushless DC motors, it is desireable
to run the bldc component faster than the servo
thread, but it needs FP. Added an module parameter
to motion that tells it to create a floating point
capable base thread. Default behavior is the same
as before, so change is transparent.
We run mandb to index all our manpages. mandb complains about every
non-manpage file it finds in the man directory tree. This includes our
.gitignore files.
This commit collects all the .gitignore info into the .gitignore file
in docs/man, just outside of where mandb starts paying attention and
complaining.
The kernel API call used by matrix_kb may not be realtime-safe. It is not easy to tell
but at least one call that jepler found looks suspicious. This commit removes any attempt
to create keystroke events from the component.
There may be a userspace component to do the job in time.
by default (motion.ferror-mode == 0), ferror is computed based on the
last commanded position, which is problematic with velocity-mode drives
if motion.ferror-mode == 1, ferror is calculated based on the new commanded
position, and following error checks are postponed until after the new
commanded position is calculated.
see also: http://www.linuxcnc.org/index.php/english/forum/search?q=servo+tuning+advice&childforums=1
This one goes up to quadruple clicks. I find it useful for overloading
the functionality of the hard buttons on the control panel of my mill.
For example, in my config, multi-clicks on the Z+ jog button are detected
and routed to halui, where they trigger MDI commands:
Double-clicking runs "quill up".
Triple-clicking runs my "present work" subroutine: quill up and
bring the table to the front and center for operator access.
Quadruple-clicking runs my "stow" subroutine: quill up and bring
the table to the back and center for out-of-the way storage at
the end of the night.
A debounce component may be advisable between the input signal and the
multiclick component.