forked from penk/ruha.camera
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
211 lines (172 loc) · 6.48 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>ruha.camera | 3D Printable Retro-style Raspberry Pi HQ Camera</title>
<meta name="generator" content="Jekyll v3.9.0" />
<meta property="og:title" content="RUHAcam" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="3D Printable Retro-style Raspberry Pi HQ Camera" />
<meta property="og:description" content="3D Printable Retro-style Raspberry Pi HQ Camera" />
<link rel="canonical" href="https://ruha.camera/" />
<meta property="og:url" content="https://ruha.camera/" />
<meta property="og:site_name" content="ruha.camera" />
<meta property="og:image" content="https://github.com/penk/ruha.camera/raw/main/images/ruhacam-cover.jpg" />
<meta name="twitter:card" content="summary" />
<meta property="twitter:title" content="ruha.camera" />
<script type="application/ld+json">
{"@type":"WebSite","url":"https://ruha.camera/","headline":"ruha.camera","description":"3D Printable Retro-style Raspberry Pi HQ Camera","name":"ruha.camera","@context":"https://schema.org"}</script>
<link rel="stylesheet" href="assets/css/style.css">
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.min.js"></script>
<![endif]-->
</head>
<body>
<div class="wrapper">
<header>
<h1><a href="https://ruha.camera/">RUHAcam</a></h1>
<p>3D Printable Retro-style Raspberry Pi HQ Camera</p>
<p class="view"><a href="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/penk/ruha.camera">View the Project on GitHub <small>penk/ruha.camera</small></a></p>
</header>
<section>
<p><img src="https://github.com/penk/ruha.camera/raw/main/images/ruhacam-cover.jpg" alt="" /></p>
<h2 id="bill-of-materials">Bill of Materials</h2>
<ul>
<li>Raspberry Pi Zero WH + microSD card</li>
<li>Raspberry Pi HQ Camera</li>
<li>16mm 10MP Telephoto Lens</li>
<li>2.2” TFT Display</li>
<li>TP4056 Micro USB Battery Charger</li>
<li>MT3608 DC-DC Step Up Boost Module</li>
<li>2000mAh Lipo battery</li>
<li>Power switch</li>
<li>Shutter button</li>
<li>Dupont jumper wires</li>
<li>3D printed case (see <a href="https://github.com/penk/ruha.camera/tree/main/STL">STL</a> folder)</li>
<li>Leather patches for couch (optional)</li>
</ul>
<p><img src="https://github.com/penk/ruha.camera/raw/main/images/ruhacam-bom.jpg" alt="" /></p>
<h2 id="schematic">Schematic</h2>
<ul>
<li>Power from converter connects to Pi’s <code class="language-plaintext highlighter-rouge">5V</code> (pin 4) and <code class="language-plaintext highlighter-rouge">GND</code> (pin 6)</li>
<li>Shutter button connects to <code class="language-plaintext highlighter-rouge">GPIO26</code> (pin 37) and <code class="language-plaintext highlighter-rouge">GND</code> (pin 39)</li>
</ul>
<table>
<thead>
<tr>
<th><img src="https://github.com/penk/ruha.camera/raw/main/images/ruhacam-schematic.jpg" alt="" /></th>
<th><img src="https://github.com/penk/ruha.camera/raw/main/images/ruhacam-schematic-2.jpg" alt="" /></th>
</tr>
</thead>
</table>
<table>
<thead>
<tr>
<th>Raspberry Pi pins</th>
<th>TFT display</th>
</tr>
</thead>
<tbody>
<tr>
<td>3v3 (pin 17)</td>
<td>VCC</td>
</tr>
<tr>
<td>GND (pin 20)</td>
<td>GND</td>
</tr>
<tr>
<td>GPIO8 (pin 24)</td>
<td>CS</td>
</tr>
<tr>
<td>GPIO23 (pin 16)</td>
<td>RESET</td>
</tr>
<tr>
<td>GPIO24 (pin 18)</td>
<td>DC</td>
</tr>
<tr>
<td>GPIO10 (pin 19)</td>
<td>MOSI</td>
</tr>
<tr>
<td>GPIO11 (pin 23)</td>
<td>SCK</td>
</tr>
<tr>
<td>GPIO18 (pin 12)</td>
<td>LED</td>
</tr>
<tr>
<td>GPIO9 (pin 21)</td>
<td>MISO</td>
</tr>
</tbody>
</table>
<h2 id="assembly">Assembly</h2>
<table>
<thead>
<tr>
<th><img src="https://github.com/penk/ruha.camera/raw/main/images/asm-2.jpg" alt="" /></th>
<th><img src="https://github.com/penk/ruha.camera/raw/main/images/asm-3.jpg" alt="" /></th>
</tr>
</thead>
<tbody>
<tr>
<td><img src="https://github.com/penk/ruha.camera/raw/main/images/asm-4.jpg" alt="" /></td>
<td><img src="https://github.com/penk/ruha.camera/raw/main/images/asm-1.jpg" alt="" /></td>
</tr>
</tbody>
</table>
<h2 id="software">Software</h2>
<p>Flash Raspberry Pi OS to micro SD card. Then add following lines into <code class="language-plaintext highlighter-rouge">config.txt</code>:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>gpu_mem=256
dtoverlay=rpi-display
display_rotate=2
</code></pre></div></div>
<p>For application, simply execute this script after boot:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>from gpiozero import Button
from picamera import PiCamera
import time
button = Button(26)
with PiCamera() as camera:
camera.resolution = (4056, 3040)
camera.framerate = 5
frame = int(time.time())
camera.start_preview()
while True:
button.wait_for_press()
camera.capture('/home/pi/Pictures/%03d.jpg' % frame)
frame += 1
</code></pre></div></div>
<h2 id="sample-pictures">Sample Pictures</h2>
<table>
<thead>
<tr>
<th><img src="https://github.com/penk/ruha.camera/raw/main/images/1616840925.JPG" alt="" /></th>
<th><img src="https://github.com/penk/ruha.camera/raw/main/images/1616769300.JPG" alt="" /></th>
</tr>
</thead>
<tbody>
<tr>
<td><img src="https://github.com/penk/ruha.camera/raw/main/images/1616769323.JPG" alt="" /></td>
<td><img src="https://github.com/penk/ruha.camera/raw/main/images/1616840940.JPG" alt="" /></td>
</tr>
</tbody>
</table>
<h2 id="copyright-and-license">Copyright and License</h2>
<p>Copyright (c) 2021 Ruha Cheng & Penk Chen. All rights reserved.</p>
<p>All files are licensed under MIT license, see the LICENSE for more information.</p>
</section>
<footer>
<p>This project is maintained by <a href="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/penk">penk</a></p>
<p><small>Hosted on GitHub Pages — Theme by <a href="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/orderedlist">orderedlist</a></small></p>
</footer>
</div>
<script src="assets/js/scale.fix.js"></script>
</body>
</html>