Hi all,

As many of you might know, mid of this year I applied for several public 
research funding rounds with the main goal to refactor PLC4J to rid ourselves 
of some of the technical debt we have piled up. Most of the work was around 
rewriting the current SPI to work entirely without Netty. Beyond that to 
implement a Transport layer that supports multiple connection instances to 
share one transport instance (Like needed for ModbusRTU and BacNET, …) Also to 
allow multiple transport instances being used by one connection instance (Like 
for Profinet and Cesar’s S7 variant).

Now it seems that both applications were judged favorably. Now I could need 
some input from you guys where you see more need for cleaning up.

So far, the tasks I applied and which I just got informed that they received 
Funding are:


  *
Implement new SPI
     *
Implement new Read-/WriteBuffers that work without third party dependencies
     *
Update the code generation framework
     *
Implement a  new system for pluggable transports
     *
Implement the code for the concept of a layered protocol drivers
  *
Update the existing drivers to use the new SPI

The second package I would try to change the other would be:

  *
Implement a new Code-Generation for PLC4J based on JavaPoet (Getting rid of 
freemarker (at least for Java))
  *
Implement a new connection-cache component
  *
Implement a new Scraper alternative (able to use subscription-based triggers)
  *
Implement a new Base-Driver that emulates subscriptions by using the new scraper
  *
Fix the issues in the S7 driver allowing us to merge the two back together
  *
Add some Audit-Log functionality, that allows us to better diagnose issues

Does that make sense from your perspective?
Anything missing you think I should focus on?

I think a bit quicker feedback than usually here would be helpful, as I need to 
finish the Sovereign Tech Fund paperwork as soon as possible.

Chris

Reply via email to