Problem with transmitting IMU/GPS/Ultrasonic data over Nrf24L01

Ok my understanding was collect all the data in each of there native types chars/floats

Correct.

use PStrings to convert and stuff them into there char type arrays so they can now be use

Not necessary, but, if you have the resources, it's not the end of the world.

and referenced as char strings collect the char strings up into one and offload it. your saying i have extra steps in there ?

You are copying data from each of the small(er) arrays into one larger array, and storing the larger array in the same box with the smaller arrays.

If you are then going to send only what is in the envelope (the larger array), rather than what is in the box (the struct), there is no reason to have a box or to store the envelope in the box.

A more straight-forward setup would have the box (the struct) containing the floats and char array (the GPS data), and send the box, with no PString or String manipulation (copy into envelope) required.