Worst thing about teppanyaki in NY are the NYers who can not shut the hell up and eat. NODA in White Plains earns a 4 of 5 -- every thing was well done -- my only fickle scorn is not halving the shrimp and a soggy salad lettuce. #Assessment - 21:16:41 337 017 Miter
Margarita Drip Infuser
A semi-traditional Margarita pour requires vigorous agitation in an attempt to blend the varying viscosity fluids constructing the cocktail. As an alternative, less abusive and theoretically smoother method, we affixed an Arduino Uno to an 8 channel relay controlling 8 solenoids to drip each ingredient, of any varying recipe, one drop at a time; allowing the blend to occur in real time. The glass is held in a copper wound that a coolant fluid is pumped through. Forgive the impoverished components, both mechanical and delicious.

YouTube - Project MDI "Dry" Run
HackADay - Margarita Drip Infuser Ensures a Perfect Mix
tvmiller.com/index.php?entry=entry141014-02:miller.com/index.php?entry=entry141014-0258.ller.com/index.php?entry=entry141014-025824 287--1 OTC
Project XLVII Phase I Map
Kyocera Shop Sink 3530 (SS3530)
Kyocera Shop Sink 3530 (SS3530)
Switch Control and Warm Up Alert
Adjustable Temperature and Display
Lighted Hand Washing Basin
Dry Towel Warmer Tray
(Ardunio Uno)

HackADay Links: September 28, 2014
tvmiller.com/index.php?entry=entry140926-15:miller.com/index.php?entry=entry140926-1514.ller.com/index.php?entry=entry140926-151453 287--1 OTC
The Death of The Little Dutch Boy
For the extent of organized humanity, menial voices were quelled thanks to a lack of domain to preach. Our modern era has technologically unthumbed the dam of lesser wisdoms upon all and to a burden and loss to our unsullied brute order. As the voiceless were often the oppressed meek, now they sway and connect to a larger audience of theirs in similar vain, giving the appearance that emotional conjecture is validated by quantity.

Twitter is such a forum where the benign are allowed their moment in the sun. Aside the wasted breath of sentimental litter, we find a more debilitating uncivil condition of the irrational, given sanctuary. Click the image below for a @CNN tweet accompanied by quips relative to each replied pander (new window).

tvmiller.com/index.php?entry=entry140910-23:miller.com/index.php?entry=entry140910-2356.ller.com/index.php?entry=entry140910-235628 287--1 OTC
Project 47 Ensign Color Codes

336633 Hex
51,102,51 RGB
0.50, 0.00, 0.50, 0.60
255,255,255 RGB
0.00, 0.00, 0.00, 0.00
002239 Hex
0,34,57 RGB
1.00, 0.40, 0.00, 0.78

tvmiller.com/index.php?entry=entry140902-19:miller.com/index.php?entry=entry140902-1918.ller.com/index.php?entry=entry140902-191850 287--1 OTC
Bed In A Cell
Professional wrestling mark? Smark? Worker? Jobber? Um...fan?
Then this bed is for you...for perverse maneuvering.

tvmiller.com/index.php?entry=entry140822-23:miller.com/index.php?entry=entry140822-2303.ller.com/index.php?entry=entry140822-230325 287--1 OTC
Project 47 Axiom
Human civilization is fluid. It has been bent, broken and rebuilt a thousand times. The emblems we use to interpret fractions of it; Kingdom, Republic and United are but labels.

Cultures are forged on the incentive of freedom to exercise values justified by experience. The preservation of a value is via the enforcement of a singularity of mind. Freedom must be confined by boundaries to assure such allowances.

Patriotism is not governed by words but shepherded. Blood and sweat from labor and triumph are not beholden to ink on paper. America, is a just a word. The idea behind it has been done before and can be accomplished again with greater fanaticism.

