Live Q&A - Modern Embedded Programming with Hierarchical State Machines and Active Objects
Miro Samek - Watch Now - Duration: 19:42
15:41:54 From Tim Michals : Is there a Linux version of all the tools and examples? 15:42:11 From Dave Nadler : Thanks Miro for a great talk. Youu mentioned puub/sub, but the example shows sending events to specific objects? Can you explain? 15:42:12 From patelk5 : Is there any advantage of using a sequential code flow (like RTOS or foreground/background) over event-driven code flow (RTEF)? It seems like event-driven is superior in almost every scenario? 15:42:13 From Alex Burka : Why not use C++? 15:42:20 From patelk5 : Thanks Miro! 15:42:35 From afwaanquadri : How do you suggest an AO to handle a blocking call? such as a HTTP request. 15:42:41 From Rocco Brandi : I have read Miro's book several years ago. the info were amazing, but are still valid today? are they a little out of date? 15:42:49 From Radu Pralea : This approach (Active Objects, State Machines) seems a very elegant way of expressing the problem in a more optimal and robust way compared to a threading approach (eliminating sharing and (some) timing problems and overheads). However,: - it seems (at least at a first glance) a less natural way of thinking about the problem domain (more indirect, i.e. designing the sequence diagram with its constraints (no sharing), compared to a closer to the problem domain modeling approach) - it seems that the sequence diagram doesn't scale very well (I expect it to become less manageable with increasing size/number of concepts, compared to the task oriented design) - it seems that it's a less agile way of partitioning the problem: it would work fine for a reasonably sized problem that's very well defined beforehand, but it would require very inconvenient redesigns as the requirements keep coming and/or changing Could you please address (some of) these concerns, please? 15:43:06 From jvillasante : How expensive a new requirement (like we want the ship to be able to fire several missiles) would be to add to the current design? 15:43:10 From Roman Hvozd : Hi Miro. Can QSPY traces be turned off, but ability to send (post/publish) commands (signal) to the aplication and trace used data still be available? 15:43:13 From Burak ŞEKER : Why not use C++? (I have same question with Alex) 15:43:40 From Charles Miller : Hello Miro. Your first ed. of the book was in C++; the UML version went to C. Was there pressure to move to the lesser language? (IMHO :-) ) 15:44:24 From Davy Baker : is it feasible to interact with other visual code generation environments like say labview ? 15:51:35 From patelk5 : Are there any concurrency issues to be cognizant of even if Active Objects are used? 15:52:00 From Davy Baker : What is the minimum size of flash and ram you have seen work worth Active Objects ? 15:52:30 From afwaanquadri : How do you suggest an AO to handle a blocking call? such as a HTTP request. 15:53:24 From Gopinath : Great presentation, Dr. Samek. Can Active Objects and Hierarchical State Machines be implemented on bare metal systems? Or do they require RTOS? 15:54:30 From patelk5 : @Gopinath: I think the answer is yes. https://www.state-machine.com/qpc/ports_native.html 15:54:46 From patelk5 : I did it last weekend on a TI board :) 15:54:53 From Burak ŞEKER : To Gopinath: It is possible to use Active Object and Pub/Sub approach in bare metal just fine. 15:55:06 From Sam : Are there good SDD's out there that are available for download? 15:56:16 From Dave Nadler : Socially Distant Disease? 15:56:29 From Sam : software design document 15:57:28 From Keith J : What about GUI code generation tools like QT? 15:57:34 From Steve Wheeler : Do the QP frameworks generate timing/event diagrams such as the one you showed? 15:57:36 From Keith J : interactions 15:57:47 From javi : How are events sent and received? using queues.. mailboxes.. 15:59:21 From Bob Dowling : To Patelk5: which TI board? 15:59:35 From patelk5 : TM4C123GXL 16:00:02 From Bob Dowling : Thanks! (We use C2000) 16:00:06 From patelk5 : If you download qpc, there are bunch of examples in the examples folder for many different boards 16:00:17 From Tim Michals : Some of the Q&A sessions need more time ;) 16:00:31 From patelk5 : I couldn't agree more :( 16:00:39 From Yuriy Kozhynov : Thanks! 16:00:40 From David : Thanks Miro! 16:00:41 From NateWelch : Thank you Miro 16:00:45 From patelk5 : Thank you! 16:00:45 From Christopher Long : Thank you Miro for the excellent presentation and Q&A! I am big fan of your YouTube content. 16:00:45 From Burak ŞEKER : Thanks a lot 16:00:51 From Raul Pando : Great work Miro 16:00:58 From javi : thanks! 16:01:03 From Gopinath : Thanks to Dr. Samek.