A vehicle drive control system for a vehicle having a first drive system including a first battery bank and a second drive system including a second battery bank, comprising: at least one controller configured to: receive a torque input command, receive at least one vehicle characteristic, provide a first torque output command to the first drive system to provide a first torque output, provide a second torque output command to the second drive system to provide a second torque output; a first connector operably coupled to the controller and adapted to be operably coupled to a first communication network connecting the first drive system to the at least one controller; and a second connector operably coupled to the controller and adapted to be operably coupled to a second communication network connecting the second drive system and the at least one controller, characterised in that the at least one controller is configured to: receive an indication of a state of charge of the first battery bank of the first drive system and an indication of a state of charge of the second battery bank of the second drive system, and alter at least one of the first torque output command or the second torque output command based on a charge difference between the state of charge of the first battery bank (220 and the state of charge of the second battery bank being greater than a predetermined threshold. at least one controller configured to: receive a torque input command, receive at least one vehicle characteristic, provide a first torque output command to the first drive system to provide a first torque output, provide a second torque output command to the second drive system to provide a second torque output; receive a torque input command, receive at least one vehicle characteristic, provide a first torque output command to the first drive system to provide a first torque output, provide a second torque output command to the second drive system to provide a second torque output; a first connector operably coupled to the controller and adapted to be operably coupled to a first communication network connecting the first drive system to the at least one controller; and a second connector operably coupled to the controller and adapted to be operably coupled to a second communication network connecting the second drive system and the at least one controller, characterised in that the at least one controller is configured to: receive an indication of a state of charge of the first battery bank of the first drive system and an indication of a state of charge of the second battery bank of the second drive system, and alter at least one of the first torque output command or the second torque output command based on a charge difference between the state of charge of the first battery bank (220 and the state of charge of the second battery bank being greater than a predetermined threshold. receive an indication of a state of charge of the first battery bank of the first drive system and an indication of a state of charge of the second battery bank of the second drive system, and alter at least one of the first torque output command or the second torque output command based on a charge difference between the state of charge of the first battery bank (220 and the state of charge of the second battery bank being greater than a predetermined threshold.