request to test: rFSM beta5 (dev branch)

Dear rFSM users,

I'd appreciate any feedback on the upcoming beta5, to be found in the
dev branch [1].

There shouldn't be many (if any) visible changes:

- cleaned up hook handling: hide the twiddling with utils.advise
behind pre_step_hook_add/post_step_hook_add API. For normal users the
only place you will get in contact with this is for the RTT fqn
status string port, that should then read:

rfsm.post_step_hook_add(fsm, rfsm_rtt.gen_write_fqn(fqn_out))

I'll update the cookbook once this goes into master.

- consolidation of simple state and composite state primitives into
state. The old names are still supported, but you should replace
them eventually. Rationale: wether something is composite or not is
defined by it having substates or not, not by choosing the
primitive (Thanks to Herman for this insight). Apart from that the
differences were too small anyway to justify two primitives (only
non-composites (aka leaf-states) can have a doo function.)

- Some first steps towards online vizualization: you'll notice an
rfsm-proto module. Ignore for now.

Thanks!

Best regards
Markus

[1] https://github.com/kmarkus/rFSM.git

Ruben Smits's picture

request to test: rFSM beta5 (dev branch)

Hi Markus,

On Mon, Feb 20, 2012 at 5:10 PM, Markus Klotzbuecher <
markus [dot] klotzbuecher [..] ...> wrote:

> Dear rFSM users,
>
> I'd appreciate any feedback on the upcoming beta5, to be found in the
> dev branch [1].
>
>
Attached is a patch that makes the checking of the type of the port that is
given as an argument to rfsm_rtt.gen_write_fqn robust to changes of the
typename of string.

Ruben

> There shouldn't be many (if any) visible changes:
>
> - cleaned up hook handling: hide the twiddling with utils.advise
> behind pre_step_hook_add/post_step_hook_add API. For normal users the
> only place you will get in contact with this is for the RTT fqn
> status string port, that should then read:
>
> rfsm.post_step_hook_add(fsm, rfsm_rtt.gen_write_fqn(fqn_out))
>
> I'll update the cookbook once this goes into master.
>
> - consolidation of simple state and composite state primitives into
> state. The old names are still supported, but you should replace
> them eventually. Rationale: wether something is composite or not is
> defined by it having substates or not, not by choosing the
> primitive (Thanks to Herman for this insight). Apart from that the
> differences were too small anyway to justify two primitives (only
> non-composites (aka leaf-states) can have a doo function.)
>
> - Some first steps towards online vizualization: you'll notice an
> rfsm-proto module. Ignore for now.
>
> Thanks!
>
> Best regards
> Markus
>
> [1] https://github.com/kmarkus/rFSM.git
> --
> Orocos-Dev mailing list
> Orocos-Dev [..] ...
> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev
>

request to test: rFSM beta5 (dev branch)

On Tue, Feb 21, 2012 at 11:33:12AM +0100, Ruben Smits wrote:
>
>
> On Tue, Feb 21, 2012 at 11:30 AM, Markus Klotzbuecher <
> markus [dot] klotzbuecher [..] ...> wrote:
>
> Hi Ruben,
>
> On Tue, Feb 21, 2012 at 11:24:37AM +0100, Ruben Smits wrote:
> >
> > On Mon, Feb 20, 2012 at 5:10 PM, Markus Klotzbuecher <
> > markus [dot] klotzbuecher [..] ...> wrote:
> >
> > Dear rFSM users,
> >
> > I'd appreciate any feedback on the upcoming beta5, to be found in the
> > dev branch [1].
> >
> >
> >
> >
> > I'm trying out the dev branch, no luck so far. I noticed a regression: a
> > perfectly fine working before fsm now fails to load with the following
> error:
> >
> > 2.039 [ ERROR ][rttlua-gnulinux::main()] LuaComponent
> > 'cartesian_motion_supervisor': error calling function startHook: /home/
> rsmits/
> > ros/rfsm/rfsm.lua:412: bad argument #1 to 'insert' (table expected, got
> nil)
> >
> > I noticed this regression for all my statemachines. not only the one I
> show
> > above.
>
> Thanks for testing. Could you send me the smallest of your fsm that
> fails?

I pushed a fix (I forgot to update seqand after the csta/sista
consolidation). Can you give it another try?

Markus

Ruben Smits's picture

request to test: rFSM beta5 (dev branch)

On Tue, Feb 21, 2012 at 12:05 PM, Markus Klotzbuecher <
markus [dot] klotzbuecher [..] ...> wrote:

