PS4 News on Facebook! PS4 News on Twitter! PS4 News on YouTube! PS4 News RSS Feed!


 
 
  1. #1
    Join Date
    Apr 2005
    Posts
    29,565

    Videos: PlayStation 4 Eye / PS4 Camera Teardown and Pictures

    Following up on the DualShock 4 (DS4) PS4 Controller and PlayStation 4 teardowns, today we have another of the PlayStation 4 Eye / PS4 Camera (CUH-ZEY1) with details, pictures and videos below.

    PlayStation 4 Camera / PlayStation 4 Eye Teardown

    Playstation 4 Camera

    Product code: CUH-ZEY1

    Specifications

    [Register or Login to view code]

    • Pre E3 Playstation 4 Camera pictures
    • PS4 Camera teardown pictures

    Videos

    The C-Note Files - Episode 12: Tutorial - PS4 Face Recognition:




    The C-Note Files - Episode 13: Tutorial - PS4 Voice Recognition:




    Misc
    • Gesture recognition: Enabling natural interactions with electronic (ti.com/general/docs/lit/getliterature.tsp?literatureNumber=spry199&fileTyp e=pdf)

    Videos: PlayStation 4 Eye / PS4 Camera Teardown and Pictures

    Videos: PlayStation 4 Eye / PS4 Camera Teardown and Pictures

    Videos: PlayStation 4 Eye / PS4 Camera Teardown and Pictures

    More PlayStation 4 News...
    Attached Thumbnails<br><br> Attached Thumbnails

    Ps4-camera-0.jpg   Ps4-camera-1.png   Ps4-camera-2.png   Ps4-camera-3.png   Ps4-camera-4.png  


  2. #2
    Join Date
    Apr 2005
    Posts
    29,565
    Some more pics for the main article above...
    Attached Thumbnails<br><br> Attached Thumbnails

    PS4_Camera_01.jpg   PS4_Camera_02.jpg   PS4_Camera_03.jpg   PS4_Camera_04.jpg   PS4_Camera_05.jpg  

    PS4_Camera_06.jpg   PS4_Camera_07.jpg   PS4_Camera_08.jpg  

  3. #3
    Join Date
    Apr 2005
    Posts
    29,565

    PS4Eye: PS4 Eye Camera Tools and PlayStation 4 USB Comm Dump Out

    Following up on the PlayStation 4 Eye / PS4 Camera Teardown, PS4 hacker ps4eye made available PS4Eye, which are some PS4 Eye Camera Tools alongside a PlayStation 4 Eye Camera USB communication dump (captured via Total Data Center) with details below.

    Download: ps4_camera.tdc (182 MB - 191,170,505 bytes) / GIT / data-center-windows-i686-v6.61.zip

    From IRC:

    [ps4eye] In case anyone is interested, here is a link to ps4 camera usb comm dump: drive.google.com/file/d/0B52YoWIKRvZ-MWl2Yk1MSVhkQTA/edit?usp=sharing, am looking for people to help develop a gspca driver and contribute to github.com/ps4eye/ps4eye
    [marshallh] this is the sw to view the logs btw totalphase.com/products/data-center/
    [PUNIETA] Data Center Software V6.61 - Total Phase
    [marshallh] retroactive.be/data-center-windows-i686-v6.61.zip
    [ps4eye] thanks again marshallh for your help with that!

    From his blog: Experimental PS4 Camera Tools

    WARNING: These tools are still in development and may not allow for complete, if any, functionality of the camera. The PS4 camera is USB 3.0 only and is not compatible with USB 2.0 systems.

    Requirements

    Pyusb 1.0 is required and may not be available through the package manager of some systems. Python-pip may help in installing the most recent version of pyusb:

    [Register or Login to view code]

    Usage

    Ensure that the uninitialized camera is recognized:

    [Register or Login to view code]

    Initialize the camera with the provided script:

    [Register or Login to view code]

    The device should now be available with a new product id: Initialized PS4 Camera in Linux

    [Register or Login to view code]

    The two cameras can be used together for depth-sensing of objects in its field of vision, akin to the Xbox 360’s Kinect peripheral. Alternatively, one of the cameras can be used for generating the video image, with the other used for motion tracking.

    PS4 Camera in Linux (Ubuntu 13.10)

    [Register or Login to view code]

    PS4 camera cable on the left in black, and a USB 3.0 cable on the right in blue. There is a green/white wire pair missing on the PS4 cable, this is the USB 2.0 differential pair for backwards compatibility, it is not necessary for connecting the PS4 camera to a USB 3.0 port.

    Front and back views of the PS4 camera board, with microphone array attached. Back chip connected to special USB 3.0 port is labeled OV00580-B21G-1C PPU889 1322 09. Front chip connected to microphone array is labeled 5703 324A. The rear external port appears very similar to a micro USB 2.0 socket, except slightly larger and with additional connections.

    Circled in red are screw holes beneath the front lens cover, if you are so inclined to disassemble your PS4 camera.

    Official PS4 Camera Specifications

    External Dimensions: Approx. 186mm x 27mm x 27mm (width x height x depth)
    Weight: Approx. 183g
    Video Pixel: (Maximum) 1280 x 800 pixel x 2
    Video Frame Rate:
    1280x800 pixel @ 60fps
    640x400 pixel @ 120fps
    320x192 pixel @ 240fps
    Video Format: RAW YUV (uncompressed)
    Lens: Dual Lenses, F value/F2.0 fixed focus
    Capture Range: 30cm~
    Field-of-View: 85 degrees
    Microphone: 4 Channel Microphone Array
    Connection Type: PS4 dedicated connector (AUX connector)
    Cable Length: Approx. 2m

    PS4Eye: PS4 Eye Camera Tools and PlayStation 4 USB Comm Dump Out

    More PlayStation 4 News...

  4. #4
    Hope SONY uses this one more than the PS3 Eye...

  5. #5
    Join Date
    Apr 2005
    Posts
    29,565

    PS4EyeCam: PS4 Camera PC Driver by BigBoss for PS4 Dual Eye Arrives

    Following up on the PlayStation 4 Eye / PS4 Camera Teardown and PS4Eye: PS4 Eye Camera Tools and PlayStation 4 USB Comm Dump, today PlayStation 4 developer bigboss made available PS4EyeCam which is a PS4 Camera PC driver for the PS4 Dual Eye.

    Download: PS4EYECam / GIT

    To quote: PS4EYECam released

    I had released the first public version of PS4EYECam driver. You can get full information in my PS4EYECam repository.

    It is the first public driver for PlayStation 4 Camera licensed under gpl. I have free afternoons available if someone is interested to offer me a partial job

    Enjoy and remember the best is yet to come...

    What is PS4EYECam?
    • PS4EYECam is a Sony PlayStation 4 Camera driver implementation reference.
    • The driver is using libusb (github.com/libusb/libusb) to handle USB communications.
    • Part of code was based on PS3EYEDriver (github.com/inspirit/PS3EYEDriver).
    • Payload parsing stuff parts from Linux kernel source (gspca).
    • UVC video control from libuvc (github.com/ktossell/libuvc).
    • Boot and initialization from dumped PlayStation 4 Camera firmware ps4eye (github.com/ps4eye/ps4eye).
    • Other parts and research based on my experience adding support for different usb devices for Sony PlayStation 2 and Sony PlayStation 3 consoles (ps2eyetoy.irx, ps2mic.irx, ps3kinect.sprx, etc).

    About PlayStation 4 Camera device

    PlayStation 4 Camera has a Sony propietary connector called AUX, it is an USB 3 connector without USB 2 differential data pair(d+ and d-). If you want to use it on other platform different than PlayStation 4 console you must adapt wire and connector to USB 3.

    It is based on:

    [Register or Login to view code]

    USB descriptor when firmware is loaded

    [Register or Login to view code]

    Supported platforms

    PS4EYECam is a USB 3 device and it is using libusb so it can be ported to all platforms supported by libusb and with USB 3 controllers.

    Implementation reference was done in OSX Mavericks and i only tested it on this platform.

    OSX Mavericks

    A sample PS4EYECapture with PS4EYECam tested on OSX Maverick is included using:
    • libcinder (github.com/cinder/Cinder).
    • ciUI (github.com/bigboss-ps3dev/ciUI) With little modification to use in Mavericks environment.
    • opencv-cinder (github.com/cinder/Cinder-OpenCV) For future use.

    Sample output with Cinder in OSX Mavericks:




    You will need a few things installed before:
    • xcode
    • macport or similar
    • libusb (with macport is installed in /local/opt/lib)

    [Register or Login to view code]

    • Compile and install libcinder (github.com/cinder/Cinder) follow gitsetup (libcinder.org/docs/welcome/GitSetup.html).
    • Install ciUI and Cinder-OpenCV blocks

    [Register or Login to view code]

    • Use TinderBox-Mac tool to create a PS4EYECapture project /[YOUR_OWN_PATH]/cinder_master/tools/TinderBox-Mac

    1) Choose project name PS4EYECapture , path and choose cinder_master or your repository name and choose next_



    2) Choose ciUI block and option copy



    3) Choose OpenCV block and option relative



    4) Choose finish and project is created choose xcode project file and open it




    5) Clone PS4EYECam repository

    [Register or Login to view code]

    6) Copy driver/src/*.cpp to your PS4EYECapture/src

    7) Copy cinder/src/*.cpp to your PS4EYECapture/src

    8) Copy driver/include/*.h to your PS4EYECapture/include

    9) Copy cinder/resources/firmware.bin to your PS4EYECapture/resources

    10) Copy /opt/local/inclide/libusb-1.0/libusb.h to your PS4EYECapture/include

    11) Copy /opt/local/lib/libusb-1.0.0.dylib to your cinder_master/lib/macosx/

    12) Incorporate cpp files from driver/src and cinder/src on src, firmware.bin to resources headers files to include and libusb lib.



    13) Ready to compile and run

    TODO LIST
    • Identify uknown1, unknown2 and unknown3 formats
    • Identify correct format to depth frame. Sample only use threshold values to display results in rgb
    • Port driver to other platforms (Linux , Windows, ...)
    • Cinder is only supported by OSX and windows. An openframework sample can be done easily and it is multiplatform
    • Fix, improve, incorporate new features
    • If someone has ov580 datasheet contact (twitter @psxdev) with me please

    PS4EyeCam: PS4 Camera PC Driver by BigBoss for PS4 Dual Eye Arrives

    More PlayStation 4 News...
    Attached Thumbnails<br><br> Attached Thumbnails

    68747470733a2f2f7261772e6769746875622e636f6d2f626967626f73732d7073336465762f50533445594543616d2f.png   68747470733a2f2f7261772e6769746875622e636f6d2f626967626f73732d7073336465762f50533445594543616d2f.png   68747470733a2f2f7261772e6769746875622e636f6d2f626967626f73732d7073336465762f50533445594543616d2f.png   68747470733a2f2f7261772e6769746875622e636f6d2f626967626f73732d7073336465762f50533445594543616d2f.png   68747470733a2f2f7261772e6769746875622e636f6d2f626967626f73732d7073336465762f50533445594543616d2f.png  

    68747470733a2f2f7261772e6769746875622e636f6d2f626967626f73732d7073336465762f50533445594543616d2f.png   68747470733a2f2f7261772e6769746875622e636f6d2f626967626f73732d7073336465762f50533445594543616d2f.png   68747470733a2f2f7261772e6769746875622e636f6d2f626967626f73732d7073336465762f50533445594543616d2f.png  

  6. #6
    Wow, this is amazing!

  7. #7
    Thanks

  8. #8
    Join Date
    Apr 2005
    Posts
    29,565

    Reversing the PlayStation 4 Camera / PS4 Dual Eye Camera by BigBoss

    Following up on the PS4 Eye Camera Tools / PlayStation 4 USB Comm Dump and PS4EyeCam PS4 Camera PC Driver, today PlayStation 4 developer bigboss returns with details on reversing the PlayStation 4 DualEye camera below!

    To quote: Reversing PlayStation 4 Camera

    I have been working with PlayStation 4 Camera since 2013. So i want to share with you all the things learned since then.

    First of all, if device has not a public/free driver , you need to make reverse engineering and you need to look for information about its chipset and make a research about it. So you need to open the device and look for information about its different chips. After making some research we can show the next high level design diagram:


    PlayStation 4 Camera is using a proprietary connector called AUX, however it is a USB 3 cable so our first goal was to cut off the AUX connector and connect it to an USB3 male connector, after this we can connect directly to Mac/PC with USB3 female ports. Next step was to get an USB sniffer capture from PlayStation 4 with a beagle device in the middle, without this we could not have learnt about how to initialize the device and their different options.

    Chips description:

    OV580. It is an asic from Omnivision a typical custom USB bridge solution to manage all other chip. No information or datasheet about it without signing a NDA with Omnivision. Other companies using it are Mantis Vision and LeapMotion. I have worked with others Omnivision USB bridge solutions included in PlayStation EyeToy (OV519) and PlayStation Eye (OV534) so basically it is the same work i made with other drivers for Omnivision.

    OV9713. Two cmos sensors well documented with full datasheet available in google.

    AK5703. An analogical to digital converter connected with an microphone array (4). Datasheet is available. The datasheet was very helpfull to get audio properly from PlayStation 4 Camera.

    4g51A. An eeprom chip. It contains the initial configuration for PlayStation 4 Camera.

    When you connect device to a Mac/PC with USB3 it is in boot mode waiting for loading firmware. Analizing sniffer capture we got the firmware and steps needed to load it to device. So after loading firmware you have and special UVC Camera device and you can learn about their different streaming modes.

    Interface 1 alt setting 0 describe all video modes with these possible options:
    • mode 0 fps 60(default), 30, 15, 8 video left and video right frames 1280x800
    • mode 1 fps 120(default), 60, 30, 15, 8 video left and video right frames 640x400
    • mode 2 fps 240(default), 120, 60, 30 video left and video right frames 320x192

    OV580 is delivering in each mode:
    • mode 0 3448x2x808 bytes frame each row with:

    header 32 bytes
    audio 64 bytes
    video left 1280x2 bytes
    video right 1280x2 bytes
    video interleave 840x2 bytes
    • mode 1 1748x2x408 bytes frame each row with:

    header 32 bytes
    audio 64 bytes
    video left 640x2 bytes
    video right 640x2 bytes
    video interleave 420x2 bytes
    • mode 2 898x2x200 bytes frame each row with

    header 32 bytes
    audio 64 bytes
    video left 320x2 bytes
    video right 320x2 bytes
    video interleave 210x2 bytes

    Part of Header is showed in the next screenshot:


    Part of Audio is showed in the next screenshot:


    Audio has 4 channel i use Audicity tool loading a 10 second capture a reproducing 4 audio channels with success. AK5703 datasheet was very helpful.

    A screenshot from audicity tool:


    Videl Left and Right can be converted to RGB with CV_YUV2RGB_YUY2 conversion:
    • cv::Mat yuv(size_y,size_x,CV_8UC2 ,in);
    • cv::Mat rgb(size_y,size_x,CV_8UC3, out);
    • cv::cvtColor(yuv, rgb, CV_YUV2RGB_YUY2);

    Video interleave it is also the same video format but it is making a mix of two sensor.

    A sample application made using basic PS4EYECam driver showing a 640x400 mode for two PlayStation Cameras at the same time:


    Low level usb stuff is implemented and available in my repository. EyeLab is a poc of multi camera application using PS4EYECam driver and it is not in the repository, you don't need to make changes in the driver to support multi cameras you need to do it at application level.

    So after this i can say that PlayStation 4 Camera is full documented and it can be supported on other platforms. All information needed is here and in my repository.

    PlayStation 4 receives frames with format explained here. I suppose that secondary processor makes all the job to parse frames (video and audio) and connect with image/audio libraries from sdk (if someone want to share it with me you can contact with me ). PlayStation 4 only has 1 AUX port so a multicam solution would be hard to implement like i am doing now in Osx.

    Reversing the PlayStation 4 Camera / PS4 Dual Eye Camera by BigBoss

    Reversing the PlayStation 4 Camera / PS4 Dual Eye Camera by BigBoss

    Reversing the PlayStation 4 Camera / PS4 Dual Eye Camera by BigBoss

    More PlayStation 4 News...
    Attached Thumbnails<br><br> Attached Thumbnails

    highlevel.jpg   header.png   audio.png   audacity.png   EyeLab.png  


  9. #9
    Join Date
    Jul 2013
    Posts
    9
    Nice show, as always excellent news

  10. #10
    I'm just curious, isn't the PS4 Eye just a camera? I mean, what benefit would it have to connect to a PC?

    There are TONS of PC cameras... I am not insulting this guys work or anything, I am just wondering whats the advantage of using it on a PC

 




Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
  • Register, Login or Activate Your Account to post on the forums.