Regarding:
..Because there is no method from Freescale that allows the safe and portable way to change the output edge on compare,..
I haven't mentioned that but there is a safe and portable way. The way is using two components - TimerInt and BitIO components. You can make periodical timing by TimerInt and toggle output pin as you need in the TimerInt event code. This would create a portable HW independent code. This approach using PEx components as building bloks providing HW abstraction.
On the other side, we are aware that high-level componenst set is not sufficient for many users that exactly know what to do with registers, so we provide peripheral initialization components (like Init_TPM) that just initialize and allocate peripheral and the user can continue using the hardware on his own risk (but such application are not portable).
I have just posted the example component to show that there is a way to create some kind of hardware access low-level component on user side but I have also stated that it has limitations, drawbacks and you must exactly know what you are doing.
When we create components we always have to balance between leveraging fully all features present on hardware and maintaining portable interface. Interface is a compromise of these demands. We have tried in some cases to extend the components with platform specific methods and properties but it's not possible to cover all possibilities and modes.
Anyway, the list of such features is also (besides other influences) driven by customer request, so it's right that you are demanding such methods and I am passing this request to the delopment team to consider implementing that for future Processor Expert versions. Thank you for your feedback!
Regarding %substring:
You are right, this should be added to the documentation I have passed that to the documentation team and asked for reviewing macro lenguage description.
best regards
Petr Hradsky
Processor Expert Support Team