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,715 @@
|
|
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 in 0.312 seconds
|
5
|
+
69180 bytes batcached for 300 seconds
|
6
|
+
-->
|
7
|
+
<head profile="http://gmpg.org/xfn/11">
|
8
|
+
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
9
|
+
<title>Hack a Day — Fresh hacks every day</title>
|
10
|
+
<meta name="description" content="Fresh hacks every day" />
|
11
|
+
<meta name="robots" content="noodp,noydir" />
|
12
|
+
<link rel="Shortcut Icon" href="http://s1.wp.com/wp-content/themes/vip/hackaday2/images/favicon.ico?m=1353160633g" type="image/x-icon" />
|
13
|
+
<link rel="stylesheet" href="http://s1.wp.com/wp-content/themes/vip/hackaday2/style.css?m=1363789849g" type="text/css" media="screen" />
|
14
|
+
|
15
|
+
<meta name="description" content="Fresh hacks every day" />
|
16
|
+
<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" />
|
17
|
+
<script src='http://r-login.wordpress.com/remote-login.php?action=js&host=hackaday.com&id=4779443&t=1366801129&back=hackaday.com%2Fpage%2F5%2F' type="text/javascript"></script>
|
18
|
+
<script type="text/javascript">
|
19
|
+
/* <![CDATA[ */
|
20
|
+
if ( 'function' === typeof WPRemoteLogin ) {
|
21
|
+
document.cookie = "wordpress_test_cookie=test; path=/";
|
22
|
+
if ( document.cookie.match( /(;|^)\s*wordpress_test_cookie\=/ ) ) {
|
23
|
+
WPRemoteLogin();
|
24
|
+
}
|
25
|
+
}
|
26
|
+
/* ]]> */
|
27
|
+
</script>
|
28
|
+
<link rel="alternate" type="application/rss+xml" title="Hack a Day » Feed" href="http://feeds2.feedburner.com/hackaday/LgoM" />
|
29
|
+
<link rel="alternate" type="application/rss+xml" title="Hack a Day » Comments Feed" href="http://hackaday.com/comments/feed/" />
|
30
|
+
<script type="text/javascript">
|
31
|
+
/* <![CDATA[ */
|
32
|
+
function addLoadEvent(func){var oldonload=window.onload;if(typeof window.onload!='function'){window.onload=func;}else{window.onload=function(){oldonload();func();}}}
|
33
|
+
/* ]]> */
|
34
|
+
</script>
|
35
|
+
<link rel="canonical" href="http://hackaday.com/" />
|
36
|
+
<link rel='stylesheet' id='all-css-0' href='http://s0.wp.com/_static/??-eJzTLy/QTc7PK0nNK9HPLdUtyClNz8wr1s/JzE4t1s9KLSlITM7WBfP0kouLdfSxKy/ILy7RTctJzCzSLy6pzEklVm1GYlFmXjqMxtBVkpGaC3RGhol+ek5+UmIOSIF9rq2hsZmZuYmxqbFlFgANUUYu' type='text/css' media='all' />
|
37
|
+
<script type='text/javascript'>
|
38
|
+
/* <![CDATA[ */
|
39
|
+
var SafeCommentsAjax = {"ajaxurl":"http:\/\/hackaday.com\/wp-admin\/admin-ajax.php"};
|
40
|
+
/* ]]> */
|
41
|
+
</script>
|
42
|
+
<script type='text/javascript' src='http://s0.wp.com/_static/??-eJyFz0sKAjEMBuALWUsZpjvxLKXGmjp92KQz6umNogtRFAJZ5Et+opeqMPup74B0lDp1aJdnW0da6V9AJQzNMbygL5kh893VQpyAyIVv0/cYzDPC8pdF4Or8UTUgvH5c5QNInp6x6jr1gJk0uT2IrqWxsJSEPX5w0Z1lfZs2ZrB2NIOxY7wBpfljQw=='></script>
|
43
|
+
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://hackadaycom.wordpress.com/xmlrpc.php?rsd" />
|
44
|
+
<link rel="shortcut icon" type="image/x-icon" href="http://0.gravatar.com/blavatar/4f3e6b6daa090af416a1ba595885efd1?s=16" sizes="16x16" />
|
45
|
+
<link rel="icon" type="image/x-icon" href="http://0.gravatar.com/blavatar/4f3e6b6daa090af416a1ba595885efd1?s=16" sizes="16x16" />
|
46
|
+
<link rel="apple-touch-icon-precomposed" href="http://1.gravatar.com/blavatar/5560f98f805877b0e332f191cb9e0af3?s=114" />
|
47
|
+
<link rel='openid.server' href='http://hackadaycom.wordpress.com/?openidserver=1' />
|
48
|
+
<link rel='openid.delegate' href='http://hackadaycom.wordpress.com/' />
|
49
|
+
<link rel="search" type="application/opensearchdescription+xml" href="http://hackaday.com/osd.xml" title="Hack a Day" />
|
50
|
+
<link rel="search" type="application/opensearchdescription+xml" href="http://wordpress.com/opensearch.xml" title="WordPress.com" />
|
51
|
+
<style>
|
52
|
+
/* <![CDATA[ */
|
53
|
+
/* Block: reblog */
|
54
|
+
|
55
|
+
.reblog-from img { margin: 0 10px 0 0; vertical-align: middle; padding: 0; border: 0; }
|
56
|
+
.reblogger-note img.avatar { float: left; padding: 0; border: 0; }
|
57
|
+
.reblogger-note-content { margin: 0 0 20px; }
|
58
|
+
.reblog-post .wpcom-enhanced-excerpt-content { border-left: 3px solid #eee; padding-left: 15px; }
|
59
|
+
.reblog-post ul.thumb-list { display: block; list-style: none; margin: 2px 0; padding: 0; clear: both; }
|
60
|
+
.reblog-post ul.thumb-list li { display: inline; margin: 0; padding: 0 1px; border: 0; }
|
61
|
+
.reblog-post ul.thumb-list li a { margin: 0; padding: 0; border: 0; }
|
62
|
+
.reblog-post ul.thumb-list li img { margin: 0; padding: 0; border: 0; }
|
63
|
+
|
64
|
+
.reblog-post .wpcom-enhanced-excerpt { clear: both; }
|
65
|
+
|
66
|
+
.reblog-post .wpcom-enhanced-excerpt address,
|
67
|
+
.reblog-post .wpcom-enhanced-excerpt li,
|
68
|
+
.reblog-post .wpcom-enhanced-excerpt h1,
|
69
|
+
.reblog-post .wpcom-enhanced-excerpt h2,
|
70
|
+
.reblog-post .wpcom-enhanced-excerpt h3,
|
71
|
+
.reblog-post .wpcom-enhanced-excerpt h4,
|
72
|
+
.reblog-post .wpcom-enhanced-excerpt h5,
|
73
|
+
.reblog-post .wpcom-enhanced-excerpt h6,
|
74
|
+
.reblog-post .wpcom-enhanced-excerpt p { font-size: 100% !important; }
|
75
|
+
|
76
|
+
.reblog-post .wpcom-enhanced-excerpt blockquote,
|
77
|
+
.reblog-post .wpcom-enhanced-excerpt pre,
|
78
|
+
.reblog-post .wpcom-enhanced-excerpt code,
|
79
|
+
.reblog-post .wpcom-enhanced-excerpt q { font-size: 98% !important; }
|
80
|
+
|
81
|
+
|
82
|
+
/* ]]> */
|
83
|
+
</style>
|
84
|
+
|
85
|
+
<script type="text/javascript">var _sf_startpt=(new Date()).getTime()</script>
|
86
|
+
<style>
|
87
|
+
.wpcom-related-posts ul li {
|
88
|
+
list-style-type: none;
|
89
|
+
display: inline-block;
|
90
|
+
}
|
91
|
+
</style>
|
92
|
+
<style type="text/css">.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style>
|
93
|
+
<style type="text/css">
|
94
|
+
.recentcomments a {
|
95
|
+
display: inline !important;
|
96
|
+
padding: 0 !important;
|
97
|
+
margin: 0 !important;
|
98
|
+
}
|
99
|
+
|
100
|
+
table.recentcommentsavatartop img.avatar, table.recentcommentsavatarend img.avatar {
|
101
|
+
border: 0px;
|
102
|
+
margin: 0;
|
103
|
+
}
|
104
|
+
|
105
|
+
table.recentcommentsavatartop a, table.recentcommentsavatarend a {
|
106
|
+
border: 0px !important;
|
107
|
+
background-color: transparent !important;
|
108
|
+
}
|
109
|
+
|
110
|
+
td.recentcommentsavatarend, td.recentcommentsavatartop {
|
111
|
+
padding: 0px 0px 1px 0px;
|
112
|
+
margin: 0px;
|
113
|
+
}
|
114
|
+
|
115
|
+
td.recentcommentstextend {
|
116
|
+
border: none !important;
|
117
|
+
padding: 0px 0px 2px 10px;
|
118
|
+
}
|
119
|
+
|
120
|
+
.rtl td.recentcommentstextend {
|
121
|
+
padding: 0px 10px 2px 0px;
|
122
|
+
}
|
123
|
+
|
124
|
+
td.recentcommentstexttop {
|
125
|
+
border: none !important;
|
126
|
+
padding: 0px 0px 0px 10px;
|
127
|
+
}
|
128
|
+
|
129
|
+
.rtl td.recentcommentstexttop {
|
130
|
+
padding: 0px 10px 0px 0px;
|
131
|
+
}
|
132
|
+
</style>
|
133
|
+
<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>
|
134
|
+
|
135
|
+
<script>jQuery(document).ready(function($) {
|
136
|
+
$("cswap li a").click(function() {
|
137
|
+
$("link").attr("href",$(this).attr('rel'));
|
138
|
+
return false;
|
139
|
+
});
|
140
|
+
});</script>
|
141
|
+
<meta name="google-site-verification" content="v0_F4q2HixEv6wrQCEKBEbp2Wuj0oI9ywwaN6aoV0JE" />
|
142
|
+
</head>
|
143
|
+
<body class="home blog paged paged-5 typekit-enabled header-image content-sidebar highlander-enabled highlander-light">
|
144
|
+
|
145
|
+
<div id="fb-root"></div>
|
146
|
+
<script>(function(d, s, id) {
|
147
|
+
var js, fjs = d.getElementsByTagName(s)[0];
|
148
|
+
if (d.getElementById(id)) return;
|
149
|
+
js = d.createElement(s); js.id = id;
|
150
|
+
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
|
151
|
+
fjs.parentNode.insertBefore(js, fjs);
|
152
|
+
}(document, 'script', 'facebook-jssdk'));</script>
|
153
|
+
<div id="wrap">
|
154
|
+
<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">
|
155
|
+
<script type="text/javascript"><!--
|
156
|
+
google_ad_client = "ca-pub-1812638130783065";
|
157
|
+
/* Hackaday, 728x90, created 4/26/08, Leaderboard */
|
158
|
+
google_ad_slot = "4036713767";
|
159
|
+
google_ad_width = 728;
|
160
|
+
google_ad_height = 90;
|
161
|
+
//-->
|
162
|
+
</script>
|
163
|
+
<script type="text/javascript"
|
164
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
165
|
+
</script>
|
166
|
+
</div>
|
167
|
+
<div id="adslice">
|
168
|
+
|
169
|
+
<script type="text/javascript"><!--
|
170
|
+
google_ad_client = "pub-1812638130783065";
|
171
|
+
/* Hackaday, 728x15, created 4/26/08, AdSlice */
|
172
|
+
google_ad_slot = "0246324944";
|
173
|
+
google_ad_width = 728;
|
174
|
+
google_ad_height = 15;
|
175
|
+
//-->
|
176
|
+
</script>
|
177
|
+
|
178
|
+
<script type="text/javascript"
|
179
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
180
|
+
</script>
|
181
|
+
|
182
|
+
</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>
|
183
|
+
<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>
|
184
|
+
<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>
|
185
|
+
<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>
|
186
|
+
<li class="right search">
|
187
|
+
<form method="get" class="searchform" action="http://hackaday.com/" >
|
188
|
+
|
189
|
+
<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 …';}" />
|
190
|
+
<input type="submit" class="searchsubmit" value="Search" />
|
191
|
+
</form>
|
192
|
+
</li></ul></div><!-- end .wrap --></div><div id="inner"><div class="wrap"> <div id="content-sidebar-wrap">
|
193
|
+
<div id="content" class="hfeed">
|
194
|
+
<div class="post-97555 post type-post status-publish format-standard hentry category-robots-hacks category-wireless-hacks tag-aeroquad tag-quadcopter tag-quadrotor tag-stm32">
|
195
|
+
|
196
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/15/florianh-shows-off-minimabl-the-next-generation-of-his-quadcopter-project/" title="[FlorianH] shows off MinimaBL, the next generation of his quadcopter project" rel="bookmark">[FlorianH] shows off MinimaBL, the next generation of his quadcopter project</a></h2>
|
197
|
+
|
198
|
+
<div class="post-info"><span class="date published time" title="2013-04-15T12:01:50+00:00">April 15, 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/15/florianh-shows-off-minimabl-the-next-generation-of-his-quadcopter-project/#comments">25 Comments</a></span> </div> <div class="entry-content">
|
199
|
+
<p><img class="aligncenter size-large wp-image-97556" alt="minimabl" src="http://hackadaycom.files.wordpress.com/2013/04/minimabl.jpg?w=580&h=435" width="580" height="435" /></p>
|
200
|
+
<p>[FlorianH] has all kinds of <a href="https://sites.google.com/site/fpgaandco/minimabl">new features to show off with this generation of his quadcopter</a> project. Just about everything has seen an upgrade or some other kind of tweak since we looked in on <a href="http://hackaday.com/2012/02/27/diy-quadcopter-for-around-200/">the last version of the aircraft</a>.</p>
|
201
|
+
<p>You’ll find some outdoor flight demo clips after the break. Right off the bat we’re impressed at the rock solid stability of the quadrotor while in flight. Even indoors the last version had a hint of a wobble as the control loop calculated stabilization. Here he borrowed some code from <a href="http://hackaday.com/2010/01/15/aeroquad-build-your-own-quadcopter/">the open source Aeroquad project</a> which helps account for this improvement. But the hardware choices lend a hand too. He moved from an ATmega32 up to an STM32F405RG processor. That’s an ARM chip which he programs using one of STM’s Discovery boards. The motors have all been upgraded as well (if you listen in the demo videos for both models you can hear a difference) and he redesigned the frame, which combines carbon tube with 3D printed parts to keep it light yet strong. The upgrade is every bit as impressive as the original build!</p>
|
202
|
+
<p> <a href="http://hackaday.com/2013/04/15/florianh-shows-off-minimabl-the-next-generation-of-his-quadcopter-project/#more-97555" class="more-link">[Read more...]</a></p>
|
203
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
204
|
+
<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>, <a href="http://hackaday.com/category/wireless-hacks/" title="View all posts in wireless hacks" rel="category tag">wireless hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/aeroquad/" rel="tag">aeroquad</a>, <a href="http://hackaday.com/tag/quadcopter/" rel="tag">quadcopter</a>, <a href="http://hackaday.com/tag/quadrotor/" rel="tag">quadrotor</a>, <a href="http://hackaday.com/tag/stm32/" rel="tag">stm32</a></span> </div>
|
205
|
+
</div><!-- end .postclass -->
|
206
|
+
<div class="post-97551 post type-post status-publish format-standard hentry category-holiday-hacks tag-arduino tag-easter tag-easter-eggs tag-eggs tag-kids tag-led">
|
207
|
+
|
208
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/15/glowing-easter-eggs-more-fun-than-a-dye-job/" title="Glowing Easter eggs more fun than a dye job" rel="bookmark">Glowing Easter eggs more fun than a dye job</a></h2>
|
209
|
+
|
210
|
+
<div class="post-info"><span class="date published time" title="2013-04-15T06:01:44+00:00">April 15, 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/15/glowing-easter-eggs-more-fun-than-a-dye-job/#comments">9 Comments</a></span> </div> <div class="entry-content">
|
211
|
+
<p><img class="aligncenter size-large wp-image-97552" alt="glowing-easter-eggs" src="http://hackadaycom.files.wordpress.com/2013/04/glowing-easter-eggs.png?w=580&h=277" width="580" height="277" /></p>
|
212
|
+
<p>This is a project to keep in mind for the kids next Easter. It uses <a href="http://www.apfelkern.info/index.php/2013/03/show-osternest-mit-arduino-und-lindt-hasen/">electronics to light up your eggs instead of dying them</a> (<a href="http://translate.google.com/translate?sl=auto&tl=en&js=n&prev=_t&hl=en&ie=UTF-8&eotf=1&u=http%3A%2F%2Fwww.apfelkern.info%2Findex.php%2F2013%2F03%2Fshow-osternest-mit-arduino-und-lindt-hasen%2F">translated</a>).</p>
|
213
|
+
<p>The project still has one foot in the old tradition as it starts by blowing out the eggs. The larger hole on the bottom, which was used to evacuate the yoke an albumen, ends up being just the right size to insert an LED. You could simply hook these up to a battery and resistor, but [Rene] decided to add some functionality by hiding an Arduino board in the fake grass of the Easter basket. This way the way the RGB LEDs can glow, blink, and rotate through different colors. And the foil covered chocolate bunnies aren’t just for show. He wired them up to the I/O pins of the Arduino to use as a switch. When they’re both placed on the same piece of foil it completes the circuit and starts the light show. See for yourself in the clip after the jump.</p>
|
214
|
+
<p>Of course for the older kids you’re going to need <a href="http://hackaday.com/2013/04/04/turning-an-easter-egg-hunt-into-a-fox-hunt/">something more complicated to keep their attention</a>.</p>
|
215
|
+
<p> <a href="http://hackaday.com/2013/04/15/glowing-easter-eggs-more-fun-than-a-dye-job/#more-97551" class="more-link">[Read more...]</a></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/holiday-hacks/" title="View all posts in Holiday Hacks" rel="category tag">Holiday Hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/arduino/" rel="tag">arduino</a>, <a href="http://hackaday.com/tag/easter/" rel="tag">easter</a>, <a href="http://hackaday.com/tag/easter-eggs/" rel="tag">easter eggs</a>, <a href="http://hackaday.com/tag/eggs/" rel="tag">eggs</a>, <a href="http://hackaday.com/tag/kids/" rel="tag">kids</a>, <a href="http://hackaday.com/tag/led/" rel="tag">led</a></span> </div>
|
218
|
+
</div><!-- end .postclass -->
|
219
|
+
<div class="post-97559 post type-post status-publish format-standard hentry category-hackaday-links tag-cigarettes tag-garage-door tag-pencil-sharpener tag-petman tag-reset tag-rpi tag-siri tag-smd tag-smoking">
|
220
|
+
|
221
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/14/hackaday-links-sunday-april-14th-2013/" title="Hackaday Links: Sunday, April 14th, 2013" rel="bookmark">Hackaday Links: Sunday, April 14th, 2013</a></h2>
|
222
|
+
|
223
|
+
<div class="post-info"><span class="date published time" title="2013-04-14T14:01:46+00:00">April 14, 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/14/hackaday-links-sunday-april-14th-2013/#comments">43 Comments</a></span> </div> <div class="entry-content">
|
224
|
+
<p><img class="aligncenter size-full wp-image-97424" alt="hackaday-links-chain" src="http://hackadaycom.files.wordpress.com/2013/04/hackaday-links-chain.png?w=580&h=32" width="580" height="32" /></p>
|
225
|
+
<p>We figure we have to start off this week’s links post talking about PETMAN. Boston Dynamics <a href="http://www.youtube.com/watch?v=tFrjrgBV8K0">shows off the humanoid robot donning a full chemical suit</a>. It’s a lot scarier than <a href="http://hackaday.com/2009/10/27/bigdogs-bipedal-brother/">when we first saw it</a> as a couple of legs a few years ago [Thanks Joshua].</p>
|
226
|
+
<p>Seeing something like that might drive you back to smoking cigarettes. But since that’s pretty bad for your health perhaps you just need <a href="http://www.youtube.com/watch?v=VoBGau9623I">a mechanical chain-smoking machine</a> to take the edge off. That thing can really suck ‘em down! [Thanks Mike]</p>
|
227
|
+
<p>Last week’s links included a bit about the Raspberry Pi 2.0 board version’s reset header. [Brian] wrote in to share a link for <a href="http://usedbytes.com/misc/pi_reset/">adding reset to a 1.0 revision board</a>.</p>
|
228
|
+
<p>Speaking of RPi, [Elvis Impersonator] is using it to <a href="http://www.youtube.com/watch?v=cpBG9m3LDqI">automate his garage door with the help of Siri</a>.</p>
|
229
|
+
<p>In shop news, [Brad] needed to sharpen a few hundred pencils quickly and ended up melting the gears on his electric sharpener. <a href="http://www.youtube.com/watch?v=_ilLumnNLxI">Transplanting the parts to his drill press</a> gave him more power to get the job done in about six minutes.</p>
|
230
|
+
<p>And finally, you can forget how to decipher those SMD resistor codes. Looks like <a href="http://www.soselectronic.com/?str=1265">surface mount resistors might be unmarked</a> like their capacitor brethren. We were tipped off by [Lindsey] who got the news by way of [<a href="http://dangerousprototypes.com/2013/04/05/will-the-smd-resistors-marking-become-a-history/">Dangerous Prototypes</a> and <a href="http://www.electronics-lab.com/blog/?p=21437">Electronics Lab</a>]</p>
|
231
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
232
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/hackaday-links/" title="View all posts in Hackaday links" rel="category tag">Hackaday links</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/cigarettes/" rel="tag">cigarettes</a>, <a href="http://hackaday.com/tag/garage-door/" rel="tag">garage door</a>, <a href="http://hackaday.com/tag/pencil-sharpener/" rel="tag">pencil sharpener</a>, <a href="http://hackaday.com/tag/petman/" rel="tag">petman</a>, <a href="http://hackaday.com/tag/reset/" rel="tag">reset</a>, <a href="http://hackaday.com/tag/rpi/" rel="tag">RPi</a>, <a href="http://hackaday.com/tag/siri/" rel="tag">siri</a>, <a href="http://hackaday.com/tag/smd/" rel="tag">smd</a>, <a href="http://hackaday.com/tag/smoking/" rel="tag">smoking</a></span> </div>
|
233
|
+
</div><!-- end .postclass -->
|
234
|
+
<div align="center">
|
235
|
+
|
236
|
+
|
237
|
+
|
238
|
+
<script type="text/javascript"><!--
|
239
|
+
|
240
|
+
google_ad_client = "ca-pub-1812638130783065";
|
241
|
+
|
242
|
+
/* Hackaday, 300x250, created 4/26/08, MedRect main column */
|
243
|
+
|
244
|
+
google_ad_slot = "3449215672";
|
245
|
+
|
246
|
+
google_ad_width = 300;
|
247
|
+
|
248
|
+
google_ad_height = 250;
|
249
|
+
|
250
|
+
//-->
|
251
|
+
|
252
|
+
</script>
|
253
|
+
|
254
|
+
<script type="text/javascript"
|
255
|
+
|
256
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
257
|
+
|
258
|
+
</script>
|
259
|
+
|
260
|
+
|
261
|
+
|
262
|
+
</div> <div class="post-97547 post type-post status-publish format-standard hentry category-home-hacks tag-atmega8 tag-avr tag-dehumidifier tag-dht22 tag-humidity">
|
263
|
+
|
264
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/14/building-a-replacement-for-a-broken-dehumidifier-controller/" title="Building a replacement for a broken dehumidifier controller" rel="bookmark">Building a replacement for a broken dehumidifier controller</a></h2>
|
265
|
+
|
266
|
+
<div class="post-info"><span class="date published time" title="2013-04-14T12:01:27+00:00">April 14, 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/14/building-a-replacement-for-a-broken-dehumidifier-controller/#comments">15 Comments</a></span> </div> <div class="entry-content">
|
267
|
+
<p><img class="aligncenter size-large wp-image-97548" alt="dehumidifier-replacement-controller" src="http://hackadaycom.files.wordpress.com/2013/04/dehumidifier-replacement-controller.jpg?w=580&h=434" width="580" height="434" /></p>
|
268
|
+
<p>We’ve thought of doing a project like this ourselves as the dehumidifier we ordered online runs the fan 24/7 no matter what the humidity conditions. But it wasn’t that [Davide Gironi] was unhappy with the features on his unit. It’s that <a href="http://davidegironi.blogspot.it/2013/04/avr-atmega-dehumidifier-controller.html">the dehumidifier controller stopped working so he replaced it</a> with one of his own design. The original humidity sensor was mechanical and simply broke. He used an AVR along with a humidity and frost sensor to get the appliance up and running again.</p>
|
269
|
+
<p>A DHT22 humidity sensor is polled by the ATmega8 chip and compared to the user-adjustable trimpot value. If it is above that threshold the unit is switched on using one of the relays seen in the image above. The one problem you have to watch out for when using compressor cooled appliances is ice accumulation on the radiator. [Davide] uses a thermistor for temperature feedback, switching the compressor off when it gets below 7C and turning it back on again when it is above 12C.</p>
|
270
|
+
<p>The replacement still uses the reservoir sensor and indicator LEDs. We, however, would recommend using the watchdog timer on the chip to ensure that it is reset if something goes wrong in the code.</p>
|
271
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
272
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/home-hacks/" title="View all posts in home hacks" rel="category tag">home hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/atmega8/" rel="tag">atmega8</a>, <a href="http://hackaday.com/tag/avr/" rel="tag">AVR</a>, <a href="http://hackaday.com/tag/dehumidifier/" rel="tag">dehumidifier</a>, <a href="http://hackaday.com/tag/dht22/" rel="tag">dht22</a>, <a href="http://hackaday.com/tag/humidity/" rel="tag">humidity</a></span> </div>
|
273
|
+
</div><!-- end .postclass -->
|
274
|
+
<div class="post-97543 post type-post status-publish format-standard hentry category-software-hacks tag-machine-learning tag-mario tag-nes tag-sigbovik tag-super-mario-bros">
|
275
|
+
|
276
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/14/teaching-a-computer-to-play-mario-seemingly-through-voodoo/" title="Teaching a computer to play Mario… seemingly through voodoo" rel="bookmark">Teaching a computer to play Mario… seemingly through voodoo</a></h2>
|
277
|
+
|
278
|
+
<div class="post-info"><span class="date published time" title="2013-04-14T06:01:56+00:00">April 14, 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/14/teaching-a-computer-to-play-mario-seemingly-through-voodoo/#comments">56 Comments</a></span> </div> <div class="entry-content">
|
279
|
+
<p><img class="aligncenter size-large wp-image-97544" alt="computer-learning-mario" src="http://hackadaycom.files.wordpress.com/2013/04/computer-learning-mario.png?w=580&h=293" width="580" height="293" /></p>
|
280
|
+
<p>Some people know [Tom Murphy] as [Dr. Tom Murphy VII Ph.D.] and this hack makes it obvious that he earned those accolades. He decided to see if he could <a href="http://www.cs.cmu.edu/~tom7/mario/">teach a computer to win at Super Mario Bros</a>. But he went about it in a way that we’d bet is different that 99.9% of readers would first think of. The game doesn’t care about Mario, power-ups, or really even about enemies. It’s simply looking at the metrics which indicate you’re doing well at the game, namely score and world/level.</p>
|
281
|
+
<p>The link above includes his whitepaper, but we think you’ll want to watch the 16-minute video (after the break) before trying to tackle that. In the clip he explains the process in laymen’s terms which so far is the only part we really understand (hence the reference to voodoo in the title). His program uses heuristics to assemble a set of evolving controller inputs to drive the scores ever higher. In other words, instead of following in the footstep of <a href="http://hackaday.com/2012/12/24/how-to-write-your-own-minesweeper-solver/">Minesweeper solvers</a> or <a href="http://hackaday.com/2011/07/30/bejeweled-blitz-bot-makes-your-high-score-look-just-sad/">Bejeweled Blitz bots</a> which play as a human would by observing the game space, his software plays the game over and over, learning what combinations of controller inputs result in success and which do not. The image to the right is a graph of it’s learning progress. Makes total sense, huh?</p>
|
282
|
+
<p> <a href="http://hackaday.com/2013/04/14/teaching-a-computer-to-play-mario-seemingly-through-voodoo/#more-97543" class="more-link">[Read more...]</a></p>
|
283
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
284
|
+
<div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/software-hacks/" title="View all posts in software hacks" rel="category tag">software hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/machine-learning/" rel="tag">machine learning</a>, <a href="http://hackaday.com/tag/mario/" rel="tag">mario</a>, <a href="http://hackaday.com/tag/nes/" rel="tag">nes</a>, <a href="http://hackaday.com/tag/sigbovik/" rel="tag">SIGBOVIK</a>, <a href="http://hackaday.com/tag/super-mario-bros/" rel="tag">super mario bros</a></span> </div>
|
285
|
+
</div><!-- end .postclass -->
|
286
|
+
<div class="post-97533 post type-post status-publish format-standard hentry category-digital-audio-hacks category-raspberry-pi-2 tag-client tag-radio tag-raspbian tag-rpi tag-squeezebox tag-squeezelite tag-stereo">
|
287
|
+
|
288
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/13/squeezeberry-a-raspberri-pi-powered-squeezebox-appliance/" title="SqueezeBerry: a Raspberri Pi powered Squeezebox appliance" rel="bookmark">SqueezeBerry: a Raspberri Pi powered Squeezebox appliance</a></h2>
|
289
|
+
|
290
|
+
<div class="post-info"><span class="date published time" title="2013-04-13T14:01:11+00:00">April 13, 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/13/squeezeberry-a-raspberri-pi-powered-squeezebox-appliance/#comments">12 Comments</a></span> </div> <div class="entry-content">
|
291
|
+
<p><img class="aligncenter size-large wp-image-97534" alt="squeezeberry" src="http://hackadaycom.files.wordpress.com/2013/04/squeezeberry.jpg?w=580&h=385" width="580" height="385" /></p>
|
292
|
+
<p>We like the look which [Emmanuel] achieved with <a href="http://www.emmaanuel.com/SqueezeBerry-a-Music-Player-based">his Raspberry Pi based Squeezebox client</a>. It’s got that minimalist slant that makes it seem like a commercial product at first glance. But one more look at the speakers without grates, the character LCD, and the utilitarian buttons, knobs, and switches tips us off that it’s filled with the hardware we know and love.</p>
|
293
|
+
<p>Since Logitech announced that it was terminating the Squeezebox line we’ve seen several projects which take up the torch. We’ve seen <a href="http://hackaday.com/2012/12/26/raspberry-pi-used-as-a-squeezebox-server/">the RPi used as a Squeezebox server</a> and several <a href="http://hackaday.com/2013/01/11/building-an-inexpensive-squeezebox-client-replacement/">embedded Linux systems used as clients</a>. This follows in the footsteps of the latter. The RPi is running Raspbian with <a href="https://code.google.com/p/squeezelite/">the squeezelite package</a> handling the bits necessary to talk to his server. The controls on the front include a power switch, rotary encoder and button for navigating the menus, and a potentiometer to adjust the HD44780 LCD screen’s contrast. The speakers are a set of amplified PC speakers that were liberated from their cases and mounted inside of the wooden box that makes up the enclosure. The in-progress shots of that case look pretty rough, but some sanding and painting really pulled everything together. As you would expect, we’ve embedded the demo video after the jump.</p>
|
294
|
+
<p> <a href="http://hackaday.com/2013/04/13/squeezeberry-a-raspberri-pi-powered-squeezebox-appliance/#more-97533" class="more-link">[Read more...]</a></p>
|
295
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
296
|
+
<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/raspberry-pi-2/" title="View all posts in Raspberry Pi" rel="category tag">Raspberry Pi</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/client/" rel="tag">client</a>, <a href="http://hackaday.com/tag/radio/" rel="tag">radio</a>, <a href="http://hackaday.com/tag/raspbian/" rel="tag">Raspbian</a>, <a href="http://hackaday.com/tag/rpi/" rel="tag">RPi</a>, <a href="http://hackaday.com/tag/squeezebox/" rel="tag">Squeezebox</a>, <a href="http://hackaday.com/tag/squeezelite/" rel="tag">squeezelite</a>, <a href="http://hackaday.com/tag/stereo/" rel="tag">stereo</a></span> </div>
|
297
|
+
</div><!-- end .postclass -->
|
298
|
+
<div class="post-97529 post type-post status-publish format-standard hentry category-3d-printer-hacks tag-attiny85 tag-digispark tag-motor tag-stepper-motor tag-uln2003">
|
299
|
+
|
300
|
+
<h2 class="entry-title"><a href="http://hackaday.com/2013/04/13/working-3d-printed-stepper-motor/" title="Working 3D printed stepper motor" rel="bookmark">Working 3D printed stepper motor</a></h2>
|
301
|
+
|
302
|
+
<div class="post-info"><span class="date published time" title="2013-04-13T12:01:26+00:00">April 13, 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/13/working-3d-printed-stepper-motor/#comments">57 Comments</a></span> </div> <div class="entry-content">
|
303
|
+
<p><img class="aligncenter size-full wp-image-97530" alt="Stepper Small 1" src="http://hackadaycom.files.wordpress.com/2013/04/stepper-small-1.jpg?w=490&h=368" width="490" height="368" /></p>
|
304
|
+
<p>Most 3D printers use stepper motors to control the movement of the extruder head. If you could actually print those motors it would be one more big step toward self-replicating hardware. Now obviously [Chris Hawkins'] <a href="http://www.youtube.com/watch?v=paT63-8DLbs">working 3d printed stepper motor</a> wasn’t built 100% through 3D printing, but the majority of the parts were. All that he had to add was the electronic driver pieces, magnets, wire, and a few nails.</p>
|
305
|
+
<p>The coils are made up of nails wrapped in magnet wire. The rotor is a 3D printed framework which accepts neodymium rare earth magnets. The axle is pointed which reduces the friction where it meets the cone-shaped support on either side of the frame. The IC on the upper right is a transistor array that facilitates switching the 20V driving the coils. The board on the lower right is <a href="http://hackaday.com/2012/08/13/teensy-tiny-arduino-board-with-an-attiny85/">a Digispark</a>, which is an ATtiny85 breakout board that includes a USB edge connector for programming and a linear regulator which is how he gets away with feeding 20V as the source.</p>
|
306
|
+
<p>Don’t miss the demo video after the break where you can see the motor stepping 7.5 degrees at a time.</p>
|
307
|
+
<p> <a href="http://hackaday.com/2013/04/13/working-3d-printed-stepper-motor/#more-97529" class="more-link">[Read more...]</a></p>
|
308
|
+
<div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
|
309
|
+
<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></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/attiny85/" rel="tag">attiny85</a>, <a href="http://hackaday.com/tag/digispark/" rel="tag">Digispark</a>, <a href="http://hackaday.com/tag/motor/" rel="tag">motor</a>, <a href="http://hackaday.com/tag/stepper-motor/" rel="tag">stepper motor</a>, <a href="http://hackaday.com/tag/uln2003/" rel="tag">uln2003</a></span> </div>
|
310
|
+
</div><!-- end .postclass -->
|
311
|
+
<div class="navigation"><div class="alignleft"><a href="http://hackaday.com/page/6/" >« Older Posts</a></div><div class="alignright"><a href="http://hackaday.com/page/4/" >Newer Posts »</a></div></div><!-- end .navigation --> </div><!-- end #content -->
|
312
|
+
<div id="sidebar" class="sidebar widget-area">
|
313
|
+
<div id=tl_ad>
|
314
|
+
<script type="text/javascript"><!--
|
315
|
+
google_ad_client = "ca-pub-1812638130783065";
|
316
|
+
/* Hackaday, 300x250, created 4/26/08, MedRect sidebar */
|
317
|
+
google_ad_slot = "7800245928";
|
318
|
+
google_ad_width = 300;
|
319
|
+
google_ad_height = 250;
|
320
|
+
//-->
|
321
|
+
</script>
|
322
|
+
<script type="text/javascript"
|
323
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
324
|
+
</script>
|
325
|
+
|
326
|
+
</div>
|
327
|
+
|
328
|
+
|
329
|
+
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
<div class="widget">
|
334
|
+
<h4>Never Miss a Hack</h4>
|
335
|
+
<div class="textwidget">
|
336
|
+
|
337
|
+
<!-- Place this tag where you want the badge to render. -->
|
338
|
+
<div class="g-plus" data-width= "280" data-href="https://plus.google.com/114843073658390316652" data-rel="publisher" data-theme="dark"></div>
|
339
|
+
<!-- Place this tag after the last badge tag. -->
|
340
|
+
<script type="text/javascript">
|
341
|
+
(function() {
|
342
|
+
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
|
343
|
+
po.src = 'https://apis.google.com/js/plusone.js';
|
344
|
+
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
|
345
|
+
})();
|
346
|
+
</script>
|
347
|
+
|
348
|
+
<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>
|
349
|
+
|
350
|
+
<a href="https://twitter.com/hackaday" class="twitter-follow-button" data-show-count="true" data-lang="en" data-size="large">Follow @twitter</a>
|
351
|
+
<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>
|
352
|
+
|
353
|
+
<a href="http://feeds2.feedburner.com/hackaday/LgoM" target="_blank"><img src="http://hackadaycom.files.wordpress.com/2012/11/orange.png" border="0"/></a>
|
354
|
+
<div class="clear"> </div>
|
355
|
+
<!-- Begin MailChimp Signup Form -->
|
356
|
+
<link href="http://cdn-images.mailchimp.com/embedcode/slim-081711.css" rel="stylesheet" type="text/css">
|
357
|
+
|
358
|
+
<div id="mc_embed_signup">
|
359
|
+
<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>
|
360
|
+
<label for="mce-EMAIL">Subscribe to our mailing list for sneak previews and behind the scenes info</label>
|
361
|
+
<input type="email" value="" name="EMAIL" class="email" id="mce-EMAIL" placeholder="email address" required>
|
362
|
+
<div class="clear"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button"></div>
|
363
|
+
</form>
|
364
|
+
</div>
|
365
|
+
|
366
|
+
<!--End mc_embed_signup-->
|
367
|
+
</div>
|
368
|
+
</div>
|
369
|
+
|
370
|
+
<div id="categories-2" class="widget widget_categories"><div class="widget-wrap"><h4 class="widgettitle">Categories</h4>
|
371
|
+
<select name='cat' id='cat' class='postform' >
|
372
|
+
<option value='-1'>Select Category</option>
|
373
|
+
<option class="level-0" value="114554125">3d Printer hacks (116)</option>
|
374
|
+
<option class="level-0" value="18020710">android hacks (240)</option>
|
375
|
+
<option class="level-0" value="18020705">arduino hacks (1029)</option>
|
376
|
+
<option class="level-0" value="27981650">ARM (51)</option>
|
377
|
+
<option class="level-0" value="33199679">Ask Hackaday (29)</option>
|
378
|
+
<option class="level-0" value="64298109">ATtiny hacks (45)</option>
|
379
|
+
<option class="level-0" value="25122024">beer hacks (63)</option>
|
380
|
+
<option class="level-0" value="12115263">blackberry hacks (8)</option>
|
381
|
+
<option class="level-0" value="10969031">cellphones hacks (337)</option>
|
382
|
+
<option class="level-0" value="35745764">chemistry hacks (102)</option>
|
383
|
+
<option class="level-0" value="24483654">classic hacks (852)</option>
|
384
|
+
<option class="level-0" value="31677810">clock hacks (189)</option>
|
385
|
+
<option class="level-0" value="18755632">cnc hacks (341)</option>
|
386
|
+
<option class="level-0" value="568165">computer hacks (390)</option>
|
387
|
+
<option class="level-0" value="78428">cons (192)</option>
|
388
|
+
<option class="level-0" value="5738">contests (136)</option>
|
389
|
+
<option class="level-0" value="3923181">cooking hacks (72)</option>
|
390
|
+
<option class="level-0" value="10969032">digital audio hacks (422)</option>
|
391
|
+
<option class="level-0" value="10969033">digital cameras hacks (415)</option>
|
392
|
+
<option class="level-0" value="10969034">downloads hacks (101)</option>
|
393
|
+
<option class="level-0" value="107827385">drone hacks (10)</option>
|
394
|
+
<option class="level-0" value="63176382">Engine Hacks (31)</option>
|
395
|
+
<option class="level-0" value="35890">Featured (72)</option>
|
396
|
+
<option class="level-0" value="551890">firefox hacks (23)</option>
|
397
|
+
<option class="level-0" value="53446541">FPGA (1)</option>
|
398
|
+
<option class="level-0" value="18020562">g1 hacks (26)</option>
|
399
|
+
<option class="level-0" value="320557">google hacks (44)</option>
|
400
|
+
<option class="level-0" value="10969036">gps hacks (108)</option>
|
401
|
+
<option class="level-0" value="24535490">green hacks (152)</option>
|
402
|
+
<option class="level-0" value="27311668">Hackaday links (146)</option>
|
403
|
+
<option class="level-0" value="21755374">Hackerspaces (93)</option>
|
404
|
+
<option class="level-0" value="6310599">HackIt (101)</option>
|
405
|
+
<option class="level-0" value="10969037">handhelds hacks (189)</option>
|
406
|
+
<option class="level-0" value="79">hardware (249)</option>
|
407
|
+
<option class="level-0" value="144422905">High Voltage Hacks (5)</option>
|
408
|
+
<option class="level-0" value="66307084">Holiday Hacks (93)</option>
|
409
|
+
<option class="level-0" value="10969038">home entertainment hacks (516)</option>
|
410
|
+
<option class="level-0" value="5660882">home hacks (705)</option>
|
411
|
+
<option class="level-0" value="2708">how-to (135)</option>
|
412
|
+
<option class="level-0" value="908478">internet hacks (2)</option>
|
413
|
+
<option class="level-0" value="831">Interviews (13)</option>
|
414
|
+
<option class="level-0" value="1416772">iphone hacks (176)</option>
|
415
|
+
<option class="level-0" value="1275163">ipod hacks (144)</option>
|
416
|
+
<option class="level-0" value="344761">kickstarter (29)</option>
|
417
|
+
<option class="level-0" value="4157506">Kindle hacks (15)</option>
|
418
|
+
<option class="level-0" value="46717088">Kinect hacks (81)</option>
|
419
|
+
<option class="level-0" value="10969048">laptops hacks (111)</option>
|
420
|
+
<option class="level-0" value="10969055">laser hacks (167)</option>
|
421
|
+
<option class="level-0" value="18020716">led hacks (695)</option>
|
422
|
+
<option class="level-0" value="10626">lifehacks (54)</option>
|
423
|
+
<option class="level-0" value="729674">linux hacks (129)</option>
|
424
|
+
<option class="level-0" value="20732807">lockpicking hacks (11)</option>
|
425
|
+
<option class="level-0" value="10969060">macs hacks (135)</option>
|
426
|
+
<option class="level-0" value="144395979">Marijuana Hacks (2)</option>
|
427
|
+
<option class="level-0" value="11284667">Medical hacks (102)</option>
|
428
|
+
<option class="level-0" value="139916">Microcontrollers (512)</option>
|
429
|
+
<option class="level-0" value="5611793">misc hacks (1747)</option>
|
430
|
+
<option class="level-0" value="18020730">multitouch hacks (89)</option>
|
431
|
+
<option class="level-0" value="22652725">musical hacks (290)</option>
|
432
|
+
<option class="level-0" value="18020722">netbook hacks (50)</option>
|
433
|
+
<option class="level-0" value="6166512">Network Hacks (4)</option>
|
434
|
+
<option class="level-0" value="103">news (1091)</option>
|
435
|
+
<option class="level-0" value="1861880">nintendo ds hacks (34)</option>
|
436
|
+
<option class="level-0" value="114555425">nintendo gameboy hacks (90)</option>
|
437
|
+
<option class="level-0" value="18020685">nintendo hacks (261)</option>
|
438
|
+
<option class="level-0" value="4992726">nintendo wii hacks (78)</option>
|
439
|
+
<option class="level-0" value="118011206">Nook Hacks (1)</option>
|
440
|
+
<option class="level-0" value="114556430">palm pre hacks (6)</option>
|
441
|
+
<option class="level-0" value="245123">parts (72)</option>
|
442
|
+
<option class="level-0" value="10969081">peripherals hacks (648)</option>
|
443
|
+
<option class="level-0" value="16325149">phone hacks (17)</option>
|
444
|
+
<option class="level-0" value="10969088">playstation hacks (120)</option>
|
445
|
+
<option class="level-0" value="2060">podcasts (8)</option>
|
446
|
+
<option class="level-0" value="10969096">portable audio hacks (66)</option>
|
447
|
+
<option class="level-0" value="10969099">portable video hacks (57)</option>
|
448
|
+
<option class="level-0" value="588444">psp hacks (47)</option>
|
449
|
+
<option class="level-0" value="23971578">radio hacks (137)</option>
|
450
|
+
<option class="level-0" value="47">rants (28)</option>
|
451
|
+
<option class="level-0" value="69218551">Raspberry Pi (153)</option>
|
452
|
+
<option class="level-0" value="21870780">repair hacks (101)</option>
|
453
|
+
<option class="level-0" value="309">reviews (19)</option>
|
454
|
+
<option class="level-0" value="10969101">robots hacks (874)</option>
|
455
|
+
<option class="level-0" value="30302">roundup (35)</option>
|
456
|
+
<option class="level-0" value="10969111">security hacks (460)</option>
|
457
|
+
<option class="level-0" value="2301">Software Development (91)</option>
|
458
|
+
<option class="level-0" value="3796421">software hacks (47)</option>
|
459
|
+
<option class="level-0" value="10969116">solar hacks (46)</option>
|
460
|
+
<option class="level-0" value="10969121">tablet pcs hacks (40)</option>
|
461
|
+
<option class="level-0" value="3075183">teardown (31)</option>
|
462
|
+
<option class="level-0" value="10969130">tool hacks (657)</option>
|
463
|
+
<option class="level-0" value="25277004">toy hacks (360)</option>
|
464
|
+
<option class="level-0" value="10969134">transportation hacks (472)</option>
|
465
|
+
<option class="level-0" value="1">Uncategorized (332)</option>
|
466
|
+
<option class="level-0" value="3184456">video hacks (211)</option>
|
467
|
+
<option class="level-0" value="34942364">Virtual Reality (9)</option>
|
468
|
+
<option class="level-0" value="50802420">weapons hacks (63)</option>
|
469
|
+
<option class="level-0" value="12552193">wearable hacks (183)</option>
|
470
|
+
<option class="level-0" value="39510952">Weekly roundup (18)</option>
|
471
|
+
<option class="level-0" value="4891215">wireless hacks (333)</option>
|
472
|
+
<option class="level-0" value="7079455">xbox hacks (130)</option>
|
473
|
+
</select>
|
474
|
+
|
475
|
+
<script type='text/javascript'>
|
476
|
+
/* <![CDATA[ */
|
477
|
+
var dropdown = document.getElementById("cat");
|
478
|
+
function onCatChange() {
|
479
|
+
if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
|
480
|
+
location.href = "http://hackaday.com/?cat="+dropdown.options[dropdown.selectedIndex].value;
|
481
|
+
}
|
482
|
+
}
|
483
|
+
dropdown.onchange = onCatChange;
|
484
|
+
/* ]]> */
|
485
|
+
</script>
|
486
|
+
|
487
|
+
</div></div>
|
488
|
+
<div id="featured-post-2" class="widget featuredpost"><div class="widget-wrap"><h4 class="widgettitle">In case you missed it</h4>
|
489
|
+
<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()-->
|
490
|
+
|
491
|
+
<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()-->
|
492
|
+
|
493
|
+
<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()-->
|
494
|
+
|
495
|
+
<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()-->
|
496
|
+
|
497
|
+
<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()-->
|
498
|
+
|
499
|
+
<p class="more-from-category"><a href="http://hackaday.com/category/featured/" title="Featured">More Posts from this Category</a></p></div></div>
|
500
|
+
<div id="recent-comments-2" class="widget widget_recent_comments"><div class="widget-wrap"><h4 class="widgettitle">Recent comments</h4>
|
501
|
+
<ul id="recentcomments">
|
502
|
+
<li class="recentcomments">
|
503
|
+
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>
|
504
|
+
<li class="recentcomments">
|
505
|
+
<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>
|
506
|
+
<li class="recentcomments">
|
507
|
+
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>
|
508
|
+
<li class="recentcomments">
|
509
|
+
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>
|
510
|
+
<li class="recentcomments">
|
511
|
+
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>
|
512
|
+
<li class="recentcomments">
|
513
|
+
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>
|
514
|
+
<li class="recentcomments">
|
515
|
+
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>
|
516
|
+
<li class="recentcomments">
|
517
|
+
<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>
|
518
|
+
<li class="recentcomments">
|
519
|
+
<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>
|
520
|
+
<li class="recentcomments">
|
521
|
+
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>
|
522
|
+
</ul>
|
523
|
+
</div></div>
|
524
|
+
<div id="calendar-2" class="widget widget_calendar"><div class="widget-wrap"><h4 class="widgettitle">Find Hacks by Date</h4>
|
525
|
+
<div id="calendar_wrap"><table id="wp-calendar">
|
526
|
+
<caption>April 2013</caption>
|
527
|
+
<thead>
|
528
|
+
<tr>
|
529
|
+
<th scope="col" title="Sunday">S</th>
|
530
|
+
<th scope="col" title="Monday">M</th>
|
531
|
+
<th scope="col" title="Tuesday">T</th>
|
532
|
+
<th scope="col" title="Wednesday">W</th>
|
533
|
+
<th scope="col" title="Thursday">T</th>
|
534
|
+
<th scope="col" title="Friday">F</th>
|
535
|
+
<th scope="col" title="Saturday">S</th>
|
536
|
+
</tr>
|
537
|
+
</thead>
|
538
|
+
|
539
|
+
<tfoot>
|
540
|
+
<tr>
|
541
|
+
<td colspan="3" id="prev"><a href="http://hackaday.com/2013/03/" title="View posts for March 2013">« Mar</a></td>
|
542
|
+
<td class="pad"> </td>
|
543
|
+
<td colspan="3" id="next" class="pad"> </td>
|
544
|
+
</tr>
|
545
|
+
</tfoot>
|
546
|
+
|
547
|
+
<tbody>
|
548
|
+
<tr>
|
549
|
+
<td colspan="1" class="pad"> </td><td><a href="http://hackaday.com/2013/04/01/" title="Hackaday’s very first Kickstarter campaign, Doctor Who-style WiFi, Kindle weather and recycling display, Windmill made from washing machine, 555 chip, SNES headphones scream out for Bluetooth control, 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, Dual displays on a Playstation 2, Ask Hackaday: Hacking lingo fails, Cooling a photomultiplier tube, Hackerspace tour: Arch Reactor in St. Louis Missouri, Adafruit launches educational show aimed at kids, CNC Tic Tac Toe, Building a vehicle parking camera, April Fools’ project teaches coworkers not to touch your stuff, 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, Powering the Oculus Rift with USB, Upgrading a router with impeccable soldering skills, Homebuilt Laser Cutter Ideas, Building a Theremincello, Microscope ring light with a number of different features, Hall effect limit switches for a 3D printer, 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, MP3/USB/Aux hack hidden behind cassette facade, Pranking a hackerspace IRC for April Fool’s Day, Turning an easter egg hunt into a fox hunt, Wireless Temperature Control for a Microbrewery, Melting Metal with a DIY Foundry Furnace, Top 10 Hacking Failures in movies: part 2, Steampunk theremin goggles, High speed circuit design for quantum physics light sensing, 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, Electric tricycle build log is like hacker crack, H-bot style 3D printer moves bed for Z-axis, Stapler hack fastens infinitely large sheets of paper, 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, Rolling your own minimal USB to serial Arduino programmer, Making PLA stick to a 3D printer build platform by using hairspray or an acetone ABS slurry">6</a></td>
|
550
|
+
</tr>
|
551
|
+
<tr>
|
552
|
+
<td><a href="http://hackaday.com/2013/04/07/" title="Acoustic bass guitar uses water jug and two strings, Solar powered robot mows your lawn while you chill indoors, 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, Combo lock uses relays and logic gates, 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, The RedBull creation contest begins!, Recurve bow make from wood and skis, 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, MIDI pedal project looks as good as it sounds, Perpetual pong">10</a></td><td><a href="http://hackaday.com/2013/04/11/" title="Snowboard propulsion system motors you through the flats, Guitar EQ levels trigger the stage lights, Top 10 best hacking scenes in movies, Automating a mechanical typewriter, 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, Horribly complicated electric guitar keyboard, Generating electricity from alcohol">12</a></td><td><a href="http://hackaday.com/2013/04/13/" title="Network-controlled fireworks launcher, Working 3D printed stepper motor, SqueezeBerry: a Raspberri Pi powered Squeezebox appliance">13</a></td>
|
553
|
+
</tr>
|
554
|
+
<tr>
|
555
|
+
<td><a href="http://hackaday.com/2013/04/14/" title="Teaching a computer to play Mario… seemingly through voodoo, Building a replacement for a broken dehumidifier controller, 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, [FlorianH] shows off MinimaBL, the next generation of his quadcopter project, 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, Building a kegerator with visual style, 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, Apple MagSafe cord repair, 3D Printing sensor mounts for the Oculus Rift, 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, Semi-automatic pick and place machine, Living night light with glowing algae, 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, Replace your project power supplies with recycled Li-Ion cells and a switching regulator, 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, GUI window manager on an AVR chip, Mood lamp/notifier uses neat modular PCB design">20</a></td>
|
556
|
+
</tr>
|
557
|
+
<tr>
|
558
|
+
<td><a href="http://hackaday.com/2013/04/21/" title="3D printing some sweet music, Drop-in pcb makes Nintendo Four Score a USB joystick, 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, Connect a Retina display to a regular computer, 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, What are the best hacking documentaries?, OTM-02 is a 3D printed wristwatch, 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>
|
559
|
+
</tr>
|
560
|
+
<tr>
|
561
|
+
<td>28</td><td>29</td><td>30</td>
|
562
|
+
<td class="pad" colspan="4"> </td>
|
563
|
+
</tr>
|
564
|
+
</tbody>
|
565
|
+
</table></div></div></div>
|
566
|
+
<div id=virurl>
|
567
|
+
<!-- BEGIN - VIRURL Widget - iFrame Embed Code -->
|
568
|
+
<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"
|
569
|
+
width="300" height="600" scrolling="no" >
|
570
|
+
</iframe>
|
571
|
+
<!-- END - VIRURL Widget - iFrame Embed Code -->
|
572
|
+
</div>
|
573
|
+
<br />
|
574
|
+
<br />
|
575
|
+
<div id=tl_ad_bottom>
|
576
|
+
<script type="text/javascript"><!--
|
577
|
+
google_ad_client = "ca-pub-1812638130783065";
|
578
|
+
/* Hackaday sidebar wide skyscraper */
|
579
|
+
google_ad_slot = "1587378096";
|
580
|
+
google_ad_width = 160;
|
581
|
+
google_ad_height = 600;
|
582
|
+
google_ad_region = "test";
|
583
|
+
//-->
|
584
|
+
</script>
|
585
|
+
<script type="text/javascript"
|
586
|
+
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
587
|
+
</script>
|
588
|
+
</div>
|
589
|
+
|
590
|
+
|
591
|
+
<br />
|
592
|
+
|
593
|
+
|
594
|
+
|
595
|
+
|
596
|
+
|
597
|
+
|
598
|
+
</div> </div><!-- end #content-sidebar-wrap -->
|
599
|
+
</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 -->
|
600
|
+
<script type="text/javascript">
|
601
|
+
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
|
602
|
+
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
|
603
|
+
</script>
|
604
|
+
<script type="text/javascript">
|
605
|
+
var pageTracker = _gat._getTracker("UA-2201445-6");
|
606
|
+
pageTracker._trackPageview();
|
607
|
+
</script>
|
608
|
+
<!-- Start Quantcast tag -->
|
609
|
+
<script type="text/javascript">
|
610
|
+
_qoptions={
|
611
|
+
qacct:"p-cc6zkdHuZwUDM"
|
612
|
+
};
|
613
|
+
</script>
|
614
|
+
<script type="text/javascript"
|
615
|
+
src="http://edge.quantserve.com/quant.js"></script>
|
616
|
+
<noscript>
|
617
|
+
<img src="http://pixel.quantserve.com/pixel/p-cc6zkdHuZwUDM.gif"
|
618
|
+
style="display: none;" border="0" height="1" width="1"
|
619
|
+
alt="Quantcast"/>
|
620
|
+
</noscript></div><!-- end #wrap -->
|
621
|
+
|
622
|
+
<script type="text/javascript">
|
623
|
+
var _qevents = _qevents || [], wpcomQuantcastData = {"qacct":"p-18-mFEk4J448M","labels":",language.en,type.wpcom,vip.hackadaycom"};
|
624
|
+
function wpcomQuantcastPixel( labels, options ) {
|
625
|
+
var i, defaults = wpcomQuantcastData, data = { event: 'ajax' };
|
626
|
+
|
627
|
+
labels = labels || '';
|
628
|
+
options = options || {};
|
629
|
+
|
630
|
+
if ( typeof labels != 'string' )
|
631
|
+
options = labels;
|
632
|
+
|
633
|
+
for ( i in defaults ) {
|
634
|
+
data[i] = defaults[i];
|
635
|
+
}
|
636
|
+
|
637
|
+
for ( i in options ) {
|
638
|
+
data[i] = options[i];
|
639
|
+
}
|
640
|
+
|
641
|
+
if ( data.labels ) {
|
642
|
+
data.labels += ',' + labels;
|
643
|
+
} else {
|
644
|
+
data.labels = labels;
|
645
|
+
}
|
646
|
+
|
647
|
+
_qevents.push( data );
|
648
|
+
};
|
649
|
+
(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); })();
|
650
|
+
_qevents.push( wpcomQuantcastData );
|
651
|
+
</script>
|
652
|
+
<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>
|
653
|
+
|
654
|
+
|
655
|
+
<!-- /// LOAD CHARTBEAT /// -->
|
656
|
+
<script type="text/javascript">
|
657
|
+
var _sf_async_config={};
|
658
|
+
_sf_async_config.uid = 2021;
|
659
|
+
_sf_async_config.useCanonical = true;
|
660
|
+
|
661
|
+
(function(){
|
662
|
+
function loadChartbeat() {
|
663
|
+
window._sf_endpt=(new Date()).getTime();
|
664
|
+
var e = document.createElement('script');
|
665
|
+
e.setAttribute('language', 'javascript');
|
666
|
+
e.setAttribute('type', 'text/javascript');
|
667
|
+
e.setAttribute('src',
|
668
|
+
(("https:" == document.location.protocol) ? "https://s3.amazonaws.com/" : "http://") +
|
669
|
+
"static.chartbeat.com/js/chartbeat.js");
|
670
|
+
document.body.appendChild(e);
|
671
|
+
}
|
672
|
+
var oldonload = window.onload;
|
673
|
+
window.onload = (typeof window.onload != 'function') ?
|
674
|
+
loadChartbeat : function() { oldonload(); loadChartbeat(); };
|
675
|
+
})();
|
676
|
+
</script>
|
677
|
+
<div style="display:none">
|
678
|
+
</div>
|
679
|
+
<script type='text/javascript' src='http://s2.wp.com/_static/??-eJylzMsOREAQRuEXMoqgEwvxLC4/qjPVOl3dZh4fO3vrk+/Qz3+m3UW4SFZpxsET/D+3mtEjxQ0CJR8gnIRWOCgrfXm8lcAl0uQRFtbtlR3Cqtegl66smto0xhStPQEw5Dy+'></script>
|
680
|
+
<script type="text/javascript">
|
681
|
+
// <![CDATA[
|
682
|
+
(function() {
|
683
|
+
try{
|
684
|
+
if ( window.external &&'msIsSiteMode' in window.external) {
|
685
|
+
if (window.external.msIsSiteMode()) {
|
686
|
+
var jl = document.createElement('script');
|
687
|
+
jl.type='text/javascript';
|
688
|
+
jl.async=true;
|
689
|
+
jl.src='/wp-content/plugins/ie-sitemode/custom-jumplist.php';
|
690
|
+
var s = document.getElementsByTagName('script')[0];
|
691
|
+
s.parentNode.insertBefore(jl, s);
|
692
|
+
}
|
693
|
+
}
|
694
|
+
}catch(e){}
|
695
|
+
})();
|
696
|
+
// ]]>
|
697
|
+
</script><script src="http://s.stats.wordpress.com/w.js?21" type="text/javascript"></script>
|
698
|
+
<script type="text/javascript">
|
699
|
+
st_go({'blog':'4779443','v':'wpcom','tz':'-7','user_id':'0','subd':'hackadaycom'});
|
700
|
+
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();}
|
701
|
+
ex_go({'crypt':'UE40eW5QN0p8M2Y/RE1BNmNJfGhxNCVxUDExYmtXRThKbHcwXTdETWI1alhvb1oseHImN101ZFpEakVpYjlQYVFLYzBaVHRtPz0wXS9bVlFpZ3c1Qn5KSThLNS9lSHNGOE1IJk9+N3xFNWxyT2x+MUpnR1dJcFZJPXJjSHQlWFE2LWkzY1VHRWhScD1vOE9fbURGZlRSTiZvbGd1RWQ5PUNHT2k2SHpqZHUmdngta21YR2JFaHRyQWw3fFAmdlZ4WWE2TDYtR04yZ3ddW2tyN1hkM29rbGpoTllxLEl4VnxjJTdiM1R6N3RUbkhdVlVZTWl4fG1+aiZXS2hDL1o='});
|
702
|
+
addLoadEvent(function(){linktracker_init('4779443',0);});
|
703
|
+
</script>
|
704
|
+
<noscript><img src="http://stats.wordpress.com/b.gif?v=noscript" style="height:0px;width:0px;overflow:hidden" alt="" /></noscript>
|
705
|
+
<script type="text/javascript">
|
706
|
+
// Trigger Quantcast pixel for each Infinite Scroll post load
|
707
|
+
if ( 'function' === typeof( jQuery ) ) {
|
708
|
+
jQuery( document.body ).on( 'post-load', function() {
|
709
|
+
if ( 'function' === typeof( wpcomQuantcastPixel ) )
|
710
|
+
wpcomQuantcastPixel();
|
711
|
+
} );
|
712
|
+
}
|
713
|
+
</script>
|
714
|
+
</body>
|
715
|
+
</html>
|