Bonjour ioko
Je te livre le résultat de mes cogitations 
Si tu mets la console de l'IDE Arduino à 115200 tu verra fonctionner le programme:
CW sp 88
CW sp 90
CW sp 93
CW sp 94
CW sp 121
CW sp 123
CW sp 142
CW sp 164
CW sp 151
CW sp 165
CW sp 176
CW sp 188
CW sp 224
CW sp 242
CW sp 234
CW sp 245
CW sp 243
CW sp 230
CW sp 179
CW sp 133
CW sp 107
CW sp 88
CW sp 54
CW sp 35
-00-
-00-
CCW sp 23
CCW sp 42
CCW sp 63
CCW sp 74
CCW sp 86
CCW sp 104
CCW sp 114
CW = moteur sens des aiguilles d'une montre, CCW l'inverse.
Le programme:
/*
Name: SmartphoneSensors.ino
Created: 21.04.2024
Author: jpbbricole
Remarque: Utilisation des capteurs du smartphone
*/
#include <VarSpeedServo.h> // https://github.com/netlabtoolkit/VarSpeedServo
#include <SoftwareSerial.h>
//------------------------------------- Communications Bluetooth
const int btRxPin = A2; // Réception depuis Centrale
const int btTxPin = A3; // Transmission vers Centrale
SoftwareSerial btSerial(btRxPin, btTxPin); // RX, TX
//------------------------------------- Driver moteur H-Bridge
const int motPwmRpin = 5; // Pin H-Bridge Moteur A-1A 5 9
const int motPwmLpin = 6; // Pin H-Bridge Moteur A-1B 6 10
const int motPwmCmdOn = HIGH; // Niveau de commande ON
enum motPwmDirIndex {motPwmDirCW, motPwmDirCCW}; // Sene aiguilles montre et contraire
int motPwmBreakTime = 500; // Temps de freinage
int motSpeed = 0; // Vitesse du moteur
const int motPwmMinimum = 15; // Vitesse minium
const int btCarSpeedMax = 5000; // Vitesse maximum reçue de Bluetooth
const int btCarDirMax = 3000; // Direction maximum reçue de Bluetooth
int btCarSpeed = 0; // Vitesse reçue de Bluetooth
int btCarSpeedPwm = 0; // Vitesse PWM
int btCarDir = 0; // Direction reçue de Bluetooth
int btCarDirDegr = 0; // Direction reçue de Bluetooth en debrés
//------------------------------------- Servo
int servoPin = 10; // Connexion du servo
int servoSpeed = 255; // Vitesse du servo
VarSpeedServo servoDir; // create servo object to control a servo
void setup()
{
Serial.begin(115200);
btSerial.begin(9600);
servoDir.attach(servoPin); // Connexion du servo sur la pin servoPin
}
void loop()
{
if(btSerial.available() > 0) // Si reçu commande de Bluetooth
{
String btCmdRx = btSerial.readStringUntil('\n');
btCmdRx.trim();
if (btCmdRx.startsWith("O"))
{
cmdReceiveOrientation(btCmdRx);
}
}
}
void cmdReceiveOrientation(String orient)
{
btCarSpeed = orient.substring(1, orient.indexOf("|")).toInt();
btCarSpeed = constrain(btCarSpeed, -btCarSpeedMax, btCarSpeedMax); // Limiter les valeurs
btCarSpeedPwm = map(btCarSpeed, -btCarSpeedMax, btCarSpeedMax, -255, 255); // Conversion enPWM
motPwmRun(btCarSpeedPwm);
btCarDir = orient.substring(orient.indexOf("|") +1).toInt();
btCarDir = constrain(btCarDir, -btCarDirMax, btCarDirMax); // Limiter les valeurs
btCarDirDegr = map(btCarDir, -btCarDirMax, btCarDirMax, 0, 90); // Servo 90°
servoRun(btCarDirDegr, servoSpeed);
}
//------------------------------------- Servo direction
void servoRun(int angle, int speed)
{
servoDir.write(angle, speed);
}
//------------------------------------- Commande moteur (-btCarSpeedMax à + btCarSpeedMax)
void motPwmRun(int pwmSpeed)
{
int pwmDir = (pwmSpeed >= 0) ? motPwmDirCW : motPwmDirCCW;
pwmSpeed = abs(pwmSpeed);
//pwmSpeed = map(pwmSpeed, 0, btCarSpeedMax, 0, 255);
if (pwmSpeed < motPwmMinimum) // Si point neutre
{
analogWrite(motPwmRpin, 0);
analogWrite(motPwmLpin, 0);
Serial.println(F("-00-"));
return;
}
if (pwmDir == motPwmDirCW)
{
Serial.print(F("CW\t"));
analogWrite(motPwmRpin, pwmSpeed);
digitalWrite(motPwmLpin, !motPwmCmdOn);
}
else if (pwmDir == motPwmDirCCW)
{
Serial.print(F("CCW\t"));
analogWrite(motPwmLpin, pwmSpeed);
digitalWrite(motPwmRpin, !motPwmCmdOn);
}
Serial.println("sp " + String(pwmSpeed));
}
void motPwmBreak()
{
Serial.println(F("BREAK"));
digitalWrite(motPwmRpin, motPwmCmdOn); // Arrêter le moteur
digitalWrite(motPwmLpin, motPwmCmdOn);
delay(motPwmBreakTime);
digitalWrite(motPwmRpin, !motPwmCmdOn); // Arrêter le moteur
digitalWrite(motPwmLpin, !motPwmCmdOn);
}
Le programme MIT App Inventor
SmartPhone_Sensors.zip (46.1 KB)
Je peux t'aider à la connexion de ton L9110S, mais il faut que je fasse le montage, mais, actuellement, je suis assez "serré" 
Cordialement
jpbbricole