yoneken / rosserial_stm32

This is a part of [rosserial](https://github.com/ros-drivers/rosserial) repository to communicate with ROS system through a USART for STM32 embedded system.
BSD 2-Clause "Simplified" License
218 stars 72 forks source link

Develop branch contributor with some Examples #25

Closed fofolevrai closed 3 years ago

fofolevrai commented 4 years ago

Hi Yoneken,

Thanks to your contribution to ROS & ST development plateform. I have exercise myself with 'rosserial_stm32', NUCLEO-F401RE and ST shield X-NUCLEO-IKS01A2 and its associated ST BSP for MEMS. I am happy to share those elements if you feel code quality is good enough and that could be relevant for the community.

I've also found 2 issues I am not able to solve without downgrding rosserial performance:

  1. ROS serial python node isn't able to sychronize with ST device due to speed rate. Adding a delay in negotiateTopics() function (file: _nodehandle.h) seems to resolve the issue.
  2. Over publishing could raise a "checksum" issue on rosserial client. However, you can manage the publisher number (and thus published data throughput) at compile time by setting or desabling "USE_IKS01A2" defines present in _iks01a2conf.h

I've seen on ROS forums have similar issue (no resolving answer yet) apart some recommend the rosserial_server usage but it do not get the topic advertising. If you have any idea, please feel free to share!?

Best regards,

yoneken commented 3 years ago

What an excellent idea! I'm willing to merge your code into this repository! I roughly read your code, its quality is excellent!

If possible, could you share your code on github.com (this repository)? I hope anyone can access all examples in one shot (not URL, but directly code).

And if you can, could you split your pull request for each example?

  1. Hello World example It is similar to the original chatter example. Could you commit your .ioc file (for STM32CubeIDE) and additional README comment for CubeIDE users?

  2. LEDs control through publishers example It is similar to the original led example. But your code is more sophisticated and elegant. Could you modify the original code and make a new pull request?

  3. A simple temperature and pressure example Excellent!!! I needed it yesterday. Please commit it now with a descriptive project name (Ordinary users need to grab the feature of each example).

  4. Motion and environment multi-publisher sensing example Very impressive work! Please commit it with a descriptive project name. I want to discuss with you how to enhance rosserial_stm32 through this example.

fofolevrai commented 3 years ago

Hi Yoneken,

Thanks for your positive feedback regarding the work done.

Of course, I can add examples directly in your example folder. I am currently on holiday. So I should do it middle or end of September.

Regards,

fofolevrai commented 3 years ago

Pull request closed following above owner's comments. Pull request #28 #29 #30 #31 created instead.