How to write a LSTM model with 3 dimensional X_train and Y_trains?
In all the above cases, you are not setting the output shape properly. The last layer should create 3 features.
Try this for example:

model = Sequential()
model.add(LSTM(24, return_sequences = True))
model.add(Dropout(dp)) 
model.add(Dense(3))