docparser 0.0.1 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +2 -0
- data/.rubocop.yml +5 -0
- data/.travis.yml +3 -0
- data/Gemfile +9 -1
- data/README.md +11 -4
- data/Rakefile +15 -0
- data/example.rb +9 -7
- data/lib/docparser.rb +1 -0
- data/lib/docparser/document.rb +18 -11
- data/lib/docparser/output.rb +8 -8
- data/lib/docparser/output/html_output.rb +53 -47
- data/lib/docparser/output/json_output.rb +8 -3
- data/lib/docparser/output/multi_output.rb +4 -8
- data/lib/docparser/output/nil_output.rb +21 -0
- data/lib/docparser/output/screen_output.rb +2 -1
- data/lib/docparser/output/xlsx_output.rb +12 -2
- data/lib/docparser/output/yaml_output.rb +6 -1
- data/lib/docparser/parser.rb +80 -49
- data/lib/docparser/version.rb +1 -1
- data/test/lib/docparser/blackbox_test.rb +29 -0
- data/test/lib/docparser/document_test.rb +134 -0
- data/test/lib/docparser/logging_test.rb +19 -0
- data/test/lib/docparser/output/csv_output_test.rb +51 -0
- data/test/lib/docparser/output/html_output_test.rb +57 -0
- data/test/lib/docparser/output/json_output_test.rb +65 -0
- data/test/lib/docparser/output/multi_output_test.rb +80 -0
- data/test/lib/docparser/output/nil_output_test.rb +27 -0
- data/test/lib/docparser/output/screen_output_test.rb +55 -0
- data/test/lib/docparser/output/xlsx_output_test.rb +53 -0
- data/test/lib/docparser/output/yaml_output_test.rb +76 -0
- data/test/lib/docparser/output_test.rb +85 -0
- data/test/lib/docparser/parser_test.rb +197 -0
- data/test/lib/docparser/version_test.rb +11 -0
- data/test/support/hackaday/dl.rb +4 -0
- data/test/support/hackaday/file_1.html +716 -0
- data/test/support/hackaday/file_10.html +791 -0
- data/test/support/hackaday/file_11.html +787 -0
- data/test/support/hackaday/file_12.html +715 -0
- data/test/support/hackaday/file_13.html +793 -0
- data/test/support/hackaday/file_14.html +718 -0
- data/test/support/hackaday/file_15.html +707 -0
- data/test/support/hackaday/file_16.html +713 -0
- data/test/support/hackaday/file_17.html +715 -0
- data/test/support/hackaday/file_18.html +725 -0
- data/test/support/hackaday/file_19.html +715 -0
- data/test/support/hackaday/file_2.html +793 -0
- data/test/support/hackaday/file_20.html +795 -0
- data/test/support/hackaday/file_21.html +804 -0
- data/test/support/hackaday/file_22.html +722 -0
- data/test/support/hackaday/file_23.html +793 -0
- data/test/support/hackaday/file_24.html +717 -0
- data/test/support/hackaday/file_25.html +715 -0
- data/test/support/hackaday/file_26.html +717 -0
- data/test/support/hackaday/file_27.html +723 -0
- data/test/support/hackaday/file_28.html +711 -0
- data/test/support/hackaday/file_29.html +711 -0
- data/test/support/hackaday/file_3.html +794 -0
- data/test/support/hackaday/file_30.html +715 -0
- data/test/support/hackaday/file_31.html +713 -0
- data/test/support/hackaday/file_32.html +714 -0
- data/test/support/hackaday/file_33.html +716 -0
- data/test/support/hackaday/file_34.html +714 -0
- data/test/support/hackaday/file_35.html +792 -0
- data/test/support/hackaday/file_36.html +719 -0
- data/test/support/hackaday/file_37.html +712 -0
- data/test/support/hackaday/file_38.html +709 -0
- data/test/support/hackaday/file_39.html +808 -0
- data/test/support/hackaday/file_4.html +814 -0
- data/test/support/hackaday/file_40.html +801 -0
- data/test/support/hackaday/file_5.html +715 -0
- data/test/support/hackaday/file_6.html +792 -0
- data/test/support/hackaday/file_7.html +714 -0
- data/test/support/hackaday/file_8.html +717 -0
- data/test/support/hackaday/file_9.html +719 -0
- data/test/support/test_encoding.html +12 -0
- data/test/support/test_encoding2.html +12 -0
- data/test/support/test_html.html +16 -0
- data/test/support/test_xml.xml +5 -0
- data/test/test_helper.rb +14 -0
- metadata +126 -3
@@ -0,0 +1,787 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
3
|
+
<!--
|
4
|
+
generated 201 seconds ago
|
5
|
+
generated in 0.292 seconds
|
6
|
+
served from batcache in 0.002 seconds
|
7
|
+
expires in 99 seconds
|
8
|
+
-->
|
9
|
+
<head profile="http://gmpg.org/xfn/11">
|
10
|
+
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
11
|
+
<title>Hack a Day — Fresh hacks every day</title>
|
12
|
+
<meta name="description" content="Fresh hacks every day" />
|
13
|
+
<meta name="robots" content="noodp,noydir" />
|
14
|
+
<link rel="Shortcut Icon" href="http://s1.wp.com/wp-content/themes/vip/hackaday2/images/favicon.ico?m=1353160633g" type="image/x-icon" />
|
15
|
+
<link rel="stylesheet" href="http://s1.wp.com/wp-content/themes/vip/hackaday2/style.css?m=1363789849g" type="text/css" media="screen" />
|
16
|
+
|
17
|
+
<meta name="description" content="Fresh hacks every day" />
|
18
|
+
<meta name="keywords" content="hall of fame, fpga, nook hacks, internet hacks, marijuana hacks, network hacks, high voltage hacks, palm pre hacks, blackberry hacks, podcasts, virtual reality, drone hacks, lockpicking hacks, interviews, kindle hacks, phone hacks, weekly roundup, reviews, firefox hacks, g1 hacks" />
|
19
|
+
<script src='http://r-login.wordpress.com/remote-login.php?action=js&host=hackaday.com&id=4779443&t=1366800933&back=hackaday.com%2Fpage%2F11%2F' type="text/javascript"></script>
|
20
|
+
<script type="text/javascript">
|
21
|
+
/* <![CDATA[ */
|
22
|
+
if ( 'function' === typeof WPRemoteLogin ) {
|
23
|
+
document.cookie = "wordpress_test_cookie=test; path=/";
|
24
|
+
if ( document.cookie.match( /(;|^)\s*wordpress_test_cookie\=/ ) ) {
|
25
|
+
WPRemoteLogin();
|
26
|
+
}
|
27
|
+
}
|
28
|
+
/* ]]> */
|
29
|
+
</script>
|
30
|
+
<link rel="alternate" type="application/rss+xml" title="Hack a Day » Feed" href="http://feeds2.feedburner.com/hackaday/LgoM" />
|
31
|
+
<link rel="alternate" type="application/rss+xml" title="Hack a Day » Comments Feed" href="http://hackaday.com/comments/feed/" />
|
32
|
+
<script type="text/javascript">
|
33
|
+
/* <![CDATA[ */
|
34
|
+
function addLoadEvent(func){var oldonload=window.onload;if(typeof window.onload!='function'){window.onload=func;}else{window.onload=function(){oldonload();func();}}}
|
35
|
+
/* ]]> */
|
36
|
+
</script>
|
37
|
+
<link rel="canonical" href="http://hackaday.com/" />
|
38
|
+
<link rel='stylesheet' id='all-css-0' href='http://s0.wp.com/_static/??-eJzTLy/QTc7PK0nNK9HPLdUtyClNz8wr1s/JzE4t1s9KLSlITM7WBfP0kouLdfSxKy/ILy7RTctJzCzSLy6pzEklVm1GYlFmXjqMxtBVkpGaC3RGhol+ek5+UmIOSIF9rq2hsZmZuYmxqbFlFgANUUYu' type='text/css' media='all' />
|
39
|
+
<script type='text/javascript'>
|
40
|
+
/* <![CDATA[ */
|
41
|
+
var SafeCommentsAjax = {"ajaxurl":"http:\/\/hackaday.com\/wp-admin\/admin-ajax.php"};
|
42
|
+
/* ]]> */
|
43
|
+
</script>
|
44
|
+
<script type='text/javascript' src='http://s0.wp.com/_static/??-eJyFz0sKAjEMBuALWUsZpjvxLKXGmjp92KQz6umNogtRFAJZ5Et+opeqMPup74B0lDp1aJdnW0da6V9AJQzNMbygL5kh893VQpyAyIVv0/cYzDPC8pdF4Or8UTUgvH5c5QNInp6x6jr1gJk0uT2IrqWxsJSEPX5w0Z1lfZs2ZrB2NIOxY7wBpfljQw=='></script>
|
45
|
+
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://hackadaycom.wordpress.com/xmlrpc.php?rsd" />
|
46
|
+
<link rel="shortcut icon" type="image/x-icon" href="http://0.gravatar.com/blavatar/4f3e6b6daa090af416a1ba595885efd1?s=16" sizes="16x16" />
|
47
|
+
<link rel="icon" type="image/x-icon" href="http://0.gravatar.com/blavatar/4f3e6b6daa090af416a1ba595885efd1?s=16" sizes="16x16" />
|
48
|
+
<link rel="apple-touch-icon-precomposed" href="http://1.gravatar.com/blavatar/5560f98f805877b0e332f191cb9e0af3?s=114" />
|
49
|
+
<link rel='openid.server' href='http://hackadaycom.wordpress.com/?openidserver=1' />
|
50
|
+
<link rel='openid.delegate' href='http://hackadaycom.wordpress.com/' />
|
51
|
+
<link rel="search" type="application/opensearchdescription+xml" href="http://hackaday.com/osd.xml" title="Hack a Day" />
|
52
|
+
<link rel="search" type="application/opensearchdescription+xml" href="http://wordpress.com/opensearch.xml" title="WordPress.com" />
|
53
|
+
<style>
|
54
|
+
/* <![CDATA[ */
|
55
|
+
/* Block: reblog */
|
56
|
+
|
57
|
+
.reblog-from img { margin: 0 10px 0 0; vertical-align: middle; padding: 0; border: 0; }
|
58
|
+
.reblogger-note img.avatar { float: left; padding: 0; border: 0; }
|
59
|
+
.reblogger-note-content { margin: 0 0 20px; }
|
60
|
+
.reblog-post .wpcom-enhanced-excerpt-content { border-left: 3px solid #eee; padding-left: 15px; }
|
61
|
+
.reblog-post ul.thumb-list { display: block; list-style: none; margin: 2px 0; padding: 0; clear: both; }
|
62
|
+
.reblog-post ul.thumb-list li { display: inline; margin: 0; padding: 0 1px; border: 0; }
|
63
|
+
.reblog-post ul.thumb-list li a { margin: 0; padding: 0; border: 0; }
|
64
|
+
.reblog-post ul.thumb-list li img { margin: 0; padding: 0; border: 0; }
|
65
|
+
|
66
|
+
.reblog-post .wpcom-enhanced-excerpt { clear: both; }
|
67
|
+
|
68
|
+
.reblog-post .wpcom-enhanced-excerpt address,
|
69
|
+
.reblog-post .wpcom-enhanced-excerpt li,
|
70
|
+
.reblog-post .wpcom-enhanced-excerpt h1,
|
71
|
+
.reblog-post .wpcom-enhanced-excerpt h2,
|
72
|
+
.reblog-post .wpcom-enhanced-excerpt h3,
|
73
|
+
.reblog-post .wpcom-enhanced-excerpt h4,
|
74
|
+
.reblog-post .wpcom-enhanced-excerpt h5,
|
75
|
+
.reblog-post .wpcom-enhanced-excerpt h6,
|
76
|
+
.reblog-post .wpcom-enhanced-excerpt p { font-size: 100% !important; }
|
77
|
+
|
78
|
+
.reblog-post .wpcom-enhanced-excerpt blockquote,
|
79
|
+
.reblog-post .wpcom-enhanced-excerpt pre,
|
80
|
+
.reblog-post .wpcom-enhanced-excerpt code,
|
81
|
+
.reblog-post .wpcom-enhanced-excerpt q { font-size: 98% !important; }
|
82
|
+
|
83
|
+
|
84
|
+
/* ]]> */
|
85
|
+
</style>
|
86
|
+
|
87
|
+
<script type="text/javascript">var _sf_startpt=(new Date()).getTime()</script>
|
88
|
+
<style>
|
89
|
+
.wpcom-related-posts ul li {
|
90
|
+
list-style-type: none;
|
91
|
+
display: inline-block;
|
92
|
+
}
|
93
|
+
</style>
|
94
|
+
<style type="text/css">.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style>
|
95
|
+
<style type="text/css">
|
96
|
+
.recentcomments a {
|
97
|
+
display: inline !important;
|
98
|
+
padding: 0 !important;
|
99
|
+
margin: 0 !important;
|
100
|
+
}
|
101
|
+
|
102
|
+
table.recentcommentsavatartop img.avatar, table.recentcommentsavatarend img.avatar {
|
103
|
+
border: 0px;
|
104
|
+
margin: 0;
|
105
|
+
}
|
106
|
+
|
107
|
+
table.recentcommentsavatartop a, table.recentcommentsavatarend a {
|
108
|
+
border: 0px !important;
|
109
|
+
background-color: transparent !important;
|
110
|
+
}
|
111
|
+
|
112
|
+
td.recentcommentsavatarend, td.recentcommentsavatartop {
|
113
|
+
padding: 0px 0px 1px 0px;
|
114
|
+
margin: 0px;
|
115
|
+
}
|
116
|
+
|
117
|
+
td.recentcommentstextend {
|
118
|
+
border: none !important;
|
119
|
+
padding: 0px 0px 2px 10px;
|
120
|
+
}
|
121
|
+
|
122
|
+
.rtl td.recentcommentstextend {
|
123
|
+
padding: 0px 10px 2px 0px;
|
124
|
+
}
|
125
|
+
|
126
|
+
td.recentcommentstexttop {
|
127
|
+
border: none !important;
|
128
|
+
padding: 0px 0px 0px 10px;
|
129
|
+
}
|
130
|
+
|
131
|
+
.rtl td.recentcommentstexttop {
|
132
|
+
padding: 0px 10px 0px 0px;
|
133
|
+
}
|
134
|
+
</style>
|
135
|
+
<meta name="application-name" content="Hack a Day" /><meta name="msapplication-window" content="width=device-width;height=device-height" /><meta name="msapplication-tooltip" content="Fresh hacks every day" /><meta name="msapplication-task" content="name=Subscribe;action-uri=http://feeds2.feedburner.com/hackaday/LgoM;icon-uri=http://0.gravatar.com/blavatar/4f3e6b6daa090af416a1ba595885efd1?s=16" /><style id="syntaxhighlighteranchor"></style>
|
136
|
+
|
137
|
+
<script>jQuery(document).ready(function($) {
|
138
|
+
$("cswap li a").click(function() {
|
139
|
+
$("link").attr("href",$(this).attr('rel'));
|
140
|
+
return false;
|
141
|
+
});
|
142
|
+
});</script>
|
143
|
+
<meta name="google-site-verification" content="v0_F4q2HixEv6wrQCEKBEbp2Wuj0oI9ywwaN6aoV0JE" />
|
144
|
+
</head>
|
145
|
+
<body class="home blog paged paged-11 typekit-enabled header-image content-sidebar highlander-enabled highlander-light">
|
146
|
+
|
147
|
+
<div id="fb-root"></div>
|
148
|
+
<script>(function(d, s, id) {
|
149
|
+
var js, fjs = d.getElementsByTagName(s)[0];
|
150
|
+
if (d.getElementById(id)) return;
|
151
|
+
js = d.createElement(s); js.id = id;
|
152
|
+
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
|
153
|
+
fjs.parentNode.insertBefore(js, fjs);
|
154
|
+
}(document, 'script', 'facebook-jssdk'));</script>
|
155
|
+
<div id="wrap">
|
156
|
+
<div id="header"><div class="wrap"><div id="title-area"><h1 id="title"><a href="http://hackaday.com/" title="Hack a Day">Hack a Day</a></h1><p id="description">Fresh hacks every day</p></div><!-- end #title-area --><div class="widget-area"><div = "leaderboard">
|
157
|
+
<script type="text/javascript"><!--
|
158
|
+
google_ad_client = "ca-pub-1812638130783065";
|
159
|
+
/* Hackaday, 728x90, created 4/26/08, Leaderboard */
|
160
|
+
google_ad_slot = "4036713767";
|
161
|
+
google_ad_width = 728;
|
162
|
+
google_ad_height = 90;
|
163
|
+
//-->
|
164
|
+
</script>
|
165
|
+
<script type="text/javascript"
|
166
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
167
|
+
</script>
|
168
|
+
</div>
|
169
|
+
<div id="adslice">
|
170
|
+
|
171
|
+
<script type="text/javascript"><!--
|
172
|
+
google_ad_client = "pub-1812638130783065";
|
173
|
+
/* Hackaday, 728x15, created 4/26/08, AdSlice */
|
174
|
+
google_ad_slot = "0246324944";
|
175
|
+
google_ad_width = 728;
|
176
|
+
google_ad_height = 15;
|
177
|
+
//-->
|
178
|
+
</script>
|
179
|
+
|
180
|
+
<script type="text/javascript"
|
181
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
182
|
+
</script>
|
183
|
+
|
184
|
+
</div></div><!-- end .widget-area --></div><!-- end .wrap --></div><!--end #header--><div id="nav"><div class="wrap"><ul id="menu-main" class="menu menu-primary superfish"><li id="menu-item-90201" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-90201"><a href="http://www.hackaday.com">Home</a></li>
|
185
|
+
<li id="menu-item-77211" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77211"><a href="http://hackaday.com/contact-hack-a-day/">Submit a tip</a></li>
|
186
|
+
<li id="menu-item-90210" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-90210"><a href="http://forums.hackaday.com">forums</a></li>
|
187
|
+
<li id="menu-item-94591" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-94591"><a href="http://hackaday.com/hackaday-staff/">Hackaday Staff</a></li>
|
188
|
+
<li class="right search">
|
189
|
+
<form method="get" class="searchform" action="http://hackaday.com/" >
|
190
|
+
|
191
|
+
<input type="text" value="Search this website …" name="s" class="s" onfocus="if (this.value == 'Search this website …') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Search this website …';}" />
|
192
|
+
<input type="submit" class="searchsubmit" value="Search" />
|
193
|
+
</form>
|
194
|
+
</li></ul></div><!-- end .wrap --></div><div id="inner"><div class="wrap"> <div id="content-sidebar-wrap">
|
195
|
+
<div id="content" class="hfeed">
|
196
|
+
<div class="post-97321 post type-post status-publish format-standard hentry category-beer-hacks tag-android tag-atmega88 tag-beer tag-h-bridge tag-heat-exchanger">
|
197
|
+
|
198
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/04/wireless-temperature-control-for-a-microbrewery/" title="Wireless Temperature Control for a Microbrewery" rel="bookmark">Wireless Temperature Control for a Microbrewery</a></h2>
|
199
|
+
|
200
|
+
<div class="post-info"><span class="date published time" title="2013-04-04T10:01:49+00:00">April 4, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/ericevenchick/" class="fn n" title="Eric Evenchick" rel="author">Eric Evenchick</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/04/04/wireless-temperature-control-for-a-microbrewery/#comments">9 Comments</a></span> </div> <div class="entry-content">
|
201
|
+
<p><a href="http://hackaday.com/?attachment_id=97322" rel="attachment wp-att-97322"><img class="alignnone size-large wp-image-97322" alt="Wireless Temperature Control" src="http://hackadaycom.files.wordpress.com/2013/04/brew.jpg?w=580&h=385" width="580" height="385" /></a></p>
|
202
|
+
<p>When brewing your own beer, temperature control is important. If the temperature isn’t regulated correctly, the yeast will be killed when it’s added to the wort. It’s best to cool the wort from boiling down to about 25 C quickly before adding yeast.</p>
|
203
|
+
<p>To do this, [Kalle] came up with a <a title="Temperature based flow regulator" href="http://gizmosnack.blogspot.se/2013/04/temperature-based-flow-regulator.html">wireless temperature controller</a> for his home brewing setup. The device uses a <a title="Heat Exchanger" href="http://en.wikipedia.org/wiki/Heat_exchanger">heat exchanger</a> to cool the wort. An ATmega88 connected to a H-bridge controls a valve that regulates flow through the heat exchanger. It reads the current temperature from a LM35 temperature sensor and actuates the valve to bring the wort to a set point.</p>
|
204
|
+
<p>A neat addition to the build is a wireless radio. The <a title="nRF24L01" href="http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01">nRF24L01</a> module provides a wireless link to a computer. There’s an Android application which communicates with the computer, providing monitoring of the temperatures and control over the set point from anywhere [Kalle] can get an internet connection.</p>
|
205
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
206
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/beer-hacks/" title="View all posts in beer hacks" rel="category tag">beer hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/android/" rel="tag">android</a>, <a href="http://hackaday.com/tag/atmega88/" rel="tag">ATmega88</a>, <a href="http://hackaday.com/tag/beer/" rel="tag">beer</a>, <a href="http://hackaday.com/tag/h-bridge/" rel="tag">h-bridge</a>, <a href="http://hackaday.com/tag/heat-exchanger/" rel="tag">heat exchanger</a></span> </div>
|
207
|
+
</div><!-- end .postclass -->
|
208
|
+
<div class="post-97341 post type-post status-publish format-standard hentry category-radio-hacks tag-amateur-radio tag-fox-hunt tag-ham-radio tag-yagi">
|
209
|
+
|
210
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/04/turning-an-easter-egg-hunt-into-a-fox-hunt/" title="Turning an easter egg hunt into a fox hunt" rel="bookmark">Turning an easter egg hunt into a fox hunt</a></h2>
|
211
|
+
|
212
|
+
<div class="post-info"><span class="date published time" title="2013-04-04T10:00:42+00:00">April 4, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/brianbenchoff/" class="fn n" title="Brian Benchoff" rel="author">Brian Benchoff</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/04/04/turning-an-easter-egg-hunt-into-a-fox-hunt/#comments">4 Comments</a></span> </div> <div class="entry-content">
|
213
|
+
<p><img class="aligncenter size-full wp-image-97342" alt="fox" src="http://hackadaycom.files.wordpress.com/2013/04/fox.jpg?w=580&h=242" width="580" height="242" /></p>
|
214
|
+
<p>We’ve seen [Todd Harrison]‘s work a few times before, but he’s never involved his son so throughly before. This past Easter, he thought it would be a good idea for his son and a few of his friends to take part in an easter egg hunt. Being the ham he is, he decided to turn an easter egg hunt into an adventure in radio direction finding, or as amateur radio operators call it, <a href="http://www.toddfun.com/2013/04/04/rescue-the-easter-bunny-ham-radio-fox-hunting-for-beginners/">a fox hunt</a>.</p>
|
215
|
+
<p>[Todd] put together a great tutorial on building a yagi – a simple directional antenna – out of a couple of pieces of PVC pipe and a few aluminum and brass rods. With this and a handheld ham set, [Todd] hid <a href="http://www.byonics.com/mf">a fox</a> along with a stuffed easter bunny and a basket of candy near a local park. Operating under the guidance of his dad, [Todd]‘s son and his friends were eventually able to find the fox. Leaving candy out in the Arizona sun probably wasn’t [Todd]‘s best idea – the fox, and candy, were covered in ants when they were found – but it was a great introduction to amateur radio.</p>
|
216
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
217
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/radio-hacks/" title="View all posts in radio hacks" rel="category tag">radio hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/amateur-radio/" rel="tag">amateur radio</a>, <a href="http://hackaday.com/tag/fox-hunt/" rel="tag">fox hunt</a>, <a href="http://hackaday.com/tag/ham-radio/" rel="tag">ham radio</a>, <a href="http://hackaday.com/tag/yagi/" rel="tag">yagi</a></span> </div>
|
218
|
+
</div><!-- end .postclass -->
|
219
|
+
<div class="post-97335 post type-post status-publish format-standard hentry category-hackerspaces tag-diyode tag-hackerspace tag-irc">
|
220
|
+
|
221
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/04/pranking-a-hackerspace-irc-for-april-fools-day/" title="Pranking a hackerspace IRC for April Fool’s Day" rel="bookmark">Pranking a hackerspace IRC for April Fool’s Day</a></h2>
|
222
|
+
|
223
|
+
<div class="post-info"><span class="date published time" title="2013-04-04T08:00:41+00:00">April 4, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/brianbenchoff/" class="fn n" title="Brian Benchoff" rel="author">Brian Benchoff</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/04/04/pranking-a-hackerspace-irc-for-april-fools-day/#comments">6 Comments</a></span> </div> <div class="entry-content">
|
224
|
+
<p><img class="aligncenter size-full wp-image-97336" alt="face" src="http://hackadaycom.files.wordpress.com/2013/04/face.jpg?w=318&h=240" width="318" height="240" /></p>
|
225
|
+
<p>Like most hackerspaces, when the folks at DIYode, the Guelph, Ontario hackerspace, aren’t in the workshop, they’re on IRC. It’s a great way to build a community, complete with a bot that collects and catalogues to-do items, meeting topics, posts events to IRC, and even does a bit of text-to-speech so members currently at the DIYode can listen in on the IRC room. There’s also a webcam for the DIYode space that members check constantly. [Simon] thought it would be a great prank to freak out those members that constantly check the webcam, and we’ll say <a href="http://codeshield.diyode.com/2013/04/april-1st-on-the-diyode-irc/">he succeeded with a little help from the Alabama Face Guy</a>.</p>
|
226
|
+
<p>The build listens for a specific phrase in the IRC room – “Hey, someone just entered the shop without the doorbot noticing” – and sends a command via Python to an Arduino to raise and lower a cardboard cutout of a sneering face in front of the web cam. For an April Fool’s build, this is probably one of the most creative and creepy we’ve seen this year.</p>
|
227
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
228
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/hackerspaces/" title="View all posts in Hackerspaces" rel="category tag">Hackerspaces</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/diyode/" rel="tag">DIYode</a>, <a href="http://hackaday.com/tag/hackerspace/" rel="tag">hackerspace</a>, <a href="http://hackaday.com/tag/irc/" rel="tag">irc</a></span> </div>
|
229
|
+
</div><!-- end .postclass -->
|
230
|
+
<div align="center">
|
231
|
+
|
232
|
+
|
233
|
+
|
234
|
+
<script type="text/javascript"><!--
|
235
|
+
|
236
|
+
google_ad_client = "ca-pub-1812638130783065";
|
237
|
+
|
238
|
+
/* Hackaday, 300x250, created 4/26/08, MedRect main column */
|
239
|
+
|
240
|
+
google_ad_slot = "3449215672";
|
241
|
+
|
242
|
+
google_ad_width = 300;
|
243
|
+
|
244
|
+
google_ad_height = 250;
|
245
|
+
|
246
|
+
//-->
|
247
|
+
|
248
|
+
</script>
|
249
|
+
|
250
|
+
<script type="text/javascript"
|
251
|
+
|
252
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
253
|
+
|
254
|
+
</script>
|
255
|
+
|
256
|
+
|
257
|
+
|
258
|
+
</div> <div class="post-97289 post type-post status-publish format-standard hentry category-digital-audio-hacks category-transportation-hacks tag-16f877 tag-mp3 tag-pic tag-stereo">
|
259
|
+
|
260
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/04/mp3usbaux-hack-hidden-behind-cassette-facade/" title="MP3/USB/Aux hack hidden behind cassette facade" rel="bookmark">MP3/USB/Aux hack hidden behind cassette facade</a></h2>
|
261
|
+
|
262
|
+
<div class="post-info"><span class="date published time" title="2013-04-04T06:01:40+00:00">April 4, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/04/04/mp3usbaux-hack-hidden-behind-cassette-facade/#comments">30 Comments</a></span> </div> <div class="entry-content">
|
263
|
+
<p><img class="aligncenter size-large wp-image-97290" alt="mp3-hiding-in-plain-sight" src="http://hackadaycom.files.wordpress.com/2013/04/mp3-hiding-in-plain-sight.png?w=580&h=413" width="580" height="413" /></p>
|
264
|
+
<p>[Ivan] made something special with this car stereo hack. He altered the head unit to <a href="http://www.ivancreations.com/2013/03/mp3-cassette-player.html">play MP3 files from USB and added an auxiliary line-in</a>. But looking at it you’d never know. That’s thanks to the work he did to create a false button hiding the audio jack, and a false cassette hiding the USB port and MP3 player display. Possibly the best part is that the radio itself still works like it always did.</p>
|
265
|
+
<p>There are several components that went into making the system work. It starts with the cassette/radio head unit. To that he added an MP3 player with remote which he picked up on Deal Extreme. He wasn’t a huge fan of the IR remote that came with it so he rolled in a remote that mounts on the steering wheel. To pull everything together he used a PIC 16F877a. The microcontroller controls the lines which tell the head unit if a tape has been inserted. When [Ivan] selects either the Aux input or wants to play MP3s from a thumb drive the uC forces the head unit into cassette mode and the audio from the player is injected into the cassette player connections.</p>
|
266
|
+
<p>To help deter theft [Ivan] created two false fronts. The end of a cassette tape plugs into the USB port. The rewind button plugs into the Aux jack. You can get a good look at both in the demo after the break.</p>
|
267
|
+
<p> <a href="http://hackaday.com/2013/04/04/mp3usbaux-hack-hidden-behind-cassette-facade/#more-97289" class="more-link">[Read more...]</a></p>
|
268
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
269
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/digital-audio-hacks/" title="View all posts in digital audio hacks" rel="category tag">digital audio hacks</a>, <a href="http://hackaday.com/category/transportation-hacks/" title="View all posts in transportation hacks" rel="category tag">transportation hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/16f877/" rel="tag">16f877</a>, <a href="http://hackaday.com/tag/mp3/" rel="tag">mp3</a>, <a href="http://hackaday.com/tag/pic/" rel="tag">pic</a>, <a href="http://hackaday.com/tag/stereo/" rel="tag">stereo</a></span> </div>
|
270
|
+
</div><!-- end .postclass -->
|
271
|
+
<div class="post-97293 post type-post status-publish format-standard hentry category-digital-audio-hacks category-microcontrollers tag-fft tag-fourier tag-fourier-series tag-retrotechtacular">
|
272
|
+
|
273
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/04/retrotechtacular-the-fourier-series/" title="Retrotechtacular: The Fourier Series" rel="bookmark">Retrotechtacular: The Fourier Series</a></h2>
|
274
|
+
|
275
|
+
<div class="post-info"><span class="date published time" title="2013-04-04T04:01:36+00:00">April 4, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/04/04/retrotechtacular-the-fourier-series/#comments">22 Comments</a></span> </div> <div class="entry-content">
|
276
|
+
<p><img class="aligncenter size-large wp-image-97294" alt="retrotechtacular-fourier-series" src="http://hackadaycom.files.wordpress.com/2013/04/retrotechtacular-fourier-series.png?w=580&h=326" width="580" height="326" /></p>
|
277
|
+
<p>Here’s a really quick video which takes <a href="http://www.youtube.com/watch?v=SpzNQOOBeRg">a different approach to understanding the Fourier Series</a> than we’re used to. If you’re a regular reader we’re sure you’ve heard of the Fourier Series (often discussed as FFT or Fast Fourier Transform), but there’s a good chance you know little about it. The series allows you to break down complex signals (think audio waves) into combinations of simple sine or cosine equations which can be handled by a microcontroller.</p>
|
278
|
+
<p>We’ve had that base level of understanding for a long time. But when you start to dig deeper we find that it becomes a math exercise that isn’t all that intuitive. The video clip embedded after the break changes that. It starts off by showing a rotating vector. Mapping the tip of that vector horizontally will draw the waveform. The Fourier Series is then leveraged, adding spinning vectors for the harmonics to the tip of the last vector. The result of summing these harmonics produces the sine-based square wave approximation seen above.</p>
|
279
|
+
<p>That’s a mouthful, and we’re sure you’ll agree that the video demo is much easier to understand. But the three minute clip just scratches the surface. If you’re determined to master the Fourier Series give <a href="http://www.youtube.com/view_play_list?p=B24BC7956EE040CD">this mammoth Stanford lecture series on the topic</a> a try.</p>
|
280
|
+
<p> <a href="http://hackaday.com/2013/04/04/retrotechtacular-the-fourier-series/#more-97293" class="more-link">[Read more...]</a></p>
|
281
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
282
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/digital-audio-hacks/" title="View all posts in digital audio hacks" rel="category tag">digital audio hacks</a>, <a href="http://hackaday.com/category/microcontrollers/" title="View all posts in Microcontrollers" rel="category tag">Microcontrollers</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/fft/" rel="tag">fft</a>, <a href="http://hackaday.com/tag/fourier/" rel="tag">Fourier</a>, <a href="http://hackaday.com/tag/fourier-series/" rel="tag">fourier series</a>, <a href="http://hackaday.com/tag/retrotechtacular/" rel="tag">retrotechtacular</a></span> </div>
|
283
|
+
</div><!-- end .postclass -->
|
284
|
+
<div class="post-97297 post type-post status-publish format-standard hentry category-robots-hacks tag-adns-5020 tag-autonomous-vehicle tag-avago tag-avc tag-optical-mouse tag-sparkfun">
|
285
|
+
|
286
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/03/adding-an-optical-mouse-sensor-to-an-autonomous-vehicle/" title="Adding an optical mouse sensor to an autonomous vehicle" rel="bookmark">Adding an optical mouse sensor to an autonomous vehicle</a></h2>
|
287
|
+
|
288
|
+
<div class="post-info"><span class="date published time" title="2013-04-03T19:08:34+00:00">April 3, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/04/03/adding-an-optical-mouse-sensor-to-an-autonomous-vehicle/#comments">19 Comments</a></span> </div> <div class="entry-content">
|
289
|
+
<p><img class="aligncenter size-large wp-image-97298" alt="optical-mouse-sensor-for-autonomous-vehicle" src="http://hackadaycom.files.wordpress.com/2013/04/optical-mouse-sensor-for-autonomous-vehicle.jpg?w=580&h=346" width="580" height="346" /></p>
|
290
|
+
<p>[Tim] is getting his drone ready for SparkFun’s 2013 Autonomous Vehicle Competition on June 8th. He has a pretty good start, but was having some problems accurately measuring travel distance. The technique he chose for the task was to glue magnets onto the axles of the vehicle and monitor them with a hall effect sensor. Those sensors are finicky and a few problems during testing prompted him to look at a redundant system. Right now he’s experimenting with <a href="http://www.wildcircuits.com/2013/03/optical-mouse-hacking.html">adding an optical mouse sensor to the autonomous vehicle</a>.</p>
|
291
|
+
<p>Recently we saw the same concept used, but it was meant for <a href="http://hackaday.com/2013/03/10/tracking-a-car-like-it-were-a-computer-mouse/">tracking movement of a full-sized automobile</a>. If it can work in that application it should be perfect here since the vehicle is much closer to the ground and will be used in ideal conditions (flat pavement with clear weather). [Tim] cracked open an old HP mouse he had lying around. Inside he found an Avago ADNS-5020 sensor. After grabbing the datasheet he discovered that it’s simply an I2C device. Above you can see the Arduino Leonardo he used for the first tests.</p>
|
292
|
+
<p>[Tim] coded functions to monitor the chip, including some interesting ones like measuring how in-focus the surface below the sensor is. This brings up a question, is there limit on how fast the vehicle can travel before the sensor fails to report back accurately?</p>
|
293
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
294
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/robots-hacks/" title="View all posts in robots hacks" rel="category tag">robots hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/adns-5020/" rel="tag">adns-5020</a>, <a href="http://hackaday.com/tag/autonomous-vehicle/" rel="tag">autonomous vehicle</a>, <a href="http://hackaday.com/tag/avago/" rel="tag">avago</a>, <a href="http://hackaday.com/tag/avc/" rel="tag">avc</a>, <a href="http://hackaday.com/tag/optical-mouse/" rel="tag">optical mouse</a>, <a href="http://hackaday.com/tag/sparkfun/" rel="tag">sparkfun</a></span> </div>
|
295
|
+
</div><!-- end .postclass -->
|
296
|
+
<div class="post-97301 post type-post status-publish format-standard hentry category-3d-printer-hacks category-parts tag-74lvc1g58 tag-a3144 tag-hall-effect tag-limit-switch tag-limiting-swith">
|
297
|
+
|
298
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/03/hall-effect-limit-switches-for-a-3d-printer/" title="Hall effect limit switches for a 3D printer" rel="bookmark">Hall effect limit switches for a 3D printer</a></h2>
|
299
|
+
|
300
|
+
<div class="post-info"><span class="date published time" title="2013-04-03T17:08:00+00:00">April 3, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/04/03/hall-effect-limit-switches-for-a-3d-printer/#comments">37 Comments</a></span> </div> <div class="entry-content">
|
301
|
+
<p><img class="aligncenter size-large wp-image-97302" alt="hall-effect-limit-switches" src="http://hackadaycom.files.wordpress.com/2013/04/hall-effect-limit-switches.jpg?w=580&h=326" width="580" height="326" /></p>
|
302
|
+
<p>We’re used to thinking of limit switches as a mechanical device that cuts the motor connection before physical damage can occur. [Anthony] decided to try a different route with this project. He built this set of <a href="http://www.anthonyvh.com/2013/03/24/hall-effect-switch/">no-contact limit switches using a hall effect sensor</a>. The small black package sticking out past the end of the protoboard is the sensor. It is used to detect a magnetic field.</p>
|
303
|
+
<p>[Anthony] chose to use an Allegro A3144 sensor. Apparently it is no longer in production but was easy to find for a song and dance on eBay. When thinking about the design he decided to add two LED indicators, one lights when the switch is open and the other when it has been tripped. This would have been easy to do with just one LED, but he needed to add more parts to get both working. In the lower left corner of the protoboard you can see the configurable gate device (74LVC1G58) he added to monitor the hall effect sensor and switch the output and LEDs accordingly.</p>
|
304
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
305
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/3d-printer-hacks/" title="View all posts in 3d Printer hacks" rel="category tag">3d Printer hacks</a>, <a href="http://hackaday.com/category/parts/" title="View all posts in parts" rel="category tag">parts</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/74lvc1g58/" rel="tag">74lvc1g58</a>, <a href="http://hackaday.com/tag/a3144/" rel="tag">a3144</a>, <a href="http://hackaday.com/tag/hall-effect/" rel="tag">hall effect</a>, <a href="http://hackaday.com/tag/limit-switch/" rel="tag">limit switch</a>, <a href="http://hackaday.com/tag/limiting-swith/" rel="tag">limiting swith</a></span> </div>
|
306
|
+
</div><!-- end .postclass -->
|
307
|
+
<div class="navigation"><div class="alignleft"><a href="http://hackaday.com/page/12/" >« Older Posts</a></div><div class="alignright"><a href="http://hackaday.com/page/10/" >Newer Posts »</a></div></div><!-- end .navigation --> </div><!-- end #content -->
|
308
|
+
<div id="sidebar" class="sidebar widget-area">
|
309
|
+
<div id=tl_ad>
|
310
|
+
<script type="text/javascript"><!--
|
311
|
+
google_ad_client = "ca-pub-1812638130783065";
|
312
|
+
/* Hackaday, 300x250, created 4/26/08, MedRect sidebar */
|
313
|
+
google_ad_slot = "7800245928";
|
314
|
+
google_ad_width = 300;
|
315
|
+
google_ad_height = 250;
|
316
|
+
//-->
|
317
|
+
</script>
|
318
|
+
<script type="text/javascript"
|
319
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
320
|
+
</script>
|
321
|
+
|
322
|
+
</div>
|
323
|
+
|
324
|
+
|
325
|
+
|
326
|
+
|
327
|
+
|
328
|
+
|
329
|
+
<div class="widget">
|
330
|
+
<h4>Never Miss a Hack</h4>
|
331
|
+
<div class="textwidget">
|
332
|
+
|
333
|
+
<!-- Place this tag where you want the badge to render. -->
|
334
|
+
<div class="g-plus" data-width= "280" data-href="https://plus.google.com/114843073658390316652" data-rel="publisher" data-theme="dark"></div>
|
335
|
+
<!-- Place this tag after the last badge tag. -->
|
336
|
+
<script type="text/javascript">
|
337
|
+
(function() {
|
338
|
+
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
|
339
|
+
po.src = 'https://apis.google.com/js/plusone.js';
|
340
|
+
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
|
341
|
+
})();
|
342
|
+
</script>
|
343
|
+
|
344
|
+
<div class="fb-like" data-href="https://www.facebook.com/pages/Hack-a-Day/136115233068429?ref=hl" data-send="true" data-width="280" data-show-faces="true" data-colorscheme="dark"></div>
|
345
|
+
|
346
|
+
<a href="https://twitter.com/hackaday" class="twitter-follow-button" data-show-count="true" data-lang="en" data-size="large">Follow @twitter</a>
|
347
|
+
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
|
348
|
+
|
349
|
+
<a href="http://feeds2.feedburner.com/hackaday/LgoM" target="_blank"><img src="http://hackadaycom.files.wordpress.com/2012/11/orange.png" border="0"/></a>
|
350
|
+
<div class="clear"> </div>
|
351
|
+
<!-- Begin MailChimp Signup Form -->
|
352
|
+
<link href="http://cdn-images.mailchimp.com/embedcode/slim-081711.css" rel="stylesheet" type="text/css">
|
353
|
+
|
354
|
+
<div id="mc_embed_signup">
|
355
|
+
<form action="http://mahalo.us5.list-manage.com/subscribe/post?u=126b2ab712043075d9bd7210e&id=cb1aa8bd16" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
|
356
|
+
<label for="mce-EMAIL">Subscribe to our mailing list for sneak previews and behind the scenes info</label>
|
357
|
+
<input type="email" value="" name="EMAIL" class="email" id="mce-EMAIL" placeholder="email address" required>
|
358
|
+
<div class="clear"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button"></div>
|
359
|
+
</form>
|
360
|
+
</div>
|
361
|
+
|
362
|
+
<!--End mc_embed_signup-->
|
363
|
+
</div>
|
364
|
+
</div>
|
365
|
+
|
366
|
+
<div id="categories-2" class="widget widget_categories"><div class="widget-wrap"><h4 class="widgettitle">Categories</h4>
|
367
|
+
<select name='cat' id='cat' class='postform' >
|
368
|
+
<option value='-1'>Select Category</option>
|
369
|
+
<option class="level-0" value="114554125">3d Printer hacks (116)</option>
|
370
|
+
<option class="level-0" value="18020710">android hacks (240)</option>
|
371
|
+
<option class="level-0" value="18020705">arduino hacks (1029)</option>
|
372
|
+
<option class="level-0" value="27981650">ARM (51)</option>
|
373
|
+
<option class="level-0" value="33199679">Ask Hackaday (29)</option>
|
374
|
+
<option class="level-0" value="64298109">ATtiny hacks (45)</option>
|
375
|
+
<option class="level-0" value="25122024">beer hacks (63)</option>
|
376
|
+
<option class="level-0" value="12115263">blackberry hacks (8)</option>
|
377
|
+
<option class="level-0" value="10969031">cellphones hacks (337)</option>
|
378
|
+
<option class="level-0" value="35745764">chemistry hacks (102)</option>
|
379
|
+
<option class="level-0" value="24483654">classic hacks (852)</option>
|
380
|
+
<option class="level-0" value="31677810">clock hacks (189)</option>
|
381
|
+
<option class="level-0" value="18755632">cnc hacks (341)</option>
|
382
|
+
<option class="level-0" value="568165">computer hacks (390)</option>
|
383
|
+
<option class="level-0" value="78428">cons (192)</option>
|
384
|
+
<option class="level-0" value="5738">contests (136)</option>
|
385
|
+
<option class="level-0" value="3923181">cooking hacks (72)</option>
|
386
|
+
<option class="level-0" value="10969032">digital audio hacks (422)</option>
|
387
|
+
<option class="level-0" value="10969033">digital cameras hacks (415)</option>
|
388
|
+
<option class="level-0" value="10969034">downloads hacks (101)</option>
|
389
|
+
<option class="level-0" value="107827385">drone hacks (10)</option>
|
390
|
+
<option class="level-0" value="63176382">Engine Hacks (31)</option>
|
391
|
+
<option class="level-0" value="35890">Featured (72)</option>
|
392
|
+
<option class="level-0" value="551890">firefox hacks (23)</option>
|
393
|
+
<option class="level-0" value="53446541">FPGA (1)</option>
|
394
|
+
<option class="level-0" value="18020562">g1 hacks (26)</option>
|
395
|
+
<option class="level-0" value="320557">google hacks (44)</option>
|
396
|
+
<option class="level-0" value="10969036">gps hacks (108)</option>
|
397
|
+
<option class="level-0" value="24535490">green hacks (152)</option>
|
398
|
+
<option class="level-0" value="27311668">Hackaday links (146)</option>
|
399
|
+
<option class="level-0" value="21755374">Hackerspaces (93)</option>
|
400
|
+
<option class="level-0" value="6310599">HackIt (101)</option>
|
401
|
+
<option class="level-0" value="10969037">handhelds hacks (189)</option>
|
402
|
+
<option class="level-0" value="79">hardware (249)</option>
|
403
|
+
<option class="level-0" value="144422905">High Voltage Hacks (5)</option>
|
404
|
+
<option class="level-0" value="66307084">Holiday Hacks (93)</option>
|
405
|
+
<option class="level-0" value="10969038">home entertainment hacks (516)</option>
|
406
|
+
<option class="level-0" value="5660882">home hacks (705)</option>
|
407
|
+
<option class="level-0" value="2708">how-to (135)</option>
|
408
|
+
<option class="level-0" value="908478">internet hacks (2)</option>
|
409
|
+
<option class="level-0" value="831">Interviews (13)</option>
|
410
|
+
<option class="level-0" value="1416772">iphone hacks (176)</option>
|
411
|
+
<option class="level-0" value="1275163">ipod hacks (144)</option>
|
412
|
+
<option class="level-0" value="344761">kickstarter (29)</option>
|
413
|
+
<option class="level-0" value="4157506">Kindle hacks (15)</option>
|
414
|
+
<option class="level-0" value="46717088">Kinect hacks (81)</option>
|
415
|
+
<option class="level-0" value="10969048">laptops hacks (111)</option>
|
416
|
+
<option class="level-0" value="10969055">laser hacks (167)</option>
|
417
|
+
<option class="level-0" value="18020716">led hacks (695)</option>
|
418
|
+
<option class="level-0" value="10626">lifehacks (54)</option>
|
419
|
+
<option class="level-0" value="729674">linux hacks (129)</option>
|
420
|
+
<option class="level-0" value="20732807">lockpicking hacks (11)</option>
|
421
|
+
<option class="level-0" value="10969060">macs hacks (135)</option>
|
422
|
+
<option class="level-0" value="144395979">Marijuana Hacks (2)</option>
|
423
|
+
<option class="level-0" value="11284667">Medical hacks (102)</option>
|
424
|
+
<option class="level-0" value="139916">Microcontrollers (512)</option>
|
425
|
+
<option class="level-0" value="5611793">misc hacks (1747)</option>
|
426
|
+
<option class="level-0" value="18020730">multitouch hacks (89)</option>
|
427
|
+
<option class="level-0" value="22652725">musical hacks (290)</option>
|
428
|
+
<option class="level-0" value="18020722">netbook hacks (50)</option>
|
429
|
+
<option class="level-0" value="6166512">Network Hacks (4)</option>
|
430
|
+
<option class="level-0" value="103">news (1091)</option>
|
431
|
+
<option class="level-0" value="1861880">nintendo ds hacks (34)</option>
|
432
|
+
<option class="level-0" value="114555425">nintendo gameboy hacks (90)</option>
|
433
|
+
<option class="level-0" value="18020685">nintendo hacks (261)</option>
|
434
|
+
<option class="level-0" value="4992726">nintendo wii hacks (78)</option>
|
435
|
+
<option class="level-0" value="118011206">Nook Hacks (1)</option>
|
436
|
+
<option class="level-0" value="114556430">palm pre hacks (6)</option>
|
437
|
+
<option class="level-0" value="245123">parts (72)</option>
|
438
|
+
<option class="level-0" value="10969081">peripherals hacks (648)</option>
|
439
|
+
<option class="level-0" value="16325149">phone hacks (17)</option>
|
440
|
+
<option class="level-0" value="10969088">playstation hacks (120)</option>
|
441
|
+
<option class="level-0" value="2060">podcasts (8)</option>
|
442
|
+
<option class="level-0" value="10969096">portable audio hacks (66)</option>
|
443
|
+
<option class="level-0" value="10969099">portable video hacks (57)</option>
|
444
|
+
<option class="level-0" value="588444">psp hacks (47)</option>
|
445
|
+
<option class="level-0" value="23971578">radio hacks (137)</option>
|
446
|
+
<option class="level-0" value="47">rants (28)</option>
|
447
|
+
<option class="level-0" value="69218551">Raspberry Pi (153)</option>
|
448
|
+
<option class="level-0" value="21870780">repair hacks (101)</option>
|
449
|
+
<option class="level-0" value="309">reviews (19)</option>
|
450
|
+
<option class="level-0" value="10969101">robots hacks (874)</option>
|
451
|
+
<option class="level-0" value="30302">roundup (35)</option>
|
452
|
+
<option class="level-0" value="10969111">security hacks (460)</option>
|
453
|
+
<option class="level-0" value="2301">Software Development (91)</option>
|
454
|
+
<option class="level-0" value="3796421">software hacks (47)</option>
|
455
|
+
<option class="level-0" value="10969116">solar hacks (46)</option>
|
456
|
+
<option class="level-0" value="10969121">tablet pcs hacks (40)</option>
|
457
|
+
<option class="level-0" value="3075183">teardown (31)</option>
|
458
|
+
<option class="level-0" value="10969130">tool hacks (657)</option>
|
459
|
+
<option class="level-0" value="25277004">toy hacks (360)</option>
|
460
|
+
<option class="level-0" value="10969134">transportation hacks (472)</option>
|
461
|
+
<option class="level-0" value="1">Uncategorized (332)</option>
|
462
|
+
<option class="level-0" value="3184456">video hacks (211)</option>
|
463
|
+
<option class="level-0" value="34942364">Virtual Reality (9)</option>
|
464
|
+
<option class="level-0" value="50802420">weapons hacks (63)</option>
|
465
|
+
<option class="level-0" value="12552193">wearable hacks (183)</option>
|
466
|
+
<option class="level-0" value="39510952">Weekly roundup (18)</option>
|
467
|
+
<option class="level-0" value="4891215">wireless hacks (333)</option>
|
468
|
+
<option class="level-0" value="7079455">xbox hacks (130)</option>
|
469
|
+
</select>
|
470
|
+
|
471
|
+
<script type='text/javascript'>
|
472
|
+
/* <![CDATA[ */
|
473
|
+
var dropdown = document.getElementById("cat");
|
474
|
+
function onCatChange() {
|
475
|
+
if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
|
476
|
+
location.href = "http://hackaday.com/?cat="+dropdown.options[dropdown.selectedIndex].value;
|
477
|
+
}
|
478
|
+
}
|
479
|
+
dropdown.onchange = onCatChange;
|
480
|
+
/* ]]> */
|
481
|
+
</script>
|
482
|
+
|
483
|
+
</div></div>
|
484
|
+
<div id="featured-post-2" class="widget featuredpost"><div class="widget-wrap"><h4 class="widgettitle">In case you missed it</h4>
|
485
|
+
<div class="post-97657 post type-post status-publish format-standard hentry category-3d-printer-hacks category-featured tag-algae tag-bioluminescence tag-dinoflagellate tag-glowing tag-phosphorescence"><a href="http://hackaday.com/2013/04/18/living-night-light-with-glowing-algae/" title="Living night light with glowing algae" class="alignleft"><img width="90" height="61" src="http://hackadaycom.files.wordpress.com/2013/04/thumb1.jpg?w=90" class="attachment-thumbnail" alt="thumb" /></a><h2><a href="http://hackaday.com/2013/04/18/living-night-light-with-glowing-algae/" title="Living night light with glowing algae">Living night light with glowing algae</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/18/living-night-light-with-glowing-algae/#comments">67 Comments</a></span></p></div><!--end post_class()-->
|
486
|
+
|
487
|
+
<div class="post-97648 post type-post status-publish format-standard hentry category-3d-printer-hacks category-featured category-virtual-reality-2 tag-3d-printing tag-lulzbot tag-oculus-rift tag-virtual-reality tag-vr"><a href="http://hackaday.com/2013/04/17/3d-printing-sensor-mounts-for-the-oculus-rift/" title="3D Printing sensor mounts for the Oculus Rift" class="alignleft"><img width="90" height="67" src="http://hackadaycom.files.wordpress.com/2013/04/thumb.jpg?w=90" class="attachment-thumbnail" alt="thumb" /></a><h2><a href="http://hackaday.com/2013/04/17/3d-printing-sensor-mounts-for-the-oculus-rift/" title="3D Printing sensor mounts for the Oculus Rift">3D Printing sensor mounts for the Oculus Rift</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/17/3d-printing-sensor-mounts-for-the-oculus-rift/#comments">7 Comments</a></span></p></div><!--end post_class()-->
|
488
|
+
|
489
|
+
<div class="post-97564 post type-post status-publish format-standard hentry category-featured category-virtual-reality-2 tag-adaliight tag-ambilight tag-oculus-rift tag-virtual-reality tag-vr"><a href="http://hackaday.com/2013/04/11/hacking-the-oculus-rift-the-oculight/" title="Hacking the Oculus Rift: the Oculight" class="alignleft"><img width="90" height="54" src="http://hackadaycom.files.wordpress.com/2013/04/screen-shot-2013-04-14-at-9-52-43-am.png?w=90" class="attachment-thumbnail" alt="Screen Shot 2013-04-14 at 9.52.43 AM" /></a><h2><a href="http://hackaday.com/2013/04/11/hacking-the-oculus-rift-the-oculight/" title="Hacking the Oculus Rift: the Oculight">Hacking the Oculus Rift: the Oculight</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/11/hacking-the-oculus-rift-the-oculight/#comments">20 Comments</a></span></p></div><!--end post_class()-->
|
490
|
+
|
491
|
+
<div class="post-97538 post type-post status-publish format-standard hentry category-featured category-news tag-top-10 tag-wins"><a href="http://hackaday.com/2013/04/11/top-10-best-hacking-scenes-in-movies/" title="Top 10 best hacking scenes in movies" class="alignleft"><img width="90" height="55" src="http://hackadaycom.files.wordpress.com/2013/04/screen-shot-2013-04-14-at-9-51-38-am.png?w=90" class="attachment-thumbnail" alt="Screen Shot 2013-04-14 at 9.51.38 AM" /></a><h2><a href="http://hackaday.com/2013/04/11/top-10-best-hacking-scenes-in-movies/" title="Top 10 best hacking scenes in movies">Top 10 best hacking scenes in movies</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/11/top-10-best-hacking-scenes-in-movies/#comments">88 Comments</a></span></p></div><!--end post_class()-->
|
492
|
+
|
493
|
+
<div class="post-97094 post type-post status-publish format-standard hentry category-featured category-news tag-april-fools"><a href="http://hackaday.com/2013/04/01/hackadays-very-first-kickstarter-campaign/" title="Hackaday’s very first Kickstarter campaign" class="alignleft"><img width="90" height="54" src="http://hackadaycom.files.wordpress.com/2013/03/hackaday-kickstarter.jpg?w=90" class="attachment-thumbnail" alt="hackaday-kickstarter" /></a><h2><a href="http://hackaday.com/2013/04/01/hackadays-very-first-kickstarter-campaign/" title="Hackaday’s very first Kickstarter campaign">Hackaday’s very first Kickstarter campaign</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/01/hackadays-very-first-kickstarter-campaign/#comments">58 Comments</a></span></p></div><!--end post_class()-->
|
494
|
+
|
495
|
+
<p class="more-from-category"><a href="http://hackaday.com/category/featured/" title="Featured">More Posts from this Category</a></p></div></div>
|
496
|
+
<div id="recent-comments-2" class="widget widget_recent_comments"><div class="widget-wrap"><h4 class="widgettitle">Recent comments</h4>
|
497
|
+
<ul id="recentcomments">
|
498
|
+
<li class="recentcomments">
|
499
|
+
echodelta on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-997083">Rattle generator is a new type of dynamo for a bicycle</a> </li>
|
500
|
+
<li class="recentcomments">
|
501
|
+
<a href='http://jsutton.co.uk' rel='external nofollow' class='url'>James</a> on <a href="http://hackaday.com/2013/04/23/console-radio-given-new-life-with-a-wifi-router-retrofit/comment-page-1/#comment-997080">Console radio given new life with a WiFi router retrofit</a> </li>
|
502
|
+
<li class="recentcomments">
|
503
|
+
nhede on <a href="http://hackaday.com/2013/04/22/20-pounds-and-a-gut-feeling-yields-a-configurable-rubidium-atomic-clock-source/comment-page-1/#comment-997074">20 pounds and a gut feeling yields a configurable Rubidium atomic clock source</a> </li>
|
504
|
+
<li class="recentcomments">
|
505
|
+
Dax on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-997071">Rattle generator is a new type of dynamo for a bicycle</a> </li>
|
506
|
+
<li class="recentcomments">
|
507
|
+
TacticalNinja on <a href="http://hackaday.com/2013/04/23/otm-02-is-a-3d-printed-wristwatch/comment-page-1/#comment-997070">OTM-02 is a 3D printed wristwatch</a> </li>
|
508
|
+
<li class="recentcomments">
|
509
|
+
Arlet on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-997017">Rattle generator is a new type of dynamo for a bicycle</a> </li>
|
510
|
+
<li class="recentcomments">
|
511
|
+
Arlet on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-997016">Rattle generator is a new type of dynamo for a bicycle</a> </li>
|
512
|
+
<li class="recentcomments">
|
513
|
+
<a href='http://smonson.com/' rel='external nofollow' class='url'>Smonson</a> on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-996997">Rattle generator is a new type of dynamo for a bicycle</a> </li>
|
514
|
+
<li class="recentcomments">
|
515
|
+
<a href='http://twitter.com/admsch' rel='external nofollow' class='url'>Adam Scheuring (@admsch)</a> on <a href="http://hackaday.com/2013/04/23/otm-02-is-a-3d-printed-wristwatch/comment-page-1/#comment-996993">OTM-02 is a 3D printed wristwatch</a> </li>
|
516
|
+
<li class="recentcomments">
|
517
|
+
JoSSte on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-996990">Rattle generator is a new type of dynamo for a bicycle</a> </li>
|
518
|
+
</ul>
|
519
|
+
</div></div>
|
520
|
+
<div id="calendar-2" class="widget widget_calendar"><div class="widget-wrap"><h4 class="widgettitle">Find Hacks by Date</h4>
|
521
|
+
<div id="calendar_wrap"><table id="wp-calendar">
|
522
|
+
<caption>April 2013</caption>
|
523
|
+
<thead>
|
524
|
+
<tr>
|
525
|
+
<th scope="col" title="Sunday">S</th>
|
526
|
+
<th scope="col" title="Monday">M</th>
|
527
|
+
<th scope="col" title="Tuesday">T</th>
|
528
|
+
<th scope="col" title="Wednesday">W</th>
|
529
|
+
<th scope="col" title="Thursday">T</th>
|
530
|
+
<th scope="col" title="Friday">F</th>
|
531
|
+
<th scope="col" title="Saturday">S</th>
|
532
|
+
</tr>
|
533
|
+
</thead>
|
534
|
+
|
535
|
+
<tfoot>
|
536
|
+
<tr>
|
537
|
+
<td colspan="3" id="prev"><a href="http://hackaday.com/2013/03/" title="View posts for March 2013">« Mar</a></td>
|
538
|
+
<td class="pad"> </td>
|
539
|
+
<td colspan="3" id="next" class="pad"> </td>
|
540
|
+
</tr>
|
541
|
+
</tfoot>
|
542
|
+
|
543
|
+
<tbody>
|
544
|
+
<tr>
|
545
|
+
<td colspan="1" class="pad"> </td><td><a href="http://hackaday.com/2013/04/01/" title="Hackaday’s very first Kickstarter campaign
|
546
|
+
Doctor Who-style WiFi
|
547
|
+
Kindle weather and recycling display
|
548
|
+
Windmill made from washing machine, 555 chip
|
549
|
+
SNES headphones scream out for Bluetooth control
|
550
|
+
How-to: turn on a light bulb">1</a></td><td><a href="http://hackaday.com/2013/04/02/" title="An EQ display for a pedal board
|
551
|
+
Dual displays on a Playstation 2
|
552
|
+
Ask Hackaday: Hacking lingo fails
|
553
|
+
Cooling a photomultiplier tube
|
554
|
+
Hackerspace tour: Arch Reactor in St. Louis Missouri
|
555
|
+
Adafruit launches educational show aimed at kids
|
556
|
+
CNC Tic Tac Toe
|
557
|
+
Building a vehicle parking camera
|
558
|
+
April Fools’ project teaches coworkers not to touch your stuff
|
559
|
+
SenseLamp automates rooms by replacing light fixtures">2</a></td><td><a href="http://hackaday.com/2013/04/03/" title="Embedded web server is all about clever formatting
|
560
|
+
Powering the Oculus Rift with USB
|
561
|
+
Upgrading a router with impeccable soldering skills
|
562
|
+
Homebuilt Laser Cutter Ideas
|
563
|
+
Building a Theremincello
|
564
|
+
Microscope ring light with a number of different features
|
565
|
+
Hall effect limit switches for a 3D printer
|
566
|
+
Adding an optical mouse sensor to an autonomous vehicle">3</a></td><td><a href="http://hackaday.com/2013/04/04/" title="Retrotechtacular: The Fourier Series
|
567
|
+
MP3/USB/Aux hack hidden behind cassette facade
|
568
|
+
Pranking a hackerspace IRC for April Fool’s Day
|
569
|
+
Turning an easter egg hunt into a fox hunt
|
570
|
+
Wireless Temperature Control for a Microbrewery
|
571
|
+
Melting Metal with a DIY Foundry Furnace
|
572
|
+
Top 10 Hacking Failures in movies: part 2
|
573
|
+
Steampunk theremin goggles
|
574
|
+
High speed circuit design for quantum physics light sensing
|
575
|
+
Home security hardware makes you the monitoring service">4</a></td><td><a href="http://hackaday.com/2013/04/05/" title="Snowboard goggle HUD displays critical data while falling down a mountain
|
576
|
+
Electric tricycle build log is like hacker crack
|
577
|
+
H-bot style 3D printer moves bed for Z-axis
|
578
|
+
Stapler hack fastens infinitely large sheets of paper
|
579
|
+
Light Graffiti with Servos and Python">5</a></td><td><a href="http://hackaday.com/2013/04/06/" title="Fixing the worst video game ever: E.T. for Atari 2600
|
580
|
+
Rolling your own minimal USB to serial Arduino programmer
|
581
|
+
Making PLA stick to a 3D printer build platform by using hairspray or an acetone ABS slurry">6</a></td>
|
582
|
+
</tr>
|
583
|
+
<tr>
|
584
|
+
<td><a href="http://hackaday.com/2013/04/07/" title="Acoustic bass guitar uses water jug and two strings
|
585
|
+
Solar powered robot mows your lawn while you chill indoors
|
586
|
+
Hackaday Links: Sunday, April 7th, 2013">7</a></td><td><a href="http://hackaday.com/2013/04/08/" title="Another way to look at Charlieplexing
|
587
|
+
Combo lock uses relays and logic gates
|
588
|
+
Yamaha SW60XG hack lets you use it as a standalone MIDI device">8</a></td><td><a href="http://hackaday.com/2013/04/09/" title="Synthesizing graphene in your basement laboratory
|
589
|
+
The RedBull creation contest begins!
|
590
|
+
Recurve bow make from wood and skis
|
591
|
+
Wall wart computer mouse">9</a></td><td><a href="http://hackaday.com/2013/04/10/" title="Hacker sends this through the mail to record a video of the process
|
592
|
+
MIDI pedal project looks as good as it sounds
|
593
|
+
Perpetual pong">10</a></td><td><a href="http://hackaday.com/2013/04/11/" title="Snowboard propulsion system motors you through the flats
|
594
|
+
Guitar EQ levels trigger the stage lights
|
595
|
+
Top 10 best hacking scenes in movies
|
596
|
+
Automating a mechanical typewriter
|
597
|
+
Hacking the Oculus Rift: the Oculight">11</a></td><td><a href="http://hackaday.com/2013/04/12/" title="Jeep Wrangler gets pressurized water right out of the bumper
|
598
|
+
Horribly complicated electric guitar keyboard
|
599
|
+
Generating electricity from alcohol">12</a></td><td><a href="http://hackaday.com/2013/04/13/" title="Network-controlled fireworks launcher
|
600
|
+
Working 3D printed stepper motor
|
601
|
+
SqueezeBerry: a Raspberri Pi powered Squeezebox appliance">13</a></td>
|
602
|
+
</tr>
|
603
|
+
<tr>
|
604
|
+
<td><a href="http://hackaday.com/2013/04/14/" title="Teaching a computer to play Mario… seemingly through voodoo
|
605
|
+
Building a replacement for a broken dehumidifier controller
|
606
|
+
Hackaday Links: Sunday, April 14th, 2013">14</a></td><td><a href="http://hackaday.com/2013/04/15/" title="Glowing Easter eggs more fun than a dye job
|
607
|
+
[FlorianH] shows off MinimaBL, the next generation of his quadcopter project
|
608
|
+
Original hardware for fifteen consoles jammed into recently completed Project Unity">15</a></td><td><a href="http://hackaday.com/2013/04/16/" title="Tube radio husk gets a web radio transplant
|
609
|
+
Building a kegerator with visual style
|
610
|
+
Hacked together Mac isn’t a hackintosh">16</a></td><td><a href="http://hackaday.com/2013/04/17/" title="Hackerspace security system brings RFID, video feedback, and automatic doors
|
611
|
+
Apple MagSafe cord repair
|
612
|
+
3D Printing sensor mounts for the Oculus Rift
|
613
|
+
Upgrade a toy keyboard’s tone production">17</a></td><td><a href="http://hackaday.com/2013/04/18/" title="Hidden servo automates slat-style window blinds
|
614
|
+
Semi-automatic pick and place machine
|
615
|
+
Living night light with glowing algae
|
616
|
+
Pulse Oximeter from LM324, LED, and Photodiode">18</a></td><td><a href="http://hackaday.com/2013/04/19/" title="Measuring the lifespan of LEGO
|
617
|
+
Replace your project power supplies with recycled Li-Ion cells and a switching regulator
|
618
|
+
Asynchronous fireflies use few parts">19</a></td><td><a href="http://hackaday.com/2013/04/20/" title="This piggy bank is our stock broker
|
619
|
+
GUI window manager on an AVR chip
|
620
|
+
Mood lamp/notifier uses neat modular PCB design">20</a></td>
|
621
|
+
</tr>
|
622
|
+
<tr>
|
623
|
+
<td><a href="http://hackaday.com/2013/04/21/" title="3D printing some sweet music
|
624
|
+
Drop-in pcb makes Nintendo Four Score a USB joystick
|
625
|
+
Hackaday Links: Sunday, April 21st, 2013">21</a></td><td><a href="http://hackaday.com/2013/04/22/" title="Automatic tubular bells given a MIDI interface too
|
626
|
+
Connect a Retina display to a regular computer
|
627
|
+
20 pounds and a gut feeling yields a configurable Rubidium atomic clock source">22</a></td><td><a href="http://hackaday.com/2013/04/23/" title="Console radio given new life with a WiFi router retrofit
|
628
|
+
What are the best hacking documentaries?
|
629
|
+
OTM-02 is a 3D printed wristwatch
|
630
|
+
Rattle generator is a new type of dynamo for a bicycle">23</a></td><td id="today">24</td><td>25</td><td>26</td><td>27</td>
|
631
|
+
</tr>
|
632
|
+
<tr>
|
633
|
+
<td>28</td><td>29</td><td>30</td>
|
634
|
+
<td class="pad" colspan="4"> </td>
|
635
|
+
</tr>
|
636
|
+
</tbody>
|
637
|
+
</table></div></div></div>
|
638
|
+
<div id=virurl>
|
639
|
+
<!-- BEGIN - VIRURL Widget - iFrame Embed Code -->
|
640
|
+
<iframe style="border: none; margin: 0; padding: 0; width: 300px; height: 600px;" src="https://www.virurl.com/iframe_widget?t=hackaday&l=5&category=Tech&w=23&u=147555"
|
641
|
+
width="300" height="600" scrolling="no" >
|
642
|
+
</iframe>
|
643
|
+
<!-- END - VIRURL Widget - iFrame Embed Code -->
|
644
|
+
</div>
|
645
|
+
<br />
|
646
|
+
<br />
|
647
|
+
<div id=tl_ad_bottom>
|
648
|
+
<script type="text/javascript"><!--
|
649
|
+
google_ad_client = "ca-pub-1812638130783065";
|
650
|
+
/* Hackaday sidebar wide skyscraper */
|
651
|
+
google_ad_slot = "1587378096";
|
652
|
+
google_ad_width = 160;
|
653
|
+
google_ad_height = 600;
|
654
|
+
google_ad_region = "test";
|
655
|
+
//-->
|
656
|
+
</script>
|
657
|
+
<script type="text/javascript"
|
658
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
659
|
+
</script>
|
660
|
+
</div>
|
661
|
+
|
662
|
+
|
663
|
+
<br />
|
664
|
+
|
665
|
+
|
666
|
+
|
667
|
+
|
668
|
+
|
669
|
+
|
670
|
+
</div> </div><!-- end #content-sidebar-wrap -->
|
671
|
+
</div><!-- end .wrap --></div><!-- end #inner --><div id="footer" class="footer"><div class="wrap"><div class="gototop"><p><a href="#wrap" rel="nofollow">Return to top of page</a></p></div><div class="creds"><p>Copyright © 2013 · <a href="http://www.studiopress.com/" title="Genesis Framework">Genesis Framework</a> · <a href="http://wordpress.org/" title="WordPress">WordPress</a> · <a href="http://hackadaycom.wordpress.com/wp-login.php">Log in</a></p></div></div><!-- end .wrap --></div><!-- end #footer -->
|
672
|
+
<script type="text/javascript">
|
673
|
+
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
|
674
|
+
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
|
675
|
+
</script>
|
676
|
+
<script type="text/javascript">
|
677
|
+
var pageTracker = _gat._getTracker("UA-2201445-6");
|
678
|
+
pageTracker._trackPageview();
|
679
|
+
</script>
|
680
|
+
<!-- Start Quantcast tag -->
|
681
|
+
<script type="text/javascript">
|
682
|
+
_qoptions={
|
683
|
+
qacct:"p-cc6zkdHuZwUDM"
|
684
|
+
};
|
685
|
+
</script>
|
686
|
+
<script type="text/javascript"
|
687
|
+
src="http://edge.quantserve.com/quant.js"></script>
|
688
|
+
<noscript>
|
689
|
+
<img src="http://pixel.quantserve.com/pixel/p-cc6zkdHuZwUDM.gif"
|
690
|
+
style="display: none;" border="0" height="1" width="1"
|
691
|
+
alt="Quantcast"/>
|
692
|
+
</noscript></div><!-- end #wrap -->
|
693
|
+
|
694
|
+
<script type="text/javascript">
|
695
|
+
var _qevents = _qevents || [], wpcomQuantcastData = {"qacct":"p-18-mFEk4J448M","labels":",language.en,type.wpcom,vip.hackadaycom"};
|
696
|
+
function wpcomQuantcastPixel( labels, options ) {
|
697
|
+
var i, defaults = wpcomQuantcastData, data = { event: 'ajax' };
|
698
|
+
|
699
|
+
labels = labels || '';
|
700
|
+
options = options || {};
|
701
|
+
|
702
|
+
if ( typeof labels != 'string' )
|
703
|
+
options = labels;
|
704
|
+
|
705
|
+
for ( i in defaults ) {
|
706
|
+
data[i] = defaults[i];
|
707
|
+
}
|
708
|
+
|
709
|
+
for ( i in options ) {
|
710
|
+
data[i] = options[i];
|
711
|
+
}
|
712
|
+
|
713
|
+
if ( data.labels ) {
|
714
|
+
data.labels += ',' + labels;
|
715
|
+
} else {
|
716
|
+
data.labels = labels;
|
717
|
+
}
|
718
|
+
|
719
|
+
_qevents.push( data );
|
720
|
+
};
|
721
|
+
(function() {var elem = document.createElement('script');elem.src = (document.location.protocol == "https:" ? "https://secure" : "http://edge") + ".quantserve.com/quant.js";elem.async = true;elem.type = "text/javascript";var scpt = document.getElementsByTagName('script')[0];scpt.parentNode.insertBefore(elem, scpt); })();
|
722
|
+
_qevents.push( wpcomQuantcastData );
|
723
|
+
</script>
|
724
|
+
<noscript><div style="display: none;"><img src="//pixel.quantserve.com/pixel/p-18-mFEk4J448M.gif?labels=%2Clanguage.en%2Ctype.wpcom%2Cvip.hackadaycom" height="1" width="1" alt="" /></div></noscript>
|
725
|
+
|
726
|
+
|
727
|
+
<!-- /// LOAD CHARTBEAT /// -->
|
728
|
+
<script type="text/javascript">
|
729
|
+
var _sf_async_config={};
|
730
|
+
_sf_async_config.uid = 2021;
|
731
|
+
_sf_async_config.useCanonical = true;
|
732
|
+
|
733
|
+
(function(){
|
734
|
+
function loadChartbeat() {
|
735
|
+
window._sf_endpt=(new Date()).getTime();
|
736
|
+
var e = document.createElement('script');
|
737
|
+
e.setAttribute('language', 'javascript');
|
738
|
+
e.setAttribute('type', 'text/javascript');
|
739
|
+
e.setAttribute('src',
|
740
|
+
(("https:" == document.location.protocol) ? "https://s3.amazonaws.com/" : "http://") +
|
741
|
+
"static.chartbeat.com/js/chartbeat.js");
|
742
|
+
document.body.appendChild(e);
|
743
|
+
}
|
744
|
+
var oldonload = window.onload;
|
745
|
+
window.onload = (typeof window.onload != 'function') ?
|
746
|
+
loadChartbeat : function() { oldonload(); loadChartbeat(); };
|
747
|
+
})();
|
748
|
+
</script>
|
749
|
+
<div style="display:none">
|
750
|
+
</div>
|
751
|
+
<script type='text/javascript' src='http://s2.wp.com/_static/??-eJylzMsOREAQRuEXMoqgEwvxLC4/qjPVOl3dZh4fO3vrk+/Qz3+m3UW4SFZpxsET/D+3mtEjxQ0CJR8gnIRWOCgrfXm8lcAl0uQRFtbtlR3Cqtegl66smto0xhStPQEw5Dy+'></script>
|
752
|
+
<script type="text/javascript">
|
753
|
+
// <![CDATA[
|
754
|
+
(function() {
|
755
|
+
try{
|
756
|
+
if ( window.external &&'msIsSiteMode' in window.external) {
|
757
|
+
if (window.external.msIsSiteMode()) {
|
758
|
+
var jl = document.createElement('script');
|
759
|
+
jl.type='text/javascript';
|
760
|
+
jl.async=true;
|
761
|
+
jl.src='/wp-content/plugins/ie-sitemode/custom-jumplist.php';
|
762
|
+
var s = document.getElementsByTagName('script')[0];
|
763
|
+
s.parentNode.insertBefore(jl, s);
|
764
|
+
}
|
765
|
+
}
|
766
|
+
}catch(e){}
|
767
|
+
})();
|
768
|
+
// ]]>
|
769
|
+
</script><script src="http://s.stats.wordpress.com/w.js?21" type="text/javascript"></script>
|
770
|
+
<script type="text/javascript">
|
771
|
+
st_go({'blog':'4779443','v':'wpcom','tz':'-7','user_id':'0','subd':'hackadaycom'});
|
772
|
+
function st_vt() {var x=document.createElement("img");x.src="http://stats.wordpress.com/g.gif?blog=4779443&v=wpcomvt&tz=-7&user_id=0&subd=hackadaycom&rand="+Math.random();}
|
773
|
+
ex_go({'crypt':'UE40eW5QN0p8M2Y/RE1BNmNJfGhxNCVxUDExYmtXRThKbHcwXTdETWI1alhvb1oseHImN101ZFpEakVpYjlQYVFLYzBaVHRtPz0wXS9bVlFpZ3c1Qn5KSThLNS9lSHNGOE1IJk9+N3xFNWxyT2x+MUpnR1dJcFZUdSZQeHd6TWFkcGk3JV1OVnh+RXAmaFtfZStQZlQuWEI9bTNTLUhobFg0Z2VoRHArV3w3Y0tLcDlMd3pMQXRXZ1c4c0psRy1yNWJMeTVbVGQvbDRjQy5vY01KOXpfJUdqZjNHdTlzbHdbNVFlbW9UQ1NobTUrbkImT0Y9JnxJTGhCREFMTA=='});
|
774
|
+
addLoadEvent(function(){linktracker_init('4779443',0);});
|
775
|
+
</script>
|
776
|
+
<noscript><img src="http://stats.wordpress.com/b.gif?v=noscript" style="height:0px;width:0px;overflow:hidden" alt="" /></noscript>
|
777
|
+
<script type="text/javascript">
|
778
|
+
// Trigger Quantcast pixel for each Infinite Scroll post load
|
779
|
+
if ( 'function' === typeof( jQuery ) ) {
|
780
|
+
jQuery( document.body ).on( 'post-load', function() {
|
781
|
+
if ( 'function' === typeof( wpcomQuantcastPixel ) )
|
782
|
+
wpcomQuantcastPixel();
|
783
|
+
} );
|
784
|
+
}
|
785
|
+
</script>
|
786
|
+
</body>
|
787
|
+
</html>
|