Sponsored Links

Sponsored Links

Results 1 to 4 of 4



  1. #1
    Forum Moderator PS3 News's Avatar
    Join Date
    Apr 2005
    Posts
    27,495
    Sponsored Links

    Video: PS3 uDraw Tablet Accessory as a PC Mouse / Tablet Demo

    Sponsored Links
    Today PlayStation 3 developer BrandonW has shared a video demo and driver along with source code for a PS3 uDraw Tablet accessory being used as a PC Mouse / Tablet.

    Download: [Register or Login to view links] / [Register or Login to view links]

    To quote: The PS3 uDraw tablet/accessory comes with a USB dongle which shows up as a standard HID device when plugged into a PC, so I threw together some documentation and a "driver"/application to allow using it on a Windows PC as a standard mouse.

    Documentation (Where ambiguous, assume little endian.)

    There are 0x08 bytes that can be sent on the device's OUT interrupt pipe -- I don't know what these are. There are 0x1B bytes constantly received on the device's IN interrupt pipe, described below:

    Offset Description

    0x00 Button status information:
    Bit Description
    0 Set means square is being held down.
    1 Set means cross is being held down.
    2 Set means cricle is being held down.
    3 Set means triangle is being held down.
    4 No idea, but it set itself while playing around. More playing around reset it.
    5 Unknown / nothing.
    6 Unknown / nothing.
    7 Unknown / nothing.
    8 Set means select is being held down.
    9 Set means start is being held down.
    10 Unknown / nothing.
    11 Unknown / nothing.
    12 Set means the PS button is being held down.

    0x02 D-pad status information:

    Description Value

    0x00 UP being held down.
    0x01 UP+RIGHT being held down.
    0x02 RIGHT being held down.
    0x03 DOWN+RIGHT being held down.
    0x04 DOWN being held down.
    0x05 DOWN+LEFT being held down.
    0x06 LEFT being held down.
    0x07 UP+LEFT being held down.
    0x0F Nothing pressed.
    0x03 Unknown, HID report desriptor indicates X, Y, Z, and Rz and range 0x00-0xFF.

    I can't get these to ever change from 80 80 80 80. 0x07 Position data:

    Offset Description

    0 Unknown / nothing.
    1 Unknown / nothing.
    2 Unknown / nothing.
    3 Unknown / nothing.
    4 0x40 when using the pen, 0x80 when using the finger and something crazy when pinching/stretching.
    5 0x00 normally, seems to be the distance between two fingers when pinching/stretching.
    6 Starts at 0x74 and goes up to 0xFF depending on how hard the pen is held down, 0x60 when not pressed.
    7 Unknown / nothing.
    8 Minimum X grid that something is being pressed in (0-7, see below). 0x0F if not pressed.
    9 Minimum Y grid that something is being pressed in (0-4, see below). 0x0F if not pressed.
    10 X offset from top-left corner of current grid of press point, or 0xFF for not pressed.
    11 Y offset from top-left corner of current grid of press point, or 0xFF for not pressed.

    0x13 Accelerometer data, four 16-bit little endian values -- all 0x0200 when not sync'd:

    Offsets Description

    0x00-0x01 X axis value; 0x200 at rest, increases to ~0x215 when tilting left vertically, decreases to ~0x1EA when tilting right vertically.
    0x02-0x03 Y axis value; 0x200 at rest, decreases to ~0x01E6 when tilted fully forward, increases to ~0x215 when tilted fully backward.
    0x04-0x05 Z axis value; around 0x01EC at rest, increases to 0x200 when tilted fully forward, backward, left, or right, increases to ~0x217 when fully upside down.
    0x06-0x07 Unknown, never seems to change from 0x200.

    The tablet is broken up into an 8x5 grid of 256x256 each. As the tablet's resolution is 1920x1080 (which doesn't divide evenly), the last row and column are slightly smaller:
    Code:
    256x256	256x256	256x256	256x256	256x256	256x256	256x256	128x256
    256x256	256x256	256x256	256x256	256x256	256x256	256x256	128x256
    256x256	256x256	256x256	256x256	256x256	256x256	256x256	128x256
    256x256	256x256	256x256	256x256	256x256	256x256	256x256	128x256
    256x56	256x56	256x56	256x56	256x56	256x56	256x56	128x56
    Bytes 8 and 9 of the position data indicate which grid/box is currently being pressed, and bytes 10 and 11 indicate the X and Y coordinates within the grid/box.

    You can get the absolute coordinates of the point being pressed with:
    Code:
        X-coordinate: positionalData[8] * 0x100 + positionalData[10]
        Y-coordinate: positionalData[9] * 0x100 + positionalData[11]
    I make absolutely no guarantees about the completeness or accuracy of this, but hopefully it helps you out a little.

    Here's a little video of it.





    Video: PS3 uDraw Tablet Accessory as a PC Mouse / Tablet Demo

    More PlayStation 3 News...

  2. #2
    Senior Member GrandpaHomer's Avatar
    Join Date
    Apr 2005
    Posts
    1,316
    Sponsored Links
    Sponsored Links
    Nice, those being sold out dirty cheap lately on Amazon, someone might find this fairly useful.

  3. #3
    Senior Member HeyManHRU's Avatar
    Join Date
    Dec 2010
    Posts
    3,015
    Sponsored Links
    Sponsored Links
    Yeah, I was about to buy one for my Xbox 360 but I really so no use to it. It's like when I used Mario paint for the first time, I was amazed, but after like a week I got bored from it.

  4. #4
    Member BerserkLeon's Avatar
    Join Date
    Feb 2011
    Posts
    69
    Sponsored Links
    Sponsored Links
    if there's any sensitivity at all in the device (press down on the tablet harder for a bigger brush size) I imagine this would be a decent replacement for some bamboo/wacom tablets... but I don't see that information here

 

Sponsored Links

Affiliates - Contact Us - PS3 Downloads - Privacy Statement - Site Rules - Top - © 2014 PlayStation 3 News