robotic_arm_driver icon indicating copy to clipboard operation
robotic_arm_driver copied to clipboard

A Linux kernel driver for the Maplin USB Robotic Arm

The USB_ROBOTIC_ARM is a proof-of-concept driver for the OWI/Maplin USB Robotic Arm. I created it for fun. So, don't expect much from it.

INSTALLATION:

Select the 'USB ROBOTIC ARM' and build the kernel.

If we build it as module, locate the robotic_arm.ko

As 'root', insert the module:

insmod robotic_arm.ko

dmesg

[ 8808.461441] usbcore: registered new interface driver robotic_arm

Connect the Robotic Arm to the PC.

dmesg

... [ 8718.729311] robotic_arm 5-1:1.0: USB ROBOTIC ARM now attached

cd /sys/bus/usb/drivers/robotic_arm/

In my case,

ls

5-1:1.0 bind module new_id remove_id uevent unbind

cd 5-1:1.0

ls

bAlternateSetting bInterfaceNumber bNumEndpoints gripmotor motor2 power uevent basemotor bInterfaceProtocol driver led motor3 subsystem bInterfaceClass bInterfaceSubClass ep_81 modalias motor4 supports_autosuspend

Modifications by jbh ([email protected]) - Device context now held in cmd buffer - Allow multiple motors at the same time - Add parsed file which allows a single file to control the robot characters 0..8 select the device to control character S=stop, F=forward, R=reverse, E=emergency (stop all motors) eg echo "0F" >parsed causes the gripper to close

HARDWARE AVAILABILITY:

OWI/Maplin USB Robotic arm is available from: http://www.maplin.co.uk/robotic-arm-kit-with-usb-pc-interface-266257 http://www.owirobots.com/cart/html/owi-535pc-robotic-arm-kit-with-usb-pc-interface-assembled.html

REFERENCES:

Reverse Engineering details of Robotic Arm's Protocol is available here: http://notbrainsurgery.livejournal.com/38622.html