I took some Christmas holidays and hacked on my KNX stack over the last week. Among a few other things I had an LLM vibe-code a conformance test runner for my KNX stack. The tests are all available in the specification itself, so you can just implement all of them yourself. These tests are also run if you want to officially certify a device or device stack by a test lab. That means passing these tests ensures that you are 100% conformant with the spec. At least if you trust them to cover every single edge case.
Normally you are expected to buy the "EITT" from the KNX association which is the software that implements all these tests and executes them against physical devices. For that you need to be a member of the association and I heard it's not cheap, so fuck that!
It spawns my stack with a mock device and a data link layer that offers transmit and receive queues to the test runner and then executes the specified tests.
Slowly but surely we are getting close to passing all tests for the network layer and transport layer. This includes the connection state machine in the transport layer.
Boy, I am hyped! Once the last five missing transport layer tests are passing, the next task is to add more test for the application layer, management tasks and group object communication. The latter is already fully implemented and the device management partly.
I can't wait to get this thing done.