Skip to content

Instantly share code, notes, and snippets.

View cnlohr's full-sized avatar

CNLohr cnlohr

View GitHub Profile
@cnlohr
cnlohr / htc_vive_edid.txt
Created March 16, 2017 01:14
HTC Vive EDID
parse-edid
Checksum Correct
Section "Monitor"
Identifier "HTC-VIVE"
ModelName "HTC-VIVE"
VendorName "HVR"
# Monitor Model Year: 2016
# EDID version 1.3
@cnlohr
cnlohr / htc_vive_watchman_codes
Last active June 22, 2017 19:40
HTC Vive Watchman Hacking Codes!
So, the way this goes is I post my AVR code, then I post what the HTC Vive does.
The output is: POST 0: (# of bytes) (IMU Timecode MSBs) (All raw light data)
(All raw light data ends with [3 bytes, LSB timecode] [OTA CRC (probably ignore)])
Events (TIME): (LED CODE 1)/(TIME CODE 1/TIMECODE 2)/(LED CODE 2)/(TIME CODE 3/TIMECODE 4)...
//NOTICE: The funky encoding of the numbers, and the fact that paramters are read from the end of the data going forward.
//We know we're done when the # of parameters read is (# of bytes left*2)-1
@cnlohr
cnlohr / gist:83719f445cc5c6614ae51270d683fdd4
Created December 4, 2016 03:57
HTC Vive Example Data Files
Controlled environment with LED, right on edge.
POST 0: 5 (55ab) - 48 fc 30 e1 ad da c4 39 f0
POST 0: 5 (55b1) - 48 fc 40 a7 b2 30 de db f9
POST 0: 5 (55b7) - 48 fc db 6d b7 18 46 82 1c
POST 0: 5 (55ba) - 48 fc 2a 34 bc 56 8d a2 f1
POST 0: 5 (55c0) - 48 fb fd f9 c0 7b 6b a8 0c
POST 0: 5 (55c3) - 48 fc 21 c0 c5 55 28 20 d3
POST 0: 5 (55c8) - 48 fc e3 85 ca 0f c6 8f 38
POST 0: 5 (55ce) - 48 fc c8 4b cf 70 e8 5c 50
@cnlohr
cnlohr / i2s_stream.c
Last active May 23, 2024 18:26
ESP32 I2S C Code Example/Snippet
//Almost entirelly lifted directly from https://github.com/igrr/esp32-cam-demo
//Just clocked a little differently and has chained buffers.
//This totes works with the I2S bus on the ESP32 for READING 16 wires simultaneously.
//Can be clocked off of I2S's internal controller or an external clock.
#define I2S_D0 4
#define I2S_D1 5
#define I2S_D2 18
#define I2S_D3 19
#define I2S_D4 36