Humanity utilizes resources with great abundance as an advocacy for a life of ease, more so than those before us. When a culture erodes, it misuses these luxuries to an intolerance. It then becomes the responsibility for those more adept. To abandon resources with commiseration for the lesser is negligence. If 'they' have failed in what 'we' have not, 'they' are a hindrance to the whole of evolution. Destitution is not a destination.

Success is the consequence of biological order; eat, sleep, defecate and procreate. Our edicts should be of such austerity. Simplicity is found in reasoned order unmuddled by irregular emotional perspectives. Let us not erode our boundaries for empathy but arouse growth from rivalry. Not be burdened with salvation but condition fearlessness.

Join us to forge a place of candor for present and future. Where integrity is once again held assertively in revere. Where the blurring to shades of grey is focused clearer to points of resolute light and dark. Our new home will be of one wit and to accomplish this, to create, we must destroy. Follow the flames and leave asunder all in your path. The land then at your heel will be divided and rebuilt with purpose as we meet at the cusp of our new empire.

tvmiller.com/index.php?entry=entry140820-13:miller.com/index.php?entry=entry140820-1356.ller.com/index.php?entry=entry140820-135647 287--1 OTC
Arduino Flush-Less (Version 1.0)
California is suffering from a debilitating drought.
When hasn't it, am I right?
Convert grass to gravel and ficus to cacti are all proposed options.
The absolute solution?
Desalinization pla--er, I mean, stop pissing away water!

Standard toilets use up to 6,500 mL (1.6 gal) of water to flush
a standard person's 400 mL of urine twice a standard day.

Hack most existing toilets with the Arduino Flush-Less
and reduce waste by up to half with out replacing a single toilet.

With just 1,825 AFL units installed, we could save 1,000,000 gallons a year, exclamation point.


// Arduino Flush-Less (1.0) _ TV Miller
// CapacitiveSensor Library _ Paul Badger
// PFOD _ Dr. Matthew Ford

#include <CapacitiveSensor.h>
#include <Servo.h>
#include <pfodParser.h>
#include <Stream.h>
pfodParser parser;

// Pin 6 (10M) and 5 (1K)
CapacitiveSensor deucetouch = CapacitiveSensor(6,5);
// Pin 7 (10M) and 8 (1K)
CapacitiveSensor flushtouch = CapacitiveSensor(8,7);

Servo tankservo;
Servo flushservo;

int tankOFF = 120; // Tank Servo Position OFF
int tankON = 0; // Tank Servo Position ON
int flushOFF = 180; // Flush Servo Position OFF
int flushON = 0; // Flush Servo Position ON
int bowlvalve = 10; // Bowl Pin 10
int pooLED = 9; // LED Pin 9

