Create new filesystem:
sudo dd if=/dev/zero of=/usb.bin bs=512 count=51200
sudo mkdosfs /usb.bin
- Add
dwc2
to/etc/modules-load.d/modules.conf
- Add
dtoverlay=dwc2
to/boot/config.txt
- reboot
use std::collections::hash_map::{Entry, HashMap}; | |
use std::io::{self, BufRead, BufReader, Write}; | |
use std::net::{TcpListener, TcpStream, ToSocketAddrs}; | |
use std::sync::{ | |
Arc, | |
mpsc::{self, Sender, Receiver}, | |
}; | |
use std::thread::{self}; | |
#[derive(Debug)] |
### Keybase proof | |
I hereby claim: | |
* I am scttnlsn on github. | |
* I am scttnlsn (https://keybase.io/scttnlsn) on keybase. | |
* I have a public key ASB9vyD2EVSPOPFZSG40S9RvkY9urio90LlnLsBacf9Z5go | |
To claim this, I am signing this object: |
-------------------------------------------------- | |
--- SETUP | |
-------------------------------------------------- | |
\set ON_ERROR_STOP true | |
CREATE TABLE IF NOT EXISTS migrations ( | |
name CHAR VARYING PRIMARY KEY, | |
timestamp TIMESTAMP WITHOUT TIME ZONE NOT NULL DEFAULT now() | |
); |
# pip install spidev RPI.GPIO | |
# git clone https://github.com/etrombly/RFM69.git | |
# | |
# 19 MOSI | |
# 21 MISO | |
# 23 SCK | |
# 22 DI00 | |
# 24 NSS | |
import time |
Create new filesystem:
sudo dd if=/dev/zero of=/usb.bin bs=512 count=51200
sudo mkdosfs /usb.bin
dwc2
to /etc/modules-load.d/modules.conf
dtoverlay=dwc2
to /boot/config.txt
import machine | |
import network | |
import ubinascii | |
from umqtt.simple import MQTTClient | |
SSID = '' | |
PASSWORD = '' | |
BROKER = '' | |
TOPIC = '' |
TARGET = example | |
MCU = atmega328p | |
PROG = avrisp | |
PORT = /dev/cu.*usb* | |
BAUD = 57600 | |
F_CPU = 16000000 | |
# Sources | |
LIBS = $(shell find lib/* -type d 2> /dev/null) | |
SRC = $(wildcard src/*.c) $(foreach LIB, $(LIBS), $(wildcard $(LIB)/*.c)) |
import React from 'react'; | |
import ReactDOM from 'react-dom'; | |
function html([type, props, ...children]) { | |
return React.createElement(type, props, ...children.map((child) => { | |
if (Array.isArray(child)) { | |
return html(child); | |
} else { | |
return child; | |
} |
(ns nested-routing.core | |
(:require [goog.events :as events] | |
[goog.history.EventType :as EventType] | |
[reagent.core :as reagent] | |
[reagent.ratom :refer-macros [reaction]] | |
[re-frame.core :refer [dispatch dispatch-sync register-handler register-sub subscribe]] | |
[secretary.core :as secretary :refer-macros [defroute]]) | |
(:import goog.History)) | |
(declare route-components |
(ns nested-routing.core | |
(:require-macros [om.core :as om] | |
[secretary.core :refer [defroute]]) | |
(:require [om.dom :as dom] | |
[om.core :as om] | |
[secretary.core :as secretary] | |
[goog.events :as events] | |
[goog.history.EventType :as EventType]) | |
(:import goog.History)) |