Skip to content

Instantly share code, notes, and snippets.

@dlech
dlech / microsd-benchmarks.sh
Last active September 27, 2019 11:40
Raspberry Pi Dramble benchmark for ev3dev
#!/bin/bash
# Raspberry Pi microSD card benchmark script.
#
# A script I use to automate the running and reporting of benchmarks I compile
# for: http://www.pidramble.com/wiki/benchmarks/microsd-cards
#
# Usage:
# $ wget https://gist.githubusercontent.com/dlech/e922dbdc870d0e1d2c6065363c189345/raw/microsd-benchmarks.sh
# $ sudo bash microsd-benchmarks.sh
#!/usr/bin/env python3
"""Demo of useless machine using BrickPi3"""
import time
import ev3dev.brickpi as bp
if __name__ == '__main__':
@dlech
dlech / am335x_evm.sh
Created February 23, 2017 21:25
for testing
#!/bin/sh -e
#
# Copyright (c) 2013-2017 Robert Nelson <robertcnelson@gmail.com>
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
@dlech
dlech / remote.py
Created January 5, 2017 02:22
PS3 gamepad controlled dump truck
#!/usr/bin/env python3
# Remote control for a dump truck
# Copyright 2017 David Lechner <david@lechnology.com>
#
# Based on PS3 gamepad tutorial by Anton Vanhoucke
# http://www.ev3dev.org/docs/tutorials/using-ps3-sixaxis
import evdev
import evdev.ecodes as e
/*
* gyroboy.go - translation of the LEGO Education GyroBoy program to go for ev3dev
*
* MIT License
*
* Copyright (c) 2016 David Lechner <david@lechnology.com>
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
@dlech
dlech / gyroboy.py
Last active November 11, 2022 18:32
#!/usr/bin/env python3
#
# gyroboy.py - translation of the LEGO Education GyroBoy program to python for ev3dev
#
# MIT License
#
# Copyright (c) 2016 David Lechner <david@lechnology.com>
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@dlech
dlech / robot_arm_h25.py
Created January 30, 2016 04:40
ev3dev-lang-python program for the Robot Arm H25 model that is part of the 45544 LEGO Education EV3 kit.
#!/usr/bin/env python
#
# ev3dev-lang-python program for the Robot Arm H25 model that is part of
# the 45544 LEGO Education EV3 kit.
#
# Authors:
# David Lechner <david@lechnology.com>
#
from ev3dev.ev3 import *
Install the project...
-- Install configuration: "Debug"
-- Installing: /usr/local/lib/libev3devkit-0.1.so.0.2.1
-- Installing: /usr/local/lib/libev3devkit-0.1.so.0
-- Installing: /usr/local/lib/libev3devkit-0.1.so
-- Installing: /usr/local/lib/libev3devkit-0.1.a
-- Installing: /usr/local/include/ev3devkit-0.1.h
-- Installing: /usr/local/lib/pkgconfig/ev3devkit.pc
-- Installing: /usr/local/share/vala/vapi/ev3devkit-0.1.vapi
-- Installing: /usr/local/share/gir-1.0/Ev3devKit-0.1.gir
@dlech
dlech / runvt.sh
Last active August 29, 2015 14:21
ev3dev run on vt
#!/bin/bash
# This script is used to start a program from a remote terminal but have it run
# on a virtual terminal. openvt has to be run as root, so we use sudo for that.
# Then, we use sudo --user to run the actual program as the current user. We also
# wrap the invocation in a shell so that we can rediect stdout/stderr to the
# current terminal. Finally, we capture the stderr of openvt and parse it to get
# the tty that the program is being run on so that we can kill it later.
tmpfile=$(tempfile)
@dlech
dlech / sysfs_notify_monitor.c
Last active August 29, 2015 14:17
motor poll example from @rhempel
/* ------------------------------------------------------------------------------
* This sample is based on code from:
*
* http://stackoverflow.com/questions/16367623/using-the-linux-sysfs-notify-call
*/
#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>