Never tried it, but that should work. If not, create one more value mid-way. As the thermistor code is just python, you could hack your own as well without the table pretty simply.
I often thought of doing exactly what you did here, and I'll be stealing your config bits probably. :) Physical buttons for x,y,z feed and a home button are on the agenda too. On Sunday, July 2, 2017 at 2:11:32 PM UTC-4, Sag ich Dir nich wrote: > > okay i need a little advise here, i want to change the Thermometer Table > to linear, can i just delete all values between the first and the last and > machinekit calculates all inbetween itself? > > Am Sonntag, 2. Juli 2017 01:37:39 UTC+2 schrieb Sag ich Dir nich: >> >> Updated code: >> >> ########################### >> #Spindle and Feed Override# >> ########################### >> >> loadrt conv_float_s32 count=2 >> >> loadrt limit1 names=spindle-limit >> loadrt limit1 names=feed-limit >> >> newsig spindleoverride1 float >> newsig spindleoverride2 s32 >> newsig feedoverride1 float >> newsig feedoverride2 s32 >> >> addf conv_float_s32.0.funct servo-thread >> addf conv_float_s32.1.funct servo-thread >> addf spindle-limit servo-thread >> addf feed-limit servo-thread >> >> setp spindle-limit.max 172 >> #setp spindle-limit.min 0 >> setp feed-limit.max 172 >> #setp feed-limit.min 0 >> >> net spindlelimit spindle-limit.in <= Therm.ch-04.value >> >> net spindleoverride1 conv_float_s32.0.in <= spindle-limit.out >> #Therm.ch-04.value >> #net spindleoverride1 conv_float_s32.0.in <= Therm.ch-04.value >> net spindleoverride2 conv_float_s32.0.out => halui.spindle-override.counts >> >> net feedlimit feed-limit.in <= Therm.ch-05.value >> >> net feedoverride1 conv_float_s32.1.in <= feed-limit.out >> #Therm.ch-05.value >> #net feedoverride1 conv_float_s32.1.in <= Therm.ch-05.value >> net feedoverride2 conv_float_s32.1.out => halui.feed-override.counts >> >> setp halui.spindle-override.count-enable 1 >> setp halui.spindle-override.scale 0.01 >> >> setp halui.feed-override.count-enable 1 >> setp halui.feed-override.scale 0.01 >> >> >> Am Samstag, 1. Juli 2017 23:54:35 UTC+2 schrieb Sag ich Dir nich: >>> >>> got it working now :) >>> >>> thats my config: >>> >>> ########################### >>> #Spindle and Feed Override# >>> ########################### >>> >>> loadrt conv_float_s32 count=2 >>> >>> newsig spindleoverride1 float >>> newsig spindleoverride2 s32 >>> newsig feedoverride1 float >>> newsig feedoverride2 s32 >>> >>> addf conv_float_s32.0.funct servo-thread >>> addf conv_float_s32.1.funct servo-thread >>> >>> net spindleoverride1 conv_float_s32.0.in <= Therm.ch-04.value >>> net spindleoverride2 conv_float_s32.0.out => >>> halui.spindle-override.counts >>> >>> net feedoverride1 conv_float_s32.1.in <= Therm.ch-05.value >>> net feedoverride2 conv_float_s32.1.out => halui.feed-override.counts >>> >>> setp halui.spindle-override.count-enable 1 >>> setp halui.spindle-override.scale 0.01 >>> >>> setp halui.feed-override.count-enable 1 >>> setp halui.feed-override.scale 0.01 >>> >>> thank you very much for your help! >>> >>> >>> Am Samstag, 1. Juli 2017 23:18:17 UTC+2 schrieb Bas de Bruijn: >>>> >>>> >>>> >>>> On 1 Jul 2017, at 22:43, Sag ich Dir nich <[email protected]> wrote: >>>> >>>> excuse me, i had to make "_" out of "-" and add ".funct" to addf (which >>>> i did not know because in the manual it says "*conv-float-s32.**N*"). >>>> Now it is like: addf conv_float_s32.0.funct servo-thread >>>> >>>> now it loads without error but still no output. The thing is, the >>>> Halmeter pins "conv_float_s32.0.in" and "conv_float_s32.1.in" also >>>> have 0 as value but the signals have a value which i can change by turning >>>> the pot. >>>> >>>> >>>> Are you sure you have a signal going into your component? >>>> >>>> What does the following say: >>>> halcmd show pin conv_float_s32.0 >>>> >>>> The Parameters "motion.debug-s32-0" and "motion.debug-s32-1" also have >>>> a value of 0 >>>> >>>> Am Samstag, 1. Juli 2017 22:14:24 UTC+2 schrieb Bas de Bruijn: >>>>> >>>>> >>>>> >>>>> On 1 Jul 2017, at 21:52, Sag ich Dir nich <[email protected]> wrote: >>>>> >>>>> thank you, >>>>> >>>>> because i dont know what all these values mean, i will just copy what >>>>> it gives me. This is what it shows: >>>>> >>>>> >>>>> Well, read the last mail. That was about finding the correct name for >>>>> adding your components function to the servothread. >>>>> >>>>> The output shows the available functions of all instantiated >>>>> components you have. >>>>> >>>>> You add the function (find the name of the component function (in this >>>>> case it ends with .funct, but that could bet named otherwise), and add >>>>> that >>>>> to a thread. >>>>> (not going to do the reading for you ;) ) >>>>> >>>>> >>>>> machinekit@beaglebone:~$ halcmd show function >>>>> Exported Functions: >>>>> Comp Inst CodeAddr Arg FP Users Type Name >>>>> 1111 1113 0000b51d5aa9 0000b66a6eb0 YES 1 xthread >>>>> abs-speed.funct >>>>> 712 0000b53179b5 0000b66a78f8 NO 1 thread >>>>> bb_gpio.read >>>>> 712 0000b5317865 0000b66a78f8 NO 1 thread >>>>> bb_gpio.write >>>>> 1368 1370 0000b517dab9 0000b66a6600 YES 0 xthread >>>>> conv_float_s32.0.fu nct >>>>> 1368 1379 0000b517dab9 0000b66a65e8 YES 0 xthread >>>>> conv_float_s32.1.fu nct >>>>> 66 0000b66c46fd 000000000000 NO 0 user delinst >>>>> 1072 0000b51f9d0d 0000b66a6f10 NO 1 thread >>>>> eqep.update >>>>> 778 0000b52f09a1 0000b66a7780 YES 1 thread >>>>> hpg.capture-positio n >>>>> 778 0000b52f0a0d 0000b66a7780 YES 1 thread hpg.update >>>>> 1052 1054 0000b520ca79 0000b66a6fe0 YES 1 xthread >>>>> limit1.0.funct >>>>> 1052 1063 0000b520ca79 0000b66a6fc8 YES 1 xthread >>>>> limit1.1.funct >>>>> 350 0000b55e03d5 000000000000 YES 1 xthread >>>>> motion-command-hand ler >>>>> 350 0000b55e38c9 000000000000 YES 1 xthread >>>>> motion-controller >>>>> 1145 1340 0000b51a2afd 0000b66a6638 YES 1 xthread >>>>> near.0.funct >>>>> 66 0000b66c45ad 000000000000 NO 0 user newinst >>>>> 1098 1100 0000b51e6ac1 0000b66a6ed0 YES 1 xthread >>>>> pid-correction.func t >>>>> 1052 1192 0000b520ca79 0000b66a6d90 YES 1 xthread >>>>> pid-limit.funct >>>>> 980 982 0000b521e06d 0000b66a70a8 YES 1 xthread >>>>> pid.0.do-pid-calcs >>>>> 980 1017 0000b521e06d 0000b66a7000 YES 1 xthread >>>>> pid.1.do-pid-calcs >>>>> 1123 1514 0000b51c4a49 0000b66a63f0 YES 1 xthread >>>>> scale-current-feed. funct >>>>> 1123 1322 0000b51c4a49 0000b66a6688 YES 1 xthread >>>>> scale.0.funct >>>>> 1123 1331 0000b51c4a49 0000b66a6670 YES 0 xthread >>>>> scale.1.funct >>>>> 980 1157 0000b521e06d 0000b66a6da8 YES 1 xthread >>>>> speed-pid.do-pid-ca lcs >>>>> 1145 1147 0000b51a2afd 0000b66a6e50 YES 1 xthread >>>>> spindle-at-speed-de tect.funct >>>>> 1134 1136 0000b51b3a81 0000b66a6e70 YES 1 xthread >>>>> spindle-rpm-filter. funct >>>>> 1123 1125 0000b51c4a49 0000b66a6e90 YES 1 xthread >>>>> spindle-rps2rpm.fun ct >>>>> 1206 0000b518f355 0000b66a66d0 YES 0 thread >>>>> stepgen.capture-pos ition >>>>> 1206 0000b518f011 0000b66a66d0 NO 0 thread >>>>> stepgen.make-pulses >>>>> 1206 0000b518f4b1 0000b66a66d0 YES 0 thread >>>>> stepgen.update-freq >>>>> >>>>> machinekit@beaglebone:~$ >>>>> >>>>> >>>>> Am Samstag, 1. Juli 2017 21:31:06 UTC+2 schrieb Bas de Bruijn: >>>>>> >>>>>> >>>>>> >>>>>> On 1 Jul 2017, at 21:25, Sag ich Dir nich <[email protected]> >>>>>> wrote: >>>>>> >>>>>> yes i did, but it gives me an error, either with "servo-thread" or >>>>>> "addf conv-float-s32 servo-thread" it says: >>>>>> >>>>>> >>>>>> >>>>>> Below statement explains: >>>>>> hal_add_funct_to_thread:230 HAL error: function 'conv-float-s32' not >>>>>> found >>>>>> >>>>>> In a terminal type: >>>>>> halcmd show function >>>>>> >>>>>> This spits out all the functions (of components you instantiated) you >>>>>> can add to the servothread. It probably is named something like >>>>>> conv-float-s32.1.funct >>>>>> >>>>>> >>>>>> machinekit@beaglebone:~$ linuxcnc >>>>>> MACHINEKIT - 0.1 >>>>>> Machine configuration directory is >>>>>> '/home/machinekit/machinekit/configs/ARM.BeagleBone.CRAMPS' >>>>>> Machine configuration file is 'CRAMPS.ini' >>>>>> Starting Machinekit... >>>>>> io started >>>>>> halcmd loadusr io started >>>>>> cape-universal overlay found >>>>>> cape-bone-iio overlay found >>>>>> CRAMPS.hal:712: addf failed: hal_add_funct_to_thread:230 HAL error: >>>>>> function 'conv-float-s32' not found >>>>>> Shutting down and cleaning up Machinekit... >>>>>> exiting HAL component Therm >>>>>> Cleanup done >>>>>> Machinekit terminated with an error. You can find more information >>>>>> in the log: >>>>>> /home/machinekit/linuxcnc_debug.txt >>>>>> and >>>>>> /home/machinekit/linuxcnc_print.txt >>>>>> as well as in the output of the shell command 'dmesg' and in the >>>>>> terminal >>>>>> machinekit@beaglebone:~$ >>>>>> >>>>>> >>>>>> isnt it the function called "conv_float_s32.so"? if yes, i have that >>>>>> file in the xenomai directory. >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> Am Samstag, 1. Juli 2017 18:51:24 UTC+2 schrieb Bas de Bruijn: >>>>>>> >>>>>>> >>>>>>> >>>>>>> On 1 Jul 2017, at 17:19, Sag ich Dir nich <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>> i can see, that the value or raw input from the thermistor is going >>>>>>> into conv-float-s32.1.in but conv-float-s32.1.out is always zero, >>>>>>> why is this? >>>>>>> >>>>>>> >>>>>>> Did you add the function to the servo thread? >>>>>>> >>>>>>> >>>>>>> Am Mittwoch, 28. Juni 2017 17:28:44 UTC+2 schrieb Sag ich Dir nich: >>>>>>>> >>>>>>>> hello, i tried feeding the thermistor value to >>>>>>>> halui.spindle-override.counts but i got an error "can not add float to >>>>>>>> s32" >>>>>>>> so i added a rt component called conv_float_s32 and technically it >>>>>>>> worked >>>>>>>> and started without error. I can see changes (very non-linear!) in adc >>>>>>>> value therm.ch04.raw from 1 to 4010 when i turn the pot but not on >>>>>>>> halui.spindle-override.counts(also no change in spindle speed when i >>>>>>>> turn >>>>>>>> the pot). What do i have to add to let the adc value change the counts >>>>>>>> from >>>>>>>> halui? >>>>>>>> >>>>>>>> *this is my code:* >>>>>>>> >>>>>>>> # Python user-mode HAL module to read ADC value and generate a >>>>>>>> thermostat output for PWM >>>>>>>> # c = analog input channel and thermistor table >>>>>>>> loadusr -Wn Therm hal_temp_bbb -n Therm -c >>>>>>>> 04:epcos_B57560G1104,05:epcos_B57560G1104 -b CRAMPS >>>>>>>> >>>>>>>> ########################### >>>>>>>> #Spindle and Feed Override# >>>>>>>> ########################### >>>>>>>> >>>>>>>> loadrt conv_float_s32 count=2 >>>>>>>> >>>>>>>> #newsig bed.temp.meas float >>>>>>>> #newsig Feed.override float >>>>>>>> >>>>>>>> net conv-float-s32.1.in <= Therm.ch-04.value >>>>>>>> net conv-float-s32.1.out => halui.spindle-override.counts >>>>>>>> >>>>>>>> setp halui.spindle-override.scale 0.1 >>>>>>>> #net bed.temp.meas <= Therm.ch-04.value >>>>>>>> #net bed.temp.meas => halui.spindle-override.counts# <= Therm.ch >>>>>>>> -04.value >>>>>>>> >>>>>>>> #setp halui.feed-override.scale 0.01 >>>>>>>> #net Spindle.override <= Therm.ch-05.value >>>>>>>> #net Feedoverride halui.feed-override.counts# <= Therm.ch-05.value >>>>>>>> >>>>>>>> >>>>>>>> thanks >>>>>>>> >>>>>>>> Am Samstag, 15. Oktober 2016 18:12:19 UTC+2 schrieb Charles >>>>>>>> Steinkuehler: >>>>>>>>> >>>>>>>>> On 10/14/2016 6:11 PM, Sag ich Dir nich wrote: >>>>>>>>> > Hi, >>>>>>>>> > >>>>>>>>> > i have some questions about the file >>>>>>>>> > >>>>>>>>> > from the "readtemp.py" file: >>>>>>>>> > # The BeBoPr board thermistor input has one side grounded and >>>>>>>>> the other side >>>>>>>>> >>>>>>>>> The BeBoPr is probably the most complex example to use as a >>>>>>>>> reference, >>>>>>>>> since it has a more complicated input circuit than any of the >>>>>>>>> other >>>>>>>>> boards. >>>>>>>>> >>>>>>>>> Basically, you need to create a routine that converts a raw ADC >>>>>>>>> value >>>>>>>>> into the resistance of your variable resistor. How to do this >>>>>>>>> depends >>>>>>>>> on how you have the resistor connected and the input circuitry (if >>>>>>>>> any) between the ADC and your variable resistor. >>>>>>>>> >>>>>>>>> If you are using a standard board (BeBoPr or CRAMPS or whatever) >>>>>>>>> you >>>>>>>>> can use the routine for that board to get a resistance value as >>>>>>>>> long >>>>>>>>> as you haven't changed any of the input circuitry. >>>>>>>>> >>>>>>>>> What you do with the resistance value from there on is up to you, >>>>>>>>> you >>>>>>>>> can feed it directly into HAL as a value, convert it to a >>>>>>>>> percentage, >>>>>>>>> apply a linear or log scale to the value (which might be needed to >>>>>>>>> get >>>>>>>>> the response curve you want from various dial positions which >>>>>>>>> again >>>>>>>>> will depend on the type of potentiometer you are using and the >>>>>>>>> input >>>>>>>>> circuitry). >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Charles Steinkuehler >>>>>>>>> [email protected] >>>>>>>>> >>>>>>>> -- >>>>>>> website: http://www.machinekit.io blog: http://blog.machinekit.io >>>>>>> github: https://github.com/machinekit >>>>>>> --- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "Machinekit" group. >>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>> send an email to [email protected]. >>>>>>> Visit this group at https://groups.google.com/group/machinekit. >>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>> >>>>>>> -- >>>>>> website: http://www.machinekit.io blog: http://blog.machinekit.io >>>>>> github: https://github.com/machinekit >>>>>> --- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Machinekit" group. >>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>> send an email to [email protected]. >>>>>> Visit this group at https://groups.google.com/group/machinekit. >>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>> >>>>>> -- >>>>> website: http://www.machinekit.io blog: http://blog.machinekit.io >>>>> github: https://github.com/machinekit >>>>> --- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "Machinekit" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> Visit this group at https://groups.google.com/group/machinekit. >>>>> For more options, visit https://groups.google.com/d/optout. >>>>> >>>>> -- >>>> website: http://www.machinekit.io blog: http://blog.machinekit.io >>>> github: https://github.com/machinekit >>>> --- >>>> You received this message because you are subscribed to the Google >>>> Groups "Machinekit" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> Visit this group at https://groups.google.com/group/machinekit. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>>> -- website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit --- You received this message because you are subscribed to the Google Groups "Machinekit" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. Visit this group at https://groups.google.com/group/machinekit. For more options, visit https://groups.google.com/d/optout.