> On Tue, Feb 21, 2012 at 11:33:12AM +0100, Ruben Smits wrote:
> >
> >
> > On Tue, Feb 21, 2012 at 11:30 AM, Markus Klotzbuecher <
> > markus [dot] klotzbuecher [..] ...> wrote:
> >
> > Hi Ruben,
> >
> > On Tue, Feb 21, 2012 at 11:24:37AM +0100, Ruben Smits wrote:
> > >
> > > On Mon, Feb 20, 2012 at 5:10 PM, Markus Klotzbuecher <
> > > markus [dot] klotzbuecher [..] ...> wrote:
> > >
> > > Dear rFSM users,
> > >
> > > I'd appreciate any feedback on the upcoming beta5, to be found
> in the
> > > dev branch [1].
> > >
> > >
> > >
> > >
> > > I'm trying out the dev branch, no luck so far. I noticed a
> regression: a
> > > perfectly fine working before fsm now fails to load with the
> following
> > error:
> > >
> > > 2.039 [ ERROR ][rttlua-gnulinux::main()] LuaComponent
> > > 'cartesian_motion_supervisor': error calling function startHook:
> /home/
> > rsmits/
> > > ros/rfsm/rfsm.lua:412: bad argument #1 to 'insert' (table
> expected, got
> > nil)
> > >
> > > I noticed this regression for all my statemachines. not only the
> one I
> > show
> > > above.
> >
> > Thanks for testing. Could you send me the smallest of your fsm that
> > fails?
>
> I pushed a fix (I forgot to update seqand after the csta/sista
> consolidation). Can you give it another try?
>
> Now I get the following:

[cartesian_motion_supervisor.lua] loading FSM:
/home/rsmits/ros/iTaSC/itasc_tasks/cartesian_motion/scripts/cartesian_motion_fsm.lua
INFO: created undeclared connector root.initial
INFO: created undeclared connector root.initial
INFO: created undeclared connector root.NONemergency.initial
WARNING: no outgoing transitions from node
'root.runningCartesianMotionFSMemergency'
INFO: created undeclared connector root.initial
INFO: created undeclared connector root.NONemergency.initial
ERROR: doo not permitted in composite states:
root.NONemergency.RunningCartesianMotion
ERROR: transition T={ src='root.NONemergency.StartedCartesianMotion',
tgt='RunningCartesianMotion', events='e_runTasks' } ends on composite state
without initial connector
14.907 [ ERROR
][/home/rsmits/ros/orocos_toolchain/install/bin/rttlua-gnulinux::main()]
LuaComponent 'cartesian_motion_supervisor': error calling function
startHook: /home/rsmits/ros/rfsm/rfsm.lua:467: bad argument #1 to 'find'
(string expected, got table)

> Markus
>
>

Ruben Smits's picture

request to test: rFSM beta5 (dev branch)

Hi Markus,

On Mon, Feb 20, 2012 at 5:10 PM, Markus Klotzbuecher <
markus [dot] klotzbuecher [..] ...> wrote:

> Dear rFSM users,
>
> I'd appreciate any feedback on the upcoming beta5, to be found in the
> dev branch [1].
>
>

I'm trying out the dev branch, no luck so far. I noticed a regression: a
perfectly fine working before fsm now fails to load with the following
error:

2.039 [ ERROR ][rttlua-gnulinux::main()] LuaComponent
'cartesian_motion_supervisor': error calling function startHook:
/home/rsmits/ros/rfsm/rfsm.lua:412: bad argument #1 to 'insert' (table
expected, got nil)

I noticed this regression for all my statemachines. not only the one I show
above.

Ruben

There shouldn't be many (if any) visible changes:
>
> - cleaned up hook handling: hide the twiddling with utils.advise
> behind pre_step_hook_add/post_step_hook_add API. For normal users the
> only place you will get in contact with this is for the RTT fqn
> status string port, that should then read:
>
> rfsm.post_step_hook_add(fsm, rfsm_rtt.gen_write_fqn(fqn_out))
>
> I'll update the cookbook once this goes into master.
>
> - consolidation of simple state and composite state primitives into
> state. The old names are still supported, but you should replace
> them eventually. Rationale: wether something is composite or not is
> defined by it having substates or not, not by choosing the
> primitive (Thanks to Herman for this insight). Apart from that the
> differences were too small anyway to justify two primitives (only
> non-composites (aka leaf-states) can have a doo function.)
>
> - Some first steps towards online vizualization: you'll notice an
> rfsm-proto module. Ignore for now.
>
> Thanks!
>
> Best regards
> Markus
>
> [1] https://github.com/kmarkus/rFSM.git
> --
> Orocos-Dev mailing list
> Orocos-Dev [..] ...
> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev
>

request to test: rFSM beta5 (dev branch)

Hi Ruben,

On Tue, Feb 21, 2012 at 11:24:37AM +0100, Ruben Smits wrote:
>
> On Mon, Feb 20, 2012 at 5:10 PM, Markus Klotzbuecher <
> markus [dot] klotzbuecher [..] ...> wrote:
>
> Dear rFSM users,
>
> I'd appreciate any feedback on the upcoming beta5, to be found in the
> dev branch [1].
>
>
>
>
> I'm trying out the dev branch, no luck so far. I noticed a regression: a
> perfectly fine working before fsm now fails to load with the following error:
>
> 2.039 [ ERROR ][rttlua-gnulinux::main()] LuaComponent
> 'cartesian_motion_supervisor': error calling function startHook: /home/rsmits/
> ros/rfsm/rfsm.lua:412: bad argument #1 to 'insert' (table expected, got nil)
>
> I noticed this regression for all my statemachines. not only the one I show
> above.

Thanks for testing. Could you send me the smallest of your fsm that
fails?

Thanks!
Markus