mguentner / cannelloni

a SocketCAN over Ethernet tunnel
337 stars 84 forks source link

Non-linux (RTOS) port #16

Closed lyance closed 6 years ago

lyance commented 6 years ago

Hi there. I'd like to know if cannelloni (at least, the client) is already (or can be) ported to non-Linux OSes like FreeRTOS w/a tiny TCPIP stack. Would be great if it does since many CAN controllers are managed by microcontrollers which don't run Linux.

Thanks and great work BTW.

mguentner commented 6 years ago

Hi!

I actually ported it to lwip running bare metal (no OS, just a simple round robin scheduler) on an Aurix Tricore. This was pretty straight forward.

It was never meant for production use and only for demonstration purposes.

Thanks and great work BTW.

Much appreciated!

lyance commented 6 years ago

Thanks Max! Would you be kind to let me see this lwip port that you've made so I can see whether to port it to FreeRTOS?

Best Regards

mguentner commented 6 years ago
lyance commented 6 years ago

Hi, thanks again for responding

Is your project commercial?

Yes, I'm doing it for a proof of concept (demo). But no intention to go further to making it for production use.

If yes, for what sector? Automotive? Aero? Mil?

Automotive

Will your work be open source?

Have not thought of it yet. What are the implications of making open source or not open source?

Best Regards.

mguentner commented 6 years ago

Thanks for your answers.

The implications are that others can use, read, understand and improve your code. Code can be released under a certain license. I prefer the GPL license for most projects. When I started this project, I used v2 as it seemed more suitable for the possible users (automotive etc.)

If you are interested in free software, read this: https://www.gnu.org/philosophy/free-software-even-more-important.html

Since your demonstrator will use proprietary code and this will be unfortunately the case for most projects in your industry, I suggest to use the LGPLv3.

So my proposal would be that I clean up my code base, push it to a new repository for cannelloni ports and ping you when it's ready. When you are successful with your port, you can open a pull request in that repository and add your implementation for FreeRTOS. I am sure others are interested as well!

lyance commented 6 years ago

Hi, thanks for your response. I understand the importance and benefits of free software and I'd really like to go ahead to help port your work to run on my platform. Personally, I have no problems with sharing the resulting ported code (assuming it works =). Just to be sure, I'm checking internally to make sure that I don't cause trouble/problems once I decide to go ahead. I'll update you within this week on this.
Best Regards.

mguentner commented 6 years ago

@lyance: https://github.com/mguentner/cannelloni_ports

lyance commented 6 years ago

Hello Max. I saw you've already made the starter code available. Thanks a lot. I will go ahead with trying the port on FreeRTOS. I will share my working code to the repo that you've just provided.

Thanks again and wish me luck!