Skip to content

Instantly share code, notes, and snippets.

Elliot Woods elliotwoods

View GitHub Profile
View gist:c2378981fdb1b154b37d111f58eaaa4c
kimchips@KC41-VIDEOSERVER:/mnt/c/dev/micropython-wrap$ make MICROPYTHON_PORT_DIR=/mnt/c/dev/micropython/ports/esp32 sharedlib
make -C /mnt/c/dev/micropython/ports/esp32 BUILD=build MICROPY_PY_BTREE=0 MICROPY_PY_FFI=0 MICROPY_PY_USSL=0 MICROPY_PY_AXTLS=0 MICROPY_FATFS=0 MICROPY_PY_THREAD=0 build/genhdr/qstrdefs.generated.h
make[1]: Entering directory '/mnt/c/dev/micropython/ports/esp32'
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
Building with ESP IDF v4
fatal: No names found, cannot describe anything.
make[1]: Leaving directory '/mnt/c/dev/micropython/ports/esp32'
g++ -fPIC -Wall -Werror -I../micropython -I../micropython/py -I/mnt/c/dev/micropython/ports/esp32 -I/mnt/c/dev/micropython/ports/esp32/build -I/mnt/c/dev/micropython/ports/esp32/boards/generic -I/mnt/c/dev/esp-idf/components/esp32/include -I/mnt/c/dev/esp-idf/components/esp_rom/include -I/mnt/c/dev/esp-idf/components/freertos/include -I/mnt/c/dev/esp-idf/components/newlib/include -I/mnt/c/dev/esp-idf/component
elliotwoods /
Created Nov 18, 2019
code for managing ssd1306 OLED on ESP32 with micropython on a TTGO OLED board
from machine import Pin, I2C
import ssd1306
import time
import esp32
def farenheit_to_celcius(farenheit_value):
return (farenheit_value - 32) * 5 / 9
class Oled:
def __init__(self, reset = 16, scl = 15, sda = 4):
View libceres.2.0.0.dylib
This file has been truncated, but you can view the full file.
0000000000795f70 T __Z7toupperi
0000000000873650 D __ZGVZN5Eigen8internal20manage_caching_sizesENS_6ActionEPlS2_S2_E12m_cacheSizes
0000000000006d40 T __ZN13LoggerVoidifyanERKNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEE
000000000000ccf0 T __ZN13MessageLogger10LogToSinksEi
000000000000cf10 T __ZN13MessageLogger12WaitForSinksEv
000000000000aaa0 T __ZN13MessageLogger13StripBasenameERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEPS6_
0000000000006de0 T __ZN13MessageLogger6streamEv
0000000000015830 T __ZN5Eigen10MatrixBaseINS_3MapIKNS_6MatrixIdLin1ELi1ELi0ELin1ELi1EEELi0ENS_6StrideILi0ELi0EEEEEE5arrayEv
000000000071d540 T __ZN5Eigen10MatrixBaseINS_3MapIKNS_6MatrixIdLin1ELin1ELi1ELin1ELin1EEELi0ENS_6StrideILi0ELi0EEEEEE15selfadjointViewILj2EEENS8_25SelfAdjointViewReturnTypeIXT_EE4TypeEv
View gist:1b58643e8f684ccad5eb214630d675b0
vector<aruco::Marker> findMarkersMultiCrop(aruco::MarkerDetector & markerDetector, const cv::Mat & image, int cropIterations, float overlap) {
auto imageWidth = image.cols;
auto imageHeight = image.rows;
map<int, aruco::Marker> markersInAllCrops;
for (int cropIteration = 0; cropIteration < cropIterations; cropIteration++) {
auto stepRatio = 1.0f / pow(2, cropIteration);
View UnsafeGenericFileResponse.cs
namespace Nancy.Responses
using System;
using System.IO;
using System.Linq;
using Nancy.Configuration;
using Nancy.Helpers;
/// <summary>
/// A response representing a file.
elliotwoods / ofApp.cpp
Created Feb 16, 2018
Comparison of subpixel routines
View ofApp.cpp
#include "pch.h"
#include "ofApp.h"
void ofApp::setup(){
void ofApp::init() {
View CameraToWorld.cpp
#include "pch_LightBarrier.h"
#include "CameraToWorld.h"
#include "ofxRulr/Exception.h"
#include "ofxRulr/Nodes/Item/Camera.h"
#include "ofxRulr/Nodes/Item/AbstractBoard.h"
#include "ofxCvGui/Widgets/Button.h"
#include "ofxCvGui/Widgets/Toggle.h"
reals = np.float64([
virtuals = np.float64([
def reflect(real, plane):
return virtual

Routine 0. Connect to Kimchips::HALO Outdoor wifi (chipsandgravy)

  1. Get a Position Name (e.g. H14-4) from mimi in the Mirror Codes room
  2. Go to the server app and go to /heliostatPositions
  3. Connect to the heliostat module (from the /heliostatPositions page). This page often takes time to load
    • [ERROR 1 - no connection] if you can't connect put 'CODE no connectioninto Mirror Codes room, move onto next mirror
  4. Go to joystick and wait for it to load
  5. Try and operate axis 1 and axis 2
    • [ERROR 2 - missing axis] if you get an error code, also report which axis doesn't work
  6. If all works, then navigate the mirror to be mirror-face up (watch out for cables)
elliotwoods / gist:68caea5535584d71ec976ab07414d72b
Created Sep 13, 2017
errors compiling glmpython against current master glm
View gist:68caea5535584d71ec976ab07414d72b
Parseme: Parsed python.parseme.hpp...
Parseme: Parsed python.parseme.cpp...
running install
running build
running build_ext
building 'glm' extension
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -I../ -IC:\Users\kimchips\Anaconda3\envs\KC31\include -IC:\Users\kimchips\Anaconda3\envs\KC31\include "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\winrt" /EHsc /Tppython.cpp /Fobuild\\Release\python.obj
c:\users\kimchips\dev\glm\glm\gtc\bitfield.inl(88): warning C4309: 'static_cast': truncation of constant value
c:\users\kimchips\dev\glm\glm\gtc\bitfield.inl(89): warning C4
You can’t perform that action at this time.