Hi Timo,
thanks for the reply.
I did spend all night again looking at the possible solution
I noticed that the the new library required me to change
const tProductInformation BatteryMonitorProductInformation PROGMEM={
1300, // N2kVersion
192, // Manufacturer's product code
"SeaWitch_Monitor", // Manufacturer's Model ID
"1.0.0.13 (2016-09-19)", // Manufacturer's Software version code
"1.0.0.0 (2015-08-03)", // Manufacturer's Model version
"12340002", // Manufacturer's Model serial code
1, // SertificationLevel
1 // LoadEquivalency
};
to
const tNMEA2000::tProductInformation BatteryMonitorProductInformation PROGMEM={
1300, // N2kVersion
192, // Manufacturer's product code
"SeaWitch_Monitor", // Manufacturer's Model ID
"1.0.0.13 (2016-09-19)", // Manufacturer's Software version code
"1.0.0.0 (2015-08-03)", // Manufacturer's Model version
"12340002", // Manufacturer's Model serial code
1, // SertificationLevel
1 // LoadEquivalency
};
and
const tNMEA2000::tProgmemConfigurationInformation BatteryMonitorConfigurationInformation PROGMEM={
"SeaNav, john.doe@unknown.com", // Manufacturer information
"First attempt", // Installation description1
"No real information send to bus" // Installation description2
};
to
const char BatteryMonitorManufacturerInformation [] PROGMEM = "John Doe, john.doe@unknown.com";
const char BatteryMonitorInstallationDescription1 [] PROGMEM = "Just for sample";
const char BatteryMonitorInstallationDescription2 [] PROGMEM = "No real information send to bus";
in order to compile properly. I'm not saying that's wrong
I'm just beginner in programing and i have no idea most of the time why I'm making changes. I just compare the new examples to my code and try to make it work 
Once it start working I also noticed that the device name is not showing up anymore on my MFD but rather show "???". I bet this is a result of my attempt to get my code running with the new library and the changes I did above.

Then I noticed something else - the "rudder angle" is shown as (Simrad) group, while the "commanded rudder direction" is shown as (Global) group. All the rest of the devices on the bus are part of the Simrad group. I have no idea why "commanded rudder direction" is shown as (Global) group and it can't be changed as there is no Simrad selection in the dropdown menu as there is on the "rudder angle" (see the first picture).


Then I tried to change the instance from 000 to 001 and the device will not take it. I don't think this was something I was successful of doing before upgrading the library either.

Let's go back to the problem at hand. My rudder angle simulator is not being liked by Simrad AP calibration procedures so im trying to understand why and possibly fix it. I did read your email carefully and some parts I understood, but for other parts my programing experience is not enough to make the right conclusions from your email.
I did program another Teensy as listener and captured the bus during my attempt to calibrate the rudder angle on the AP from the MFD. Then I searched for PGN 126208 but it wasn't there. I have attached the capture to this post. Just for clarification, I have the following devices on the N2K bus: Simrad NSS EVO3 MFD, Teensy rudder angle simulator, Simrad AC42 AP computer and another Teensy that is setup with the listener only code. I see more devices showing up in the log file, but I believe that the MFD separates the chart-ploter, the depth-sounder, the AP controller, etc.etc.
One think I would really like if you can help me with is what is the syntax of the parameters of the rudder message. I could make it compile only with passing 2 parameters. if I attempted to pass more than 2 i got errors compiling (from looking at your code i think they should be 4). Very frustrating as my abilities to understand the code are not that great. can you tell me what parameters I pass to the rudder function, what is the syntax and what each one does?
I see "SetN2kPGN127245(N2kMsg,RudderPosition,Instance,RudderDirectionOrder,AngleOrder)" in your library
and I tried many different combinations in my code, but again it was only successful with 2 parameters
e.i.
SetN2kRudder(N2kMsg,((avg2-512)/3.1415926535897932384626433832795/180),1);
//avg2 is just function to read the pot and some random math to get my reading convert to rad angle that represents -40 to +40 deg
Thanks in advance for spending time to look at my problems.
PS
I just received email that they are parting the big production PCB boards and my PCBs will be send in the mail to me in 48hrs! How exciting! I will post some pic immediately when I get them.
Atopilot calibration capture.txt (250 KB)