It sounds like you got some refactoring to use since you didn't namespace your own core types?
The only sane way to deal with name collisions is either to use C stdlib types in library APIs (e.g. uint8_t), or use a library specific prefix (e.g. mylib_u8) - which is of course even more awkward than just using the standard uint8_t.
Naming might go well and have the same utility, but you never know what evil things are going on in all those headers, redefining each other's symbols and yours.
In what world would an u32_MYLIB would be different than an u32_SOMELIB?
Basic types are common enough.