Real time servo angle control between raspberry pi and arduino via i2c


I'm super new to this world of microcontrollers. and even newer to i2c.

I have a self made mini pick & place arm at work for project we have. Months ago, the students working on this decided to use arduino to control servos for more precise control but send command from Pi. At that time, when we sent command of 1 , the arm would move in preset movement to pick an item, and with command of 2, it would move in a preset movement to place the item. Very rigid program that does not allow for us to send dynamic angle values from pi to arduino.

What i want to eventually achieve is a pick & place which has a image recognition function to allow it to then react and pick the item up regardless of the item placement (given within its reach)

However, for the short term goal, I'm planning to convert this arm to be a remote control arm. as such, I will use a rapsberry pi as a remote with game style buttons attached to it, to send a signal to another pi (the main brain) which is connected to an arduino via i2c. The arduino is connected to the 5 servos.

What i want to achieve is real time control of the servos without predefining the angle in arduino.

I also want to be able to change the angle for specific servos via IDLE in PI and that changes the angle of servo movement by the arduino.

Is that possible ?? my google search only shows me of tutorials where the angle is preset in arduino and Pi merely commands the arduino to move by that preset angle

if its possible, can you point me in the right direction and perhaps give sample codes for both ?

Since you can already communicate with the Arduino, you should be able to devise a more flexible protocol. I'd start by sending a servo number and desired angle, parse it on the Arduino and execute. You will probably want a start and end marker too, so a command to move servo three to 45 degrees could be: