To the best of my knowledge, smach is not deprecated. And for sure, I still maintain FlexBE and develop new features from time to time. In fact, FlexBE internally relies on some smach core functionality and my experience with it is quite good. However, I cannot comment on the more specific smach functionality like smach_ros or the visualization, although I experienced problems with it when I used it a few years ago.
The main motivation for developing FlexBE was that some features where missing for us in smach. This includes for example a good visualization, a visual editor, an efficient runtime monitoring, a way for operator-robot shared autonomy, and in terms of software development, a clear structure of how to define and test re-usable state definitions. All this is addressed in FlexBE. Anyways, smach is great work and if you are confident that you only need a very simple statemachine and nothing like an editor or so, smach should be a good and sufficient choice as well.
In any case, feel free to contact me via the contact form of the FlexBE website or Github if you have feedback regarding FlexBE. :)
Originally posted by Philipp Schillinger with karma: 321 on 2019-07-27
This answer was ACCEPTED on the original site
Post score: 1
Original comments
Comment by Frimann on 2019-07-29:
Thank you for the answer. Glad to hear that Smach is not depricated. I decided on starting my project in Smach since I'm running out on time. But I like to the added features you talk about, and would love to migrate my project in the future over to FlexBE. On that regard, is there anything I should keep in mind when developing my project in Smach, in order to have it easily converted to use FlexBE?