Skip to content

Instantly share code, notes, and snippets.

View ktemkin's full-sized avatar

Kate Temkin ktemkin

View GitHub Profile
@ktemkin
ktemkin / push_to_talk.py
Created April 1, 2020 22:49
GreatFET-based push to talk button
#
# This file is part of LUNA.
#
import asyncio
import logging
from greatfet import GreatFET
from facedancer import main

Blog post FPGAs:

  • ecp5
    • OrangeCrab
    • TinyFPGA Ex
    • Colorlite 5A-57B
    • LUNA
    • Camlink / Camlink 4K
  • GreatFET Foxglove (?)
@ktemkin
ktemkin / grc_scale.py
Created November 16, 2019 09:05
quick hack to resize GRC flowgraphs
#!/usr/bin/env python
import sys
import yaml
if len(sys.argv) != 3:
print("flowgraph scaler for demos on different-DPI machines")
print(">>> hey, kate, why don't you just fix this in GRC?")
print()
print("usage: {} <flowgraph> <scale-factor>\n".format(sys.argv[0]))
aaaaaaa.bin
baaaaaa.bin
caaaaaa.bin
daaaaaa.bin
eaaaaaa.bin
upgrade.bin
@ktemkin
ktemkin / .ccls
Created January 16, 2019 15:24
ccls config for GreatFET
%compile_commands.json
%c %cpp %h %hpp -I/usr/local/Cellar/arm-none-eabi-gcc/20150921/arm-none-eabi/include/
#!/usr/bin/env python3
import greatfet
from greatfet import GreatFET
from facedancer.backends.GreatDancerApp import GreatDancerApp
from facedancer.backends.GreatDancerHostApp import GreatDancerHostApp
TESTER_SERIAL_NUMBER = '0000d1c466e6380c5213'
# Note that these don't exactly line up with the data printed in the EHCI
# USBKeyboard.py
#
# Contains class definitions to implement a USB keyboard.
import greatfet
import random
import inputs
from facedancer.USB import *
from facedancer.USBDevice import *
#include <stdint.h>
#include "registers.h"
#define UART_PROVIDES_PUTS_PUTC
#define CAR_BASE 0x60006000UL
#define PINMUX_BASE 0x70003000UL
#define HEX_CHAR(x) ((((x) + '0') > '9') ? ((x) + '7') : ((x) + '0'))

Keybase proof

I hereby claim:

  • I am ktemkin on github.
  • I am ktemkin (https://keybase.io/ktemkin) on keybase.
  • I have a public key ASDo7EYFovlepz-vLDylxAChJ17lPF2Anl9OXluvmrZwcQo

To claim this, I am signing this object:

# USBKeyboard.py
#
# Contains class definitions to implement a USB keyboard.
import greatfet
import random
from facedancer.USB import *
from facedancer.USBDevice import *
from facedancer.USBConfiguration import *