void setup()
for (int i=5; i>0; i--) { // Wait
Serial1.begin(9600); // Serial1 BlueTooth (Micro)

pinMode(bowlvalve, OUTPUT);
pinMode(pooLED, OUTPUT);

tankservo.attach(3); // Tank Pin 3
flushservo.attach(4); // Flush Pin 4

digitalWrite(pooLED, HIGH); // Setup Alert
digitalWrite(pooLED, LOW);
digitalWrite(pooLED, HIGH);

void loop()
// Turn OFF All
flushservo.write(flushOFF); // Flush CLOSED
tankservo.write(tankOFF); // Tank CLOSED
digitalWrite(bowlvalve, LOW); // Bowl CLOSED
digitalWrite(pooLED, LOW); // LED OFF

// Read Sensors
long tank_touch = deucetouch.capacitiveSensor(30);
long flush_touch = flushtouch.capacitiveSensor(30);

// Deuce, Flush or Stand By
if (tank_touch > 1500 && flush_touch < 500){ numbertwo(); }
else if (flush_touch > 1500 && tank_touch < 500){ emptybowl(); }
else ( delay(10) );

// Print Sensors (Testing)

// Write Bluetooth Menu
if (Serial1.available()) {
byte in = Serial1.read();
byte cmd = parser.parse(in);
if (cmd != 0) {
if ('.' == cmd) {
Serial1.print(F("<gy>HackADay Prize"));
Serial1.print(F("|A~<bg o><+8>Deuce"));
Serial1.print(F("|B~<bg n><+8>Flush"));

// Handle Bluetooth Buttons
} else if('A'==cmd) { // Deuce
Serial1.print(F("{}")); // Update
} else if('B'==cmd) { // Flush
Serial1.print(F("{}")); // Update
} else {


// Deuce
void numbertwo() {
digitalWrite(pooLED, HIGH); // LED ON
digitalWrite(bowlvalve, HIGH); // Bowl OPEN
tankservo.write(tankON); // Tank OPEN
delay(13000); /* Adjust Per Model */
//Code To Lock Out NumberTwo()?

// Flush
void emptybowl() {
digitalWrite(pooLED, HIGH); // LED ON
flushservo.write(flushON); // Flush OPEN
digitalWrite(bowlvalve, HIGH); // Bowl OPEN
tankservo.write(tankON); // Tank OPEN
flushservo.write(flushOFF); // Flush CLOSED
digitalWrite(bowlvalve, LOW); // Bowl CLOSED
delay(15000); /* Adjust Per Model */

// BlueTooth Tasks
byte cmdByte;
byte parserByteCounter;
byte parserState;
static const byte pfodMaxMsgLen = 0xff;
static const byte pfodStartMsg = (byte)'{';
static const byte pfodEndMsg = (byte)'}';
static const byte pfodWaitingForStart = 0xff;
static const byte pfodInMsg = 0;

void parserSetup() {
parserByteCounter = 0;
cmdByte = 0;
parserState = pfodWaitingForStart;

byte parse(byte in) {
if (parserState == pfodWaitingForStart) {
if (in == pfodStartMsg) {
parserState = pfodInMsg;
parserByteCounter = 1;
return 0;

if ((parserByteCounter == pfodMaxMsgLen) &&
(in != pfodEndMsg)) {
return 0;

if (in == pfodEndMsg) {
byte pfodMsgCmd = cmdByte;
return pfodMsgCmd;
} else if (cmdByte == 0) {
cmdByte = in;
return 0;

Did we mention Arduino Flush-Less (Version 1.0) is BlueTooth enabled?!

Despite the plethora of HackADay logos ala our futile attempt for favoritism amidst our submission unto the HackADay Prize-contest, the Arduino Flush-Less and TV Miller are not affiliated with HackADay or their unscrupulous, dubious, down-right-under handed ways. Heathens.

All claimers about HackADay are untrue, unless other wise true, to which, see?!

HackADay - Arduino Gives Your Toilet Options
Atmel - Arduino Flush Less Saves More
Embedds - Arduino Controlled Toilet Saves Gallons Per Day
tvmiller.com/index.php?entry=entry140806-20:miller.com/index.php?entry=entry140806-2001.ller.com/index.php?entry=entry140806-200132 287--1 OTC
Follow Project AFL
Currently in development is our Project AFL, for submission in the HackADay Prize contest. There are two methods to follow along with all the lack of action. Follow @TVMiller for real time updates which will include the occasional lambasting of another culture or book mark HackADay.io/project/2206-Project-AFL on HackADay's project repository or what ever one might identify it as. Stay tuned to further updates on this project as we seek to automate for efficiency by hacking the naughty bits depository.
tvmiller.com/index.php?entry=entry140801-19:miller.com/index.php?entry=entry140801-1942.ller.com/index.php?entry=entry140801-194214 287--1 OTC
Formerly HLTBAL1 due to budgetary restraints, HLTSCT4X is a ground based rocket launch utilizing an experimental propulsion. It performed precisely as predicted.

tvmiller.com/index.php?entry=entry140728-15:miller.com/index.php?entry=entry140728-1515.ller.com/index.php?entry=entry140728-151522 287--1 OTC