Yet another OTA HDTV antenna.

Revision3 was touting this one antenna that sells for thirty five dollars. Seems like a pretty uncomplicated design. Went to the site to see if they had the specifications. In some ways it was like antennas I have already made, That antenna tech has prior art so to speak for sure.

Looking at the picture, I thought I could create something like it fairly easily. In about an hour a recreation was made. Anything but professional looking. Worked well, but not as good as what I have already made. It would not get the station with “The Big Bang Theory”. So that was an immediate fail.

In any case I have another antenna plan that can be easily implemented if I need to build an antenna on the fly. Details at: http://www.instructables.com/id/Cheap-wall-antenna/

———————————————————————————————

Chromecast the video streaming receiver. $35

One of the latest little gadgets to come out on the market is Chromecast. You can push out media (video) from almost any device that supports the Dial protocol (https://sites.google.com/a/dial-multiscreen.org/dial/). Commercials show users sending their video from laptop, ipad, iphone, and etc to the unit when the unit is attached to the back of a tv set that supports hdmi.

There may still be some security issues to work out (i.e. http://blog.gtvhacker.com/2013/chromecast-exploiting-the-newest-device-by-google/) , but software can always be upgraded in some cases. Third party developers say that it is easy to program media to the unit using HTML5. The future of web browsing.

Originally some free time with Netflix was included. Google has allegedly now taken that part of the deal off the table according to news reports. At only $35, if you have not purchased a media streaming device then certainly consider it.  I will probably stay with using XBMC on the Raspberry Pi.

———————————————————————————————

 Simple electronics example for the Raspberry Pi. (use the following at your own risk).

Screenshot from 2013-08-02 19:14:30.png
Screenshot from 2013-08-02 19:17:06.png
Screenshot from 2013-08-02 19:40:44.png
The Raspberry Pi per se does not have analog ports like the Arduino. though you can get converters that can be attached to the gpio or use an r2r setup. To light an led, you will need to use at least two pins. A gpio and a ground pin. You will also need an led and an appropriate resistor. Once you master these simple steps you can additional electronics and control quite a few things. Remember the gpio only uses very low voltage. Additional safety circuitry is needed for other projects.

# Turn light on
cd /sys/class/gpio
# Turn on pin but defaults to low.
echo 17 > export
# Set port direction in this case we aredoing output.
echo out > gpio17/direction
# Set pin high and turn on led.
echo 1 > gpio17/value

#Turn light off
echo 0 > gpio17/value

================================

Using a button

Controlling the LED with the button

Now let’s put input and output together, and use the state of the button to turn the LED on or off.

The RPi has only one ground pin which you need to connect both the LED circuit and the button circuit to. If you have an M/M wire, you can easily do this by connecting the - column to ground like we did with the LED. If not, it might seem like there isn’t space to have a resistor, a wire connected to ground, and the button all in one group of five columns. But to make extra space, you can place the button bridging the gap in the middle of the breadboard.

One possible configuration has:

  • Wires connecting pin 3 to 7d, 6 to 9j and 11 to 1f.
  • The LED connecting 1g (+) to 2g (-).
  • The resistor connecting 2h to 9h.
  • The button in terminals 7e, 7f, 9e and 9f.

With that set up, you can have the LED light up as long as the button is not pressed:

while true; do
    cat gpio0/value > gpio17/value
done

(Use control-C to interrupt this and return to a prompt.) Or as long as the button is pressed:

while true; do
    read val < gpio0/value
    echo $(( ! val )) > gpio17/value
done

Or to toggle the LED every time the button is pressed:

while true; do
    read val < gpio0/value
    if (( val == 0 && last == 1 )); then
        read state < gpio17/value
        echo $(( ! state )) > gpio17/value
    fi
    last=$val
done

(This last one makes use of the fact that if you try to read an output pin, it tells you its current value.)

If that all worked, congratulations! Now you should probably install an actual GPIO library, and turn your mind to more interesting projects.

———————————————————————————————

 Nexus 7 and the arduino

Screenshot from 2013-08-03 15:57:58

Some Arduino circuits to play with.
atmega328-arduino-pinout.jpg
ArduinoUno_R3_Pinouts.png
Note: All connections are to a standardArduino board.  This instructable is for users very familiar with the Arduino boards. If you are a novice, you may want to get additional help.Will show several ways to show how to use an arduino as a sensor.  This can be very important for protecting your electronic equipment especially servers. Downloaded and installed Arduinodroid which is an ide for the Ardiono on Android. Seems to be like the regular ide you use. Alsow worked with Osepp board, but I had to change the bard used.

Magnetic field

Screenshot from 2013-08-03 07:41:48.png
test anything that might be emitting electromagnetic energy, Bug detector?<code>
// EMF Detector for LED Bargraph v1.0
// 5.12.2009
// original code/project by Aaron ALAI – aaronalai1@gmail.com#define NUMREADINGS 15 // raise this number to increase data smoothingint senseLimit = 15; // raise this number to decrease sensitivity (up to 1023 max)
int probePin = 5; // analog 5
int val = 0; // reading from probePin// variables for smoothingint readings[NUMREADINGS];                // the readings from the analog input
int index = 0;                            // the index of the current reading
int total = 0;                            // the running total
int average = 0;                          // final average of the probe readingvoid setup() {

Serial.begin(9600);  // initiate serial connection for debugging/etc

for (int i = 0; i < NUMREADINGS; i++)
readings[i] = 0;                      // initialize all the readings to 0
}

void loop() {

val = analogRead(probePin);  // take a reading from the probe

if(val >= 1){                // if the reading isn’t zero, proceed

val = constrain(val, 1, senseLimit);  // turn any reading higher than the senseLimit value into the senseLimit value
val = map(val, 1, senseLimit, 1, 1023);  // remap the constrained value within a 1 to 1023 range

total -= readings[index];               // subtract the last reading
readings[index] = val; // read from the sensor
total += readings[index];               // add the reading to the total
index = (index + 1);                    // advance to the next index

if (index >= NUMREADINGS)               // if we’re at the end of the array…
index = 0;                            // …wrap around to the beginning

average = total / NUMREADINGS;          // calculate the average

Serial.println(val); // use output to aid in calibrating
}
}
</code>

Capacitive Testing.

Screenshot from 2013-08-03 07:27:14.png
Touch sensor or field sensor.<code>

#include <CapacitiveSensor.h>

/*
 * CapitiveSense Library Demo Sketch
 * Paul Badger 2008
 * Uses a high value resistor e.g. 10 megohm between send pin and receive pin
 * Resistor effects sensitivity, experiment with values, 50 kilohm - 50 megohm. Larger resistor values yield larger sensor values.
 * Receive pin is the sensor pin - try different amounts of foil/metal on this pin
 * Best results are obtained if sensor foil and wire is covered with an insulator such as paper or plastic sheet
 */

CapacitiveSensor   cs_4_2 = CapacitiveSensor(4,2);        // 10 megohm resistor between pins 4 & 2, pin 2 is sensor pin, add wire, foil
CapacitiveSensor   cs_4_5 = CapacitiveSensor(4,5);        // 10 megohm resistor between pins 4 & 6, pin 6 is sensor pin, add wire, foil
CapacitiveSensor   cs_4_8 = CapacitiveSensor(4,8);        // 10 megohm resistor between pins 4 & 8, pin 8 is sensor pin, add wire, foil

void setup()                    
{

   cs_4_2.set_CS_AutocaL_Millis(0xFFFFFFFF);     // turn off autocalibrate on channel 1 - just as an example
   Serial.begin(9600);

}

void loop()                    
{
    long start = millis();
    long total1 =  cs_4_2.capacitiveSensor(30);
    long total2 =  cs_4_5.capacitiveSensor(30);
    long total3 =  cs_4_8.capacitiveSensor(30);

    Serial.print(millis() - start);        // check on performance in milliseconds
    Serial.print("\t");                    // tab character for debug windown spacing

    Serial.print(total1);                  // print sensor output 1
    Serial.print("\t");
    Serial.print(total2);                  // print sensor output 2
    Serial.print("\t");
    Serial.println(total3);                // print sensor output 3

    delay(10);                             // arbitrary delay to limit data to serial port 
}

</code>

Temp sensor.

Screenshot from 2013-08-03 08:22:19.png
Temp sensor<code.>

//declare variables
float tempC;
int tempPin = 0;

void setup()
{
Serial.begin(9600); //opens serial port, sets data rate to 9600 bps
}

void loop()
{
tempC = analogRead(tempPin);           //read the value from the sensor
tempC = (5.0 * tempC * 100.0)/1024.0;  //convert the analog data to temperature
Serial.print((byte)tempC);             //send the data to the computer
delay(1000);                           //wait one second before sending new data
}

</code>

Flood sensor.

Screenshot from 2013-08-03 08:41:09.png

<code>
/* Flood Sensor

This sketch Display message when water (anything conductive) bridges the gap in the sensor.

created 02/09/09
by n00b

*/

const int floodSensors = 2;     // the number of the Flood Sensor pin

// variables will change:
int floodSensorState = 0;         // variable for reading the floodSensors status

void setup() {
// initialize the flood Sensor pin as an input:
pinMode(floodSensors, INPUT);
Serial.begin(9600);
}

void loop(){
// read the state of the flood Sensor value:
floodSensorState = digitalRead(floodSensors);

// check if the flood Sensor is wet.
// if it is, the floodSensorState is HIGH:
if (floodSensorState == HIGH) {
// turn LED on:
Serial.println(floodSensorState);
Serial.println(“Warning there is a flood”);
}
else {
// Not flood:
// Serial.println(floodSensorState);
// Serial.println(floodSensorState);
}
}

</code>

———————————————————————————————

Msp430 fix:

The MSP430from TI would not take any code. ran:

sudo apt-get install mspdebug msp430mcu msp430-libc libgempc430 gcc-msp430 gdb-msp430

All was well.(used debian jessie. Tried it with Ubuntu12.04, but Hackaday has a fix. (takes forever).http://hackaday.com/2010/08/11/how-to-launchpad-programming-with-linux/ Use at your own risk….

———————————————————————————————
Choctaw Indian bread
P000-256-337-689-c9021
Good day!
Advertisements