Hi Pavel, I think all these projects are interesting.
Bringing DDS RTPS support to NuttX will make it easier to people use it with robot and could open doors to new applications. CAN and CAN FD port to your university open-source IP will be very useful too. BR, Alan On 3/15/22, Pavel Pisa <ppisa4li...@pikron.com> wrote: > Dear NuttX developers, > > I am not in the full sync with the project now > due to load by teaching of the Computer Architectures > course and others, but I have more ideas and project > in the progress. > > 1) pysimCoder and silicon-heaven > Michal Lenc's pysimCoder project advances well. > His experimental branch shv_basic > > https://github.com/michallenc/pysimCoder/tree/shv_basic > > includes integration with silicon-heaven (SHV) which > is the light weight system for distributed service > parameters and process variables access. It has been > started at https://www.elektroline.cz/ company by my friend > Fratisek Vacek and is fully opensource used in the field > worldwide etc. The prototype already allows introspection > to single or even multiple running control applications > generated by pysimCoder. It is tested on Linux now > but pysimCoder supports NuttX well and we expect > to be used with it as well. > NuttX is selected as operating system of choice for > MCU non safety critical targets at Elektroline > for now. SHV provides nice services and is much smaller > than CORBA or DDS. Due to hierarchy of brokers > it allows to build world scale control over TCP when > nodes communicate over NAT barriers easily. > Each non root node only needs to know it superordinated > broker address. When the tree root node is run at public > address then request response and even changes substriptin > communication finds the nearest node with visibility > between two clients and uses it as a proxy. > > SHV provides really nice features, is mall etc. > But it is not international standard (yet)... > > Does it worth to be offered as NuttX GSoC project? > I am not sure. It will be developed to support NuttX > anyway, but GSoC can speed it and provide frame for better > documentation. > > 2) ORTE Data-Distribution Service (DDS) > This is different case. It is international standard. > Before my investment and hopes into formerg group at the > university has been buried and burned hard, I have invested > into ORTE project and helped it to architect. > > http://orte.sourceforge.net/ > > It was at time when Real Time Innovations started NDDS > project and our ORTE implementation of the original > protocol was the second required independed implementation > to allow approve DDS RTPS 1.0 as Internet standard > > https://www.omg.org/spec/DDSI-RTPS/ > > When the version 2.0 has been published I have > invested into our implementation update > together with Jiri Hubacek Vlasak > > > https://support.dce.felk.cvut.cz/mediawiki/images/3/37/Dp_2016_hubacek_jiri.pdf > > But speak with him on continuation of the work or even > in general has been intentionally and hard way blocked by professor > Zdenek Hanzalek and doctor Michal Sojka later when Jirka was > allocated at proprietary NVIDIA work at university for company > consortium. By the way that work has been paid from European > public money. > > Actual DDS RSPS standard is core of ROS 2 system. I have seen > many ROS related activities around NuttX but I am not sure > if some of them attempts to bring DDS really on the NuttX > nodes or all stay on use of agent on GNU/Linux side. > The full DDS would not fit in limited memory nodes or nodes > connected over serial link or CAN. > > But on chips like imxRT it could fit well. Our ORTE implementation > worked on GNU/Linux, BSD, Windows, RTEMS on x86, ARM, PowerPC... > When it is made to be interoperable with actual DDS standard > it can be quite usable. > > 3) Motion control > We have more than 30 years experience with motion control at our > company. I have provided our know how as open source to our > university and it helped them to participate in EUROBOT competition > etc., but without any reference to the source.... another story.. > Anyway, I see generic PMSM motor infrastructure getting into > NuttX now. We have something similar but even with higher level > control. There are some resources related to our Portable eXtendable > Motion Control (PXMC) infrastructure. No fancy promo stuff but works > in robots, industrial systems, medical infussion systems and laboratory > instruments > > http://pxmc.org/ > https://www.pikron.com/pages/products/motion_control.html > > Some demo on old robot with our second generation 20 years old > system > > > https://www.pikron.com/pages/products/motion_control/images/mars8_rosegarden.png > > Our actual designs > > https://www.pikron.com/pages/products/motion_control/lx_rocon.html > > fully open kit > > https://gitlab.com/pikron/projects/imxrt-devel/-/wikis/teensy_bb > > all sources in GITs, som in ours, some on SF.net etc... > > https://gitlab.com/pikron > > The command set, N-order coordinated spline trajectory generator > and much more can be reused. > > The code has been used without operation system on 16-bit MSP430, > ARMs, on RTEMS, GNU/Linux x86, Raspberry PI, Xilinx Zynq etc.. > > https://installfest.cz/if17/slides/so_t2_pisa_realtime.pdf > > https://pretalx.installfest.cz/media/installfest-2021/submissions/GBKNKE/resources/mz_apo-remote-lab_K5ZFgyq.pdf > > Is there some interrest to reuse some such stuff in the GSoC frame? > > 4) CAN and CAN FD > We work lot in this area. More contribution of my cooleagues > reached NuttX mainline some waits for it. I.e. actual ESP32C3 > TWAI/CAN driver by Jan Charvat > > https://github.com/charvj/incubator-nuttx/tree/esp32c3-twai > > If you suggest some FPGA we can open project to test our > open source CAN FD IP core and port drivers to it > > https://canbus.pages.fel.cvut.cz/ > > I have participated on CANopen FD standardization. > We have developed CANopen generic infrastructure > solution in past and I have included NuttX support > > http://orte.sourceforge.net/ > > Extension to CANopen FD would be another project option. > > My long term goal is to have all these components compatible > with NuttX as well and have portfolio to build final NuttX > applications on demanded easily and in reasonabale time. > > Best wishes, > > Pavel Pisa > e-mail: p...@cmp.felk.cvut.cz > Department of Control Engineering FEE CVUT > Karlovo namesti 13, 121 35, Prague 2 > university: http://dce.fel.cvut.cz/ > personal: http://cmp.felk.cvut.cz/~pisa > company: https://www.pikron.com/ > projects: https://www.openhub.net/accounts/ppisa > CAN related:http://canbus.pages.fel.cvut.cz/ > Open Technologies Research Education and Exchange Services > https://gitlab.fel.cvut.cz/otrees/org/-/wikis/home >