Foculus_Rift_Tracker_STM32F3DISCOVERY
Foculus_Rift_Tracker_STM32F3DISCOVERY copied to clipboard
Magnetometer Calibration not emulated.
With the new 0.4.3 SDK the 'foculus' is not recognised properly, it seems that this due to the magnetometer calibration data not being emulated
simon@bigbox:/storage/ovr_sdk_linux_0.4.3$ sudo ./oculusd
OVR::DeviceManagerThread - running (ThreadId=0x7fd12575c700).
OVR::DeviceManager - initialized.
OVR::Linux::HIDDevice - Opened '/dev/hidraw3'
Manufacturer:'Oculus VR, Inc.' Product:'Tracker DK' Serial#:'3AC4A55AFFFF'
Error: {ERR-011} [SensorImpl] Magnetometer calibration not found!
[TrackingManager] Sensor added: PrintedSerial= UUID=
Using the 0.3.2 SDK as a reference we can see what data it is expecting to see, a 52byte block described here in 'unpack()': https://github.com/jherico/OculusSDK/blob/0.3.x/LibOVR/Src/OVR_Sensor2ImplUtil.h#L163
In 0.3.2 it is read via a feature report here: https://github.com/jherico/OculusSDK/blob/0.3.x/LibOVR/Src/OVR_SensorCalibration.cpp#L45
By the way the full DK1 package has been opened sourced here: https://github.com/OculusVR/RiftDK1
Hi Mungewell, sorry for not being very active these days on the Foculus code. I might revive the project this winter, when there's less distracting stuff to do outdoors :) I had a quick look at the RiftDK1 firmware and must say that I'm quite impressed by the amount of features they put in there. It is much more complex than I assumed it to be. Probably there were quite some firmware and driver updates since the last time I checked.
One question: Now that everything is open source, could we not just compile and flash the original DK1 firmware ... perhaps slightly modify it to take into account the different pin-outs / sensor ICs
Cheers YFL
The 'simplest' solution is just to take what they had... use their gerbers to build some PCBs and hand load them. Unfortunately this also means that you need have to have a separate ST-Link dongle. I had asked whether anybody is doing this (https://forums.oculus.com/viewtopic.php?f=26&t=16838) but so far no response.
Perhaps their code can be shoe-horned into discovery board, do you think that forking it to do that would be appreciated? After all the discovery board is very available.
Also, please don't feel 'pressured' to work on Foculus, you already gave us a good head-start on getting Rift support.
I truly appreciate this firmware. It motivated Me to do many things this year. Numerous people have seemingly been hoping this project would get updated already...honestly kinda waiting. Any updates or good recommendations would certainly be appreciated! At least a little guidance on saying what code should be modified to enable compatibility. Also...know of any good open VR firmware for STM32 discovery head tracking that isn't based on rift? :)
Thanks in advance!
@mungewell that would be one way of doing it. Note that the STM32F3DISCOVERY board has a ST-Link dongle on-board, which could be used to flash the firmware.
The other way would be to take their firmware and adapt it to the STM32F3DISCOVERY board. Certainly possible but would take some programming effort and quite a bit of time to read through and understand their code. I'm afraid I won't have the time for that anytime soon. If anyone else is up to it, this could be a very nice learning experience and also an excellent way to get some hands-on experience with signal processing and programming 32 bit microcontrollers!
Another option is to patch the Foculus code up to the point where it will be recognized by the driver again. There's a high risk that it would break with the next SDK upgrade though, as I didn't implement a lot of the original features (especially for calibration). This I only noticed after seeing the open-sourced code of the original tracker.
Looking at the bigger picture, I think there should be some kind of open interface standard for HMDs, which would make it easier for the DIY enthusiast and for game developers alike! I don't really like the idea of the Oculus Rift SDK becoming the quasi-standard, as I'm afraid it will turn into a closed-source product in the future.
Just hearing about the Open-Gear project which uses the ST32F3 discovery board....Woo Woo. http://www.roadtovr.com/rev-vr-podcast-ep-88-introducing-opengear-gear-vr-alternative-developer-mark-schramm/ http://www.open-gear.com/
Hi guys ,try make the sensor serial is invalid serial number to SDK 0.4.x
see following pics
it's work , but I don't know how
Wow! How did you do that?
Ummm...yes...how to get it functioning with SDK 0.4?
Sorry , I just see these pics at blog , I am searching information how to implement it
Hi! So, anybody know how to use Foculus tracker with Oculus Runtime > 0.4? We are trying to make own tracker and came across a similar problem. Please help!