Got it working! As advised, created a startup script and placed it in /etc/rc.d/init.d named usbstart and another in /etc/rc.d/rc5.d named S07usbstart (startup link) and it works fine.
Below is the content of the script in case it is helpful to anyone else
#!/bin/bash
# USB start, workaround for usb modules not loading automatically at boot
# place one copy in /etc/rc.d/init.d and name it usbstart and one in
#/etc/rc.d/rc5.d named S07usbstart
# ensure that the files in both have full r/w permissions in order to execute
# you can do this with chmod 755 S99usbstart and chmod 775 usbstart from each of
#the directories where you placed the files.
# Note the above /etc/rc5/d refers to run level 5. If you have a different run
#level then change the 5 to whatever your current run level is.
# provided with no restrictions, modify as you wish, no warranty implied nor is
#the author responsible for any problems caused by use of this script.
# loading usbcore
/sbin/modprobe usbcore
#loading usb-uhci
/sbin/modprobe usb-uhci
#loading human interface device
/sbin/modprobe hid
#mounting usbdevfs filesystem
mount -t usbdevfs none proc/bus/usb
#Done!
Named one usbstart and stored it in /etc/rc.d/init.d and chmod 755 usbstart to
have the correct file permissions.
Put a copy and renamed it to S07usbstart in /etc/rc.d/rc5.d Also chmod 755
this one for correct file permissions. The S07 means start service seventh.
This ensures that the usb subsystem is loaded before any devices which may need
it.