Setting up Emporia Vue 2 whole-home power monitor with ESPHome
Changelog
- 2022-04-30: bump software version number to 2022.4.0
- 2022-05-04: mention 64-bit ARM issues in FAQ
| // Creating a node graph editor for Dear ImGui | |
| // Quick sample, not production code! This is more of a demo of how to use Dear ImGui to create custom stuff. | |
| // See https://github.com/ocornut/imgui/issues/306 for details | |
| // And more fancy node editors: https://github.com/ocornut/imgui/wiki#Useful-widgets--references | |
| // Changelog | |
| // - v0.04 (2020-03): minor tweaks | |
| // - v0.03 (2018-03): fixed grid offset issue, inverted sign of 'scrolling' | |
| #include <math.h> // fmodf |
| using System; | |
| using NAudio.Wave; | |
| using NAudio.Wave.SampleProviders; | |
| namespace FireAndForgetAudioSample | |
| { | |
| class AudioPlaybackEngine : IDisposable | |
| { | |
| private readonly IWavePlayer outputDevice; | |
| private readonly MixingSampleProvider mixer; |
Setting up Emporia Vue 2 whole-home power monitor with ESPHome
| use bevy::core_pipeline::{ | |
| draw_3d_graph, node, AlphaMask3d, Opaque3d, RenderTargetClearColors, Transparent3d, | |
| }; | |
| use bevy::prelude::*; | |
| use bevy::reflect::TypeUuid; | |
| use bevy::render::camera::{ActiveCamera, CameraTypePlugin, RenderTarget}; | |
| use bevy::render::render_asset::RenderAssets; | |
| use bevy::render::render_graph::{NodeRunError, RenderGraph, RenderGraphContext, SlotValue}; | |
| use bevy::render::render_phase::RenderPhase; | |
| use bevy::render::render_resource::{ |
Ok, I geeked out, and this is probably more information than you need. But it completely answers the question. Sorry. ☺
Locally, I'm at this commit:
$ git show
commit d6cd1e2bd19e03a81132a23b2025920577f84e37
Author: jnthn <[email protected]>
Date: Sun Apr 15 16:35:03 2012 +0200
When I added FIRST/NEXT/LAST, it was idiomatic but not quite so fast. This makes it faster. Another little bit of masak++'s program.
| #!/usr/bin/python | |
| """ | |
| Completely reset TCC services database in macOS | |
| Note: Both the system and individual users have TCC databases; run the script as both | |
| a user and as root to completely reset TCC decisions at all levels. | |
| 2018-08-15: Resetting the 'Location' service fails; unknown cause | |
| 2018-08-16: Confirmed the 'All' service does not really reset _all_ | |
| services, so individual calls to each service is necessary. |
| // | |
| // Simple Test Case to Send messages with ENet-Sharp & ENetStack | |
| // ------------------------------------------------------------- | |
| // steven 'lazalong' 2019 | |
| // | |
| // If all goes smoothly you should see the followign log line: | |
| // [Server] LogindData= OpCode= 4 passHash= 70 username= username | |
| // UnityEngine.Debug:Log(Object) | |
| // You will need the dll from the reference below. | |
| // Reference: |
| bash-3.2$ /Applications/Install\ macOS\ Sierra.app/Contents/Resources/startosinstall --usage | |
| Usage: startosinstall --applicationpath <install macOS.app path> | |
| Arguments | |
| --applicationpath, a path to copy of the OS installer application to start the install with. | |
| --license, prints the user license agreement only. | |
| --agreetolicense, agree to license the license you printed with --license. | |
| --rebootdelay, how long to delay the reboot at the end of preparing. This delay is in seconds and has a maximum of 300 (5 minutes). | |
| --pidtosignal, Specify a PID to which to send SIGUSR1 upon completion of the prepare phase. To bypass "rebootdelay" send SIGUSR1 back to startosinstall. | |
| --usage, prints this message. |
| #!/bin/bash | |
| # Seriously there still apparently aren't enough warning labels | |
| # If you don't understand the consequences don't do it | |
| # ################ | |
| # #### May cause 10.13.2+ machines that were DEP-enrolled to not be considered as such | |
| # ################ | |
| # but really, you shouldn't do this | |
| # one local user enabled for MDM come on apple | |
| # ¯\_(ツ)_/¯ |
| #include <stdio.h> | |
| #include <stdlib.h> | |
| const int H = 40; | |
| const int W = 80; | |
| char map[H][W]; | |
| int rnd(int max) { | |
| return rand() % max; |