Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
171dff723f | ||
|
85a7494813 | ||
|
46937e403e |
Before Width: | Height: | Size: 166 KiB After Width: | Height: | Size: 166 KiB |
Before Width: | Height: | Size: 290 KiB After Width: | Height: | Size: 290 KiB |
Before Width: | Height: | Size: 293 KiB After Width: | Height: | Size: 293 KiB |
Before Width: | Height: | Size: 286 KiB After Width: | Height: | Size: 287 KiB |
Before Width: | Height: | Size: 121 KiB After Width: | Height: | Size: 121 KiB |
Before Width: | Height: | Size: 236 KiB After Width: | Height: | Size: 235 KiB |
Before Width: | Height: | Size: 178 KiB After Width: | Height: | Size: 180 KiB |
Before Width: | Height: | Size: 215 KiB After Width: | Height: | Size: 252 KiB |
Before Width: | Height: | Size: 202 KiB After Width: | Height: | Size: 202 KiB |
@@ -43,11 +43,11 @@ Bench power supply built around an ATX PSU.
|
||||
* The green LED shows the power good signal.
|
||||
* Dummy loads keep the outputs in range.
|
||||
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
||||
<a name="TOP"></a>
|
||||
## Laser Load
|
||||
15kV dummy load for testing CO2 laser PSUs
|
||||
@@ -77,11 +77,11 @@ Earth leakage can be measured Canadian CSA style by disconnected the neutral lin
|
||||
## Mains Box
|
||||
Mains isolated and variable supply with metering.
|
||||
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
||||
<a name="TOP"></a>
|
||||
## SunBot
|
||||
A solar tracker to keep a solar panel pointing at the sun.
|
||||
@@ -95,13 +95,15 @@ WiFi enabled remote control turntable for photography
|
||||
|
||||

|
||||
|
||||
Was actually made from DiBond but shown made with carbon fibre here.
|
||||
|
||||
|
||||
<a name="TOP"></a>
|
||||
## Variac
|
||||
Motorised variac with WiFi control, see [hydraraptor.blogspot.com/2018/04/esp8266-spi-spy](https://hydraraptor.blogspot.com/2018/04/esp8266-spi-spy.html)
|
||||
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
||||
|
@@ -51,7 +51,7 @@ def split_blurb(lines):
|
||||
""" Split blurb on horizontal rules."""
|
||||
blurbs = [""]
|
||||
for line in lines.split('\n')[:-1]:
|
||||
if re.match(r'\*\*\*\**',line):
|
||||
if re.match(r'\*{3,}',line):
|
||||
blurbs.append("")
|
||||
else:
|
||||
blurbs[-1] += line + '\n'
|
||||
|
@@ -52,7 +52,7 @@ def gallery(force):
|
||||
if os.path.isfile(document):
|
||||
with open(document, 'rt') as readme:
|
||||
for line in readme.readlines():
|
||||
match = re.match(r"^.*!(\[.*\]\(.*\)).*$", line)
|
||||
match = re.search(r"!(\[.*\]\(.*\))", line)
|
||||
if match:
|
||||
image = match.group(0)
|
||||
if image.startswith(':
|
||||
|
@@ -227,11 +227,7 @@ def views(target, do_assemblies = None):
|
||||
#
|
||||
# Only add the image if the first blurb section doesn't contain one.
|
||||
#
|
||||
got_image = False
|
||||
for line in blurbs[0].split('\n'):
|
||||
if re.match(r'.*\!\[.*\]\(.*\).*', line):
|
||||
got_image = True
|
||||
if not got_image:
|
||||
if not re.search(r'\!\[.*\]\(.*\)', blurbs[0], re.MULTILINE):
|
||||
print('\n' % flat_bom[-1]["name"].replace('_assembly', '_assembled'), file = doc_file)
|
||||
eop(print_mode, doc_file, first = True)
|
||||
#
|
||||
|