<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.somakeit.org.uk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Scorpia</id>
	<title>SoMakeIt - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.somakeit.org.uk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Scorpia"/>
	<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php/Special:Contributions/Scorpia"/>
	<updated>2026-06-04T04:39:48Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.11</generator>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=426</id>
		<title>Laser Cutter</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=426"/>
		<updated>2026-01-07T21:52:00Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Fix image formatting&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Rapid Prototyping&lt;br /&gt;
| manufacturer = HPC&lt;br /&gt;
| model = laserscript 1290&lt;br /&gt;
|induction_link=https://somakeit.org.uk/laser-induction/}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;It can only be used by members who have [https://somakeit.org.uk/laser-induction/ completed the official laser training.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Due to the nature of the machine strict adherence to safety must be maintained and any transgressions with safety will be dealt with switftly and harshly.  The machine is also the most expensive item in the unit so great care must be used to treat it well.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Organisation and acquiring and commissioning the laser was done on [https://trello.com/b/0gzSlAqb/laser-cutter our trello board] and much more information can be found there.  A report on the purchase of the machine can be viewed [https://github.com/somakeit/laser-cutter/blob/master/Laser%20Cutter%20Review.docx?raw=true here] on our github repo.&lt;br /&gt;
&lt;br /&gt;
== Safety ==&lt;br /&gt;
&#039;&#039;&#039;There is a [https://somakeit.org.uk/laser-induction/ laser cutter risk assessment] which should be read and understood by all laser operators.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Significant safety points to note ===&lt;br /&gt;
*Before using the machine you must have a fire safety plan in case of the worst.  This includes checking:&lt;br /&gt;
**Checking the fire extinguisher and fire blanket are next to the machine&lt;br /&gt;
**The area around the machine is tidy and clear of debris&lt;br /&gt;
**The machine appears to be working and is clear of debris&lt;br /&gt;
**You are aware of the makerspace fire safety rules&lt;br /&gt;
*The laser must NEVER be left unattended.&lt;br /&gt;
*The extraction system must &#039;&#039;&#039;always&#039;&#039;&#039; be used else the machine will be damaged. The switch is behind the machine on the wall.&lt;br /&gt;
*Only those who have had official training AND who are members of the space may use the machine.  If non members want to have something cut they can ask a member with training to do it for them.&lt;br /&gt;
*You must only use materials that have been approved for use on the machine (see materials).  If in doubt ask [[User:Daverowntree|Dave Rowntree]].&lt;br /&gt;
If in doubt of any aspect of the machine or you suspect something is not working as it should immediately contact the trustees for assistance and do not continue to use the machine.&lt;br /&gt;
&lt;br /&gt;
== Materials ==&lt;br /&gt;
It is important to only laser materials we are certain will not result in harm to yourself and other space users or damage to the machine. To this end in order to cut a material that SoMakeIt have not previously investigated you must follow this process:&lt;br /&gt;
*Check we don&#039;t know about the material below and ask in the #laser-cutter channel on slack.&lt;br /&gt;
*Do research to insure that this is a material other maker spaces have used successfully.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not be harmful to space users.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not damage the laser cutter.&lt;br /&gt;
*Present this research to a laser trainer (ideally in the #laser-cutter slack channel).&lt;br /&gt;
&lt;br /&gt;
=== OK to cut ===&lt;br /&gt;
Acrylic (a.k.a. PMMA, Plexiglass, or Lexan) up to about 6-8 mm; 10 mm is doable. Wood ideally &#039;laser&#039; play or &#039;laser&#039; mdf, oily woods are much more likely to burn so testing is advised. Card and paper can be cut with very low power, or pulsed laser control. Air assist will help prevent fires....but it is tricky. Natural fabrics and genuine leather.&lt;br /&gt;
&lt;br /&gt;
=== NEVER CUT ===&lt;br /&gt;
*Any material you have not researched and had cleared by a laser trainer (see above).&lt;br /&gt;
*Fake leather (this may contain PVC).&lt;br /&gt;
*Polycarbonate (it just burns and produces lots of smoke and fumes).&lt;br /&gt;
*PVC, as it burns horribly and releases chlorine. Fumes will quickly destroy laser lens and mirrors.&lt;br /&gt;
&lt;br /&gt;
=== Engraving ===&lt;br /&gt;
Acrylic plastic, wood, slate, and glass can be engraved.  Anodized aluminium can be engraved; other metals need to be coated with laser engraving spray or plaster/ipa mix (talk to Holly!).&lt;br /&gt;
&lt;br /&gt;
==== Notes on engraving glass ====&lt;br /&gt;
&lt;br /&gt;
If engraving glass it is best to wipe some washing up liquid onto the surface first as this improves the engraving. note if using the rotary dont let the washing up liquid get to the rolers otherwise the part may slip and you will end up with a squished engraving. You may also want to add masking tape or similar on the reverse end to add more grip &lt;br /&gt;
&lt;br /&gt;
=== Note ===&lt;br /&gt;
Remembers the space does have a [http://www.silhouetteamerica.com/shop/machines/portrait small vinyl cutter] that can do thin pvc/vinyl and other stuff that should not be cut on the laser.  This will actually do a good job on paper without any burning issues and should be considered as an alternative machine for paper cutting.&lt;br /&gt;
&lt;br /&gt;
== Machine Specifications and Manual ==&lt;br /&gt;
We have an HPC 1290 laser kindly donated to us by Southampton University&lt;br /&gt;
&lt;br /&gt;
Datasheet: https://hpclaser.co.uk/wp-content/uploads/2023/04/LS1290-PRO-Data-Sheet-2021f.pdf&lt;br /&gt;
&lt;br /&gt;
=== Manufacturers Specification ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|Cutting area&lt;br /&gt;
|1200mm x 900mm (slightly reduced for engraving)&lt;br /&gt;
|-&lt;br /&gt;
|Engraving speed &lt;br /&gt;
|Upto 400/sec (Faster = less quality)&lt;br /&gt;
|-&lt;br /&gt;
|Laser source&lt;br /&gt;
|Water cooled CO2 gas filled glass tube&lt;br /&gt;
|-&lt;br /&gt;
|Cooling system&lt;br /&gt;
|Compressor Based water chiller&lt;br /&gt;
|-&lt;br /&gt;
|Z axis (table height)&lt;br /&gt;
|230mm&lt;br /&gt;
|-&lt;br /&gt;
|Fume extraction&lt;br /&gt;
|Extractor to outside&lt;br /&gt;
|-&lt;br /&gt;
|Air assist compressor&lt;br /&gt;
|Yes&lt;br /&gt;
|-&lt;br /&gt;
|Connectivity&lt;br /&gt;
|PC or USB&lt;br /&gt;
|-&lt;br /&gt;
|Software&lt;br /&gt;
|Lightburn (Most vector and image types supported) &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Rotary Axis ===&lt;br /&gt;
&lt;br /&gt;
The machine has a rotary tool which can be used for engraving round ojects such as glass bottles, glasses, or metal drink bottles.&lt;br /&gt;
This is stored on the laser shelves but requires soume setup to use correctly.&lt;br /&gt;
[[File:Laser rotary.jpg|none|thumb|Rotary attachment]]&lt;br /&gt;
&lt;br /&gt;
# The rotary axis can be placed anywhere inside the machine, within reach of the cable there are three pins on the bottom of the assembly which should be placed touching the slots on the laser bed which will hold it in place and keep it rougthly aligned although you may need to fine tune the alignment to get it fully square.&lt;br /&gt;
[[File:Laser rotary on laser.jpg|frameless]][[File:Laser rotary pin left.jpg|frameless]][[File:Laser rotary pin right.jpg|frameless]]&lt;br /&gt;
# The rotary axis plugs in into a port on the inside of the machine in the near right hand side, near the control panel. Once it is connected you will need to rerun the zero the axies command from the menu.&lt;br /&gt;
[[File:Laser rotary connector.jpg|frameless]]&lt;br /&gt;
# use the leaver arm on the adjustable end to set the lenth of the rotary so your item fits niceley, then use the adjustment dial on the movable end to get the surface level (use a spirit level for this).&lt;br /&gt;
# use the normal distance tool to set the height of the laser above the workpiece.&lt;br /&gt;
# position the laser to the origin of where you want to cut/engrave (this should be on the centerline of your workpiece)&lt;br /&gt;
[[File:Laser rotary setup.jpg|frameless]]&lt;br /&gt;
# Load your cutting file into the software and make any pre adjustments. when you are happy with the size you will need to adjust the scale of the Y axsis to 195% (this is in the top bar and you should unlock the x-y scales so only the Y axsis is adjusted&lt;br /&gt;
# In the rotary settings (shown by a dot with ircular arrows you need to select the option &amp;quot;mirror the ourput to rotary&amp;quot;&lt;br /&gt;
# For engraving set the lines per inch to 120 as this works well with the rotary&lt;br /&gt;
# It is recomended to use send rather than start in lightburn as start hasnt been tested with the rotary&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
The process for getting laser trained:&lt;br /&gt;
*Become a member of So Make It&lt;br /&gt;
&lt;br /&gt;
*Request laser training on Slack in the #laser-cutter channel&lt;br /&gt;
&lt;br /&gt;
*Wait for contact from your laser trainer.&lt;br /&gt;
*See [[Laser Cutter Training]] for an overview of the training&lt;br /&gt;
*Pay the fee&lt;br /&gt;
&lt;br /&gt;
== Costs ==&lt;br /&gt;
We are charging everyone a £20 upfront fee for starting to use the cutter paid at your training session.  This does not go to the trainer but is to quickly build up a war chest of funds for inevitable part replacement in the future.&lt;br /&gt;
&lt;br /&gt;
We are also charging 15p per minute of laser time, rounded up, you can see the preview to get an estimated cost.  We are running this on an honour system same as the 3d printers; you can pay the fees in cash into the pink cashbox, via the card reader or via bank transfer. See [[Paying the space]] for more info.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=425</id>
		<title>Laser Cutter</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=425"/>
		<updated>2026-01-07T21:50:09Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added documentation for rotary axis&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Rapid Prototyping&lt;br /&gt;
| manufacturer = HPC&lt;br /&gt;
| model = laserscript 1290&lt;br /&gt;
|induction_link=https://somakeit.org.uk/laser-induction/}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;It can only be used by members who have [https://somakeit.org.uk/laser-induction/ completed the official laser training.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Due to the nature of the machine strict adherence to safety must be maintained and any transgressions with safety will be dealt with switftly and harshly.  The machine is also the most expensive item in the unit so great care must be used to treat it well.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Organisation and acquiring and commissioning the laser was done on [https://trello.com/b/0gzSlAqb/laser-cutter our trello board] and much more information can be found there.  A report on the purchase of the machine can be viewed [https://github.com/somakeit/laser-cutter/blob/master/Laser%20Cutter%20Review.docx?raw=true here] on our github repo.&lt;br /&gt;
&lt;br /&gt;
== Safety ==&lt;br /&gt;
&#039;&#039;&#039;There is a [https://somakeit.org.uk/laser-induction/ laser cutter risk assessment] which should be read and understood by all laser operators.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Significant safety points to note ===&lt;br /&gt;
*Before using the machine you must have a fire safety plan in case of the worst.  This includes checking:&lt;br /&gt;
**Checking the fire extinguisher and fire blanket are next to the machine&lt;br /&gt;
**The area around the machine is tidy and clear of debris&lt;br /&gt;
**The machine appears to be working and is clear of debris&lt;br /&gt;
**You are aware of the makerspace fire safety rules&lt;br /&gt;
*The laser must NEVER be left unattended.&lt;br /&gt;
*The extraction system must &#039;&#039;&#039;always&#039;&#039;&#039; be used else the machine will be damaged. The switch is behind the machine on the wall.&lt;br /&gt;
*Only those who have had official training AND who are members of the space may use the machine.  If non members want to have something cut they can ask a member with training to do it for them.&lt;br /&gt;
*You must only use materials that have been approved for use on the machine (see materials).  If in doubt ask [[User:Daverowntree|Dave Rowntree]].&lt;br /&gt;
If in doubt of any aspect of the machine or you suspect something is not working as it should immediately contact the trustees for assistance and do not continue to use the machine.&lt;br /&gt;
&lt;br /&gt;
== Materials ==&lt;br /&gt;
It is important to only laser materials we are certain will not result in harm to yourself and other space users or damage to the machine. To this end in order to cut a material that SoMakeIt have not previously investigated you must follow this process:&lt;br /&gt;
*Check we don&#039;t know about the material below and ask in the #laser-cutter channel on slack.&lt;br /&gt;
*Do research to insure that this is a material other maker spaces have used successfully.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not be harmful to space users.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not damage the laser cutter.&lt;br /&gt;
*Present this research to a laser trainer (ideally in the #laser-cutter slack channel).&lt;br /&gt;
&lt;br /&gt;
=== OK to cut ===&lt;br /&gt;
Acrylic (a.k.a. PMMA, Plexiglass, or Lexan) up to about 6-8 mm; 10 mm is doable. Wood ideally &#039;laser&#039; play or &#039;laser&#039; mdf, oily woods are much more likely to burn so testing is advised. Card and paper can be cut with very low power, or pulsed laser control. Air assist will help prevent fires....but it is tricky. Natural fabrics and genuine leather.&lt;br /&gt;
&lt;br /&gt;
=== NEVER CUT ===&lt;br /&gt;
*Any material you have not researched and had cleared by a laser trainer (see above).&lt;br /&gt;
*Fake leather (this may contain PVC).&lt;br /&gt;
*Polycarbonate (it just burns and produces lots of smoke and fumes).&lt;br /&gt;
*PVC, as it burns horribly and releases chlorine. Fumes will quickly destroy laser lens and mirrors.&lt;br /&gt;
&lt;br /&gt;
=== Engraving ===&lt;br /&gt;
Acrylic plastic, wood, slate, and glass can be engraved.  Anodized aluminium can be engraved; other metals need to be coated with laser engraving spray or plaster/ipa mix (talk to Holly!).&lt;br /&gt;
&lt;br /&gt;
==== Notes on engraving glass ====&lt;br /&gt;
&lt;br /&gt;
If engraving glass it is best to wipe some washing up liquid onto the surface first as this improves the engraving. note if using the rotary dont let the washing up liquid get to the rolers otherwise the part may slip and you will end up with a squished engraving. You may also want to add masking tape or similar on the reverse end to add more grip &lt;br /&gt;
&lt;br /&gt;
=== Note ===&lt;br /&gt;
Remembers the space does have a [http://www.silhouetteamerica.com/shop/machines/portrait small vinyl cutter] that can do thin pvc/vinyl and other stuff that should not be cut on the laser.  This will actually do a good job on paper without any burning issues and should be considered as an alternative machine for paper cutting.&lt;br /&gt;
&lt;br /&gt;
== Machine Specifications and Manual ==&lt;br /&gt;
We have an HPC 1290 laser kindly donated to us by Southampton University&lt;br /&gt;
&lt;br /&gt;
Datasheet: https://hpclaser.co.uk/wp-content/uploads/2023/04/LS1290-PRO-Data-Sheet-2021f.pdf&lt;br /&gt;
&lt;br /&gt;
=== Manufacturers Specification ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|Cutting area&lt;br /&gt;
|1200mm x 900mm (slightly reduced for engraving)&lt;br /&gt;
|-&lt;br /&gt;
|Engraving speed &lt;br /&gt;
|Upto 400/sec (Faster = less quality)&lt;br /&gt;
|-&lt;br /&gt;
|Laser source&lt;br /&gt;
|Water cooled CO2 gas filled glass tube&lt;br /&gt;
|-&lt;br /&gt;
|Cooling system&lt;br /&gt;
|Compressor Based water chiller&lt;br /&gt;
|-&lt;br /&gt;
|Z axis (table height)&lt;br /&gt;
|230mm&lt;br /&gt;
|-&lt;br /&gt;
|Fume extraction&lt;br /&gt;
|Extractor to outside&lt;br /&gt;
|-&lt;br /&gt;
|Air assist compressor&lt;br /&gt;
|Yes&lt;br /&gt;
|-&lt;br /&gt;
|Connectivity&lt;br /&gt;
|PC or USB&lt;br /&gt;
|-&lt;br /&gt;
|Software&lt;br /&gt;
|Lightburn (Most vector and image types supported) &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Rotary Axis ===&lt;br /&gt;
&lt;br /&gt;
The machine has a rotary tool which can be used for engraving round ojects such as glass bottles, glasses, or metal drink bottles.&lt;br /&gt;
This is stored on the laser shelves but requires soume setup to use correctly.&lt;br /&gt;
[[File:Laser rotary.jpg|none|thumb|Rotary attachment]]&lt;br /&gt;
&lt;br /&gt;
# The rotary axis can be placed anywhere inside the machine, within reach of the cable there are three pins on the bottom of the assembly which should be placed touching the slots on the laser bed which will hold it in place and keep it rougthly aligned although you may need to fine tune the alignment to get it fully square. [[File:Laser rotary on laser.jpg|frameless]][[File:Laser rotary pin left.jpg|frameless]][[File:Laser rotary pin right.jpg|frameless]]&lt;br /&gt;
# The rotary axis plugs in into a port on the inside of the machine in the near right hand side, near the control panel. Once it is connected you will need to rerun the zero the axies command from the menu. [[File:Laser rotary connector.jpg|frameless]]&lt;br /&gt;
# use the leaver arm on the adjustable end to set the lenth of the rotary so your item fits niceley, then use the adjustment dial on the movable end to get the surface level (use a spirit level for this).&lt;br /&gt;
# use the normal distance tool to set the height of the laser above the workpiece.&lt;br /&gt;
# position the laser to the origin of where you want to cut/engrave (this should be on the centerline of your workpiece) [[File:Laser rotary setup.jpg|frameless]]&lt;br /&gt;
# Load your cutting file into the software and make any pre adjustments. when you are happy with the size you will need to adjust the scale of the Y axsis to 195% (this is in the top bar and you should unlock the x-y scales so only the Y axsis is adjusted&lt;br /&gt;
# In the rotary settings (shown by a dot with ircular arrows you need to select the option &amp;quot;mirror the ourput to rotary&amp;quot;&lt;br /&gt;
# For engraving set the lines per inch to 120 as this works well with the rotary&lt;br /&gt;
# It is recomended to use send rather than start in lightburn as start hasnt been tested with the rotary&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
The process for getting laser trained:&lt;br /&gt;
*Become a member of So Make It&lt;br /&gt;
&lt;br /&gt;
*Request laser training on Slack in the #laser-cutter channel&lt;br /&gt;
&lt;br /&gt;
*Wait for contact from your laser trainer.&lt;br /&gt;
*See [[Laser Cutter Training]] for an overview of the training&lt;br /&gt;
*Pay the fee&lt;br /&gt;
&lt;br /&gt;
== Costs ==&lt;br /&gt;
We are charging everyone a £20 upfront fee for starting to use the cutter paid at your training session.  This does not go to the trainer but is to quickly build up a war chest of funds for inevitable part replacement in the future.&lt;br /&gt;
&lt;br /&gt;
We are also charging 15p per minute of laser time, rounded up, you can see the preview to get an estimated cost.  We are running this on an honour system same as the 3d printers; you can pay the fees in cash into the pink cashbox, via the card reader or via bank transfer. See [[Paying the space]] for more info.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_setup.jpg&amp;diff=424</id>
		<title>File:Laser rotary setup.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_setup.jpg&amp;diff=424"/>
		<updated>2026-01-07T21:48:58Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;rotary setup in laser cutter&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_connector.jpg&amp;diff=423</id>
		<title>File:Laser rotary connector.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_connector.jpg&amp;diff=423"/>
		<updated>2026-01-07T21:48:08Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Connector for rotary attachment&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_pin_right.jpg&amp;diff=422</id>
		<title>File:Laser rotary pin right.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_pin_right.jpg&amp;diff=422"/>
		<updated>2026-01-07T21:45:46Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Right hand side laser rotary pin&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_pin_left.jpg&amp;diff=421</id>
		<title>File:Laser rotary pin left.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_pin_left.jpg&amp;diff=421"/>
		<updated>2026-01-07T21:44:44Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;laser rotary left pins&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_on_laser.jpg&amp;diff=420</id>
		<title>File:Laser rotary on laser.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary_on_laser.jpg&amp;diff=420"/>
		<updated>2026-01-07T21:43:36Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Rotary on laser cutter&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary.jpg&amp;diff=419</id>
		<title>File:Laser rotary.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=File:Laser_rotary.jpg&amp;diff=419"/>
		<updated>2026-01-07T21:42:35Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Rotary attachment for laser cutter&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=418</id>
		<title>Laser Cutter</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=418"/>
		<updated>2026-01-07T21:30:56Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add inital rotary instructions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Rapid Prototyping&lt;br /&gt;
| manufacturer = HPC&lt;br /&gt;
| model = laserscript 1290&lt;br /&gt;
|induction_link=https://somakeit.org.uk/laser-induction/}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;It can only be used by members who have [https://somakeit.org.uk/laser-induction/ completed the official laser training.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Due to the nature of the machine strict adherence to safety must be maintained and any transgressions with safety will be dealt with switftly and harshly.  The machine is also the most expensive item in the unit so great care must be used to treat it well.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Organisation and acquiring and commissioning the laser was done on [https://trello.com/b/0gzSlAqb/laser-cutter our trello board] and much more information can be found there.  A report on the purchase of the machine can be viewed [https://github.com/somakeit/laser-cutter/blob/master/Laser%20Cutter%20Review.docx?raw=true here] on our github repo.&lt;br /&gt;
&lt;br /&gt;
== Safety ==&lt;br /&gt;
&#039;&#039;&#039;There is a [https://somakeit.org.uk/laser-induction/ laser cutter risk assessment] which should be read and understood by all laser operators.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Significant safety points to note ===&lt;br /&gt;
*Before using the machine you must have a fire safety plan in case of the worst.  This includes checking:&lt;br /&gt;
**Checking the fire extinguisher and fire blanket are next to the machine&lt;br /&gt;
**The area around the machine is tidy and clear of debris&lt;br /&gt;
**The machine appears to be working and is clear of debris&lt;br /&gt;
**You are aware of the makerspace fire safety rules&lt;br /&gt;
*The laser must NEVER be left unattended.&lt;br /&gt;
*The extraction system must &#039;&#039;&#039;always&#039;&#039;&#039; be used else the machine will be damaged. The switch is behind the machine on the wall.&lt;br /&gt;
*Only those who have had official training AND who are members of the space may use the machine.  If non members want to have something cut they can ask a member with training to do it for them.&lt;br /&gt;
*You must only use materials that have been approved for use on the machine (see materials).  If in doubt ask [[User:Daverowntree|Dave Rowntree]].&lt;br /&gt;
If in doubt of any aspect of the machine or you suspect something is not working as it should immediately contact the trustees for assistance and do not continue to use the machine.&lt;br /&gt;
&lt;br /&gt;
== Materials ==&lt;br /&gt;
It is important to only laser materials we are certain will not result in harm to yourself and other space users or damage to the machine. To this end in order to cut a material that SoMakeIt have not previously investigated you must follow this process:&lt;br /&gt;
*Check we don&#039;t know about the material below and ask in the #laser-cutter channel on slack.&lt;br /&gt;
*Do research to insure that this is a material other maker spaces have used successfully.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not be harmful to space users.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not damage the laser cutter.&lt;br /&gt;
*Present this research to a laser trainer (ideally in the #laser-cutter slack channel).&lt;br /&gt;
&lt;br /&gt;
=== OK to cut ===&lt;br /&gt;
Acrylic (a.k.a. PMMA, Plexiglass, or Lexan) up to about 6-8 mm; 10 mm is doable. Wood ideally &#039;laser&#039; play or &#039;laser&#039; mdf, oily woods are much more likely to burn so testing is advised. Card and paper can be cut with very low power, or pulsed laser control. Air assist will help prevent fires....but it is tricky. Natural fabrics and genuine leather.&lt;br /&gt;
&lt;br /&gt;
=== NEVER CUT ===&lt;br /&gt;
*Any material you have not researched and had cleared by a laser trainer (see above).&lt;br /&gt;
*Fake leather (this may contain PVC).&lt;br /&gt;
*Polycarbonate (it just burns and produces lots of smoke and fumes).&lt;br /&gt;
*PVC, as it burns horribly and releases chlorine. Fumes will quickly destroy laser lens and mirrors.&lt;br /&gt;
&lt;br /&gt;
=== Engraving ===&lt;br /&gt;
Acrylic plastic, wood, slate, and glass can be engraved.  Anodized aluminium can be engraved; other metals need to be coated with laser engraving spray or plaster/ipa mix (talk to Holly!).&lt;br /&gt;
&lt;br /&gt;
==== Notes on engraving glass ====&lt;br /&gt;
&lt;br /&gt;
If engraving glass it is best to wipe some washing up liquid onto the surface first as this improves the engraving. note if using the rotary dont let the washing up liquid get to the rolers otherwise the part may slip and you will end up with a squished engraving. You may also want to add masking tape or similar on the reverse end to add more grip &lt;br /&gt;
&lt;br /&gt;
=== Note ===&lt;br /&gt;
Remembers the space does have a [http://www.silhouetteamerica.com/shop/machines/portrait small vinyl cutter] that can do thin pvc/vinyl and other stuff that should not be cut on the laser.  This will actually do a good job on paper without any burning issues and should be considered as an alternative machine for paper cutting.&lt;br /&gt;
&lt;br /&gt;
== Machine Specifications and Manual ==&lt;br /&gt;
We have an HPC 1290 laser kindly donated to us by Southampton University&lt;br /&gt;
&lt;br /&gt;
Datasheet: https://hpclaser.co.uk/wp-content/uploads/2023/04/LS1290-PRO-Data-Sheet-2021f.pdf&lt;br /&gt;
&lt;br /&gt;
=== Manufacturers Specification ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|Cutting area&lt;br /&gt;
|1200mm x 900mm (slightly reduced for engraving)&lt;br /&gt;
|-&lt;br /&gt;
|Engraving speed &lt;br /&gt;
|Upto 400/sec (Faster = less quality)&lt;br /&gt;
|-&lt;br /&gt;
|Laser source&lt;br /&gt;
|Water cooled CO2 gas filled glass tube&lt;br /&gt;
|-&lt;br /&gt;
|Cooling system&lt;br /&gt;
|Compressor Based water chiller&lt;br /&gt;
|-&lt;br /&gt;
|Z axis (table height)&lt;br /&gt;
|230mm&lt;br /&gt;
|-&lt;br /&gt;
|Fume extraction&lt;br /&gt;
|Extractor to outside&lt;br /&gt;
|-&lt;br /&gt;
|Air assist compressor&lt;br /&gt;
|Yes&lt;br /&gt;
|-&lt;br /&gt;
|Connectivity&lt;br /&gt;
|PC or USB&lt;br /&gt;
|-&lt;br /&gt;
|Software&lt;br /&gt;
|Lightburn (Most vector and image types supported) &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Rotary Axis ===&lt;br /&gt;
&lt;br /&gt;
The machine has a rotary tool which can be used for engraving round ojects such as glass bottles, glasses, or metal drink bottles.&lt;br /&gt;
This is stored on the laser shelves but requires soume setup to use correctly.&lt;br /&gt;
&lt;br /&gt;
# The rotary axis can be placed anywhere inside the machine, within reach of the cable there are three pins on the bottom of the assembly which should be placed touching the slots on the laser bed which will hold it in place and keep it rougthly aligned although you may need to fine tune the alignment to get it fully square.&lt;br /&gt;
# The rotary axis plugs in into a port on the inside of the machine in the near right hand side, near the control panel. Once it is connected you will need to rerun the zero the axies command from the menu.&lt;br /&gt;
# use the leaver arm on the adjustable end to set the lenth of the rotary so your item fits niceley, then use the adjustment dial on the movable end to get the surface level (use a spirit level for this).&lt;br /&gt;
# use the normal distance tool to set the height of the laser above the workpiece.&lt;br /&gt;
# position the laser to the origin of where you want to cut/engrave (this should be on the centerline of your workpiece)&lt;br /&gt;
# Load your cutting file into the software and make any pre adjustments. when you are happy with the size you will need to adjust the scale of the Y axsis to 195% (this is in the top bar and you should unlock the x-y scales so only the Y axsis is adjusted&lt;br /&gt;
# In the rotary settings (shown by a dot with ircular arrows you need to select the option &amp;quot;mirror the ourput to rotary&amp;quot;&lt;br /&gt;
# For engraving set the lines per inch to 120 as this works well with the rotary&lt;br /&gt;
# It is recomended to use send rather than start in lightburn as start hasnt been tested with the rotary&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
The process for getting laser trained:&lt;br /&gt;
*Become a member of So Make It&lt;br /&gt;
&lt;br /&gt;
*Request laser training on Slack in the #laser-cutter channel&lt;br /&gt;
&lt;br /&gt;
*Wait for contact from your laser trainer.&lt;br /&gt;
*See [[Laser Cutter Training]] for an overview of the training&lt;br /&gt;
*Pay the fee&lt;br /&gt;
&lt;br /&gt;
== Costs ==&lt;br /&gt;
We are charging everyone a £20 upfront fee for starting to use the cutter paid at your training session.  This does not go to the trainer but is to quickly build up a war chest of funds for inevitable part replacement in the future.&lt;br /&gt;
&lt;br /&gt;
We are also charging 15p per minute of laser time, rounded up, you can see the preview to get an estimated cost.  We are running this on an honour system same as the 3d printers; you can pay the fees in cash into the pink cashbox, via the card reader or via bank transfer. See [[Paying the space]] for more info.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=417</id>
		<title>Laser Cutter</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=417"/>
		<updated>2026-01-07T20:27:27Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Split model and manufacturer and remove out of date text that it is new&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Rapid Prototyping&lt;br /&gt;
| manufacturer = HPC&lt;br /&gt;
| model = laserscript 1290&lt;br /&gt;
|induction_link=https://somakeit.org.uk/laser-induction/}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;It can only be used by members who have [https://somakeit.org.uk/laser-induction/ completed the official laser training.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Due to the nature of the machine strict adherence to safety must be maintained and any transgressions with safety will be dealt with switftly and harshly.  The machine is also the most expensive item in the unit so great care must be used to treat it well.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Organisation and acquiring and commissioning the laser was done on [https://trello.com/b/0gzSlAqb/laser-cutter our trello board] and much more information can be found there.  A report on the purchase of the machine can be viewed [https://github.com/somakeit/laser-cutter/blob/master/Laser%20Cutter%20Review.docx?raw=true here] on our github repo.&lt;br /&gt;
&lt;br /&gt;
== Safety ==&lt;br /&gt;
&#039;&#039;&#039;There is a [https://somakeit.org.uk/laser-induction/ laser cutter risk assessment] which should be read and understood by all laser operators.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Significant safety points to note ===&lt;br /&gt;
*Before using the machine you must have a fire safety plan in case of the worst.  This includes checking:&lt;br /&gt;
**Checking the fire extinguisher and fire blanket are next to the machine&lt;br /&gt;
**The area around the machine is tidy and clear of debris&lt;br /&gt;
**The machine appears to be working and is clear of debris&lt;br /&gt;
**You are aware of the makerspace fire safety rules&lt;br /&gt;
*The laser must NEVER be left unattended.&lt;br /&gt;
*The extraction system must &#039;&#039;&#039;always&#039;&#039;&#039; be used else the machine will be damaged. The switch is behind the machine on the wall.&lt;br /&gt;
*Only those who have had official training AND who are members of the space may use the machine.  If non members want to have something cut they can ask a member with training to do it for them.&lt;br /&gt;
*You must only use materials that have been approved for use on the machine (see materials).  If in doubt ask [[User:Daverowntree|Dave Rowntree]].&lt;br /&gt;
If in doubt of any aspect of the machine or you suspect something is not working as it should immediately contact the trustees for assistance and do not continue to use the machine.&lt;br /&gt;
&lt;br /&gt;
== Materials ==&lt;br /&gt;
It is important to only laser materials we are certain will not result in harm to yourself and other space users or damage to the machine. To this end in order to cut a material that SoMakeIt have not previously investigated you must follow this process:&lt;br /&gt;
*Check we don&#039;t know about the material below and ask in the #laser-cutter channel on slack.&lt;br /&gt;
*Do research to insure that this is a material other maker spaces have used successfully.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not be harmful to space users.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not damage the laser cutter.&lt;br /&gt;
*Present this research to a laser trainer (ideally in the #laser-cutter slack channel).&lt;br /&gt;
&lt;br /&gt;
=== OK to cut ===&lt;br /&gt;
Acrylic (a.k.a. PMMA, Plexiglass, or Lexan) up to about 6-8 mm; 10 mm is doable. Wood ideally &#039;laser&#039; play or &#039;laser&#039; mdf, oily woods are much more likely to burn so testing is advised. Card and paper can be cut with very low power, or pulsed laser control. Air assist will help prevent fires....but it is tricky. Natural fabrics and genuine leather.&lt;br /&gt;
&lt;br /&gt;
=== NEVER CUT ===&lt;br /&gt;
*Any material you have not researched and had cleared by a laser trainer (see above).&lt;br /&gt;
*Fake leather (this may contain PVC).&lt;br /&gt;
*Polycarbonate (it just burns and produces lots of smoke and fumes).&lt;br /&gt;
*PVC, as it burns horribly and releases chlorine. Fumes will quickly destroy laser lens and mirrors.&lt;br /&gt;
&lt;br /&gt;
=== Engraving ===&lt;br /&gt;
Acrylic plastic, wood, slate, and glass can be engraved.  Anodized aluminium can be engraved; other metals need to be coated with laser engraving spray or plaster/ipa mix (talk to Holly!).&lt;br /&gt;
&lt;br /&gt;
=== Note ===&lt;br /&gt;
Remembers the space does have a [http://www.silhouetteamerica.com/shop/machines/portrait small vinyl cutter] that can do thin pvc/vinyl and other stuff that should not be cut on the laser.  This will actually do a good job on paper without any burning issues and should be considered as an alternative machine for paper cutting.&lt;br /&gt;
&lt;br /&gt;
== Machine Specifications and Manual ==&lt;br /&gt;
We have an HPC 1290 laser kindly donated to us by Southampton University&lt;br /&gt;
&lt;br /&gt;
Datasheet: https://hpclaser.co.uk/wp-content/uploads/2023/04/LS1290-PRO-Data-Sheet-2021f.pdf&lt;br /&gt;
&lt;br /&gt;
=== Manufacturers Specification ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|Cutting area&lt;br /&gt;
|1200mm x 900mm (slightly reduced for engraving)&lt;br /&gt;
|-&lt;br /&gt;
|Engraving speed &lt;br /&gt;
|Upto 400/sec (Faster = less quality)&lt;br /&gt;
|-&lt;br /&gt;
|Laser source&lt;br /&gt;
|Water cooled CO2 gas filled glass tube&lt;br /&gt;
|-&lt;br /&gt;
|Cooling system&lt;br /&gt;
|Compressor Based water chiller&lt;br /&gt;
|-&lt;br /&gt;
|Z axis (table height)&lt;br /&gt;
|230mm&lt;br /&gt;
|-&lt;br /&gt;
|Fume extraction&lt;br /&gt;
|Extractor to outside&lt;br /&gt;
|-&lt;br /&gt;
|Air assist compressor&lt;br /&gt;
|Yes&lt;br /&gt;
|-&lt;br /&gt;
|Connectivity&lt;br /&gt;
|PC or USB&lt;br /&gt;
|-&lt;br /&gt;
|Software&lt;br /&gt;
|Lightburn (Most vector and image types supported) &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
The process for getting laser trained:&lt;br /&gt;
*Become a member of So Make It&lt;br /&gt;
&lt;br /&gt;
*Request laser training on Slack in the #laser-cutter channel&lt;br /&gt;
&lt;br /&gt;
*Wait for contact from your laser trainer.&lt;br /&gt;
*See [[Laser Cutter Training]] for an overview of the training&lt;br /&gt;
*Pay the fee&lt;br /&gt;
&lt;br /&gt;
== Costs ==&lt;br /&gt;
We are charging everyone a £20 upfront fee for starting to use the cutter paid at your training session.  This does not go to the trainer but is to quickly build up a war chest of funds for inevitable part replacement in the future.&lt;br /&gt;
&lt;br /&gt;
We are also charging 15p per minute of laser time, rounded up, you can see the preview to get an estimated cost.  We are running this on an honour system same as the 3d printers; you can pay the fees in cash into the pink cashbox, via the card reader or via bank transfer. See [[Paying the space]] for more info.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=416</id>
		<title>Laser Cutter</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=416"/>
		<updated>2026-01-07T20:23:44Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Fill in model number&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Rapid Prototyping&lt;br /&gt;
| manufacturer = Unknown&lt;br /&gt;
| model = HPC 1290&lt;br /&gt;
|induction_link=https://somakeit.org.uk/laser-induction/}}&lt;br /&gt;
So Make It finally has one of the most important machines a makerspace needs; a laser cutter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;It can only be used by members who have [https://somakeit.org.uk/laser-induction/ completed the official laser training.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Due to the nature of the machine strict adherence to safety must be maintained and any transgressions with safety will be dealt with switftly and harshly.  The machine is also the most expensive item in the unit so great care must be used to treat it well.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Organisation and acquiring and commissioning the laser was done on [https://trello.com/b/0gzSlAqb/laser-cutter our trello board] and much more information can be found there.  A report on the purchase of the machine can be viewed [https://github.com/somakeit/laser-cutter/blob/master/Laser%20Cutter%20Review.docx?raw=true here] on our github repo.&lt;br /&gt;
&lt;br /&gt;
== Safety ==&lt;br /&gt;
&#039;&#039;&#039;There is a [https://somakeit.org.uk/laser-induction/ laser cutter risk assessment] which should be read and understood by all laser operators.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Significant safety points to note ===&lt;br /&gt;
*Before using the machine you must have a fire safety plan in case of the worst.  This includes checking:&lt;br /&gt;
**Checking the fire extinguisher and fire blanket are next to the machine&lt;br /&gt;
**The area around the machine is tidy and clear of debris&lt;br /&gt;
**The machine appears to be working and is clear of debris&lt;br /&gt;
**You are aware of the makerspace fire safety rules&lt;br /&gt;
*The laser must NEVER be left unattended.&lt;br /&gt;
*The extraction system must &#039;&#039;&#039;always&#039;&#039;&#039; be used else the machine will be damaged. The switch is behind the machine on the wall.&lt;br /&gt;
*Only those who have had official training AND who are members of the space may use the machine.  If non members want to have something cut they can ask a member with training to do it for them.&lt;br /&gt;
*You must only use materials that have been approved for use on the machine (see materials).  If in doubt ask [[User:Daverowntree|Dave Rowntree]].&lt;br /&gt;
If in doubt of any aspect of the machine or you suspect something is not working as it should immediately contact the trustees for assistance and do not continue to use the machine.&lt;br /&gt;
&lt;br /&gt;
== Materials ==&lt;br /&gt;
It is important to only laser materials we are certain will not result in harm to yourself and other space users or damage to the machine. To this end in order to cut a material that SoMakeIt have not previously investigated you must follow this process:&lt;br /&gt;
*Check we don&#039;t know about the material below and ask in the #laser-cutter channel on slack.&lt;br /&gt;
*Do research to insure that this is a material other maker spaces have used successfully.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not be harmful to space users.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not damage the laser cutter.&lt;br /&gt;
*Present this research to a laser trainer (ideally in the #laser-cutter slack channel).&lt;br /&gt;
&lt;br /&gt;
=== OK to cut ===&lt;br /&gt;
Acrylic (a.k.a. PMMA, Plexiglass, or Lexan) up to about 6-8 mm; 10 mm is doable. Wood ideally &#039;laser&#039; play or &#039;laser&#039; mdf, oily woods are much more likely to burn so testing is advised. Card and paper can be cut with very low power, or pulsed laser control. Air assist will help prevent fires....but it is tricky. Natural fabrics and genuine leather.&lt;br /&gt;
&lt;br /&gt;
=== NEVER CUT ===&lt;br /&gt;
*Any material you have not researched and had cleared by a laser trainer (see above).&lt;br /&gt;
*Fake leather (this may contain PVC).&lt;br /&gt;
*Polycarbonate (it just burns and produces lots of smoke and fumes).&lt;br /&gt;
*PVC, as it burns horribly and releases chlorine. Fumes will quickly destroy laser lens and mirrors.&lt;br /&gt;
&lt;br /&gt;
=== Engraving ===&lt;br /&gt;
Acrylic plastic, wood, slate, and glass can be engraved.  Anodized aluminium can be engraved; other metals need to be coated with laser engraving spray or plaster/ipa mix (talk to Holly!).&lt;br /&gt;
&lt;br /&gt;
=== Note ===&lt;br /&gt;
Remembers the space does have a [http://www.silhouetteamerica.com/shop/machines/portrait small vinyl cutter] that can do thin pvc/vinyl and other stuff that should not be cut on the laser.  This will actually do a good job on paper without any burning issues and should be considered as an alternative machine for paper cutting.&lt;br /&gt;
&lt;br /&gt;
== Machine Specifications and Manual ==&lt;br /&gt;
We have an HPC 1290 laser kindly donated to us by Southampton University&lt;br /&gt;
&lt;br /&gt;
Datasheet: https://hpclaser.co.uk/wp-content/uploads/2023/04/LS1290-PRO-Data-Sheet-2021f.pdf&lt;br /&gt;
&lt;br /&gt;
=== Manufacturers Specification ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|Cutting area&lt;br /&gt;
|1200mm x 900mm (slightly reduced for engraving)&lt;br /&gt;
|-&lt;br /&gt;
|Engraving speed &lt;br /&gt;
|Upto 400/sec (Faster = less quality)&lt;br /&gt;
|-&lt;br /&gt;
|Laser source&lt;br /&gt;
|Water cooled CO2 gas filled glass tube&lt;br /&gt;
|-&lt;br /&gt;
|Cooling system&lt;br /&gt;
|Compressor Based water chiller&lt;br /&gt;
|-&lt;br /&gt;
|Z axis (table height)&lt;br /&gt;
|230mm&lt;br /&gt;
|-&lt;br /&gt;
|Fume extraction&lt;br /&gt;
|Extractor to outside&lt;br /&gt;
|-&lt;br /&gt;
|Air assist compressor&lt;br /&gt;
|Yes&lt;br /&gt;
|-&lt;br /&gt;
|Connectivity&lt;br /&gt;
|PC or USB&lt;br /&gt;
|-&lt;br /&gt;
|Software&lt;br /&gt;
|Lightburn (Most vector and image types supported) &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
The process for getting laser trained:&lt;br /&gt;
*Become a member of So Make It&lt;br /&gt;
&lt;br /&gt;
*Request laser training on Slack in the #laser-cutter channel&lt;br /&gt;
&lt;br /&gt;
*Wait for contact from your laser trainer.&lt;br /&gt;
*See [[Laser Cutter Training]] for an overview of the training&lt;br /&gt;
*Pay the fee&lt;br /&gt;
&lt;br /&gt;
== Costs ==&lt;br /&gt;
We are charging everyone a £20 upfront fee for starting to use the cutter paid at your training session.  This does not go to the trainer but is to quickly build up a war chest of funds for inevitable part replacement in the future.&lt;br /&gt;
&lt;br /&gt;
We are also charging 15p per minute of laser time, rounded up, you can see the preview to get an estimated cost.  We are running this on an honour system same as the 3d printers; you can pay the fees in cash into the pink cashbox, via the card reader or via bank transfer. See [[Paying the space]] for more info.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=415</id>
		<title>Laser Cutter</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=415"/>
		<updated>2026-01-07T20:22:26Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Replace page title headings with standard headings&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Rapid Prototyping&lt;br /&gt;
| manufacturer = Unknown&lt;br /&gt;
| model = Unknown&lt;br /&gt;
|induction_link=https://somakeit.org.uk/laser-induction/}}&lt;br /&gt;
So Make It finally has one of the most important machines a makerspace needs; a laser cutter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;It can only be used by members who have [https://somakeit.org.uk/laser-induction/ completed the official laser training.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Due to the nature of the machine strict adherence to safety must be maintained and any transgressions with safety will be dealt with switftly and harshly.  The machine is also the most expensive item in the unit so great care must be used to treat it well.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Organisation and acquiring and commissioning the laser was done on [https://trello.com/b/0gzSlAqb/laser-cutter our trello board] and much more information can be found there.  A report on the purchase of the machine can be viewed [https://github.com/somakeit/laser-cutter/blob/master/Laser%20Cutter%20Review.docx?raw=true here] on our github repo.&lt;br /&gt;
&lt;br /&gt;
== Safety ==&lt;br /&gt;
&#039;&#039;&#039;There is a [https://somakeit.org.uk/laser-induction/ laser cutter risk assessment] which should be read and understood by all laser operators.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Significant safety points to note ===&lt;br /&gt;
*Before using the machine you must have a fire safety plan in case of the worst.  This includes checking:&lt;br /&gt;
**Checking the fire extinguisher and fire blanket are next to the machine&lt;br /&gt;
**The area around the machine is tidy and clear of debris&lt;br /&gt;
**The machine appears to be working and is clear of debris&lt;br /&gt;
**You are aware of the makerspace fire safety rules&lt;br /&gt;
*The laser must NEVER be left unattended.&lt;br /&gt;
*The extraction system must &#039;&#039;&#039;always&#039;&#039;&#039; be used else the machine will be damaged. The switch is behind the machine on the wall.&lt;br /&gt;
*Only those who have had official training AND who are members of the space may use the machine.  If non members want to have something cut they can ask a member with training to do it for them.&lt;br /&gt;
*You must only use materials that have been approved for use on the machine (see materials).  If in doubt ask [[User:Daverowntree|Dave Rowntree]].&lt;br /&gt;
If in doubt of any aspect of the machine or you suspect something is not working as it should immediately contact the trustees for assistance and do not continue to use the machine.&lt;br /&gt;
&lt;br /&gt;
== Materials ==&lt;br /&gt;
It is important to only laser materials we are certain will not result in harm to yourself and other space users or damage to the machine. To this end in order to cut a material that SoMakeIt have not previously investigated you must follow this process:&lt;br /&gt;
*Check we don&#039;t know about the material below and ask in the #laser-cutter channel on slack.&lt;br /&gt;
*Do research to insure that this is a material other maker spaces have used successfully.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not be harmful to space users.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not damage the laser cutter.&lt;br /&gt;
*Present this research to a laser trainer (ideally in the #laser-cutter slack channel).&lt;br /&gt;
&lt;br /&gt;
=== OK to cut ===&lt;br /&gt;
Acrylic (a.k.a. PMMA, Plexiglass, or Lexan) up to about 6-8 mm; 10 mm is doable. Wood ideally &#039;laser&#039; play or &#039;laser&#039; mdf, oily woods are much more likely to burn so testing is advised. Card and paper can be cut with very low power, or pulsed laser control. Air assist will help prevent fires....but it is tricky. Natural fabrics and genuine leather.&lt;br /&gt;
&lt;br /&gt;
=== NEVER CUT ===&lt;br /&gt;
*Any material you have not researched and had cleared by a laser trainer (see above).&lt;br /&gt;
*Fake leather (this may contain PVC).&lt;br /&gt;
*Polycarbonate (it just burns and produces lots of smoke and fumes).&lt;br /&gt;
*PVC, as it burns horribly and releases chlorine. Fumes will quickly destroy laser lens and mirrors.&lt;br /&gt;
&lt;br /&gt;
=== Engraving ===&lt;br /&gt;
Acrylic plastic, wood, slate, and glass can be engraved.  Anodized aluminium can be engraved; other metals need to be coated with laser engraving spray or plaster/ipa mix (talk to Holly!).&lt;br /&gt;
&lt;br /&gt;
=== Note ===&lt;br /&gt;
Remembers the space does have a [http://www.silhouetteamerica.com/shop/machines/portrait small vinyl cutter] that can do thin pvc/vinyl and other stuff that should not be cut on the laser.  This will actually do a good job on paper without any burning issues and should be considered as an alternative machine for paper cutting.&lt;br /&gt;
&lt;br /&gt;
== Machine Specifications and Manual ==&lt;br /&gt;
We have an HPC 1290 laser kindly donated to us by Southampton University&lt;br /&gt;
&lt;br /&gt;
Datasheet: https://hpclaser.co.uk/wp-content/uploads/2023/04/LS1290-PRO-Data-Sheet-2021f.pdf&lt;br /&gt;
&lt;br /&gt;
=== Manufacturers Specification ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|Cutting area&lt;br /&gt;
|1200mm x 900mm (slightly reduced for engraving)&lt;br /&gt;
|-&lt;br /&gt;
|Engraving speed &lt;br /&gt;
|Upto 400/sec (Faster = less quality)&lt;br /&gt;
|-&lt;br /&gt;
|Laser source&lt;br /&gt;
|Water cooled CO2 gas filled glass tube&lt;br /&gt;
|-&lt;br /&gt;
|Cooling system&lt;br /&gt;
|Compressor Based water chiller&lt;br /&gt;
|-&lt;br /&gt;
|Z axis (table height)&lt;br /&gt;
|230mm&lt;br /&gt;
|-&lt;br /&gt;
|Fume extraction&lt;br /&gt;
|Extractor to outside&lt;br /&gt;
|-&lt;br /&gt;
|Air assist compressor&lt;br /&gt;
|Yes&lt;br /&gt;
|-&lt;br /&gt;
|Connectivity&lt;br /&gt;
|PC or USB&lt;br /&gt;
|-&lt;br /&gt;
|Software&lt;br /&gt;
|Lightburn (Most vector and image types supported) &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
The process for getting laser trained:&lt;br /&gt;
*Become a member of So Make It&lt;br /&gt;
&lt;br /&gt;
*Request laser training on Slack in the #laser-cutter channel&lt;br /&gt;
&lt;br /&gt;
*Wait for contact from your laser trainer.&lt;br /&gt;
*See [[Laser Cutter Training]] for an overview of the training&lt;br /&gt;
*Pay the fee&lt;br /&gt;
&lt;br /&gt;
== Costs ==&lt;br /&gt;
We are charging everyone a £20 upfront fee for starting to use the cutter paid at your training session.  This does not go to the trainer but is to quickly build up a war chest of funds for inevitable part replacement in the future.&lt;br /&gt;
&lt;br /&gt;
We are also charging 15p per minute of laser time, rounded up, you can see the preview to get an estimated cost.  We are running this on an honour system same as the 3d printers; you can pay the fees in cash into the pink cashbox, via the card reader or via bank transfer. See [[Paying the space]] for more info.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Suppliers&amp;diff=389</id>
		<title>Suppliers</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Suppliers&amp;diff=389"/>
		<updated>2025-11-18T22:17:47Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Mark Zoro as closed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;List of suppliers for various materials, tools and equipment you may need for hacking.&lt;br /&gt;
&lt;br /&gt;
== Materials ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Supplier&lt;br /&gt;
!Good for materials&lt;br /&gt;
!Website&lt;br /&gt;
!Contact details&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|Westfield Fasteners&lt;br /&gt;
|Fastenings, bolts, screws, nuts, washers&lt;br /&gt;
|h[https://www.westfieldfasteners.co.uk/ ttps://www.westfieldfasteners.co.uk/]&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;Westfield Fasteners the UK supplier of ISO metric, UNC &amp;amp; UNF threaded fasteners. Thousands of products available online | Buy screws, nuts and bolts, washers&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| TC Fixings&lt;br /&gt;
|Fixings&lt;br /&gt;
|[https://tcfixings.co.uk tcfixings.co.uk]&lt;br /&gt;
|&lt;br /&gt;
|Established in 1996, TC Fixings has grown from a small start-up, concentrating on the supply of fixings and fasteners, into a mature company with wide product choice, knowledgeable staff and a large showroom and stores. Located in Saffron Walden, Essex, TC Fixings offers a free van delivery service to the surrounding area and a free carrier service for the rest of the United Kingdom on orders over £100&lt;br /&gt;
|-&lt;br /&gt;
|Spalding Fasteners&lt;br /&gt;
|Nuts, bolts, screws, rivets&lt;br /&gt;
|[https://spaldingfasteners.co.uk spaldingfasteners.co.uk]&lt;br /&gt;
|&lt;br /&gt;
|Spalding Fasteners - Nuts, Bolts, Screws, Rivets etc. Low prices, fast delivery&lt;br /&gt;
|-&lt;br /&gt;
|Wickes&lt;br /&gt;
|DIY materials and tools, sheet wood, timber&lt;br /&gt;
|https://www.wickes.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;s&amp;gt;Southampton Wood Recycling Project&amp;lt;/s&amp;gt;&lt;br /&gt;
|&amp;lt;s&amp;gt;All sorts of recylced wood, pallets, scaffold boards, sheets&amp;lt;/s&amp;gt;&lt;br /&gt;
|&amp;lt;s&amp;gt;https://southamptonwoodrecycling.org.uk/&amp;lt;/s&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Now ceased trading.&lt;br /&gt;
|-&lt;br /&gt;
|Arnwood Timber&lt;br /&gt;
|Hardwood, softwood in various shapes and sizes, friendly to hobby woodworkers. Can plane and cut down large pieces.&lt;br /&gt;
| https://www.arnwoodtimber.co.uk/&lt;br /&gt;
|61 Millbrook Rd East&lt;br /&gt;
Southampton&lt;br /&gt;
SO15 1HN&lt;br /&gt;
Tel: +44 (0)23 8023 2327&lt;br /&gt;
&lt;br /&gt;
Email: sales@arnwoodtimber.co.uk&lt;br /&gt;
|Lots of choice for woods, many hardwoods and will cut large pieces down for you. Just down the road from the space.&lt;br /&gt;
&lt;br /&gt;
Also sell woodworking tools, nuts, bolts etc&lt;br /&gt;
|-&lt;br /&gt;
|M-Machine&lt;br /&gt;
|Aluminium, Brass, Phosphor Bronze, Copper, Colphos, Cast Iron&lt;br /&gt;
Silver Steel, Engineering Steel, Spring Steel, Stainless Steel&lt;br /&gt;
&lt;br /&gt;
Key Steel, Tufnol and Plastics&lt;br /&gt;
|http://www.m-machine-metals.co.uk/&lt;br /&gt;
|01325 381302 / metals@m-machine.co.uk&lt;br /&gt;
|Check the catalogue, email them what you want, and ask to pay by bank transfer.&lt;br /&gt;
Reliably get orders right&lt;br /&gt;
|-&lt;br /&gt;
|Metals4U&lt;br /&gt;
|Aluminium, Brass, Phosphor Bronze, Copper, Cast Iron&lt;br /&gt;
Silver Steel, Mild Steel, Stainless Steel&lt;br /&gt;
&lt;br /&gt;
Plastics&lt;br /&gt;
|https://www.metals4u.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Lots of choice, though they have occasionally missed items&lt;br /&gt;
|-&lt;br /&gt;
|Metal Supermarket&lt;br /&gt;
|Aluminium, Brass, Phosphor Bronze, Copper, Cast Iron&lt;br /&gt;
Silver Steel, Mild Steel, Stainless Steel&lt;br /&gt;
&lt;br /&gt;
Plastics&lt;br /&gt;
|https://www.metalsupermarkets.co.uk&lt;br /&gt;
|0238 022 0999&lt;br /&gt;
Unit 16 Mount Pleasant Industrial Estate, Mount Pleasant Road, SO14 0SP&lt;br /&gt;
|Shop on the Itchen, and online shop.&lt;br /&gt;
They do ship, or allow collection.&lt;br /&gt;
|-&lt;br /&gt;
|Smiths Metal Centres&lt;br /&gt;
|All the metal&lt;br /&gt;
All the plastics&lt;br /&gt;
|https://www.smithmetal.com/&lt;br /&gt;
|&lt;br /&gt;
|Email only, but if they don&#039;t stock the alloy or plastic you want, you probably don&#039;t need it.&lt;br /&gt;
|-&lt;br /&gt;
|ACCU &lt;br /&gt;
|Stainless steel screws and other hardware&lt;br /&gt;
|https://www.accu.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Screwfix&lt;br /&gt;
|Screws, Tools, Building trade materials&lt;br /&gt;
|https://www.screwfix.com/&lt;br /&gt;
|&lt;br /&gt;
|Same day collection avaliable on most items&lt;br /&gt;
|-&lt;br /&gt;
|Plastics online&lt;br /&gt;
|Plastic sheet for laser cutting&lt;br /&gt;
|https://plasticonline.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Electronics==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Supplier&lt;br /&gt;
!Good for&lt;br /&gt;
!Website&lt;br /&gt;
!Contact details&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|The Pi Hut&lt;br /&gt;
|SBC, Microprocessors, compatible components, cases and add on boards&lt;br /&gt;
|https://thepihut.com/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Pimoroni&lt;br /&gt;
|SBC, Microprocessors, compatible components, cases and add on boards&lt;br /&gt;
|https://shop.pimoroni.com/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|RS&lt;br /&gt;
|Electronic components, fasteners&lt;br /&gt;
|[https://uk.rs-online.com uk.rs-online.com]&lt;br /&gt;
|&lt;br /&gt;
|RS is the leading provider of industrial and electronic solutions. Secure online ordering, same-day dispatch &amp;amp; free delivery available. &lt;br /&gt;
|-&lt;br /&gt;
| Rapid Electronics&lt;br /&gt;
|Electronic components&lt;br /&gt;
|https://www.rapidonline.com&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Farnell/CPC&lt;br /&gt;
|Electronic components, test gear, microcontrollers&lt;br /&gt;
|https://uk.farnell.com&amp;lt;nowiki/&amp;gt;https://cpc.farnell.com&lt;br /&gt;
|&lt;br /&gt;
|Despite being owned by the same company, the prices can be somewhat different. Check CPC, it&#039;s often cheaper. CPC alsohave a lower free shipping threshold. (If you are staff/student at the uni use [https://onecall.farnell.com onecall.farnell.com] to order from both at the same time)&lt;br /&gt;
|-&lt;br /&gt;
| Digikey&lt;br /&gt;
|Electronic components&lt;br /&gt;
|https://www.digikey.co.uk&lt;br /&gt;
|&lt;br /&gt;
|US based large scale electronics distributor has a larger range than RS/Farnell £33 order volume for free shipping. Will ship with taxes/duties paid so no issues with this being non uk.&lt;br /&gt;
|-&lt;br /&gt;
|Mouser&lt;br /&gt;
|Electronic components&lt;br /&gt;
|https://www.mouser.co.uik&lt;br /&gt;
|&lt;br /&gt;
|The other Large US based components distributor, will also ship to the uk DDP.&lt;br /&gt;
|-&lt;br /&gt;
|LCSC&lt;br /&gt;
|Electronic components&lt;br /&gt;
|https://www.lcsc.com/&lt;br /&gt;
|&lt;br /&gt;
|China based parts distributor, it has most common components and also stocks a range for china only parts, prices for the china only parts can be cheaper for many of these compared to similar parts from other suppliers (Also used as the supplier for JLC PCB assembly orders)&lt;br /&gt;
|-&lt;br /&gt;
|Component shop&lt;br /&gt;
|Batteries, and asociated cabling &lt;br /&gt;
|https://www.componentshop.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Equipment and Tools==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Supplier&lt;br /&gt;
!Good for&lt;br /&gt;
!Website&lt;br /&gt;
!Contact details&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;s&amp;gt;Zoro&amp;lt;/s&amp;gt;&lt;br /&gt;
| &amp;lt;s&amp;gt;Measuring equipment, hand tools, HSS blanks, fasteners, pipe clips, abrasives, boxes&amp;lt;/s&amp;gt;&lt;br /&gt;
|&amp;lt;s&amp;gt;https://www.zoro.co.uk/&amp;lt;/s&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;s&amp;gt;General supplier of tools of various branded tools (UK opperations closed Nov-2025)&amp;lt;/s&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Cromwell&lt;br /&gt;
|Measuring equipment, hand tools, HSS blanks, fasteners, pipe clips, abrasives, boxes&lt;br /&gt;
|https://www.cromwell.co.uk&lt;br /&gt;
|&lt;br /&gt;
| General supplier of tools of various branded tools&lt;br /&gt;
|-&lt;br /&gt;
|H Roberts&lt;br /&gt;
|Measuring equipment&lt;br /&gt;
|https://www.hroberts-di.com&lt;br /&gt;
|&lt;br /&gt;
|Supplier of metrology equipment, mostly Mitutoyo, Moore and Wright, etc&lt;br /&gt;
|-&lt;br /&gt;
|Machine DRO &lt;br /&gt;
|Digital Readout units, slides and other measuring equipment&lt;br /&gt;
|https://www.machine-dro.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Cutwel&lt;br /&gt;
|Metalworking tools, endmills, inserts, measuring equipment&lt;br /&gt;
|https://www.cutwel.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Generally more expensive, and higher quality &lt;br /&gt;
|-&lt;br /&gt;
|RDG Tools&lt;br /&gt;
|Metalworking tools, endmills, inserts, measuring equipment&lt;br /&gt;
|https://www.rdgtools.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Quality is fine, they have inserts for the larger Harrison tooling&lt;br /&gt;
|-&lt;br /&gt;
|Arc Euro Trade&lt;br /&gt;
|Metalworking tools, endmills, inserts, measuring equipment, mini-lathe parts&lt;br /&gt;
|https://www.arceurotrade.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Quality is fine, they have smaller lathe inserts, and reasonable endmills&lt;br /&gt;
|-&lt;br /&gt;
|APT&lt;br /&gt;
|Metalworking tools, endmills, inserts&lt;br /&gt;
|https://www.shop-apt.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Good quality, though generally more expensive. Between Arc and Cutwel&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Suppliers&amp;diff=329</id>
		<title>Suppliers</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Suppliers&amp;diff=329"/>
		<updated>2025-06-08T11:19:28Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added a range of suppliers from my project ordering history&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;List of suppliers for various materials, tools and equipment you may need for hacking.&lt;br /&gt;
&lt;br /&gt;
== Materials ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Supplier&lt;br /&gt;
!Good for materials&lt;br /&gt;
!Website&lt;br /&gt;
!Contact details&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|Westfield Fasteners&lt;br /&gt;
|Fastenings, bolts, screws, nuts, washers&lt;br /&gt;
|h[https://www.westfieldfasteners.co.uk/ ttps://www.westfieldfasteners.co.uk/]&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;nowiki&amp;gt;Westfield Fasteners the UK supplier of ISO metric, UNC &amp;amp; UNF threaded fasteners. Thousands of products available online | Buy screws, nuts and bolts, washers&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| TC Fixings&lt;br /&gt;
|Fixings&lt;br /&gt;
|[https://tcfixings.co.uk tcfixings.co.uk]&lt;br /&gt;
|&lt;br /&gt;
|Established in 1996, TC Fixings has grown from a small start-up, concentrating on the supply of fixings and fasteners, into a mature company with wide product choice, knowledgeable staff and a large showroom and stores. Located in Saffron Walden, Essex, TC Fixings offers a free van delivery service to the surrounding area and a free carrier service for the rest of the United Kingdom on orders over £100&lt;br /&gt;
|-&lt;br /&gt;
|Spalding Fasteners&lt;br /&gt;
|Nuts, bolts, screws, rivets&lt;br /&gt;
|[https://spaldingfasteners.co.uk spaldingfasteners.co.uk]&lt;br /&gt;
|&lt;br /&gt;
|Spalding Fasteners - Nuts, Bolts, Screws, Rivets etc. Low prices, fast delivery&lt;br /&gt;
|-&lt;br /&gt;
|Wickes&lt;br /&gt;
|DIY materials and tools, sheet wood, timber&lt;br /&gt;
|https://www.wickes.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;s&amp;gt;Southampton Wood Recycling Project&amp;lt;/s&amp;gt;&lt;br /&gt;
|&amp;lt;s&amp;gt;All sorts of recylced wood, pallets, scaffold boards, sheets&amp;lt;/s&amp;gt;&lt;br /&gt;
|&amp;lt;s&amp;gt;https://southamptonwoodrecycling.org.uk/&amp;lt;/s&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Now ceased trading.&lt;br /&gt;
|-&lt;br /&gt;
|M-Machine&lt;br /&gt;
|Aluminium, Brass, Phosphor Bronze, Copper, Colphos, Cast Iron&lt;br /&gt;
Silver Steel, Engineering Steel, Spring Steel, Stainless Steel&lt;br /&gt;
&lt;br /&gt;
Key Steel, Tufnol and Plastics&lt;br /&gt;
|http://www.m-machine-metals.co.uk/&lt;br /&gt;
|01325 381302 / metals@m-machine.co.uk&lt;br /&gt;
|Check the catalogue, email them what you want, and ask to pay by bank transfer.&lt;br /&gt;
Reliably get orders right&lt;br /&gt;
|-&lt;br /&gt;
|Metals4U&lt;br /&gt;
|Aluminium, Brass, Phosphor Bronze, Copper, Cast Iron&lt;br /&gt;
Silver Steel, Mild Steel, Stainless Steel&lt;br /&gt;
&lt;br /&gt;
Plastics&lt;br /&gt;
|https://www.metals4u.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Lots of choice, though they have occasionally missed items&lt;br /&gt;
|-&lt;br /&gt;
|Metal Supermarket&lt;br /&gt;
|Aluminium, Brass, Phosphor Bronze, Copper, Cast Iron&lt;br /&gt;
Silver Steel, Mild Steel, Stainless Steel&lt;br /&gt;
&lt;br /&gt;
Plastics&lt;br /&gt;
|https://www.metalsupermarkets.co.uk&lt;br /&gt;
|0238 022 0999&lt;br /&gt;
Unit 16 Mount Pleasant Industrial Estate, Mount Pleasant Road, SO14 0SP&lt;br /&gt;
|Shop on the Itchen, and online shop.&lt;br /&gt;
They do ship, or allow collection.&lt;br /&gt;
|-&lt;br /&gt;
|Smiths Metal Centres&lt;br /&gt;
|All the metal&lt;br /&gt;
All the plastics&lt;br /&gt;
|https://www.smithmetal.com/&lt;br /&gt;
|&lt;br /&gt;
|Email only, but if they don&#039;t stock the alloy or plastic you want, you probably don&#039;t need it.&lt;br /&gt;
|-&lt;br /&gt;
|ACCU&lt;br /&gt;
|Stainless steel screws and other hardware&lt;br /&gt;
|https://www.accu.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Screwfix&lt;br /&gt;
|Screws, Tools, Building trade materials&lt;br /&gt;
|https://www.screwfix.com/&lt;br /&gt;
|&lt;br /&gt;
|Same day collection avaliable on most items&lt;br /&gt;
|-&lt;br /&gt;
|Plastics online&lt;br /&gt;
|Plastic sheet for laser cutting&lt;br /&gt;
|https://plasticonline.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Electronics ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Supplier&lt;br /&gt;
!Good for&lt;br /&gt;
!Website&lt;br /&gt;
!Contact details&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|The Pi Hut&lt;br /&gt;
|SBC, Microprocessors, compatible components, cases and add on boards&lt;br /&gt;
|https://thepihut.com/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Pimoroni&lt;br /&gt;
|SBC, Microprocessors, compatible components, cases and add on boards&lt;br /&gt;
|https://shop.pimoroni.com/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|RS&lt;br /&gt;
|Electronic components, fasteners&lt;br /&gt;
|[https://uk.rs-online.com uk.rs-online.com]&lt;br /&gt;
|&lt;br /&gt;
|RS is the leading provider of industrial and electronic solutions. Secure online ordering, same-day dispatch &amp;amp; free delivery available.&lt;br /&gt;
|-&lt;br /&gt;
|Rapid Electronics&lt;br /&gt;
|Electronic components&lt;br /&gt;
|https://www.rapidonline.com&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Farnell/CPC&lt;br /&gt;
|Electronic components, test gear, microcontrollers&lt;br /&gt;
|https://uk.farnell.com&amp;lt;nowiki/&amp;gt;https://cpc.farnell.com&lt;br /&gt;
|&lt;br /&gt;
|Despite being owned by the same company, the prices can be somewhat different. Check CPC, it&#039;s often cheaper. CPC alsohave a lower free shipping threshold. (If you are staff/student at the uni use [https://onecall.farnell.com onecall.farnell.com] to order from both at the same time)&lt;br /&gt;
|-&lt;br /&gt;
|Digikey&lt;br /&gt;
|Electronic components&lt;br /&gt;
|https://www.digikey.co.uk &lt;br /&gt;
|&lt;br /&gt;
|US based large scale electronics distributor has a larger range than RS/Farnell £33 order volume for free shipping. Will ship with taxes/duties paid so no issues with this being non uk.&lt;br /&gt;
|-&lt;br /&gt;
|Mouser&lt;br /&gt;
|Electronic components&lt;br /&gt;
|https://www.mouser.co.uik &lt;br /&gt;
|&lt;br /&gt;
|The other Large US based components distributor, will also ship to the uk DDP.&lt;br /&gt;
|-&lt;br /&gt;
|LCSC&lt;br /&gt;
|Electronic components&lt;br /&gt;
|https://www.lcsc.com/&lt;br /&gt;
|&lt;br /&gt;
|China based parts distributor, it has most common components and also stocks a range for china only parts, prices for the china only parts can be cheaper for many of these compared to similar parts from other suppliers (Also used as the supplier for JLC PCB assembly orders)&lt;br /&gt;
|-&lt;br /&gt;
|Component shop&lt;br /&gt;
|Batteries, and asociated cabling&lt;br /&gt;
|https://www.componentshop.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Equipment and Tools ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Supplier&lt;br /&gt;
!Good for&lt;br /&gt;
!Website&lt;br /&gt;
!Contact details&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|Zoro&lt;br /&gt;
|Measuring equipment, hand tools, HSS blanks, fasteners, pipe clips, abrasives, boxes&lt;br /&gt;
|https://www.zoro.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|General supplier of tools of various branded tools&lt;br /&gt;
|-&lt;br /&gt;
|Cromwell&lt;br /&gt;
|Measuring equipment, hand tools, HSS blanks, fasteners, pipe clips, abrasives, boxes&lt;br /&gt;
|https://www.cromwell.co.uk&lt;br /&gt;
|&lt;br /&gt;
|General supplier of tools of various branded tools&lt;br /&gt;
|-&lt;br /&gt;
|H Roberts&lt;br /&gt;
|Measuring equipment&lt;br /&gt;
|https://www.hroberts-di.com&lt;br /&gt;
|&lt;br /&gt;
|Supplier of metrology equipment, mostly Mitutoyo, Moore and Wright, etc&lt;br /&gt;
|-&lt;br /&gt;
|Machine DRO&lt;br /&gt;
|Digital Readout units, slides and other measuring equipment&lt;br /&gt;
|https://www.machine-dro.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Cutwel&lt;br /&gt;
|Metalworking tools, endmills, inserts, measuring equipment&lt;br /&gt;
|https://www.cutwel.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Generally more expensive, and higher quality&lt;br /&gt;
|-&lt;br /&gt;
|RDG Tools&lt;br /&gt;
|Metalworking tools, endmills, inserts, measuring equipment&lt;br /&gt;
|https://www.rdgtools.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Quality is fine, they have inserts for the larger Harrison tooling&lt;br /&gt;
|-&lt;br /&gt;
|Arc Euro Trade&lt;br /&gt;
|Metalworking tools, endmills, inserts, measuring equipment, mini-lathe parts&lt;br /&gt;
|https://www.arceurotrade.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Quality is fine, they have smaller lathe inserts, and reasonable endmills&lt;br /&gt;
|-&lt;br /&gt;
|APT&lt;br /&gt;
|Metalworking tools, endmills, inserts&lt;br /&gt;
|https://www.shop-apt.co.uk/&lt;br /&gt;
|&lt;br /&gt;
|Good quality, though generally more expensive. Between Arc and Cutwel&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=ExtDoorPi&amp;diff=255</id>
		<title>ExtDoorPi</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=ExtDoorPi&amp;diff=255"/>
		<updated>2025-01-14T22:29:11Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Scorpia moved page ExtDoorPi to IT admin:ExtDoorPi&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[IT admin:ExtDoorPi]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Wood_planer&amp;diff=199</id>
		<title>Wood planer</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Wood_planer&amp;diff=199"/>
		<updated>2024-09-17T18:21:31Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add induction link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Woodworking&lt;br /&gt;
| manufacturer = KITY&lt;br /&gt;
| model = 636&lt;br /&gt;
|induction_link=https://somakeit.org.uk/kity636/}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We have a KITY 636 Planar in the workshop which requires an induction to use&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=198</id>
		<title>Laser Cutter</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Laser_Cutter&amp;diff=198"/>
		<updated>2024-09-17T18:20:50Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add induction link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Rapid Prototyping&lt;br /&gt;
| manufacturer = Unknown&lt;br /&gt;
| model = Unknown&lt;br /&gt;
|induction_link=https://somakeit.org.uk/laser-induction/}}&lt;br /&gt;
So Make It finally has one of the most important machines a makerspace needs; a laser cutter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;It can only be used by members who have [https://somakeit.org.uk/laser-induction/ completed the official laser training.]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Due to the nature of the machine strict adherence to safety must be maintained and any transgressions with safety will be dealt with switftly and harshly.  The machine is also the most expensive item in the unit so great care must be used to treat it well.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Organisation and acquiring and commissioning the laser was done on [https://trello.com/b/0gzSlAqb/laser-cutter our trello board] and much more information can be found there.  A report on the purchase of the machine can be viewed [https://github.com/somakeit/laser-cutter/blob/master/Laser%20Cutter%20Review.docx?raw=true here] on our github repo.&lt;br /&gt;
=Safety=&lt;br /&gt;
&#039;&#039;&#039;There is a [https://somakeit.org.uk/laser-induction/ laser cutter risk assessment] which should be read and understood by all laser operators.&#039;&#039;&#039;&lt;br /&gt;
==Significant safety points to note==&lt;br /&gt;
*Before using the machine you must have a fire safety plan in case of the worst.  This includes checking:&lt;br /&gt;
**Checking the fire extinguisher and fire blanket are next to the machine&lt;br /&gt;
**The area around the machine is tidy and clear of debris&lt;br /&gt;
**The machine appears to be working and is clear of debris&lt;br /&gt;
**You are aware of the makerspace fire safety rules&lt;br /&gt;
*The laser must NEVER be left unattended.&lt;br /&gt;
*The extraction system must &#039;&#039;&#039;always&#039;&#039;&#039; be used else the machine will be damaged. The switch is behind the machine on the wall.&lt;br /&gt;
*Only those who have had official training AND who are members of the space may use the machine.  If non members want to have something cut they can ask a member with training to do it for them.&lt;br /&gt;
*You must only use materials that have been approved for use on the machine (see materials).  If in doubt ask [[User:Daverowntree|Dave Rowntree]].&lt;br /&gt;
If in doubt of any aspect of the machine or you suspect something is not working as it should immediately contact the trustees for assistance and do not continue to use the machine.&lt;br /&gt;
=Materials=&lt;br /&gt;
It is important to only laser materials we are certain will not result in harm to yourself and other space users or damage to the machine. To this end in order to cut a material that SoMakeIt have not previously investigated you must follow this process:&lt;br /&gt;
*Check we don&#039;t know about the material below and ask in the #laser-cutter channel on slack.&lt;br /&gt;
*Do research to insure that this is a material other maker spaces have used successfully.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not be harmful to space users.&lt;br /&gt;
*Insure that the byproducts of vaporisation will not damage the laser cutter.&lt;br /&gt;
*Present this research to a laser trainer (ideally in the #laser-cutter slack channel).&lt;br /&gt;
==OK to cut==&lt;br /&gt;
Acrylic (a.k.a. PMMA, Plexiglass, or Lexan) up to about 6-8 mm; 10 mm is doable. Wood ideally &#039;laser&#039; play or &#039;laser&#039; mdf, oily woods are much more likely to burn so testing is advised. Card and paper can be cut with very low power, or pulsed laser control. Air assist will help prevent fires....but it is tricky. Natural fabrics and genuine leather.&lt;br /&gt;
==NEVER CUT==&lt;br /&gt;
*Any material you have not researched and had cleared by a laser trainer (see above).&lt;br /&gt;
*Fake leather (this may contain PVC).&lt;br /&gt;
*Polycarbonate (it just burns and produces lots of smoke and fumes).&lt;br /&gt;
*PVC, as it burns horribly and releases chlorine. Fumes will quickly destroy laser lens and mirrors.&lt;br /&gt;
==Engraving==&lt;br /&gt;
Acrylic plastic, wood, slate, and glass can be engraved.  Anodized aluminium can be engraved; other metals need to be coated with laser engraving spray or plaster/ipa mix (talk to Holly!).&lt;br /&gt;
==Note==&lt;br /&gt;
Remembers the space does have a [http://www.silhouetteamerica.com/shop/machines/portrait small vinyl cutter] that can do thin pvc/vinyl and other stuff that should not be cut on the laser.  This will actually do a good job on paper without any burning issues and should be considered as an alternative machine for paper cutting.&lt;br /&gt;
=Machine Specifications and Manual=&lt;br /&gt;
We have an HPC 1290 laser kindly donated to us by Southampton University&lt;br /&gt;
&lt;br /&gt;
Datasheet: https://hpclaser.co.uk/wp-content/uploads/2023/04/LS1290-PRO-Data-Sheet-2021f.pdf&lt;br /&gt;
&lt;br /&gt;
==Manufacturers Specification==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|Cutting area&lt;br /&gt;
|1200mm x 900mm (slightly reduced for engraving)&lt;br /&gt;
|-&lt;br /&gt;
|Engraving speed &lt;br /&gt;
|Upto 400/sec (Faster = less quality)&lt;br /&gt;
|-&lt;br /&gt;
|Laser source&lt;br /&gt;
|Water cooled CO2 gas filled glass tube&lt;br /&gt;
|-&lt;br /&gt;
|Cooling system&lt;br /&gt;
|Compressor Based water chiller&lt;br /&gt;
|-&lt;br /&gt;
|Z axis (table height)&lt;br /&gt;
|230mm&lt;br /&gt;
|-&lt;br /&gt;
|Fume extraction&lt;br /&gt;
|Extractor to outside&lt;br /&gt;
|-&lt;br /&gt;
|Air assist compressor&lt;br /&gt;
|Yes&lt;br /&gt;
|-&lt;br /&gt;
|Connectivity&lt;br /&gt;
|PC or USB&lt;br /&gt;
|-&lt;br /&gt;
|Software&lt;br /&gt;
|Lightburn (Most vector and image types supported) &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Training=&lt;br /&gt;
The process for getting laser trained:&lt;br /&gt;
*Become a member of So Make It&lt;br /&gt;
&lt;br /&gt;
*Request laser training on Slack in the #laser-cutter channel&lt;br /&gt;
&lt;br /&gt;
*Wait for contact from your laser trainer.&lt;br /&gt;
*See [[Laser Cutter Training]] for an overview of the training&lt;br /&gt;
*Pay the fee&lt;br /&gt;
= Costs=&lt;br /&gt;
We are charging everyone a £20 upfront fee for starting to use the cutter paid at your training session.  This does not go to the trainer but is to quickly build up a war chest of funds for inevitable part replacement in the future.&lt;br /&gt;
&lt;br /&gt;
We are also charging 15p per minute of laser time, rounded up, you can see the preview to get an estimated cost.  We are running this on an honour system same as the 3d printers; you can pay the fees in cash into the pink cashbox, via the card reader or via bank transfer. See [[Paying the space]] for more info.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=195</id>
		<title>Big CNC Machine</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=195"/>
		<updated>2024-09-17T18:19:44Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add induction page link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Machine Tools&lt;br /&gt;
|manufacturer=StyleCNC| model = STM6090&lt;br /&gt;
&lt;br /&gt;
| manual_link = http://richnc.com.cn:9092/attach?id=917&amp;amp;down=1&lt;br /&gt;
|induction_link=https://somakeit.org.uk/cnc/}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We have a CNC Machine in the workshop area of the Makerspace.&lt;br /&gt;
&lt;br /&gt;
The CNC machine requires an induction, and you can find the risk assessment and details on [https://somakeit.org.uk/cnc/ Workshop Induction pages.] Various manuals for the CNC can be found on the induction page.&lt;br /&gt;
&lt;br /&gt;
Note that we have a PC in the clean room which runs [https://www.vectric.com/products/vcarve-pro Vectric VCarve] Makerspace edition. This will generate GCode for the CNC toolpaths and also allow design work to be carried out.&lt;br /&gt;
&lt;br /&gt;
This page covers core details of the machine, for more advanced usage of the CNC machine see the  [[CNC Machine/Intermediate documentation|Intermediate documentation]] and [[CNC Machine/Advanced documentation|Advanced documentation]] pages.&lt;br /&gt;
&lt;br /&gt;
== About The Machine ==&lt;br /&gt;
&lt;br /&gt;
=== Specifications ===&lt;br /&gt;
{|&lt;br /&gt;
|&#039;&#039;&#039;Manufacturer&#039;&#039;&#039;&lt;br /&gt;
|StyleCNC&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Model&#039;&#039;&#039;&lt;br /&gt;
|STM6090&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;No. Axes&#039;&#039;&#039;&lt;br /&gt;
|4 &amp;lt;small&amp;gt;(XYZ + Rotary)&amp;lt;/small&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Bed Size&#039;&#039;&#039;&lt;br /&gt;
|600×900mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Effective Work Volume&#039;&#039;&#039;&lt;br /&gt;
|600×750×150mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Controller&#039;&#039;&#039;&lt;br /&gt;
|RichAuto A18&lt;br /&gt;
|}&lt;br /&gt;
For further information on the machine, check out the manufacturer&#039;s website: &amp;lt;nowiki&amp;gt;https://www.stylecnc.com&amp;lt;/nowiki&amp;gt;. (Note that our machine has some modifications to allow for coolant, and dust collection).&lt;br /&gt;
&lt;br /&gt;
To learn more about the controller, here is the manufacturer&#039;s page: [http://richnc.com.cn:9092/en/product/content-41.html http://richnc.com.cn]&lt;br /&gt;
&lt;br /&gt;
=== Mist coolant system ===&lt;br /&gt;
For curring aluminium, and similar amterials the machine has a mist coolant system fitted. when cutting materials like wood to avoid unwanted coolant contact the mist coolant head should be raised up and the air supply disconnected.&lt;br /&gt;
&lt;br /&gt;
To use the mist coolant connect the mist coolant air line to the air connector on the shelf support to the left of the lathe and move the mist collant head to point at the cutter/workpiece. The dials on the mist coolant head can adjust air and coolant flow. Coolant should be mixed in a 5% ratio of colant oil and 95% distilled water, there is a bottle on the shelf with the ratios marked on it. &lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Programming ===&lt;br /&gt;
According to it&#039;s [http://richnc.com.cn:9092/attach?id=917&amp;amp;down=1 manual], the controller accepts &#039;standard G-Code&#039;. Unfortunately, no further information is provided, so it is assumed it supports most of the basic G-Codes listed on [[wikipedia:G-code|Wikipedia]]. By default, the router always has the spindle on, and feeds and speeds are specified through a menu before a program is run. See information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page to configure this through g code.&lt;br /&gt;
&lt;br /&gt;
As mentioned earlier, the makerspace has a license for VCarve, which can also be used to program the router. For those wishing to use other software e.g. Fusion 360 see information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page&lt;br /&gt;
&lt;br /&gt;
==== Programming 4th axis ====&lt;br /&gt;
While VCarve has some support for the rotary axis, it is not practical as it replaces X or Y moves with the rotary, meaning you won&#039;t be able to program true 4 axis toolpaths. For true 4 axis milling you will need to manually program the moves, or find/buy a piece of software that has the features you are looking for&lt;br /&gt;
&lt;br /&gt;
=== Spindle speeds ===&lt;br /&gt;
&lt;br /&gt;
The machine has several preset spindle speeds which are listed below.&lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! mode || Speed &lt;br /&gt;
|-&lt;br /&gt;
| 1 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|2 || 6000 &lt;br /&gt;
|-&lt;br /&gt;
|3 || 9000 &lt;br /&gt;
|-&lt;br /&gt;
|4 || 12000 &lt;br /&gt;
|-&lt;br /&gt;
|5 || 16200 &lt;br /&gt;
|-&lt;br /&gt;
|6 || 18000 &lt;br /&gt;
|-&lt;br /&gt;
|7 || 21000 &lt;br /&gt;
|-&lt;br /&gt;
|8 || 24000 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== USB Drive requirements ===&lt;br /&gt;
The CNC controller doesent work with large capacity USB drives (these use NTFS format by default). You will need a FAT32 formmatted drive, 8GB drives are known to work larger drives may also work but need to be reformatted with a smaller partition. A 64GB drive reformatted as a 30GB FAT32 is known to not work however when formatted at 16GB in FAT32 it does.&lt;br /&gt;
&lt;br /&gt;
== Avaliable Tools ==&lt;br /&gt;
&lt;br /&gt;
There is a Stanley toolbox by the CNC that contains some tools for use with the CNC which are documented below.&lt;br /&gt;
&lt;br /&gt;
=== Collets ===&lt;br /&gt;
&lt;br /&gt;
The space has ER collets in 1-13mm&lt;br /&gt;
&lt;br /&gt;
There are also ER collets in 1/2in and 1/8in&lt;br /&gt;
&lt;br /&gt;
=== Flat end mills ===&lt;br /&gt;
&lt;br /&gt;
The space has the following HSS flat endmills  &lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! diameter || shaft diameter || Flute length || overall length&lt;br /&gt;
|-&lt;br /&gt;
| 1.5mm || 6mm || 4mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2mm || 6mm || 7mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2.5mm || 6mm || 8mm || 52mm&lt;br /&gt;
|-&lt;br /&gt;
| 3.5mm || 6mm || 10mm || 54mm&lt;br /&gt;
|-&lt;br /&gt;
| 4.5mm || 6mm || 11mm | &lt;br /&gt;
|54mm&lt;br /&gt;
|-&lt;br /&gt;
| 5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|-&lt;br /&gt;
| 5.5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Other bits ===&lt;br /&gt;
&lt;br /&gt;
There are a few countersink and chamfer bits in the box allong with a 1/4in ball endmill&lt;br /&gt;
[[Category:Tools]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Template:Infobox_tool&amp;diff=194</id>
		<title>Template:Infobox tool</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Template:Infobox_tool&amp;diff=194"/>
		<updated>2024-09-17T18:17:19Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add additional fields to infobox&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox&lt;br /&gt;
| title    = {{{name|&amp;lt;includeonly&amp;gt;{{PAGENAME}}&amp;lt;/includeonly&amp;gt;}}}&lt;br /&gt;
| autoheaders = y&lt;br /&gt;
&lt;br /&gt;
| image    = {{{image|}}}&lt;br /&gt;
| caption  = {{{caption|}}}&lt;br /&gt;
&lt;br /&gt;
| label1   = Type&lt;br /&gt;
| data1    = {{{type|}}}&lt;br /&gt;
| label2   = Manufacturer&lt;br /&gt;
| data2    = {{{manufacturer|}}}&lt;br /&gt;
| label3   = Model&lt;br /&gt;
| data3    = {{{model|}}}&lt;br /&gt;
| label4   = On loan from&lt;br /&gt;
| data4    = {{{loaned_from|}}}&lt;br /&gt;
&lt;br /&gt;
| header20 = Documentation&lt;br /&gt;
| label21  = Manual&lt;br /&gt;
| data21   = {{{manual_link|}}}&lt;br /&gt;
| label22  = Indicution page link&lt;br /&gt;
| data22   = {{{induction_link|}}}&lt;br /&gt;
| label23  = Primary Contacts&lt;br /&gt;
| data23   = {{{primary_contacts|}}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{#if: {{{image|}}} | | &amp;lt;includeonly&amp;gt;[[Category:Pages with missing tool image]]&amp;lt;/includeonly&amp;gt;}}&lt;br /&gt;
{{#if: {{{loaned_from|}}} | &amp;lt;includeonly&amp;gt;[[Category:Tools loaned to the space]]&amp;lt;/includeonly&amp;gt;}}&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&amp;lt;templatedata&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;description&amp;quot;: &amp;quot;Infobox for tools&amp;quot;,&lt;br /&gt;
	&amp;quot;params&amp;quot;: {&lt;br /&gt;
		&amp;quot;name&amp;quot;: {&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;name of the tool (defaults to page name if not set)&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;image&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool image&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Image of the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;content&amp;quot;,&lt;br /&gt;
			&amp;quot;suggested&amp;quot;: true&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;caption&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Image caption&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;caption for the tool image&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;type&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool Type&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Tupe of tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;manufacturer&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Manufactuerer&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Manufactuer of the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;,&lt;br /&gt;
			&amp;quot;suggested&amp;quot;: true&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;model&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool Model&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Model of the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;,&lt;br /&gt;
			&amp;quot;suggested&amp;quot;: true&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;manual_link&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool manual&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;A link to the manual for the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;url&amp;quot;,&lt;br /&gt;
			&amp;quot;suggested&amp;quot;: true&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;induction_link&amp;quot;: {&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;A link to the induction information&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;url&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;primary_contacts&amp;quot;: {&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Primary contacts for the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;loaned_from&amp;quot;: {&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Whom the tool is on loan from if not owned by the space&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
	&amp;quot;paramOrder&amp;quot;: [&lt;br /&gt;
		&amp;quot;name&amp;quot;,&lt;br /&gt;
		&amp;quot;image&amp;quot;,&lt;br /&gt;
		&amp;quot;caption&amp;quot;,&lt;br /&gt;
		&amp;quot;type&amp;quot;,&lt;br /&gt;
		&amp;quot;manufacturer&amp;quot;,&lt;br /&gt;
		&amp;quot;model&amp;quot;,&lt;br /&gt;
		&amp;quot;loaned_from&amp;quot;,&lt;br /&gt;
		&amp;quot;manual_link&amp;quot;,&lt;br /&gt;
		&amp;quot;induction_link&amp;quot;,&lt;br /&gt;
		&amp;quot;primary_contacts&amp;quot;&lt;br /&gt;
	]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/templatedata&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=MediaWiki:Common.css&amp;diff=187</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=MediaWiki:Common.css&amp;diff=187"/>
		<updated>2024-09-08T18:56:31Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added scond infobox to avoid indent issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* Style for horizontal lists (separator following item).&lt;br /&gt;
   @source mediawiki.org/wiki/Snippets/Horizontal_lists&lt;br /&gt;
   @revision 8 (2016-05-21)&lt;br /&gt;
   @author [[User:Edokter]]&lt;br /&gt;
 */&lt;br /&gt;
.hlist dl,&lt;br /&gt;
.hlist ol,&lt;br /&gt;
.hlist ul {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
}&lt;br /&gt;
/* Display list items inline */&lt;br /&gt;
.hlist dd,&lt;br /&gt;
.hlist dt,&lt;br /&gt;
.hlist li {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    display: inline;&lt;br /&gt;
}&lt;br /&gt;
/* Display nested lists inline */&lt;br /&gt;
.hlist.inline,&lt;br /&gt;
.hlist.inline dl,&lt;br /&gt;
.hlist.inline ol,&lt;br /&gt;
.hlist.inline ul,&lt;br /&gt;
.hlist dl dl, .hlist dl ol, .hlist dl ul,&lt;br /&gt;
.hlist ol dl, .hlist ol ol, .hlist ol ul,&lt;br /&gt;
.hlist ul dl, .hlist ul ol, .hlist ul ul {&lt;br /&gt;
    display: inline;&lt;br /&gt;
}&lt;br /&gt;
/* Hide empty list items */&lt;br /&gt;
.hlist .mw-empty-li {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
/* Generate interpuncts */&lt;br /&gt;
.hlist dt:after {&lt;br /&gt;
    content: &amp;quot;: &amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd:after,&lt;br /&gt;
.hlist li:after {&lt;br /&gt;
    content: &amp;quot; · &amp;quot;;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd:last-child:after,&lt;br /&gt;
.hlist dt:last-child:after,&lt;br /&gt;
.hlist li:last-child:after {&lt;br /&gt;
    content: none;&lt;br /&gt;
}&lt;br /&gt;
/* Add parentheses around nested lists */&lt;br /&gt;
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,&lt;br /&gt;
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,&lt;br /&gt;
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {&lt;br /&gt;
    content: &amp;quot; (&amp;quot;;&lt;br /&gt;
    font-weight: normal;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,&lt;br /&gt;
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,&lt;br /&gt;
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {&lt;br /&gt;
    content: &amp;quot;)&amp;quot;;&lt;br /&gt;
    font-weight: normal;&lt;br /&gt;
}&lt;br /&gt;
/* Put ordinals in front of ordered list items */&lt;br /&gt;
.hlist ol {&lt;br /&gt;
    counter-reset: listitem;&lt;br /&gt;
}&lt;br /&gt;
.hlist ol &amp;gt; li {&lt;br /&gt;
    counter-increment: listitem;&lt;br /&gt;
}&lt;br /&gt;
.hlist ol &amp;gt; li:before {&lt;br /&gt;
    content: &amp;quot; &amp;quot; counter(listitem) &amp;quot;\a0&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd ol &amp;gt; li:first-child:before,&lt;br /&gt;
.hlist dt ol &amp;gt; li:first-child:before,&lt;br /&gt;
.hlist li ol &amp;gt; li:first-child:before {&lt;br /&gt;
    content: &amp;quot; (&amp;quot; counter(listitem) &amp;quot;\a0&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Unbulleted lists */&lt;br /&gt;
.plainlist ol,&lt;br /&gt;
.plainlist ul {&lt;br /&gt;
    line-height: inherit;&lt;br /&gt;
    list-style: none none;&lt;br /&gt;
    margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.plainlist ol li,&lt;br /&gt;
.plainlist ul li {&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Default skin for navigation boxes */&lt;br /&gt;
table.navbox {            /* Navbox container style */&lt;br /&gt;
  border: 1px solid #aaa;&lt;br /&gt;
  width: 100%; &lt;br /&gt;
  margin: auto;&lt;br /&gt;
  clear: both;&lt;br /&gt;
  font-size: 88%;&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  padding: 1px;&lt;br /&gt;
}&lt;br /&gt;
table.navbox + table.navbox {  /* Single pixel border between adjacent navboxes */&lt;br /&gt;
  margin-top: -1px;            /* (doesn&#039;t work for IE6, but that&#039;s okay)       */&lt;br /&gt;
}&lt;br /&gt;
.navbox-title,&lt;br /&gt;
.navbox-abovebelow,&lt;br /&gt;
table.navbox th {&lt;br /&gt;
  text-align: center;      /* Title and above/below styles */&lt;br /&gt;
  padding-left: 1em;&lt;br /&gt;
  padding-right: 1em;&lt;br /&gt;
}&lt;br /&gt;
.navbox-group {            /* Group style */&lt;br /&gt;
  white-space: nowrap;&lt;br /&gt;
  text-align: right;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
  padding-left: 1em;&lt;br /&gt;
  padding-right: 1em;&lt;br /&gt;
}&lt;br /&gt;
.navbox, .navbox-subgroup {&lt;br /&gt;
  background: #fdfdfd;     /* Background color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-list {&lt;br /&gt;
  border-color: #fdfdfd;   /* Must match background color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-title,&lt;br /&gt;
table.navbox th {&lt;br /&gt;
  background: #ccccff;     /* Level 1 color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-abovebelow,&lt;br /&gt;
.navbox-group,&lt;br /&gt;
.navbox-subgroup .navbox-title {&lt;br /&gt;
  background: #ddddff;     /* Level 2 color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-subgroup .navbox-group, .navbox-subgroup .navbox-abovebelow {&lt;br /&gt;
  background: #e6e6ff;     /* Level 3 color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-even {&lt;br /&gt;
  background: #f7f7f7;     /* Even row striping */&lt;br /&gt;
}&lt;br /&gt;
.navbox-odd {&lt;br /&gt;
  background: transparent; /* Odd row striping */&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
.collapseButton {          /* &#039;show&#039;/&#039;hide&#039; buttons created dynamically */&lt;br /&gt;
    float: right;          /* by the CollapsibleTables javascript in    */&lt;br /&gt;
    font-weight: normal;   /* [[MediaWiki:Common.js]]are styled here    */&lt;br /&gt;
    text-align: right;     /* so they can be customised.                */&lt;br /&gt;
    width: auto;&lt;br /&gt;
}&lt;br /&gt;
.navbox .collapseButton {  /* In navboxes, the show/hide button balances */&lt;br /&gt;
    width: 6em;            /* the vde links from [[Template:Tnavbar]],   */&lt;br /&gt;
}                          /* so they need to be the same width.         */&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/* Infoboxes */&lt;br /&gt;
/* When this gets TemplateStyled, move the stuff in [[MediaWiki:Print.css]] too */&lt;br /&gt;
/* the first infobox gets messed up whtn this is passed so */&lt;br /&gt;
.infobox {&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	color: black;&lt;br /&gt;
	padding: 0.2em;&lt;br /&gt;
	font-size: 88%;&lt;br /&gt;
	line-height: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox {&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	color: black;&lt;br /&gt;
	padding: 0.2em;&lt;br /&gt;
	font-size: 88%;&lt;br /&gt;
	line-height: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
	.infobox {&lt;br /&gt;
		background-color: #f8f9fa;&lt;br /&gt;
		border-spacing: 3px;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 720px) {&lt;br /&gt;
	.infobox {&lt;br /&gt;
		width: 100%;&lt;br /&gt;
	}&lt;br /&gt;
    &lt;br /&gt;
	.infobox .nowrap {&lt;br /&gt;
		white-space: normal;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (min-width: 720px) {&lt;br /&gt;
	.infobox {&lt;br /&gt;
		/* @noflip */&lt;br /&gt;
		margin: 0.5em 0 0.5em 1em;&lt;br /&gt;
		/* @noflip */&lt;br /&gt;
		float: right;&lt;br /&gt;
		/* @noflip */&lt;br /&gt;
		clear: right;&lt;br /&gt;
		width: 22em;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-header,&lt;br /&gt;
.infobox-label,&lt;br /&gt;
.infobox-above,&lt;br /&gt;
.infobox-full-data,&lt;br /&gt;
.infobox-data,&lt;br /&gt;
.infobox-below,&lt;br /&gt;
.infobox-subheader,&lt;br /&gt;
.infobox-image,&lt;br /&gt;
.infobox-navbar,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox th,&lt;br /&gt;
.infobox td {&lt;br /&gt;
	vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-label,&lt;br /&gt;
.infobox-data,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox th,&lt;br /&gt;
.infobox td {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Remove .infobox when element selectors above are removed */&lt;br /&gt;
.infobox .infobox-above,&lt;br /&gt;
.infobox .infobox-title,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox caption {&lt;br /&gt;
	font-size: 125%;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-title,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox caption {&lt;br /&gt;
	padding: 0.2em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Remove .infobox when element selectors above are removed */&lt;br /&gt;
.infobox .infobox-header,&lt;br /&gt;
.infobox .infobox-subheader,&lt;br /&gt;
.infobox .infobox-image,&lt;br /&gt;
.infobox .infobox-full-data,&lt;br /&gt;
.infobox .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Remove .infobox when element selectors above are removed */&lt;br /&gt;
.infobox .infobox-navbar {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Cell sizes for ambox/tmbox/imbox/cmbox/ombox/fmbox/dmbox message boxes */&lt;br /&gt;
th.mbox-text, td.mbox-text {   /* The message body cell(s) */&lt;br /&gt;
	border: none;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 0.25em 0.9em;     /* 0.9em left/right */&lt;br /&gt;
	width: 100%;               /* Make all mboxes the same width regardless of text length */&lt;br /&gt;
}&lt;br /&gt;
td.mbox-image {                /* The left image cell */&lt;br /&gt;
	border: none;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0 2px 0.9em;  /* 0.9em left, 0px right */&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
td.mbox-imageright {           /* The right image cell */&lt;br /&gt;
	border: none;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0.9em 2px 0;  /* 0px left, 0.9em right */&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
td.mbox-empty-cell {           /* An empty narrow cell */&lt;br /&gt;
	border: none;&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	width: 1px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Article message box styles */&lt;br /&gt;
table.ambox {&lt;br /&gt;
	margin: 0 10%;                  /* 10% = Will not overlap with other elements */&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #36c;  /* Default &amp;quot;notice&amp;quot; blue */&lt;br /&gt;
	background-color: #fbfbfb;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
table.ambox + table.ambox {      /* Single border between stacked boxes. */&lt;br /&gt;
	margin-top: -1px;&lt;br /&gt;
}&lt;br /&gt;
.ambox th.mbox-text,&lt;br /&gt;
.ambox td.mbox-text {            /* The message body cell(s) */&lt;br /&gt;
	padding: 0.25em 0.5em;       /* 0.5em left/right */&lt;br /&gt;
}&lt;br /&gt;
.ambox td.mbox-image {           /* The left image cell */&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0 2px 0.5em;    /* 0.5em left, 0px right */&lt;br /&gt;
}&lt;br /&gt;
.ambox td.mbox-imageright {      /* The right image cell */&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0.5em 2px 0;    /* 0px left, 0.5em right */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.ambox-notice {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #36c;       /* Blue */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-speedy {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;          /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-delete {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-content {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-style {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-move {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-protection {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #a2a9b1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Image message box styles */&lt;br /&gt;
table.imbox {&lt;br /&gt;
	margin: 4px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 3px solid #36c;    /* Default &amp;quot;notice&amp;quot; blue */&lt;br /&gt;
	background-color: #fbfbfb;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
.imbox .mbox-text .imbox {  /* For imboxes inside imbox-text cells. */&lt;br /&gt;
	margin: 0 -0.5em;       /* 0.9 - 0.5 = 0.4em left/right.        */&lt;br /&gt;
	display: block;         /* Fix for webkit to force 100% width.  */&lt;br /&gt;
}&lt;br /&gt;
.mbox-inside .imbox {       /* For imboxes inside other templates.  */&lt;br /&gt;
	margin: 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.imbox-notice {&lt;br /&gt;
	border: 3px solid #36c;       /* Blue */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-speedy {&lt;br /&gt;
	border: 3px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-delete {&lt;br /&gt;
	border: 3px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-content {&lt;br /&gt;
	border: 3px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-style {&lt;br /&gt;
	border: 3px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-move {&lt;br /&gt;
	border: 3px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-protection {&lt;br /&gt;
	border: 3px solid #a2a9b1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-license {&lt;br /&gt;
	border: 3px solid #88a;       /* Dark gray */&lt;br /&gt;
	background-color: #f7f8ff;    /* Light gray */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-featured {&lt;br /&gt;
	border: 3px solid #cba135;    /* Brown-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Category message box styles */&lt;br /&gt;
table.cmbox {&lt;br /&gt;
	margin: 3px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	background-color: #dfe8ff;    /* Default &amp;quot;notice&amp;quot; blue */&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.cmbox-notice {&lt;br /&gt;
	background-color: #d8e8ff;    /* Blue */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-speedy {&lt;br /&gt;
	margin-top: 4px;&lt;br /&gt;
	margin-bottom: 4px;&lt;br /&gt;
	border: 4px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #ffdbdb;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-delete {&lt;br /&gt;
	background-color: #ffdbdb;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-content {&lt;br /&gt;
	background-color: #ffe7ce;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-style {&lt;br /&gt;
	background-color: #fff9db;    /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-move {&lt;br /&gt;
	background-color: #e4d8ff;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-protection {&lt;br /&gt;
	background-color: #efefe1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Other pages message box styles */&lt;br /&gt;
table.ombox {&lt;br /&gt;
	margin: 4px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 1px solid #a2a9b1;    /* Default &amp;quot;notice&amp;quot; gray */&lt;br /&gt;
	background-color: #f8f9fa;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.ombox-notice {&lt;br /&gt;
	border: 1px solid #a2a9b1;    /* Gray */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-speedy {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-delete {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-content {&lt;br /&gt;
	border: 1px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-style {&lt;br /&gt;
	border: 1px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-move {&lt;br /&gt;
	border: 1px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-protection {&lt;br /&gt;
	border: 2px solid #a2a9b1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Talk page message box styles */&lt;br /&gt;
table.tmbox {&lt;br /&gt;
	margin: 4px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 1px solid #c0c090;    /* Default &amp;quot;notice&amp;quot; gray-brown */&lt;br /&gt;
	background-color: #f8eaba;&lt;br /&gt;
	min-width: 80%;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
.tmbox.mbox-small {&lt;br /&gt;
	min-width: 0;                /* reset the min-width of tmbox above        */&lt;br /&gt;
}&lt;br /&gt;
.mediawiki .mbox-inside .tmbox { /* For tmboxes inside other templates. The &amp;quot;mediawiki&amp;quot; class ensures that */&lt;br /&gt;
	margin: 2px 0;               /* this declaration overrides other styles (including mbox-small above)   */&lt;br /&gt;
	width: 100%;                 /* For Safari and Opera */&lt;br /&gt;
}&lt;br /&gt;
.mbox-inside .tmbox.mbox-small { /* &amp;quot;small&amp;quot; tmboxes should not be small when  */&lt;br /&gt;
	line-height: 1.5em;          /* also &amp;quot;nested&amp;quot;, so reset styles that are   */&lt;br /&gt;
	font-size: 100%;             /* set in &amp;quot;mbox-small&amp;quot; above.                */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.tmbox-speedy {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-delete {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-content {&lt;br /&gt;
	border: 2px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-style {&lt;br /&gt;
	border: 2px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-move {&lt;br /&gt;
	border: 2px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-protection,&lt;br /&gt;
table.tmbox-notice {&lt;br /&gt;
	border: 1px solid #c0c090;    /* Gray-brown */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Footer and header message box styles */&lt;br /&gt;
table.fmbox {&lt;br /&gt;
	clear: both;&lt;br /&gt;
	margin: 0.2em 0;&lt;br /&gt;
	width: 100%;&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	background-color: #f8f9fa;     /* Default &amp;quot;system&amp;quot; gray */&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
table.fmbox-system {&lt;br /&gt;
	background-color: #f8f9fa;&lt;br /&gt;
}&lt;br /&gt;
table.fmbox-warning {&lt;br /&gt;
	border: 1px solid #bb7070;  /* Dark pink */&lt;br /&gt;
	background-color: #ffdbdb;  /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.fmbox-editnotice {&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
/* Div based &amp;quot;warning&amp;quot; style fmbox messages. */&lt;br /&gt;
div.mw-warning-with-logexcerpt,&lt;br /&gt;
div.mw-lag-warn-high,&lt;br /&gt;
div.mw-cascadeprotectedwarning,&lt;br /&gt;
div#mw-protect-cascadeon,&lt;br /&gt;
div.titleblacklist-warning,&lt;br /&gt;
div.locked-warning {&lt;br /&gt;
	clear: both;&lt;br /&gt;
	margin: 0.2em 0;&lt;br /&gt;
	border: 1px solid #bb7070;&lt;br /&gt;
	background-color: #ffdbdb;&lt;br /&gt;
	padding: 0.25em 0.9em;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=MediaWiki:Common.css&amp;diff=186</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=MediaWiki:Common.css&amp;diff=186"/>
		<updated>2024-09-08T18:43:31Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Attempt to fix infobox css issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* Style for horizontal lists (separator following item).&lt;br /&gt;
   @source mediawiki.org/wiki/Snippets/Horizontal_lists&lt;br /&gt;
   @revision 8 (2016-05-21)&lt;br /&gt;
   @author [[User:Edokter]]&lt;br /&gt;
 */&lt;br /&gt;
.hlist dl,&lt;br /&gt;
.hlist ol,&lt;br /&gt;
.hlist ul {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
}&lt;br /&gt;
/* Display list items inline */&lt;br /&gt;
.hlist dd,&lt;br /&gt;
.hlist dt,&lt;br /&gt;
.hlist li {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    display: inline;&lt;br /&gt;
}&lt;br /&gt;
/* Display nested lists inline */&lt;br /&gt;
.hlist.inline,&lt;br /&gt;
.hlist.inline dl,&lt;br /&gt;
.hlist.inline ol,&lt;br /&gt;
.hlist.inline ul,&lt;br /&gt;
.hlist dl dl, .hlist dl ol, .hlist dl ul,&lt;br /&gt;
.hlist ol dl, .hlist ol ol, .hlist ol ul,&lt;br /&gt;
.hlist ul dl, .hlist ul ol, .hlist ul ul {&lt;br /&gt;
    display: inline;&lt;br /&gt;
}&lt;br /&gt;
/* Hide empty list items */&lt;br /&gt;
.hlist .mw-empty-li {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
/* Generate interpuncts */&lt;br /&gt;
.hlist dt:after {&lt;br /&gt;
    content: &amp;quot;: &amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd:after,&lt;br /&gt;
.hlist li:after {&lt;br /&gt;
    content: &amp;quot; · &amp;quot;;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd:last-child:after,&lt;br /&gt;
.hlist dt:last-child:after,&lt;br /&gt;
.hlist li:last-child:after {&lt;br /&gt;
    content: none;&lt;br /&gt;
}&lt;br /&gt;
/* Add parentheses around nested lists */&lt;br /&gt;
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,&lt;br /&gt;
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,&lt;br /&gt;
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {&lt;br /&gt;
    content: &amp;quot; (&amp;quot;;&lt;br /&gt;
    font-weight: normal;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,&lt;br /&gt;
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,&lt;br /&gt;
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {&lt;br /&gt;
    content: &amp;quot;)&amp;quot;;&lt;br /&gt;
    font-weight: normal;&lt;br /&gt;
}&lt;br /&gt;
/* Put ordinals in front of ordered list items */&lt;br /&gt;
.hlist ol {&lt;br /&gt;
    counter-reset: listitem;&lt;br /&gt;
}&lt;br /&gt;
.hlist ol &amp;gt; li {&lt;br /&gt;
    counter-increment: listitem;&lt;br /&gt;
}&lt;br /&gt;
.hlist ol &amp;gt; li:before {&lt;br /&gt;
    content: &amp;quot; &amp;quot; counter(listitem) &amp;quot;\a0&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd ol &amp;gt; li:first-child:before,&lt;br /&gt;
.hlist dt ol &amp;gt; li:first-child:before,&lt;br /&gt;
.hlist li ol &amp;gt; li:first-child:before {&lt;br /&gt;
    content: &amp;quot; (&amp;quot; counter(listitem) &amp;quot;\a0&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Unbulleted lists */&lt;br /&gt;
.plainlist ol,&lt;br /&gt;
.plainlist ul {&lt;br /&gt;
    line-height: inherit;&lt;br /&gt;
    list-style: none none;&lt;br /&gt;
    margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.plainlist ol li,&lt;br /&gt;
.plainlist ul li {&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Default skin for navigation boxes */&lt;br /&gt;
table.navbox {            /* Navbox container style */&lt;br /&gt;
  border: 1px solid #aaa;&lt;br /&gt;
  width: 100%; &lt;br /&gt;
  margin: auto;&lt;br /&gt;
  clear: both;&lt;br /&gt;
  font-size: 88%;&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  padding: 1px;&lt;br /&gt;
}&lt;br /&gt;
table.navbox + table.navbox {  /* Single pixel border between adjacent navboxes */&lt;br /&gt;
  margin-top: -1px;            /* (doesn&#039;t work for IE6, but that&#039;s okay)       */&lt;br /&gt;
}&lt;br /&gt;
.navbox-title,&lt;br /&gt;
.navbox-abovebelow,&lt;br /&gt;
table.navbox th {&lt;br /&gt;
  text-align: center;      /* Title and above/below styles */&lt;br /&gt;
  padding-left: 1em;&lt;br /&gt;
  padding-right: 1em;&lt;br /&gt;
}&lt;br /&gt;
.navbox-group {            /* Group style */&lt;br /&gt;
  white-space: nowrap;&lt;br /&gt;
  text-align: right;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
  padding-left: 1em;&lt;br /&gt;
  padding-right: 1em;&lt;br /&gt;
}&lt;br /&gt;
.navbox, .navbox-subgroup {&lt;br /&gt;
  background: #fdfdfd;     /* Background color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-list {&lt;br /&gt;
  border-color: #fdfdfd;   /* Must match background color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-title,&lt;br /&gt;
table.navbox th {&lt;br /&gt;
  background: #ccccff;     /* Level 1 color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-abovebelow,&lt;br /&gt;
.navbox-group,&lt;br /&gt;
.navbox-subgroup .navbox-title {&lt;br /&gt;
  background: #ddddff;     /* Level 2 color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-subgroup .navbox-group, .navbox-subgroup .navbox-abovebelow {&lt;br /&gt;
  background: #e6e6ff;     /* Level 3 color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-even {&lt;br /&gt;
  background: #f7f7f7;     /* Even row striping */&lt;br /&gt;
}&lt;br /&gt;
.navbox-odd {&lt;br /&gt;
  background: transparent; /* Odd row striping */&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
.collapseButton {          /* &#039;show&#039;/&#039;hide&#039; buttons created dynamically */&lt;br /&gt;
    float: right;          /* by the CollapsibleTables javascript in    */&lt;br /&gt;
    font-weight: normal;   /* [[MediaWiki:Common.js]]are styled here    */&lt;br /&gt;
    text-align: right;     /* so they can be customised.                */&lt;br /&gt;
    width: auto;&lt;br /&gt;
}&lt;br /&gt;
.navbox .collapseButton {  /* In navboxes, the show/hide button balances */&lt;br /&gt;
    width: 6em;            /* the vde links from [[Template:Tnavbar]],   */&lt;br /&gt;
}                          /* so they need to be the same width.         */&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/* Infoboxes */&lt;br /&gt;
/* When this gets TemplateStyled, move the stuff in [[MediaWiki:Print.css]] too */&lt;br /&gt;
&lt;br /&gt;
.infobox {&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	color: black;&lt;br /&gt;
	padding: 0.2em;&lt;br /&gt;
	font-size: 88%;&lt;br /&gt;
	line-height: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
	.infobox {&lt;br /&gt;
		background-color: #f8f9fa;&lt;br /&gt;
		border-spacing: 3px;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 720px) {&lt;br /&gt;
	.infobox {&lt;br /&gt;
		width: 100%;&lt;br /&gt;
	}&lt;br /&gt;
    &lt;br /&gt;
	.infobox .nowrap {&lt;br /&gt;
		white-space: normal;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (min-width: 720px) {&lt;br /&gt;
	.infobox {&lt;br /&gt;
		/* @noflip */&lt;br /&gt;
		margin: 0.5em 0 0.5em 1em;&lt;br /&gt;
		/* @noflip */&lt;br /&gt;
		float: right;&lt;br /&gt;
		/* @noflip */&lt;br /&gt;
		clear: right;&lt;br /&gt;
		width: 22em;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-header,&lt;br /&gt;
.infobox-label,&lt;br /&gt;
.infobox-above,&lt;br /&gt;
.infobox-full-data,&lt;br /&gt;
.infobox-data,&lt;br /&gt;
.infobox-below,&lt;br /&gt;
.infobox-subheader,&lt;br /&gt;
.infobox-image,&lt;br /&gt;
.infobox-navbar,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox th,&lt;br /&gt;
.infobox td {&lt;br /&gt;
	vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-label,&lt;br /&gt;
.infobox-data,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox th,&lt;br /&gt;
.infobox td {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Remove .infobox when element selectors above are removed */&lt;br /&gt;
.infobox .infobox-above,&lt;br /&gt;
.infobox .infobox-title,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox caption {&lt;br /&gt;
	font-size: 125%;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-title,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox caption {&lt;br /&gt;
	padding: 0.2em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Remove .infobox when element selectors above are removed */&lt;br /&gt;
.infobox .infobox-header,&lt;br /&gt;
.infobox .infobox-subheader,&lt;br /&gt;
.infobox .infobox-image,&lt;br /&gt;
.infobox .infobox-full-data,&lt;br /&gt;
.infobox .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Remove .infobox when element selectors above are removed */&lt;br /&gt;
.infobox .infobox-navbar {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Cell sizes for ambox/tmbox/imbox/cmbox/ombox/fmbox/dmbox message boxes */&lt;br /&gt;
th.mbox-text, td.mbox-text {   /* The message body cell(s) */&lt;br /&gt;
	border: none;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 0.25em 0.9em;     /* 0.9em left/right */&lt;br /&gt;
	width: 100%;               /* Make all mboxes the same width regardless of text length */&lt;br /&gt;
}&lt;br /&gt;
td.mbox-image {                /* The left image cell */&lt;br /&gt;
	border: none;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0 2px 0.9em;  /* 0.9em left, 0px right */&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
td.mbox-imageright {           /* The right image cell */&lt;br /&gt;
	border: none;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0.9em 2px 0;  /* 0px left, 0.9em right */&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
td.mbox-empty-cell {           /* An empty narrow cell */&lt;br /&gt;
	border: none;&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	width: 1px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Article message box styles */&lt;br /&gt;
table.ambox {&lt;br /&gt;
	margin: 0 10%;                  /* 10% = Will not overlap with other elements */&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #36c;  /* Default &amp;quot;notice&amp;quot; blue */&lt;br /&gt;
	background-color: #fbfbfb;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
table.ambox + table.ambox {      /* Single border between stacked boxes. */&lt;br /&gt;
	margin-top: -1px;&lt;br /&gt;
}&lt;br /&gt;
.ambox th.mbox-text,&lt;br /&gt;
.ambox td.mbox-text {            /* The message body cell(s) */&lt;br /&gt;
	padding: 0.25em 0.5em;       /* 0.5em left/right */&lt;br /&gt;
}&lt;br /&gt;
.ambox td.mbox-image {           /* The left image cell */&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0 2px 0.5em;    /* 0.5em left, 0px right */&lt;br /&gt;
}&lt;br /&gt;
.ambox td.mbox-imageright {      /* The right image cell */&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0.5em 2px 0;    /* 0px left, 0.5em right */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.ambox-notice {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #36c;       /* Blue */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-speedy {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;          /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-delete {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-content {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-style {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-move {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-protection {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #a2a9b1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Image message box styles */&lt;br /&gt;
table.imbox {&lt;br /&gt;
	margin: 4px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 3px solid #36c;    /* Default &amp;quot;notice&amp;quot; blue */&lt;br /&gt;
	background-color: #fbfbfb;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
.imbox .mbox-text .imbox {  /* For imboxes inside imbox-text cells. */&lt;br /&gt;
	margin: 0 -0.5em;       /* 0.9 - 0.5 = 0.4em left/right.        */&lt;br /&gt;
	display: block;         /* Fix for webkit to force 100% width.  */&lt;br /&gt;
}&lt;br /&gt;
.mbox-inside .imbox {       /* For imboxes inside other templates.  */&lt;br /&gt;
	margin: 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.imbox-notice {&lt;br /&gt;
	border: 3px solid #36c;       /* Blue */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-speedy {&lt;br /&gt;
	border: 3px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-delete {&lt;br /&gt;
	border: 3px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-content {&lt;br /&gt;
	border: 3px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-style {&lt;br /&gt;
	border: 3px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-move {&lt;br /&gt;
	border: 3px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-protection {&lt;br /&gt;
	border: 3px solid #a2a9b1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-license {&lt;br /&gt;
	border: 3px solid #88a;       /* Dark gray */&lt;br /&gt;
	background-color: #f7f8ff;    /* Light gray */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-featured {&lt;br /&gt;
	border: 3px solid #cba135;    /* Brown-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Category message box styles */&lt;br /&gt;
table.cmbox {&lt;br /&gt;
	margin: 3px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	background-color: #dfe8ff;    /* Default &amp;quot;notice&amp;quot; blue */&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.cmbox-notice {&lt;br /&gt;
	background-color: #d8e8ff;    /* Blue */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-speedy {&lt;br /&gt;
	margin-top: 4px;&lt;br /&gt;
	margin-bottom: 4px;&lt;br /&gt;
	border: 4px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #ffdbdb;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-delete {&lt;br /&gt;
	background-color: #ffdbdb;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-content {&lt;br /&gt;
	background-color: #ffe7ce;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-style {&lt;br /&gt;
	background-color: #fff9db;    /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-move {&lt;br /&gt;
	background-color: #e4d8ff;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-protection {&lt;br /&gt;
	background-color: #efefe1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Other pages message box styles */&lt;br /&gt;
table.ombox {&lt;br /&gt;
	margin: 4px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 1px solid #a2a9b1;    /* Default &amp;quot;notice&amp;quot; gray */&lt;br /&gt;
	background-color: #f8f9fa;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.ombox-notice {&lt;br /&gt;
	border: 1px solid #a2a9b1;    /* Gray */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-speedy {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-delete {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-content {&lt;br /&gt;
	border: 1px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-style {&lt;br /&gt;
	border: 1px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-move {&lt;br /&gt;
	border: 1px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-protection {&lt;br /&gt;
	border: 2px solid #a2a9b1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Talk page message box styles */&lt;br /&gt;
table.tmbox {&lt;br /&gt;
	margin: 4px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 1px solid #c0c090;    /* Default &amp;quot;notice&amp;quot; gray-brown */&lt;br /&gt;
	background-color: #f8eaba;&lt;br /&gt;
	min-width: 80%;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
.tmbox.mbox-small {&lt;br /&gt;
	min-width: 0;                /* reset the min-width of tmbox above        */&lt;br /&gt;
}&lt;br /&gt;
.mediawiki .mbox-inside .tmbox { /* For tmboxes inside other templates. The &amp;quot;mediawiki&amp;quot; class ensures that */&lt;br /&gt;
	margin: 2px 0;               /* this declaration overrides other styles (including mbox-small above)   */&lt;br /&gt;
	width: 100%;                 /* For Safari and Opera */&lt;br /&gt;
}&lt;br /&gt;
.mbox-inside .tmbox.mbox-small { /* &amp;quot;small&amp;quot; tmboxes should not be small when  */&lt;br /&gt;
	line-height: 1.5em;          /* also &amp;quot;nested&amp;quot;, so reset styles that are   */&lt;br /&gt;
	font-size: 100%;             /* set in &amp;quot;mbox-small&amp;quot; above.                */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.tmbox-speedy {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-delete {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-content {&lt;br /&gt;
	border: 2px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-style {&lt;br /&gt;
	border: 2px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-move {&lt;br /&gt;
	border: 2px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-protection,&lt;br /&gt;
table.tmbox-notice {&lt;br /&gt;
	border: 1px solid #c0c090;    /* Gray-brown */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Footer and header message box styles */&lt;br /&gt;
table.fmbox {&lt;br /&gt;
	clear: both;&lt;br /&gt;
	margin: 0.2em 0;&lt;br /&gt;
	width: 100%;&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	background-color: #f8f9fa;     /* Default &amp;quot;system&amp;quot; gray */&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
table.fmbox-system {&lt;br /&gt;
	background-color: #f8f9fa;&lt;br /&gt;
}&lt;br /&gt;
table.fmbox-warning {&lt;br /&gt;
	border: 1px solid #bb7070;  /* Dark pink */&lt;br /&gt;
	background-color: #ffdbdb;  /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.fmbox-editnotice {&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
/* Div based &amp;quot;warning&amp;quot; style fmbox messages. */&lt;br /&gt;
div.mw-warning-with-logexcerpt,&lt;br /&gt;
div.mw-lag-warn-high,&lt;br /&gt;
div.mw-cascadeprotectedwarning,&lt;br /&gt;
div#mw-protect-cascadeon,&lt;br /&gt;
div.titleblacklist-warning,&lt;br /&gt;
div.locked-warning {&lt;br /&gt;
	clear: both;&lt;br /&gt;
	margin: 0.2em 0;&lt;br /&gt;
	border: 1px solid #bb7070;&lt;br /&gt;
	background-color: #ffdbdb;&lt;br /&gt;
	padding: 0.25em 0.9em;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=185</id>
		<title>Big CNC Machine</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=185"/>
		<updated>2024-09-08T18:33:12Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added infobox&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
{{Infobox tool&lt;br /&gt;
| type = Machine Tools&lt;br /&gt;
| manufactuerer = StyleCNC&lt;br /&gt;
| model = STM6090&lt;br /&gt;
&lt;br /&gt;
| manual_link = http://richnc.com.cn:9092/attach?id=917&amp;amp;down=1&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We have a CNC Machine in the workshop area of the Makerspace.&lt;br /&gt;
&lt;br /&gt;
The CNC machine requires an induction, and you can find the risk assessment and details on [https://somakeit.org.uk/cnc/ Workshop Induction pages.] Various manuals for the CNC can be found on the induction page.&lt;br /&gt;
&lt;br /&gt;
Note that we have a PC in the clean room which runs [https://www.vectric.com/products/vcarve-pro Vectric VCarve] Makerspace edition. This will generate GCode for the CNC toolpaths and also allow design work to be carried out.&lt;br /&gt;
&lt;br /&gt;
This page covers core details of the machine, for more advanced usage of the CNC machine see the  [[CNC Machine/Intermediate documentation|Intermediate documentation]] and [[CNC Machine/Advanced documentation|Advanced documentation]] pages.&lt;br /&gt;
&lt;br /&gt;
== About The Machine ==&lt;br /&gt;
&lt;br /&gt;
=== Specifications ===&lt;br /&gt;
{|&lt;br /&gt;
|&#039;&#039;&#039;Manufacturer&#039;&#039;&#039;&lt;br /&gt;
|StyleCNC&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Model&#039;&#039;&#039;&lt;br /&gt;
|STM6090&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;No. Axes&#039;&#039;&#039;&lt;br /&gt;
|4 &amp;lt;small&amp;gt;(XYZ + Rotary)&amp;lt;/small&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Bed Size&#039;&#039;&#039;&lt;br /&gt;
|600×900mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Effective Work Volume&#039;&#039;&#039;&lt;br /&gt;
|600×750×150mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Controller&#039;&#039;&#039;&lt;br /&gt;
|RichAuto A18&lt;br /&gt;
|}&lt;br /&gt;
For further information on the machine, check out the manufacturer&#039;s website: &amp;lt;nowiki&amp;gt;https://www.stylecnc.com&amp;lt;/nowiki&amp;gt;. (Note that our machine has some modifications to allow for coolant, and dust collection).&lt;br /&gt;
&lt;br /&gt;
To learn more about the controller, here is the manufacturer&#039;s page: [http://richnc.com.cn:9092/en/product/content-41.html http://richnc.com.cn]&lt;br /&gt;
&lt;br /&gt;
=== Mist coolant system ===&lt;br /&gt;
For curring aluminium, and similar amterials the machine has a mist coolant system fitted. when cutting materials like wood to avoid unwanted coolant contact the mist coolant head should be raised up and the air supply disconnected.&lt;br /&gt;
&lt;br /&gt;
To use the mist coolant connect the mist coolant air line to the air connector on the shelf support to the left of the lathe and move the mist collant head to point at the cutter/workpiece. The dials on the mist coolant head can adjust air and coolant flow. Coolant should be mixed in a 5% ratio of colant oil and 95% distilled water, there is a bottle on the shelf with the ratios marked on it. &lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Programming ===&lt;br /&gt;
According to it&#039;s [http://richnc.com.cn:9092/attach?id=917&amp;amp;down=1 manual], the controller accepts &#039;standard G-Code&#039;. Unfortunately, no further information is provided, so it is assumed it supports most of the basic G-Codes listed on [[wikipedia:G-code|Wikipedia]]. By default, the router always has the spindle on, and feeds and speeds are specified through a menu before a program is run. See information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page to configure this through g code.&lt;br /&gt;
&lt;br /&gt;
As mentioned earlier, the makerspace has a license for VCarve, which can also be used to program the router. For those wishing to use other software e.g. Fusion 360 see information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page&lt;br /&gt;
&lt;br /&gt;
==== Programming 4th axis ====&lt;br /&gt;
While VCarve has some support for the rotary axis, it is not practical as it replaces X or Y moves with the rotary, meaning you won&#039;t be able to program true 4 axis toolpaths. For true 4 axis milling you will need to manually program the moves, or find/buy a piece of software that has the features you are looking for&lt;br /&gt;
&lt;br /&gt;
=== Spindle speeds ===&lt;br /&gt;
&lt;br /&gt;
The machine has several preset spindle speeds which are listed below.&lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! mode || Speed &lt;br /&gt;
|-&lt;br /&gt;
| 1 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|2 || 6000 &lt;br /&gt;
|-&lt;br /&gt;
|3 || 9000 &lt;br /&gt;
|-&lt;br /&gt;
|4 || 12000 &lt;br /&gt;
|-&lt;br /&gt;
|5 || 16200 &lt;br /&gt;
|-&lt;br /&gt;
|6 || 18000 &lt;br /&gt;
|-&lt;br /&gt;
|7 || 21000 &lt;br /&gt;
|-&lt;br /&gt;
|8 || 24000 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== USB Drive requirements ===&lt;br /&gt;
The CNC controller doesent work with large capacity USB drives (these use NTFS format by default). You will need a FAT32 formmatted drive, 8GB drives are known to work larger drives may also work but need to be reformatted with a smaller partition. A 64GB drive reformatted as a 30GB FAT32 is known to not work however when formatted at 16GB in FAT32 it does.&lt;br /&gt;
&lt;br /&gt;
== Avaliable Tools ==&lt;br /&gt;
&lt;br /&gt;
There is a Stanley toolbox by the CNC that contains some tools for use with the CNC which are documented below.&lt;br /&gt;
&lt;br /&gt;
=== Collets ===&lt;br /&gt;
&lt;br /&gt;
The space has ER collets in 1-13mm&lt;br /&gt;
&lt;br /&gt;
There are also ER collets in 1/2in and 1/8in&lt;br /&gt;
&lt;br /&gt;
=== Flat end mills ===&lt;br /&gt;
&lt;br /&gt;
The space has the following HSS flat endmills  &lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! diameter || shaft diameter || Flute length || overall length&lt;br /&gt;
|-&lt;br /&gt;
| 1.5mm || 6mm || 4mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2mm || 6mm || 7mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2.5mm || 6mm || 8mm || 52mm&lt;br /&gt;
|-&lt;br /&gt;
| 3.5mm || 6mm || 10mm || 54mm&lt;br /&gt;
|-&lt;br /&gt;
| 4.5mm || 6mm || 11mm | &lt;br /&gt;
|54mm&lt;br /&gt;
|-&lt;br /&gt;
| 5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|-&lt;br /&gt;
| 5.5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Other bits ===&lt;br /&gt;
&lt;br /&gt;
There are a few countersink and chamfer bits in the box allong with a 1/4in ball endmill&lt;br /&gt;
[[Category:Tools]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Template:Infobox_tool&amp;diff=184</id>
		<title>Template:Infobox tool</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Template:Infobox_tool&amp;diff=184"/>
		<updated>2024-09-08T18:31:57Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added additional fields&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox&lt;br /&gt;
| title    = {{{name|&amp;lt;includeonly&amp;gt;{{PAGENAME}}&amp;lt;/includeonly&amp;gt;}}}&lt;br /&gt;
| autoheaders = y&lt;br /&gt;
&lt;br /&gt;
| image    = {{{image|}}}&lt;br /&gt;
| caption  = {{{caption|}}}&lt;br /&gt;
&lt;br /&gt;
| label1   = Type&lt;br /&gt;
| data1    = {{{type|}}}&lt;br /&gt;
| label2   = Manufacturer&lt;br /&gt;
| data2    = {{{manufacturer|}}}&lt;br /&gt;
| label3   = Model&lt;br /&gt;
| data3    = {{{model|}}}&lt;br /&gt;
&lt;br /&gt;
| header20 = Documentation&lt;br /&gt;
| label21 = Manual&lt;br /&gt;
| data21 = {{{manual_link|}}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{#if: {{{image|}}} | | &amp;lt;includeonly&amp;gt;[[Category:Pages with missing tool image]]&amp;lt;/includeonly&amp;gt;}}&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&amp;lt;templatedata&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;description&amp;quot;: &amp;quot;Infobox for tools&amp;quot;,&lt;br /&gt;
	&amp;quot;params&amp;quot;: {&lt;br /&gt;
		&amp;quot;name&amp;quot;: {&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;name of the tool (defaults to page name if not set)&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;image&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool image&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Image of the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;content&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;caption&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Image caption&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;caption for the tool image&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;type&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool Type&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Tupe of tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;manufacturer&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Manufactuerer&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Manufactuer of the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;,&lt;br /&gt;
			&amp;quot;suggested&amp;quot;: true&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;model&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool Model&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Model of the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;manual_link&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool manual&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;A link to the manual for the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;url&amp;quot;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/templatedata&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=MediaWiki:Common.css&amp;diff=183</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=MediaWiki:Common.css&amp;diff=183"/>
		<updated>2024-09-08T18:21:49Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Update infobox CSS&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* CSS placed here will be applied to all skins */&lt;br /&gt;
&lt;br /&gt;
/* Style for horizontal lists (separator following item).&lt;br /&gt;
   @source mediawiki.org/wiki/Snippets/Horizontal_lists&lt;br /&gt;
   @revision 8 (2016-05-21)&lt;br /&gt;
   @author [[User:Edokter]]&lt;br /&gt;
 */&lt;br /&gt;
.hlist dl,&lt;br /&gt;
.hlist ol,&lt;br /&gt;
.hlist ul {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    padding: 0;&lt;br /&gt;
}&lt;br /&gt;
/* Display list items inline */&lt;br /&gt;
.hlist dd,&lt;br /&gt;
.hlist dt,&lt;br /&gt;
.hlist li {&lt;br /&gt;
    margin: 0;&lt;br /&gt;
    display: inline;&lt;br /&gt;
}&lt;br /&gt;
/* Display nested lists inline */&lt;br /&gt;
.hlist.inline,&lt;br /&gt;
.hlist.inline dl,&lt;br /&gt;
.hlist.inline ol,&lt;br /&gt;
.hlist.inline ul,&lt;br /&gt;
.hlist dl dl, .hlist dl ol, .hlist dl ul,&lt;br /&gt;
.hlist ol dl, .hlist ol ol, .hlist ol ul,&lt;br /&gt;
.hlist ul dl, .hlist ul ol, .hlist ul ul {&lt;br /&gt;
    display: inline;&lt;br /&gt;
}&lt;br /&gt;
/* Hide empty list items */&lt;br /&gt;
.hlist .mw-empty-li {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
/* Generate interpuncts */&lt;br /&gt;
.hlist dt:after {&lt;br /&gt;
    content: &amp;quot;: &amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd:after,&lt;br /&gt;
.hlist li:after {&lt;br /&gt;
    content: &amp;quot; · &amp;quot;;&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd:last-child:after,&lt;br /&gt;
.hlist dt:last-child:after,&lt;br /&gt;
.hlist li:last-child:after {&lt;br /&gt;
    content: none;&lt;br /&gt;
}&lt;br /&gt;
/* Add parentheses around nested lists */&lt;br /&gt;
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,&lt;br /&gt;
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,&lt;br /&gt;
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {&lt;br /&gt;
    content: &amp;quot; (&amp;quot;;&lt;br /&gt;
    font-weight: normal;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,&lt;br /&gt;
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,&lt;br /&gt;
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {&lt;br /&gt;
    content: &amp;quot;)&amp;quot;;&lt;br /&gt;
    font-weight: normal;&lt;br /&gt;
}&lt;br /&gt;
/* Put ordinals in front of ordered list items */&lt;br /&gt;
.hlist ol {&lt;br /&gt;
    counter-reset: listitem;&lt;br /&gt;
}&lt;br /&gt;
.hlist ol &amp;gt; li {&lt;br /&gt;
    counter-increment: listitem;&lt;br /&gt;
}&lt;br /&gt;
.hlist ol &amp;gt; li:before {&lt;br /&gt;
    content: &amp;quot; &amp;quot; counter(listitem) &amp;quot;\a0&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
.hlist dd ol &amp;gt; li:first-child:before,&lt;br /&gt;
.hlist dt ol &amp;gt; li:first-child:before,&lt;br /&gt;
.hlist li ol &amp;gt; li:first-child:before {&lt;br /&gt;
    content: &amp;quot; (&amp;quot; counter(listitem) &amp;quot;\a0&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Unbulleted lists */&lt;br /&gt;
.plainlist ol,&lt;br /&gt;
.plainlist ul {&lt;br /&gt;
    line-height: inherit;&lt;br /&gt;
    list-style: none none;&lt;br /&gt;
    margin: 0;&lt;br /&gt;
}&lt;br /&gt;
.plainlist ol li,&lt;br /&gt;
.plainlist ul li {&lt;br /&gt;
    margin-bottom: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Default skin for navigation boxes */&lt;br /&gt;
table.navbox {            /* Navbox container style */&lt;br /&gt;
  border: 1px solid #aaa;&lt;br /&gt;
  width: 100%; &lt;br /&gt;
  margin: auto;&lt;br /&gt;
  clear: both;&lt;br /&gt;
  font-size: 88%;&lt;br /&gt;
  text-align: center;&lt;br /&gt;
  padding: 1px;&lt;br /&gt;
}&lt;br /&gt;
table.navbox + table.navbox {  /* Single pixel border between adjacent navboxes */&lt;br /&gt;
  margin-top: -1px;            /* (doesn&#039;t work for IE6, but that&#039;s okay)       */&lt;br /&gt;
}&lt;br /&gt;
.navbox-title,&lt;br /&gt;
.navbox-abovebelow,&lt;br /&gt;
table.navbox th {&lt;br /&gt;
  text-align: center;      /* Title and above/below styles */&lt;br /&gt;
  padding-left: 1em;&lt;br /&gt;
  padding-right: 1em;&lt;br /&gt;
}&lt;br /&gt;
.navbox-group {            /* Group style */&lt;br /&gt;
  white-space: nowrap;&lt;br /&gt;
  text-align: right;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
  padding-left: 1em;&lt;br /&gt;
  padding-right: 1em;&lt;br /&gt;
}&lt;br /&gt;
.navbox, .navbox-subgroup {&lt;br /&gt;
  background: #fdfdfd;     /* Background color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-list {&lt;br /&gt;
  border-color: #fdfdfd;   /* Must match background color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-title,&lt;br /&gt;
table.navbox th {&lt;br /&gt;
  background: #ccccff;     /* Level 1 color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-abovebelow,&lt;br /&gt;
.navbox-group,&lt;br /&gt;
.navbox-subgroup .navbox-title {&lt;br /&gt;
  background: #ddddff;     /* Level 2 color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-subgroup .navbox-group, .navbox-subgroup .navbox-abovebelow {&lt;br /&gt;
  background: #e6e6ff;     /* Level 3 color */&lt;br /&gt;
}&lt;br /&gt;
.navbox-even {&lt;br /&gt;
  background: #f7f7f7;     /* Even row striping */&lt;br /&gt;
}&lt;br /&gt;
.navbox-odd {&lt;br /&gt;
  background: transparent; /* Odd row striping */&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
.collapseButton {          /* &#039;show&#039;/&#039;hide&#039; buttons created dynamically */&lt;br /&gt;
    float: right;          /* by the CollapsibleTables javascript in    */&lt;br /&gt;
    font-weight: normal;   /* [[MediaWiki:Common.js]]are styled here    */&lt;br /&gt;
    text-align: right;     /* so they can be customised.                */&lt;br /&gt;
    width: auto;&lt;br /&gt;
}&lt;br /&gt;
.navbox .collapseButton {  /* In navboxes, the show/hide button balances */&lt;br /&gt;
    width: 6em;            /* the vde links from [[Template:Tnavbar]],   */&lt;br /&gt;
}                          /* so they need to be the same width.         */&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
/* Infoboxes */&lt;br /&gt;
/* When this gets TemplateStyled, move the stuff in [[MediaWiki:Print.css]] too */&lt;br /&gt;
.infobox {&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	color: black;&lt;br /&gt;
	padding: 0.2em;&lt;br /&gt;
	font-size: 88%;&lt;br /&gt;
	line-height: 1.5em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
	.infobox {&lt;br /&gt;
		background-color: #f8f9fa;&lt;br /&gt;
		border-spacing: 3px;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (max-width: 720px) {&lt;br /&gt;
	.infobox {&lt;br /&gt;
		width: 100%;&lt;br /&gt;
	}&lt;br /&gt;
    &lt;br /&gt;
	.infobox .nowrap {&lt;br /&gt;
		white-space: normal;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media (min-width: 720px) {&lt;br /&gt;
	.infobox {&lt;br /&gt;
		/* @noflip */&lt;br /&gt;
		margin: 0.5em 0 0.5em 1em;&lt;br /&gt;
		/* @noflip */&lt;br /&gt;
		float: right;&lt;br /&gt;
		/* @noflip */&lt;br /&gt;
		clear: right;&lt;br /&gt;
		width: 22em;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-header,&lt;br /&gt;
.infobox-label,&lt;br /&gt;
.infobox-above,&lt;br /&gt;
.infobox-full-data,&lt;br /&gt;
.infobox-data,&lt;br /&gt;
.infobox-below,&lt;br /&gt;
.infobox-subheader,&lt;br /&gt;
.infobox-image,&lt;br /&gt;
.infobox-navbar,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox th,&lt;br /&gt;
.infobox td {&lt;br /&gt;
	vertical-align: top;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-label,&lt;br /&gt;
.infobox-data,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox th,&lt;br /&gt;
.infobox td {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Remove .infobox when element selectors above are removed */&lt;br /&gt;
.infobox .infobox-above,&lt;br /&gt;
.infobox .infobox-title,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox caption {&lt;br /&gt;
	font-size: 125%;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-title,&lt;br /&gt;
/* Remove element selector when every .infobox thing is using the standard module/templates  */&lt;br /&gt;
.infobox caption {&lt;br /&gt;
	padding: 0.2em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Remove .infobox when element selectors above are removed */&lt;br /&gt;
.infobox .infobox-header,&lt;br /&gt;
.infobox .infobox-subheader,&lt;br /&gt;
.infobox .infobox-image,&lt;br /&gt;
.infobox .infobox-full-data,&lt;br /&gt;
.infobox .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Remove .infobox when element selectors above are removed */&lt;br /&gt;
.infobox .infobox-navbar {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Cell sizes for ambox/tmbox/imbox/cmbox/ombox/fmbox/dmbox message boxes */&lt;br /&gt;
th.mbox-text, td.mbox-text {   /* The message body cell(s) */&lt;br /&gt;
	border: none;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 0.25em 0.9em;     /* 0.9em left/right */&lt;br /&gt;
	width: 100%;               /* Make all mboxes the same width regardless of text length */&lt;br /&gt;
}&lt;br /&gt;
td.mbox-image {                /* The left image cell */&lt;br /&gt;
	border: none;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0 2px 0.9em;  /* 0.9em left, 0px right */&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
td.mbox-imageright {           /* The right image cell */&lt;br /&gt;
	border: none;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0.9em 2px 0;  /* 0px left, 0.9em right */&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
td.mbox-empty-cell {           /* An empty narrow cell */&lt;br /&gt;
	border: none;&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	width: 1px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Article message box styles */&lt;br /&gt;
table.ambox {&lt;br /&gt;
	margin: 0 10%;                  /* 10% = Will not overlap with other elements */&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #36c;  /* Default &amp;quot;notice&amp;quot; blue */&lt;br /&gt;
	background-color: #fbfbfb;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
table.ambox + table.ambox {      /* Single border between stacked boxes. */&lt;br /&gt;
	margin-top: -1px;&lt;br /&gt;
}&lt;br /&gt;
.ambox th.mbox-text,&lt;br /&gt;
.ambox td.mbox-text {            /* The message body cell(s) */&lt;br /&gt;
	padding: 0.25em 0.5em;       /* 0.5em left/right */&lt;br /&gt;
}&lt;br /&gt;
.ambox td.mbox-image {           /* The left image cell */&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0 2px 0.5em;    /* 0.5em left, 0px right */&lt;br /&gt;
}&lt;br /&gt;
.ambox td.mbox-imageright {      /* The right image cell */&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	padding: 2px 0.5em 2px 0;    /* 0px left, 0.5em right */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.ambox-notice {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #36c;       /* Blue */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-speedy {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;          /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-delete {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-content {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-style {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-move {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.ambox-protection {&lt;br /&gt;
	/* @noflip */&lt;br /&gt;
	border-left: 10px solid #a2a9b1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Image message box styles */&lt;br /&gt;
table.imbox {&lt;br /&gt;
	margin: 4px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 3px solid #36c;    /* Default &amp;quot;notice&amp;quot; blue */&lt;br /&gt;
	background-color: #fbfbfb;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
.imbox .mbox-text .imbox {  /* For imboxes inside imbox-text cells. */&lt;br /&gt;
	margin: 0 -0.5em;       /* 0.9 - 0.5 = 0.4em left/right.        */&lt;br /&gt;
	display: block;         /* Fix for webkit to force 100% width.  */&lt;br /&gt;
}&lt;br /&gt;
.mbox-inside .imbox {       /* For imboxes inside other templates.  */&lt;br /&gt;
	margin: 4px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.imbox-notice {&lt;br /&gt;
	border: 3px solid #36c;       /* Blue */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-speedy {&lt;br /&gt;
	border: 3px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-delete {&lt;br /&gt;
	border: 3px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-content {&lt;br /&gt;
	border: 3px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-style {&lt;br /&gt;
	border: 3px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-move {&lt;br /&gt;
	border: 3px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-protection {&lt;br /&gt;
	border: 3px solid #a2a9b1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-license {&lt;br /&gt;
	border: 3px solid #88a;       /* Dark gray */&lt;br /&gt;
	background-color: #f7f8ff;    /* Light gray */&lt;br /&gt;
}&lt;br /&gt;
table.imbox-featured {&lt;br /&gt;
	border: 3px solid #cba135;    /* Brown-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Category message box styles */&lt;br /&gt;
table.cmbox {&lt;br /&gt;
	margin: 3px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	background-color: #dfe8ff;    /* Default &amp;quot;notice&amp;quot; blue */&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.cmbox-notice {&lt;br /&gt;
	background-color: #d8e8ff;    /* Blue */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-speedy {&lt;br /&gt;
	margin-top: 4px;&lt;br /&gt;
	margin-bottom: 4px;&lt;br /&gt;
	border: 4px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #ffdbdb;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-delete {&lt;br /&gt;
	background-color: #ffdbdb;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-content {&lt;br /&gt;
	background-color: #ffe7ce;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-style {&lt;br /&gt;
	background-color: #fff9db;    /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-move {&lt;br /&gt;
	background-color: #e4d8ff;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.cmbox-protection {&lt;br /&gt;
	background-color: #efefe1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Other pages message box styles */&lt;br /&gt;
table.ombox {&lt;br /&gt;
	margin: 4px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 1px solid #a2a9b1;    /* Default &amp;quot;notice&amp;quot; gray */&lt;br /&gt;
	background-color: #f8f9fa;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.ombox-notice {&lt;br /&gt;
	border: 1px solid #a2a9b1;    /* Gray */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-speedy {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-delete {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-content {&lt;br /&gt;
	border: 1px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-style {&lt;br /&gt;
	border: 1px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-move {&lt;br /&gt;
	border: 1px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.ombox-protection {&lt;br /&gt;
	border: 2px solid #a2a9b1;    /* Gray-gold */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Talk page message box styles */&lt;br /&gt;
table.tmbox {&lt;br /&gt;
	margin: 4px 10%;&lt;br /&gt;
	border-collapse: collapse;&lt;br /&gt;
	border: 1px solid #c0c090;    /* Default &amp;quot;notice&amp;quot; gray-brown */&lt;br /&gt;
	background-color: #f8eaba;&lt;br /&gt;
	min-width: 80%;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
.tmbox.mbox-small {&lt;br /&gt;
	min-width: 0;                /* reset the min-width of tmbox above        */&lt;br /&gt;
}&lt;br /&gt;
.mediawiki .mbox-inside .tmbox { /* For tmboxes inside other templates. The &amp;quot;mediawiki&amp;quot; class ensures that */&lt;br /&gt;
	margin: 2px 0;               /* this declaration overrides other styles (including mbox-small above)   */&lt;br /&gt;
	width: 100%;                 /* For Safari and Opera */&lt;br /&gt;
}&lt;br /&gt;
.mbox-inside .tmbox.mbox-small { /* &amp;quot;small&amp;quot; tmboxes should not be small when  */&lt;br /&gt;
	line-height: 1.5em;          /* also &amp;quot;nested&amp;quot;, so reset styles that are   */&lt;br /&gt;
	font-size: 100%;             /* set in &amp;quot;mbox-small&amp;quot; above.                */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
table.tmbox-speedy {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
	background-color: #fee7e6;    /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-delete {&lt;br /&gt;
	border: 2px solid #b32424;    /* Red */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-content {&lt;br /&gt;
	border: 2px solid #f28500;    /* Orange */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-style {&lt;br /&gt;
	border: 2px solid #fc3;       /* Yellow */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-move {&lt;br /&gt;
	border: 2px solid #9932cc;    /* Purple */&lt;br /&gt;
}&lt;br /&gt;
table.tmbox-protection,&lt;br /&gt;
table.tmbox-notice {&lt;br /&gt;
	border: 1px solid #c0c090;    /* Gray-brown */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Footer and header message box styles */&lt;br /&gt;
table.fmbox {&lt;br /&gt;
	clear: both;&lt;br /&gt;
	margin: 0.2em 0;&lt;br /&gt;
	width: 100%;&lt;br /&gt;
	border: 1px solid #a2a9b1;&lt;br /&gt;
	background-color: #f8f9fa;     /* Default &amp;quot;system&amp;quot; gray */&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;br /&gt;
table.fmbox-system {&lt;br /&gt;
	background-color: #f8f9fa;&lt;br /&gt;
}&lt;br /&gt;
table.fmbox-warning {&lt;br /&gt;
	border: 1px solid #bb7070;  /* Dark pink */&lt;br /&gt;
	background-color: #ffdbdb;  /* Pink */&lt;br /&gt;
}&lt;br /&gt;
table.fmbox-editnotice {&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
/* Div based &amp;quot;warning&amp;quot; style fmbox messages. */&lt;br /&gt;
div.mw-warning-with-logexcerpt,&lt;br /&gt;
div.mw-lag-warn-high,&lt;br /&gt;
div.mw-cascadeprotectedwarning,&lt;br /&gt;
div#mw-protect-cascadeon,&lt;br /&gt;
div.titleblacklist-warning,&lt;br /&gt;
div.locked-warning {&lt;br /&gt;
	clear: both;&lt;br /&gt;
	margin: 0.2em 0;&lt;br /&gt;
	border: 1px solid #bb7070;&lt;br /&gt;
	background-color: #ffdbdb;&lt;br /&gt;
	padding: 0.25em 0.9em;&lt;br /&gt;
	box-sizing: border-box;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=182</id>
		<title>Module:Infobox/styles.css</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=182"/>
		<updated>2024-09-08T18:13:36Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Scorpia changed the content model of the page Module:Infobox/styles.css from &amp;quot;CSS&amp;quot; to &amp;quot;Sanitised CSS&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* {{pp|small=y}} */&lt;br /&gt;
/*&lt;br /&gt;
 * This TemplateStyles sheet deliberately does NOT include the full set of&lt;br /&gt;
 * infobox styles. We are still working to migrate all of the manual&lt;br /&gt;
 * infoboxes. See [[MediaWiki talk:Common.css/to do#Infobox]]&lt;br /&gt;
 * DO NOT ADD THEM HERE&lt;br /&gt;
 */&lt;br /&gt;
/*&lt;br /&gt;
 * not strictly certain these styles are necessary since the modules now&lt;br /&gt;
 * exclusively output infobox-subbox or infobox, not both&lt;br /&gt;
 * just replicating the module faithfully&lt;br /&gt;
 */&lt;br /&gt;
.infobox-subbox {&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	border: none;&lt;br /&gt;
	margin: -3px;&lt;br /&gt;
	width: auto;&lt;br /&gt;
	min-width: 100%;&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
	clear: none;&lt;br /&gt;
	float: none;&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-3cols-child {&lt;br /&gt;
	margin: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox .navbar {&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* T281642 */&lt;br /&gt;
body.skin-minerva .infobox-header,&lt;br /&gt;
body.skin-minerva .infobox-subheader,&lt;br /&gt;
body.skin-minerva  .infobox-above,&lt;br /&gt;
body.skin-minerva .infobox-title,&lt;br /&gt;
body.skin-minerva  .infobox-image,&lt;br /&gt;
body.skin-minerva  .infobox-full-data,&lt;br /&gt;
body.skin-minerva .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Dark theme: [[William_Wragg]], [[Coral_Castle]] */&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
    html.skin-theme-clientpref-night .infobox-full-data:not(.notheme) &amp;gt; div:not(.notheme)[style] {&lt;br /&gt;
	    background: #1f1f23 !important;&lt;br /&gt;
	      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
	      color: #f8f9fa;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
@media screen and ( prefers-color-scheme: dark) {&lt;br /&gt;
    html.skin-theme-clientpref-os .infobox-full-data:not(.notheme) div:not(.notheme) {&lt;br /&gt;
      background: #1f1f23 !important;&lt;br /&gt;
      / * switch with var( --color-base ) when supported. * /&lt;br /&gt;
      color: #f8f9fa;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Since infobox is a table, many infobox templates take advantage of this to add columns and rows to the infobox itself rather than as part of a new table inside them. This class should be discouraged and removed on the long term, but allows us to at least identify these tables going forward&lt;br /&gt;
Currently in use on: [[Module:Infobox3cols]]&lt;br /&gt;
Fixes issue described in https://phabricator.wikimedia.org/F55300125 on Vector 2022.&lt;br /&gt;
*/&lt;br /&gt;
@media (min-width: 640px) {&lt;br /&gt;
  body.skin--responsive .infobox-table {&lt;br /&gt;
    display: table !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; caption {&lt;br /&gt;
    display: table-caption !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; tbody {&lt;br /&gt;
    display: table-row-group;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table tr {&lt;br /&gt;
    display: table-row !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table th,&lt;br /&gt;
  body.skin--responsive .infobox-table td {&lt;br /&gt;
    padding-left: inherit;&lt;br /&gt;
    padding-right: inherit;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=181</id>
		<title>Module:Infobox/styles.css</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=181"/>
		<updated>2024-09-08T18:13:27Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Acturaly comment out section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* {{pp|small=y}} */&lt;br /&gt;
/*&lt;br /&gt;
 * This TemplateStyles sheet deliberately does NOT include the full set of&lt;br /&gt;
 * infobox styles. We are still working to migrate all of the manual&lt;br /&gt;
 * infoboxes. See [[MediaWiki talk:Common.css/to do#Infobox]]&lt;br /&gt;
 * DO NOT ADD THEM HERE&lt;br /&gt;
 */&lt;br /&gt;
/*&lt;br /&gt;
 * not strictly certain these styles are necessary since the modules now&lt;br /&gt;
 * exclusively output infobox-subbox or infobox, not both&lt;br /&gt;
 * just replicating the module faithfully&lt;br /&gt;
 */&lt;br /&gt;
.infobox-subbox {&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	border: none;&lt;br /&gt;
	margin: -3px;&lt;br /&gt;
	width: auto;&lt;br /&gt;
	min-width: 100%;&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
	clear: none;&lt;br /&gt;
	float: none;&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-3cols-child {&lt;br /&gt;
	margin: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox .navbar {&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* T281642 */&lt;br /&gt;
body.skin-minerva .infobox-header,&lt;br /&gt;
body.skin-minerva .infobox-subheader,&lt;br /&gt;
body.skin-minerva  .infobox-above,&lt;br /&gt;
body.skin-minerva .infobox-title,&lt;br /&gt;
body.skin-minerva  .infobox-image,&lt;br /&gt;
body.skin-minerva  .infobox-full-data,&lt;br /&gt;
body.skin-minerva .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Dark theme: [[William_Wragg]], [[Coral_Castle]] */&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
    html.skin-theme-clientpref-night .infobox-full-data:not(.notheme) &amp;gt; div:not(.notheme)[style] {&lt;br /&gt;
	    background: #1f1f23 !important;&lt;br /&gt;
	      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
	      color: #f8f9fa;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
@media screen and ( prefers-color-scheme: dark) {&lt;br /&gt;
    html.skin-theme-clientpref-os .infobox-full-data:not(.notheme) div:not(.notheme) {&lt;br /&gt;
      background: #1f1f23 !important;&lt;br /&gt;
      / * switch with var( --color-base ) when supported. * /&lt;br /&gt;
      color: #f8f9fa;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Since infobox is a table, many infobox templates take advantage of this to add columns and rows to the infobox itself rather than as part of a new table inside them. This class should be discouraged and removed on the long term, but allows us to at least identify these tables going forward&lt;br /&gt;
Currently in use on: [[Module:Infobox3cols]]&lt;br /&gt;
Fixes issue described in https://phabricator.wikimedia.org/F55300125 on Vector 2022.&lt;br /&gt;
*/&lt;br /&gt;
@media (min-width: 640px) {&lt;br /&gt;
  body.skin--responsive .infobox-table {&lt;br /&gt;
    display: table !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; caption {&lt;br /&gt;
    display: table-caption !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; tbody {&lt;br /&gt;
    display: table-row-group;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table tr {&lt;br /&gt;
    display: table-row !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table th,&lt;br /&gt;
  body.skin--responsive .infobox-table td {&lt;br /&gt;
    padding-left: inherit;&lt;br /&gt;
    padding-right: inherit;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=180</id>
		<title>Module:Infobox/styles.css</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=180"/>
		<updated>2024-09-08T18:12:31Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Disable part generating error from templateStyles&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* {{pp|small=y}} */&lt;br /&gt;
/*&lt;br /&gt;
 * This TemplateStyles sheet deliberately does NOT include the full set of&lt;br /&gt;
 * infobox styles. We are still working to migrate all of the manual&lt;br /&gt;
 * infoboxes. See [[MediaWiki talk:Common.css/to do#Infobox]]&lt;br /&gt;
 * DO NOT ADD THEM HERE&lt;br /&gt;
 */&lt;br /&gt;
/*&lt;br /&gt;
 * not strictly certain these styles are necessary since the modules now&lt;br /&gt;
 * exclusively output infobox-subbox or infobox, not both&lt;br /&gt;
 * just replicating the module faithfully&lt;br /&gt;
 */&lt;br /&gt;
.infobox-subbox {&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	border: none;&lt;br /&gt;
	margin: -3px;&lt;br /&gt;
	width: auto;&lt;br /&gt;
	min-width: 100%;&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
	clear: none;&lt;br /&gt;
	float: none;&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-3cols-child {&lt;br /&gt;
	margin: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox .navbar {&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* T281642 */&lt;br /&gt;
body.skin-minerva .infobox-header,&lt;br /&gt;
body.skin-minerva .infobox-subheader,&lt;br /&gt;
body.skin-minerva  .infobox-above,&lt;br /&gt;
body.skin-minerva .infobox-title,&lt;br /&gt;
body.skin-minerva  .infobox-image,&lt;br /&gt;
body.skin-minerva  .infobox-full-data,&lt;br /&gt;
body.skin-minerva .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Dark theme: [[William_Wragg]], [[Coral_Castle]] */&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
    html.skin-theme-clientpref-night .infobox-full-data:not(.notheme) &amp;gt; div:not(.notheme)[style] {&lt;br /&gt;
	    background: #1f1f23 !important;&lt;br /&gt;
	      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
	      color: #f8f9fa;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
@media screen and ( prefers-color-scheme: dark) {&lt;br /&gt;
    html.skin-theme-clientpref-os .infobox-full-data:not(.notheme) div:not(.notheme) {&lt;br /&gt;
      background: #1f1f23 !important;&lt;br /&gt;
      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
      color: #f8f9fa;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Since infobox is a table, many infobox templates take advantage of this to add columns and rows to the infobox itself rather than as part of a new table inside them. This class should be discouraged and removed on the long term, but allows us to at least identify these tables going forward&lt;br /&gt;
Currently in use on: [[Module:Infobox3cols]]&lt;br /&gt;
Fixes issue described in https://phabricator.wikimedia.org/F55300125 on Vector 2022.&lt;br /&gt;
*/&lt;br /&gt;
@media (min-width: 640px) {&lt;br /&gt;
  body.skin--responsive .infobox-table {&lt;br /&gt;
    display: table !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; caption {&lt;br /&gt;
    display: table-caption !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; tbody {&lt;br /&gt;
    display: table-row-group;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table tr {&lt;br /&gt;
    display: table-row !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table th,&lt;br /&gt;
  body.skin--responsive .infobox-table td {&lt;br /&gt;
    padding-left: inherit;&lt;br /&gt;
    padding-right: inherit;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Template:Infobox_tool&amp;diff=179</id>
		<title>Template:Infobox tool</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Template:Infobox_tool&amp;diff=179"/>
		<updated>2024-09-08T17:57:38Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added inital Tool infobox&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox&lt;br /&gt;
| title    = {{{name|&amp;lt;includeonly&amp;gt;{{PAGENAME}}&amp;lt;/includeonly&amp;gt;}}}&lt;br /&gt;
| image    = {{{image|}}}&lt;br /&gt;
| caption  = {{{caption|}}}&lt;br /&gt;
&lt;br /&gt;
| label1   = Type&lt;br /&gt;
| data1    = {{{type|}}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{#if: {{{image|}}} | | &amp;lt;includeonly&amp;gt;[[Category:Pages with missing tool image]]&amp;lt;/includeonly&amp;gt;}}&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&amp;lt;templatedata&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;description&amp;quot;: &amp;quot;Infobox for tools&amp;quot;,&lt;br /&gt;
	&amp;quot;params&amp;quot;: {&lt;br /&gt;
		&amp;quot;name&amp;quot;: {&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;name of the tool (defaults to page name if not set)&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;image&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool image&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Image of the tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;content&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;caption&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Image caption&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;caption for the tool image&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;type&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Tool Type&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Tupe of tool&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;line&amp;quot;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/templatedata&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=178</id>
		<title>Module:Infobox/styles.css</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=178"/>
		<updated>2024-09-08T17:48:13Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Scorpia changed the content model of the page Module:Infobox/styles.css from &amp;quot;wikitext&amp;quot; to &amp;quot;CSS&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* {{pp|small=y}} */&lt;br /&gt;
/*&lt;br /&gt;
 * This TemplateStyles sheet deliberately does NOT include the full set of&lt;br /&gt;
 * infobox styles. We are still working to migrate all of the manual&lt;br /&gt;
 * infoboxes. See [[MediaWiki talk:Common.css/to do#Infobox]]&lt;br /&gt;
 * DO NOT ADD THEM HERE&lt;br /&gt;
 */&lt;br /&gt;
/*&lt;br /&gt;
 * not strictly certain these styles are necessary since the modules now&lt;br /&gt;
 * exclusively output infobox-subbox or infobox, not both&lt;br /&gt;
 * just replicating the module faithfully&lt;br /&gt;
 */&lt;br /&gt;
.infobox-subbox {&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	border: none;&lt;br /&gt;
	margin: -3px;&lt;br /&gt;
	width: auto;&lt;br /&gt;
	min-width: 100%;&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
	clear: none;&lt;br /&gt;
	float: none;&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-3cols-child {&lt;br /&gt;
	margin: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox .navbar {&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* T281642 */&lt;br /&gt;
body.skin-minerva .infobox-header,&lt;br /&gt;
body.skin-minerva .infobox-subheader,&lt;br /&gt;
body.skin-minerva  .infobox-above,&lt;br /&gt;
body.skin-minerva .infobox-title,&lt;br /&gt;
body.skin-minerva  .infobox-image,&lt;br /&gt;
body.skin-minerva  .infobox-full-data,&lt;br /&gt;
body.skin-minerva .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Dark theme: [[William_Wragg]], [[Coral_Castle]] */&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
    html.skin-theme-clientpref-night .infobox-full-data:not(.notheme) &amp;gt; div:not(.notheme)[style] {&lt;br /&gt;
	    background: #1f1f23 !important;&lt;br /&gt;
	      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
	      color: #f8f9fa;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
@media screen and ( prefers-color-scheme: dark) {&lt;br /&gt;
    html.skin-theme-clientpref-os .infobox-full-data:not(.notheme) div:not(.notheme) {&lt;br /&gt;
      background: #1f1f23 !important;&lt;br /&gt;
      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
      color: #f8f9fa;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Since infobox is a table, many infobox templates take advantage of this to add columns and rows to the infobox itself rather than as part of a new table inside them. This class should be discouraged and removed on the long term, but allows us to at least identify these tables going forward&lt;br /&gt;
Currently in use on: [[Module:Infobox3cols]]&lt;br /&gt;
Fixes issue described in https://phabricator.wikimedia.org/F55300125 on Vector 2022.&lt;br /&gt;
*/&lt;br /&gt;
@media (min-width: 640px) {&lt;br /&gt;
  body.skin--responsive .infobox-table {&lt;br /&gt;
    display: table !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; caption {&lt;br /&gt;
    display: table-caption !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; tbody {&lt;br /&gt;
    display: table-row-group;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table tr {&lt;br /&gt;
    display: table-row !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table th,&lt;br /&gt;
  body.skin--responsive .infobox-table td {&lt;br /&gt;
    padding-left: inherit;&lt;br /&gt;
    padding-right: inherit;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=177</id>
		<title>Module:Infobox/styles.css</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=177"/>
		<updated>2024-09-08T17:46:44Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Scorpia moved page Template:Infobox/styles.css to Module:Infobox/styles.css without leaving a redirect&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* {{pp|small=y}} */&lt;br /&gt;
/*&lt;br /&gt;
 * This TemplateStyles sheet deliberately does NOT include the full set of&lt;br /&gt;
 * infobox styles. We are still working to migrate all of the manual&lt;br /&gt;
 * infoboxes. See [[MediaWiki talk:Common.css/to do#Infobox]]&lt;br /&gt;
 * DO NOT ADD THEM HERE&lt;br /&gt;
 */&lt;br /&gt;
/*&lt;br /&gt;
 * not strictly certain these styles are necessary since the modules now&lt;br /&gt;
 * exclusively output infobox-subbox or infobox, not both&lt;br /&gt;
 * just replicating the module faithfully&lt;br /&gt;
 */&lt;br /&gt;
.infobox-subbox {&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	border: none;&lt;br /&gt;
	margin: -3px;&lt;br /&gt;
	width: auto;&lt;br /&gt;
	min-width: 100%;&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
	clear: none;&lt;br /&gt;
	float: none;&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-3cols-child {&lt;br /&gt;
	margin: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox .navbar {&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* T281642 */&lt;br /&gt;
body.skin-minerva .infobox-header,&lt;br /&gt;
body.skin-minerva .infobox-subheader,&lt;br /&gt;
body.skin-minerva  .infobox-above,&lt;br /&gt;
body.skin-minerva .infobox-title,&lt;br /&gt;
body.skin-minerva  .infobox-image,&lt;br /&gt;
body.skin-minerva  .infobox-full-data,&lt;br /&gt;
body.skin-minerva .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Dark theme: [[William_Wragg]], [[Coral_Castle]] */&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
    html.skin-theme-clientpref-night .infobox-full-data:not(.notheme) &amp;gt; div:not(.notheme)[style] {&lt;br /&gt;
	    background: #1f1f23 !important;&lt;br /&gt;
	      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
	      color: #f8f9fa;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
@media screen and ( prefers-color-scheme: dark) {&lt;br /&gt;
    html.skin-theme-clientpref-os .infobox-full-data:not(.notheme) div:not(.notheme) {&lt;br /&gt;
      background: #1f1f23 !important;&lt;br /&gt;
      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
      color: #f8f9fa;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Since infobox is a table, many infobox templates take advantage of this to add columns and rows to the infobox itself rather than as part of a new table inside them. This class should be discouraged and removed on the long term, but allows us to at least identify these tables going forward&lt;br /&gt;
Currently in use on: [[Module:Infobox3cols]]&lt;br /&gt;
Fixes issue described in https://phabricator.wikimedia.org/F55300125 on Vector 2022.&lt;br /&gt;
*/&lt;br /&gt;
@media (min-width: 640px) {&lt;br /&gt;
  body.skin--responsive .infobox-table {&lt;br /&gt;
    display: table !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; caption {&lt;br /&gt;
    display: table-caption !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; tbody {&lt;br /&gt;
    display: table-row-group;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table tr {&lt;br /&gt;
    display: table-row !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table th,&lt;br /&gt;
  body.skin--responsive .infobox-table td {&lt;br /&gt;
    padding-left: inherit;&lt;br /&gt;
    padding-right: inherit;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=176</id>
		<title>Module:Infobox/styles.css</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Module:Infobox/styles.css&amp;diff=176"/>
		<updated>2024-09-08T17:46:32Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Create Infobox css page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* {{pp|small=y}} */&lt;br /&gt;
/*&lt;br /&gt;
 * This TemplateStyles sheet deliberately does NOT include the full set of&lt;br /&gt;
 * infobox styles. We are still working to migrate all of the manual&lt;br /&gt;
 * infoboxes. See [[MediaWiki talk:Common.css/to do#Infobox]]&lt;br /&gt;
 * DO NOT ADD THEM HERE&lt;br /&gt;
 */&lt;br /&gt;
/*&lt;br /&gt;
 * not strictly certain these styles are necessary since the modules now&lt;br /&gt;
 * exclusively output infobox-subbox or infobox, not both&lt;br /&gt;
 * just replicating the module faithfully&lt;br /&gt;
 */&lt;br /&gt;
.infobox-subbox {&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	border: none;&lt;br /&gt;
	margin: -3px;&lt;br /&gt;
	width: auto;&lt;br /&gt;
	min-width: 100%;&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
	clear: none;&lt;br /&gt;
	float: none;&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-3cols-child {&lt;br /&gt;
	margin: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox .navbar {&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* T281642 */&lt;br /&gt;
body.skin-minerva .infobox-header,&lt;br /&gt;
body.skin-minerva .infobox-subheader,&lt;br /&gt;
body.skin-minerva  .infobox-above,&lt;br /&gt;
body.skin-minerva .infobox-title,&lt;br /&gt;
body.skin-minerva  .infobox-image,&lt;br /&gt;
body.skin-minerva  .infobox-full-data,&lt;br /&gt;
body.skin-minerva .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Dark theme: [[William_Wragg]], [[Coral_Castle]] */&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
    html.skin-theme-clientpref-night .infobox-full-data:not(.notheme) &amp;gt; div:not(.notheme)[style] {&lt;br /&gt;
	    background: #1f1f23 !important;&lt;br /&gt;
	      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
	      color: #f8f9fa;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
@media screen and ( prefers-color-scheme: dark) {&lt;br /&gt;
    html.skin-theme-clientpref-os .infobox-full-data:not(.notheme) div:not(.notheme) {&lt;br /&gt;
      background: #1f1f23 !important;&lt;br /&gt;
      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
      color: #f8f9fa;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Since infobox is a table, many infobox templates take advantage of this to add columns and rows to the infobox itself rather than as part of a new table inside them. This class should be discouraged and removed on the long term, but allows us to at least identify these tables going forward&lt;br /&gt;
Currently in use on: [[Module:Infobox3cols]]&lt;br /&gt;
Fixes issue described in https://phabricator.wikimedia.org/F55300125 on Vector 2022.&lt;br /&gt;
*/&lt;br /&gt;
@media (min-width: 640px) {&lt;br /&gt;
  body.skin--responsive .infobox-table {&lt;br /&gt;
    display: table !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; caption {&lt;br /&gt;
    display: table-caption !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; tbody {&lt;br /&gt;
    display: table-row-group;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table tr {&lt;br /&gt;
    display: table-row !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table th,&lt;br /&gt;
  body.skin--responsive .infobox-table td {&lt;br /&gt;
    padding-left: inherit;&lt;br /&gt;
    padding-right: inherit;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Module:Infobox&amp;diff=175</id>
		<title>Module:Infobox</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Module:Infobox&amp;diff=175"/>
		<updated>2024-09-03T20:05:16Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added infobox module&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local p = {}&lt;br /&gt;
local args = {}&lt;br /&gt;
local origArgs = {}&lt;br /&gt;
local root&lt;br /&gt;
local empty_row_categories = {}&lt;br /&gt;
local category_in_empty_row_pattern = &#039;%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:[^]]*]]&#039;&lt;br /&gt;
local has_rows = false&lt;br /&gt;
local lists = {&lt;br /&gt;
	plainlist_t = {&lt;br /&gt;
		patterns = {&lt;br /&gt;
			&#039;^plainlist$&#039;,&lt;br /&gt;
			&#039;%splainlist$&#039;,&lt;br /&gt;
			&#039;^plainlist%s&#039;,&lt;br /&gt;
			&#039;%splainlist%s&#039;&lt;br /&gt;
		},&lt;br /&gt;
		found = false,&lt;br /&gt;
		styles = &#039;Plainlist/styles.css&#039;&lt;br /&gt;
	},&lt;br /&gt;
	hlist_t = {&lt;br /&gt;
		patterns = {&lt;br /&gt;
			&#039;^hlist$&#039;,&lt;br /&gt;
			&#039;%shlist$&#039;,&lt;br /&gt;
			&#039;^hlist%s&#039;,&lt;br /&gt;
			&#039;%shlist%s&#039;&lt;br /&gt;
		},&lt;br /&gt;
		found = false,&lt;br /&gt;
		styles = &#039;Hlist/styles.css&#039;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local function has_list_class(args_to_check)&lt;br /&gt;
	for _, list in pairs(lists) do&lt;br /&gt;
		if not list.found then&lt;br /&gt;
			for _, arg in pairs(args_to_check) do&lt;br /&gt;
				for _, pattern in ipairs(list.patterns) do&lt;br /&gt;
					if mw.ustring.find(arg or &#039;&#039;, pattern) then&lt;br /&gt;
						list.found = true&lt;br /&gt;
						break&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				if list.found then break end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function fixChildBoxes(sval, tt)&lt;br /&gt;
	local function notempty( s ) return s and s:match( &#039;%S&#039; ) end&lt;br /&gt;
	&lt;br /&gt;
	if notempty(sval) then&lt;br /&gt;
		local marker = &#039;&amp;lt;span class=special_infobox_marker&amp;gt;&#039;&lt;br /&gt;
		local s = sval&lt;br /&gt;
		-- start moving templatestyles and categories inside of table rows&lt;br /&gt;
		local slast = &#039;&#039;&lt;br /&gt;
		while slast ~= s do&lt;br /&gt;
			slast = s&lt;br /&gt;
			s = mw.ustring.gsub(s, &#039;(&amp;lt;/[Tt][Rr]%s*&amp;gt;%s*)(%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:[^]]*%]%])&#039;, &#039;%2%1&#039;)&lt;br /&gt;
			s = mw.ustring.gsub(s, &#039;(&amp;lt;/[Tt][Rr]%s*&amp;gt;%s*)(\127[^\127]*UNIQ%-%-templatestyles%-%x+%-QINU[^\127]*\127)&#039;, &#039;%2%1&#039;)&lt;br /&gt;
		end&lt;br /&gt;
		-- end moving templatestyles and categories inside of table rows&lt;br /&gt;
		s = mw.ustring.gsub(s, &#039;(&amp;lt;%s*[Tt][Rr])&#039;, marker .. &#039;%1&#039;)&lt;br /&gt;
		s = mw.ustring.gsub(s, &#039;(&amp;lt;/[Tt][Rr]%s*&amp;gt;)&#039;, &#039;%1&#039; .. marker)&lt;br /&gt;
		if s:match(marker) then&lt;br /&gt;
			s = mw.ustring.gsub(s, marker .. &#039;%s*&#039; .. marker, &#039;&#039;)&lt;br /&gt;
			s = mw.ustring.gsub(s, &#039;([\r\n]|-[^\r\n]*[\r\n])%s*&#039; .. marker, &#039;%1&#039;)&lt;br /&gt;
			s = mw.ustring.gsub(s, marker .. &#039;%s*([\r\n]|-)&#039;, &#039;%1&#039;)&lt;br /&gt;
			s = mw.ustring.gsub(s, &#039;(&amp;lt;/[Cc][Aa][Pp][Tt][Ii][Oo][Nn]%s*&amp;gt;%s*)&#039; .. marker, &#039;%1&#039;)&lt;br /&gt;
			s = mw.ustring.gsub(s, &#039;(&amp;lt;%s*[Tt][Aa][Bb][Ll][Ee][^&amp;lt;&amp;gt;]*&amp;gt;%s*)&#039; .. marker, &#039;%1&#039;)&lt;br /&gt;
			s = mw.ustring.gsub(s, &#039;^(%{|[^\r\n]*[\r\n]%s*)&#039; .. marker, &#039;%1&#039;)&lt;br /&gt;
			s = mw.ustring.gsub(s, &#039;([\r\n]%{|[^\r\n]*[\r\n]%s*)&#039; .. marker, &#039;%1&#039;)&lt;br /&gt;
			s = mw.ustring.gsub(s, marker .. &#039;(%s*&amp;lt;/[Tt][Aa][Bb][Ll][Ee]%s*&amp;gt;)&#039;, &#039;%1&#039;)&lt;br /&gt;
			s = mw.ustring.gsub(s, marker .. &#039;(%s*\n|%})&#039;, &#039;%1&#039;)&lt;br /&gt;
		end&lt;br /&gt;
		if s:match(marker) then&lt;br /&gt;
			local subcells = mw.text.split(s, marker)&lt;br /&gt;
			s = &#039;&#039;&lt;br /&gt;
			for k = 1, #subcells do&lt;br /&gt;
				if k == 1 then&lt;br /&gt;
					s = s .. subcells[k] .. &#039;&amp;lt;/&#039; .. tt .. &#039;&amp;gt;&amp;lt;/tr&amp;gt;&#039;&lt;br /&gt;
				elseif k == #subcells then&lt;br /&gt;
					local rowstyle = &#039; style=&amp;quot;display:none&amp;quot;&#039;&lt;br /&gt;
					if notempty(subcells[k]) then rowstyle = &#039;&#039;	end&lt;br /&gt;
					s = s .. &#039;&amp;lt;tr&#039; .. rowstyle ..&#039;&amp;gt;&amp;lt;&#039; .. tt .. &#039; colspan=2&amp;gt;\n&#039; ..&lt;br /&gt;
						subcells[k]&lt;br /&gt;
				elseif notempty(subcells[k]) then&lt;br /&gt;
					if (k % 2) == 0 then&lt;br /&gt;
						s = s .. subcells[k]&lt;br /&gt;
					else&lt;br /&gt;
						s = s .. &#039;&amp;lt;tr&amp;gt;&amp;lt;&#039; .. tt .. &#039; colspan=2&amp;gt;\n&#039; ..&lt;br /&gt;
							subcells[k] .. &#039;&amp;lt;/&#039; .. tt .. &#039;&amp;gt;&amp;lt;/tr&amp;gt;&#039;&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		-- the next two lines add a newline at the end of lists for the PHP parser&lt;br /&gt;
		-- [[Special:Diff/849054481]]&lt;br /&gt;
		-- remove when [[:phab:T191516]] is fixed or OBE&lt;br /&gt;
		s = mw.ustring.gsub(s, &#039;([\r\n][%*#;:][^\r\n]*)$&#039;, &#039;%1\n&#039;)&lt;br /&gt;
		s = mw.ustring.gsub(s, &#039;^([%*#;:][^\r\n]*)$&#039;, &#039;%1\n&#039;)&lt;br /&gt;
		s = mw.ustring.gsub(s, &#039;^([%*#;:])&#039;, &#039;\n%1&#039;)&lt;br /&gt;
		s = mw.ustring.gsub(s, &#039;^(%{%|)&#039;, &#039;\n%1&#039;)&lt;br /&gt;
		return s&lt;br /&gt;
	else&lt;br /&gt;
		return sval&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Cleans empty tables&lt;br /&gt;
local function cleanInfobox()&lt;br /&gt;
	root = tostring(root)&lt;br /&gt;
	if has_rows == false then&lt;br /&gt;
		root = mw.ustring.gsub(root, &#039;&amp;lt;table[^&amp;lt;&amp;gt;]*&amp;gt;%s*&amp;lt;/table&amp;gt;&#039;, &#039;&#039;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Returns the union of the values of two tables, as a sequence.&lt;br /&gt;
local function union(t1, t2)&lt;br /&gt;
&lt;br /&gt;
	local vals = {}&lt;br /&gt;
	for k, v in pairs(t1) do&lt;br /&gt;
		vals[v] = true&lt;br /&gt;
	end&lt;br /&gt;
	for k, v in pairs(t2) do&lt;br /&gt;
		vals[v] = true&lt;br /&gt;
	end&lt;br /&gt;
	local ret = {}&lt;br /&gt;
	for k, v in pairs(vals) do&lt;br /&gt;
		table.insert(ret, k)&lt;br /&gt;
	end&lt;br /&gt;
	return ret&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Returns a table containing the numbers of the arguments that exist&lt;br /&gt;
-- for the specified prefix. For example, if the prefix was &#039;data&#039;, and&lt;br /&gt;
-- &#039;data1&#039;, &#039;data2&#039;, and &#039;data5&#039; exist, it would return {1, 2, 5}.&lt;br /&gt;
local function getArgNums(prefix)&lt;br /&gt;
	local nums = {}&lt;br /&gt;
	for k, v in pairs(args) do&lt;br /&gt;
		local num = tostring(k):match(&#039;^&#039; .. prefix .. &#039;([1-9]%d*)$&#039;)&lt;br /&gt;
		if num then table.insert(nums, tonumber(num)) end&lt;br /&gt;
	end&lt;br /&gt;
	table.sort(nums)&lt;br /&gt;
	return nums&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Adds a row to the infobox, with either a header cell&lt;br /&gt;
-- or a label/data cell combination.&lt;br /&gt;
local function addRow(rowArgs)&lt;br /&gt;
	&lt;br /&gt;
	if rowArgs.header and rowArgs.header ~= &#039;_BLANK_&#039; then&lt;br /&gt;
		has_rows = true&lt;br /&gt;
		has_list_class({ rowArgs.rowclass, rowArgs.class, args.headerclass })&lt;br /&gt;
		&lt;br /&gt;
		root&lt;br /&gt;
			:tag(&#039;tr&#039;)&lt;br /&gt;
				:addClass(rowArgs.rowclass)&lt;br /&gt;
				:cssText(rowArgs.rowstyle)&lt;br /&gt;
				:tag(&#039;th&#039;)&lt;br /&gt;
					:attr(&#039;colspan&#039;, &#039;2&#039;)&lt;br /&gt;
					:addClass(&#039;infobox-header&#039;)&lt;br /&gt;
					:addClass(rowArgs.class)&lt;br /&gt;
					:addClass(args.headerclass)&lt;br /&gt;
					-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; .infobox-header&lt;br /&gt;
					:cssText(args.headerstyle)&lt;br /&gt;
					:cssText(rowArgs.rowcellstyle)&lt;br /&gt;
					:wikitext(fixChildBoxes(rowArgs.header, &#039;th&#039;))&lt;br /&gt;
		if rowArgs.data then&lt;br /&gt;
			root:wikitext(&lt;br /&gt;
				&#039;[[Category:Pages using infobox templates with ignored data cells]]&#039;&lt;br /&gt;
			)&lt;br /&gt;
		end&lt;br /&gt;
	elseif rowArgs.data and rowArgs.data:gsub(category_in_empty_row_pattern, &#039;&#039;):match(&#039;^%S&#039;) then&lt;br /&gt;
		has_rows = true&lt;br /&gt;
		has_list_class({ rowArgs.rowclass, rowArgs.class })&lt;br /&gt;
		&lt;br /&gt;
		local row = root:tag(&#039;tr&#039;)&lt;br /&gt;
		row:addClass(rowArgs.rowclass)&lt;br /&gt;
		row:cssText(rowArgs.rowstyle)&lt;br /&gt;
		if rowArgs.label then&lt;br /&gt;
			row&lt;br /&gt;
				:tag(&#039;th&#039;)&lt;br /&gt;
					:attr(&#039;scope&#039;, &#039;row&#039;)&lt;br /&gt;
					:addClass(&#039;infobox-label&#039;)&lt;br /&gt;
					-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; .infobox-label&lt;br /&gt;
					:cssText(args.labelstyle)&lt;br /&gt;
					:cssText(rowArgs.rowcellstyle)&lt;br /&gt;
					:wikitext(rowArgs.label)&lt;br /&gt;
					:done()&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		local dataCell = row:tag(&#039;td&#039;)&lt;br /&gt;
		dataCell&lt;br /&gt;
			:attr(&#039;colspan&#039;, not rowArgs.label and &#039;2&#039; or nil)&lt;br /&gt;
			:addClass(not rowArgs.label and &#039;infobox-full-data&#039; or &#039;infobox-data&#039;)&lt;br /&gt;
			:addClass(rowArgs.class)&lt;br /&gt;
			-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; .infobox(-full)-data&lt;br /&gt;
			:cssText(rowArgs.datastyle)&lt;br /&gt;
			:cssText(rowArgs.rowcellstyle)&lt;br /&gt;
			:wikitext(fixChildBoxes(rowArgs.data, &#039;td&#039;))&lt;br /&gt;
	else&lt;br /&gt;
		table.insert(empty_row_categories, rowArgs.data or &#039;&#039;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderTitle()&lt;br /&gt;
	if not args.title then return end&lt;br /&gt;
&lt;br /&gt;
	has_rows = true&lt;br /&gt;
	has_list_class({args.titleclass})&lt;br /&gt;
	&lt;br /&gt;
	root&lt;br /&gt;
		:tag(&#039;caption&#039;)&lt;br /&gt;
			:addClass(&#039;infobox-title&#039;)&lt;br /&gt;
			:addClass(args.titleclass)&lt;br /&gt;
			-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; .infobox-title&lt;br /&gt;
			:cssText(args.titlestyle)&lt;br /&gt;
			:wikitext(args.title)&lt;br /&gt;
	&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderAboveRow()&lt;br /&gt;
	if not args.above then return end&lt;br /&gt;
&lt;br /&gt;
	has_rows = true&lt;br /&gt;
	has_list_class({ args.aboveclass })&lt;br /&gt;
	&lt;br /&gt;
	root&lt;br /&gt;
		:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;th&#039;)&lt;br /&gt;
				:attr(&#039;colspan&#039;, &#039;2&#039;)&lt;br /&gt;
				:addClass(&#039;infobox-above&#039;)&lt;br /&gt;
				:addClass(args.aboveclass)&lt;br /&gt;
				-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; .infobox-above&lt;br /&gt;
				:cssText(args.abovestyle)&lt;br /&gt;
				:wikitext(fixChildBoxes(args.above,&#039;th&#039;))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderBelowRow()&lt;br /&gt;
	if not args.below then return end&lt;br /&gt;
&lt;br /&gt;
	has_rows = true&lt;br /&gt;
	has_list_class({ args.belowclass })&lt;br /&gt;
	&lt;br /&gt;
	root&lt;br /&gt;
		:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:attr(&#039;colspan&#039;, &#039;2&#039;)&lt;br /&gt;
				:addClass(&#039;infobox-below&#039;)&lt;br /&gt;
				:addClass(args.belowclass)&lt;br /&gt;
				-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; .infobox-below&lt;br /&gt;
				:cssText(args.belowstyle)&lt;br /&gt;
				:wikitext(fixChildBoxes(args.below,&#039;td&#039;))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function addSubheaderRow(subheaderArgs)&lt;br /&gt;
	if subheaderArgs.data and&lt;br /&gt;
		subheaderArgs.data:gsub(category_in_empty_row_pattern, &#039;&#039;):match(&#039;^%S&#039;) then&lt;br /&gt;
		has_rows = true&lt;br /&gt;
		has_list_class({ subheaderArgs.rowclass, subheaderArgs.class })&lt;br /&gt;
		&lt;br /&gt;
		local row = root:tag(&#039;tr&#039;)&lt;br /&gt;
		row:addClass(subheaderArgs.rowclass)&lt;br /&gt;
&lt;br /&gt;
		local dataCell = row:tag(&#039;td&#039;)&lt;br /&gt;
		dataCell&lt;br /&gt;
			:attr(&#039;colspan&#039;, &#039;2&#039;)&lt;br /&gt;
			:addClass(&#039;infobox-subheader&#039;)&lt;br /&gt;
			:addClass(subheaderArgs.class)&lt;br /&gt;
			:cssText(subheaderArgs.datastyle)&lt;br /&gt;
			:cssText(subheaderArgs.rowcellstyle)&lt;br /&gt;
			:wikitext(fixChildBoxes(subheaderArgs.data, &#039;td&#039;))&lt;br /&gt;
	else&lt;br /&gt;
		table.insert(empty_row_categories, subheaderArgs.data or &#039;&#039;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderSubheaders()&lt;br /&gt;
	if args.subheader then&lt;br /&gt;
		args.subheader1 = args.subheader&lt;br /&gt;
	end&lt;br /&gt;
	if args.subheaderrowclass then&lt;br /&gt;
		args.subheaderrowclass1 = args.subheaderrowclass&lt;br /&gt;
	end&lt;br /&gt;
	local subheadernums = getArgNums(&#039;subheader&#039;)&lt;br /&gt;
	for k, num in ipairs(subheadernums) do&lt;br /&gt;
		addSubheaderRow({&lt;br /&gt;
			data = args[&#039;subheader&#039; .. tostring(num)],&lt;br /&gt;
			-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; .infobox-subheader&lt;br /&gt;
			datastyle = args.subheaderstyle,&lt;br /&gt;
			rowcellstyle = args[&#039;subheaderstyle&#039; .. tostring(num)],&lt;br /&gt;
			class = args.subheaderclass,&lt;br /&gt;
			rowclass = args[&#039;subheaderrowclass&#039; .. tostring(num)]&lt;br /&gt;
		})&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function addImageRow(imageArgs)&lt;br /&gt;
&lt;br /&gt;
	if imageArgs.data and&lt;br /&gt;
		imageArgs.data:gsub(category_in_empty_row_pattern, &#039;&#039;):match(&#039;^%S&#039;) then&lt;br /&gt;
&lt;br /&gt;
		has_rows = true&lt;br /&gt;
		has_list_class({ imageArgs.rowclass, imageArgs.class })&lt;br /&gt;
		&lt;br /&gt;
		local row = root:tag(&#039;tr&#039;)&lt;br /&gt;
		row:addClass(imageArgs.rowclass)&lt;br /&gt;
&lt;br /&gt;
		local dataCell = row:tag(&#039;td&#039;)&lt;br /&gt;
		dataCell&lt;br /&gt;
			:attr(&#039;colspan&#039;, &#039;2&#039;)&lt;br /&gt;
			:addClass(&#039;infobox-image&#039;)&lt;br /&gt;
			:addClass(imageArgs.class)&lt;br /&gt;
			:cssText(imageArgs.datastyle)&lt;br /&gt;
			:wikitext(fixChildBoxes(imageArgs.data, &#039;td&#039;))&lt;br /&gt;
	else&lt;br /&gt;
		table.insert(empty_row_categories, imageArgs.data or &#039;&#039;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderImages()&lt;br /&gt;
	if args.image then&lt;br /&gt;
		args.image1 = args.image&lt;br /&gt;
	end&lt;br /&gt;
	if args.caption then&lt;br /&gt;
		args.caption1 = args.caption&lt;br /&gt;
	end&lt;br /&gt;
	local imagenums = getArgNums(&#039;image&#039;)&lt;br /&gt;
	for k, num in ipairs(imagenums) do&lt;br /&gt;
		local caption = args[&#039;caption&#039; .. tostring(num)]&lt;br /&gt;
		local data = mw.html.create():wikitext(args[&#039;image&#039; .. tostring(num)])&lt;br /&gt;
		if caption then&lt;br /&gt;
			data&lt;br /&gt;
				:tag(&#039;div&#039;)&lt;br /&gt;
					:addClass(&#039;infobox-caption&#039;)&lt;br /&gt;
					-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; .infobox-caption&lt;br /&gt;
					:cssText(args.captionstyle)&lt;br /&gt;
					:wikitext(caption)&lt;br /&gt;
		end&lt;br /&gt;
		addImageRow({&lt;br /&gt;
			data = tostring(data),&lt;br /&gt;
			-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; .infobox-image&lt;br /&gt;
			datastyle = args.imagestyle,&lt;br /&gt;
			class = args.imageclass,&lt;br /&gt;
			rowclass = args[&#039;imagerowclass&#039; .. tostring(num)]&lt;br /&gt;
		})&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- When autoheaders are turned on, preprocesses the rows&lt;br /&gt;
local function preprocessRows()&lt;br /&gt;
	if not args.autoheaders then return end&lt;br /&gt;
	&lt;br /&gt;
	local rownums = union(getArgNums(&#039;header&#039;), getArgNums(&#039;data&#039;))&lt;br /&gt;
	table.sort(rownums)&lt;br /&gt;
	local lastheader&lt;br /&gt;
	for k, num in ipairs(rownums) do&lt;br /&gt;
		if args[&#039;header&#039; .. tostring(num)] then&lt;br /&gt;
			if lastheader then&lt;br /&gt;
				args[&#039;header&#039; .. tostring(lastheader)] = nil&lt;br /&gt;
			end&lt;br /&gt;
			lastheader = num&lt;br /&gt;
		elseif args[&#039;data&#039; .. tostring(num)] and&lt;br /&gt;
			args[&#039;data&#039; .. tostring(num)]:gsub(&lt;br /&gt;
				category_in_empty_row_pattern, &#039;&#039;&lt;br /&gt;
			):match(&#039;^%S&#039;) then&lt;br /&gt;
			local data = args[&#039;data&#039; .. tostring(num)]&lt;br /&gt;
			if data:gsub(category_in_empty_row_pattern, &#039;&#039;):match(&#039;%S&#039;) then&lt;br /&gt;
				lastheader = nil&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if lastheader then&lt;br /&gt;
		args[&#039;header&#039; .. tostring(lastheader)] = nil&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Gets the union of the header and data argument numbers,&lt;br /&gt;
-- and renders them all in order&lt;br /&gt;
local function renderRows()&lt;br /&gt;
&lt;br /&gt;
	local rownums = union(getArgNums(&#039;header&#039;), getArgNums(&#039;data&#039;))&lt;br /&gt;
	table.sort(rownums)&lt;br /&gt;
	for k, num in ipairs(rownums) do&lt;br /&gt;
		addRow({&lt;br /&gt;
			header = args[&#039;header&#039; .. tostring(num)],&lt;br /&gt;
			label = args[&#039;label&#039; .. tostring(num)],&lt;br /&gt;
			data = args[&#039;data&#039; .. tostring(num)],&lt;br /&gt;
			datastyle = args.datastyle,&lt;br /&gt;
			class = args[&#039;class&#039; .. tostring(num)],&lt;br /&gt;
			rowclass = args[&#039;rowclass&#039; .. tostring(num)],&lt;br /&gt;
			-- @deprecated next; target .infobox-&amp;lt;name&amp;gt; rowclass&lt;br /&gt;
			rowstyle = args[&#039;rowstyle&#039; .. tostring(num)],&lt;br /&gt;
			rowcellstyle = args[&#039;rowcellstyle&#039; .. tostring(num)]&lt;br /&gt;
		})&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderNavBar()&lt;br /&gt;
	if not args.name then return end&lt;br /&gt;
&lt;br /&gt;
	has_rows = true&lt;br /&gt;
	root&lt;br /&gt;
		:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:attr(&#039;colspan&#039;, &#039;2&#039;)&lt;br /&gt;
				:addClass(&#039;infobox-navbar&#039;)&lt;br /&gt;
				:wikitext(require(&#039;Module:Navbar&#039;)._navbar{&lt;br /&gt;
					args.name,&lt;br /&gt;
					mini = 1,&lt;br /&gt;
				})&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderItalicTitle()&lt;br /&gt;
	local italicTitle = args[&#039;italic title&#039;] and mw.ustring.lower(args[&#039;italic title&#039;])&lt;br /&gt;
	if italicTitle == &#039;&#039; or italicTitle == &#039;force&#039; or italicTitle == &#039;yes&#039; then&lt;br /&gt;
		root:wikitext(require(&#039;Module:Italic title&#039;)._main({}))&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Categories in otherwise empty rows are collected in empty_row_categories.&lt;br /&gt;
-- This function adds them to the module output. It is not affected by&lt;br /&gt;
-- args.decat because this module should not prevent module-external categories&lt;br /&gt;
-- from rendering.&lt;br /&gt;
local function renderEmptyRowCategories()&lt;br /&gt;
	for _, s in ipairs(empty_row_categories) do&lt;br /&gt;
		root:wikitext(s)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Render tracking categories. args.decat == turns off tracking categories.&lt;br /&gt;
local function renderTrackingCategories()&lt;br /&gt;
	if args.decat == &#039;yes&#039; then return end&lt;br /&gt;
	if args.child == &#039;yes&#039; then&lt;br /&gt;
		if args.title then&lt;br /&gt;
			root:wikitext(&lt;br /&gt;
				&#039;[[Category:Pages using embedded infobox templates with the title parameter]]&#039;&lt;br /&gt;
			)&lt;br /&gt;
		end&lt;br /&gt;
	elseif #(getArgNums(&#039;data&#039;)) == 0 and mw.title.getCurrentTitle().namespace == 0 then&lt;br /&gt;
		root:wikitext(&#039;[[Category:Articles using infobox templates with no data rows]]&#039;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[=[&lt;br /&gt;
Loads the templatestyles for the infobox.&lt;br /&gt;
&lt;br /&gt;
TODO: FINISH loading base templatestyles here rather than in&lt;br /&gt;
MediaWiki:Common.css. There are 4-5000 pages with &#039;raw&#039; infobox tables.&lt;br /&gt;
See [[Mediawiki_talk:Common.css/to_do#Infobox]] and/or come help :).&lt;br /&gt;
When we do this we should clean up the inline CSS below too.&lt;br /&gt;
Will have to do some bizarre conversion category like with sidebar.&lt;br /&gt;
&lt;br /&gt;
]=]&lt;br /&gt;
local function loadTemplateStyles()&lt;br /&gt;
	local frame = mw.getCurrentFrame()&lt;br /&gt;
	&lt;br /&gt;
	local hlist_templatestyles = &#039;&#039;&lt;br /&gt;
	if lists.hlist_t.found then&lt;br /&gt;
		hlist_templatestyles = frame:extensionTag{&lt;br /&gt;
			name = &#039;templatestyles&#039;, args = { src = lists.hlist_t.styles }&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local plainlist_templatestyles = &#039;&#039;&lt;br /&gt;
	if lists.plainlist_t.found then&lt;br /&gt;
		plainlist_templatestyles = frame:extensionTag{&lt;br /&gt;
			name = &#039;templatestyles&#039;, args = { src = lists.plainlist_t.styles }&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- See function description&lt;br /&gt;
	local base_templatestyles = frame:extensionTag{&lt;br /&gt;
		name = &#039;templatestyles&#039;, args = { src = &#039;Module:Infobox/styles.css&#039; }&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	local templatestyles = &#039;&#039;&lt;br /&gt;
	if args[&#039;templatestyles&#039;] then&lt;br /&gt;
		templatestyles = frame:extensionTag{&lt;br /&gt;
			name = &#039;templatestyles&#039;, args = { src = args[&#039;templatestyles&#039;] }&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local child_templatestyles = &#039;&#039;&lt;br /&gt;
	if args[&#039;child templatestyles&#039;] then&lt;br /&gt;
		child_templatestyles = frame:extensionTag{&lt;br /&gt;
			name = &#039;templatestyles&#039;, args = { src = args[&#039;child templatestyles&#039;] }&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local grandchild_templatestyles = &#039;&#039;&lt;br /&gt;
	if args[&#039;grandchild templatestyles&#039;] then&lt;br /&gt;
		grandchild_templatestyles = frame:extensionTag{&lt;br /&gt;
			name = &#039;templatestyles&#039;, args = { src = args[&#039;grandchild templatestyles&#039;] }&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return table.concat({&lt;br /&gt;
		-- hlist -&amp;gt; plainlist -&amp;gt; base is best-effort to preserve old Common.css ordering.&lt;br /&gt;
		-- this ordering is not a guarantee because the rows of interest invoking&lt;br /&gt;
		-- each class may not be on a specific page&lt;br /&gt;
		hlist_templatestyles,&lt;br /&gt;
		plainlist_templatestyles,&lt;br /&gt;
		base_templatestyles,&lt;br /&gt;
		templatestyles,&lt;br /&gt;
		child_templatestyles,&lt;br /&gt;
		grandchild_templatestyles&lt;br /&gt;
	})&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- common functions between the child and non child cases&lt;br /&gt;
local function structure_infobox_common()&lt;br /&gt;
	renderSubheaders()&lt;br /&gt;
	renderImages()&lt;br /&gt;
	preprocessRows()&lt;br /&gt;
	renderRows()&lt;br /&gt;
	renderBelowRow()&lt;br /&gt;
	renderNavBar()&lt;br /&gt;
	renderItalicTitle()&lt;br /&gt;
	renderEmptyRowCategories()&lt;br /&gt;
	renderTrackingCategories()&lt;br /&gt;
	cleanInfobox()&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Specify the overall layout of the infobox, with special settings if the&lt;br /&gt;
-- infobox is used as a &#039;child&#039; inside another infobox.&lt;br /&gt;
local function _infobox()&lt;br /&gt;
	if args.child ~= &#039;yes&#039; then&lt;br /&gt;
		root = mw.html.create(&#039;table&#039;)&lt;br /&gt;
&lt;br /&gt;
		root&lt;br /&gt;
			:addClass(args.subbox == &#039;yes&#039; and &#039;infobox-subbox&#039; or &#039;infobox&#039;)&lt;br /&gt;
			:addClass(args.bodyclass)&lt;br /&gt;
			-- @deprecated next; target .infobox-&amp;lt;name&amp;gt;&lt;br /&gt;
			:cssText(args.bodystyle)&lt;br /&gt;
		&lt;br /&gt;
		has_list_class({ args.bodyclass })&lt;br /&gt;
&lt;br /&gt;
		renderTitle()&lt;br /&gt;
		renderAboveRow()&lt;br /&gt;
	else&lt;br /&gt;
		root = mw.html.create()&lt;br /&gt;
&lt;br /&gt;
		root&lt;br /&gt;
			:wikitext(args.title)&lt;br /&gt;
	end&lt;br /&gt;
	structure_infobox_common()&lt;br /&gt;
	&lt;br /&gt;
	return loadTemplateStyles() .. root&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- If the argument exists and isn&#039;t blank, add it to the argument table.&lt;br /&gt;
-- Blank arguments are treated as nil to match the behaviour of ParserFunctions.&lt;br /&gt;
local function preprocessSingleArg(argName)&lt;br /&gt;
	if origArgs[argName] and origArgs[argName] ~= &#039;&#039; then&lt;br /&gt;
		args[argName] = origArgs[argName]&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Assign the parameters with the given prefixes to the args table, in order, in&lt;br /&gt;
-- batches of the step size specified. This is to prevent references etc. from&lt;br /&gt;
-- appearing in the wrong order. The prefixTable should be an array containing&lt;br /&gt;
-- tables, each of which has two possible fields, a &amp;quot;prefix&amp;quot; string and a&lt;br /&gt;
-- &amp;quot;depend&amp;quot; table. The function always parses parameters containing the &amp;quot;prefix&amp;quot;&lt;br /&gt;
-- string, but only parses parameters in the &amp;quot;depend&amp;quot; table if the prefix&lt;br /&gt;
-- parameter is present and non-blank.&lt;br /&gt;
local function preprocessArgs(prefixTable, step)&lt;br /&gt;
	if type(prefixTable) ~= &#039;table&#039; then&lt;br /&gt;
		error(&amp;quot;Non-table value detected for the prefix table&amp;quot;, 2)&lt;br /&gt;
	end&lt;br /&gt;
	if type(step) ~= &#039;number&#039; then&lt;br /&gt;
		error(&amp;quot;Invalid step value detected&amp;quot;, 2)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Get arguments without a number suffix, and check for bad input.&lt;br /&gt;
	for i,v in ipairs(prefixTable) do&lt;br /&gt;
		if type(v) ~= &#039;table&#039; or type(v.prefix) ~= &amp;quot;string&amp;quot; or&lt;br /&gt;
			(v.depend and type(v.depend) ~= &#039;table&#039;) then&lt;br /&gt;
			error(&#039;Invalid input detected to preprocessArgs prefix table&#039;, 2)&lt;br /&gt;
		end&lt;br /&gt;
		preprocessSingleArg(v.prefix)&lt;br /&gt;
		-- Only parse the depend parameter if the prefix parameter is present&lt;br /&gt;
		-- and not blank.&lt;br /&gt;
		if args[v.prefix] and v.depend then&lt;br /&gt;
			for j, dependValue in ipairs(v.depend) do&lt;br /&gt;
				if type(dependValue) ~= &#039;string&#039; then&lt;br /&gt;
					error(&#039;Invalid &amp;quot;depend&amp;quot; parameter value detected in preprocessArgs&#039;)&lt;br /&gt;
				end&lt;br /&gt;
				preprocessSingleArg(dependValue)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Get arguments with number suffixes.&lt;br /&gt;
	local a = 1 -- Counter variable.&lt;br /&gt;
	local moreArgumentsExist = true&lt;br /&gt;
	while moreArgumentsExist == true do&lt;br /&gt;
		moreArgumentsExist = false&lt;br /&gt;
		for i = a, a + step - 1 do&lt;br /&gt;
			for j,v in ipairs(prefixTable) do&lt;br /&gt;
				local prefixArgName = v.prefix .. tostring(i)&lt;br /&gt;
				if origArgs[prefixArgName] then&lt;br /&gt;
					-- Do another loop if any arguments are found, even blank ones.&lt;br /&gt;
					moreArgumentsExist = true&lt;br /&gt;
					preprocessSingleArg(prefixArgName)&lt;br /&gt;
				end&lt;br /&gt;
				-- Process the depend table if the prefix argument is present&lt;br /&gt;
				-- and not blank, or we are processing &amp;quot;prefix1&amp;quot; and &amp;quot;prefix&amp;quot; is&lt;br /&gt;
				-- present and not blank, and if the depend table is present.&lt;br /&gt;
				if v.depend and (args[prefixArgName] or (i == 1 and args[v.prefix])) then&lt;br /&gt;
					for j,dependValue in ipairs(v.depend) do&lt;br /&gt;
						local dependArgName = dependValue .. tostring(i)&lt;br /&gt;
						preprocessSingleArg(dependArgName)&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		a = a + step&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Parse the data parameters in the same order that the old {{infobox}} did, so&lt;br /&gt;
-- that references etc. will display in the expected places. Parameters that&lt;br /&gt;
-- depend on another parameter are only processed if that parameter is present,&lt;br /&gt;
-- to avoid phantom references appearing in article reference lists.&lt;br /&gt;
local function parseDataParameters()&lt;br /&gt;
&lt;br /&gt;
	preprocessSingleArg(&#039;autoheaders&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;child&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;bodyclass&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;subbox&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;bodystyle&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;title&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;titleclass&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;titlestyle&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;above&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;aboveclass&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;abovestyle&#039;)&lt;br /&gt;
	preprocessArgs({&lt;br /&gt;
		{prefix = &#039;subheader&#039;, depend = {&#039;subheaderstyle&#039;, &#039;subheaderrowclass&#039;}}&lt;br /&gt;
	}, 10)&lt;br /&gt;
	preprocessSingleArg(&#039;subheaderstyle&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;subheaderclass&#039;)&lt;br /&gt;
	preprocessArgs({&lt;br /&gt;
		{prefix = &#039;image&#039;, depend = {&#039;caption&#039;, &#039;imagerowclass&#039;}}&lt;br /&gt;
	}, 10)&lt;br /&gt;
	preprocessSingleArg(&#039;captionstyle&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;imagestyle&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;imageclass&#039;)&lt;br /&gt;
	preprocessArgs({&lt;br /&gt;
		{prefix = &#039;header&#039;},&lt;br /&gt;
		{prefix = &#039;data&#039;, depend = {&#039;label&#039;}},&lt;br /&gt;
		{prefix = &#039;rowclass&#039;},&lt;br /&gt;
		{prefix = &#039;rowstyle&#039;},&lt;br /&gt;
		{prefix = &#039;rowcellstyle&#039;},&lt;br /&gt;
		{prefix = &#039;class&#039;}&lt;br /&gt;
	}, 50)&lt;br /&gt;
	preprocessSingleArg(&#039;headerclass&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;headerstyle&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;labelstyle&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;datastyle&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;below&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;belowclass&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;belowstyle&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;name&#039;)&lt;br /&gt;
	-- different behaviour for italics if blank or absent&lt;br /&gt;
	args[&#039;italic title&#039;] = origArgs[&#039;italic title&#039;]&lt;br /&gt;
	preprocessSingleArg(&#039;decat&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;templatestyles&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;child templatestyles&#039;)&lt;br /&gt;
	preprocessSingleArg(&#039;grandchild templatestyles&#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- If called via #invoke, use the args passed into the invoking template.&lt;br /&gt;
-- Otherwise, for testing purposes, assume args are being passed directly in.&lt;br /&gt;
function p.infobox(frame)&lt;br /&gt;
	if frame == mw.getCurrentFrame() then&lt;br /&gt;
		origArgs = frame:getParent().args&lt;br /&gt;
	else&lt;br /&gt;
		origArgs = frame&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	parseDataParameters()&lt;br /&gt;
	&lt;br /&gt;
	return _infobox()&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- For calling via #invoke within a template&lt;br /&gt;
function p.infoboxTemplate(frame)&lt;br /&gt;
	origArgs = {}&lt;br /&gt;
	for k,v in pairs(frame.args) do origArgs[k] = mw.text.trim(v) end&lt;br /&gt;
	&lt;br /&gt;
	parseDataParameters()&lt;br /&gt;
	&lt;br /&gt;
	return _infobox()&lt;br /&gt;
end&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Template:Infobox&amp;diff=174</id>
		<title>Template:Infobox</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Template:Infobox&amp;diff=174"/>
		<updated>2024-09-03T20:04:10Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add Infobox template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#invoke:Infobox|infobox}}&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine/Intermediate_documentation&amp;diff=162</id>
		<title>Big CNC Machine/Intermediate documentation</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine/Intermediate_documentation&amp;diff=162"/>
		<updated>2024-06-25T20:13:01Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added section with guidance for cutting aluminium&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page details information for users who want to do things with the [[CNC Machine]] beyond that covered in the induction. There is also an [[CNC Machine/Advanced documentation|Advanded documentation]] page containing additional information for more advanced topics.&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
=== Fusion 360 ===&lt;br /&gt;
Fusion 360 contains an inbuilt CAM suite.&lt;br /&gt;
&lt;br /&gt;
Files containing the basic machine definition and processor are available on [https://drive.google.com/drive/folders/1NDWiJgcYtsrfIPZ8prtUFObXm7A3mvSU?usp=sharing Google Drive]. Theses can be imported into fusion360 in the Mchine window in the Manufacture workspace.&lt;br /&gt;
&lt;br /&gt;
===== Recomended Guides. =====&lt;br /&gt;
There are a lot of options in the manufacture section of Fusion 360, the pages and videos below are a good place to start when working out how to use the software&lt;br /&gt;
&lt;br /&gt;
* [https://www.youtube.com/watch?v=VPMvnzmuTOw Fusion 360 Tutorial | CAM Basics]&lt;br /&gt;
&lt;br /&gt;
* [https://www.youtube.com/watch?v=APK0zo1nIeU Fusion 360 Tutorial | CAM Order of Operations - DIY Mechanical Keyboard]&lt;br /&gt;
&lt;br /&gt;
== Advanced machine settings ==&lt;br /&gt;
&lt;br /&gt;
=== Reading feeds and speeds from G code input ===&lt;br /&gt;
The controller can be configured to read the speeds and feeds from the Gcode file. This option can be found in the AutoProSetup menu under G Code Setup. The options there are F Read and S Read for the feeds and speeds respectivleu which can be set to ignore or read independantly.&lt;br /&gt;
&lt;br /&gt;
Style CNC have a video [https://www.youtube.com/watch?v=yG1QERG4e9I detailing how to configure this] but information can also be found in the [http://richnc.com.cn:9092/attach?id=917&amp;amp;down=1 A1X controller manual] under section 4.2.2&lt;br /&gt;
&lt;br /&gt;
If changing this setting it should be set back to the skip setting when finished in order to ensure expected opperation for other users.&lt;br /&gt;
&lt;br /&gt;
== Guidance for cutting aluminium ==&lt;br /&gt;
The CNC can cut aluminium fairly well with a bit of care. If you have already used the CNC for other materials then the process is very much the same, aluminium is less forgiving than wood or other similar materials but if you stay within the tool parameters then you shouldnt have any issues even on fairly large and complicated parts. It is best to use aluminium specific tooling and reference speeds and feeds will usualy be provided by the manufacturer (you may want to down rate some of them a bit to give a bit more of a buffer). Fusion360 may be best for toolpath generation as it adds things like using slower feed speeds during lead in and ramping into the part automatically, you will need to enable feeds from gcode as detailed above to benifit from this.&lt;br /&gt;
&lt;br /&gt;
Some other tips that may help.&lt;br /&gt;
&lt;br /&gt;
* For mounting aluminium pieces either clamping to a block of wood or using painters tape and super glue works well (there is a metal plate in the baseboard area which works well to stick parts to).&lt;br /&gt;
* The mist coolant system will help keep the part and tooling cool, you dont need to spray lots of coolant on, inital tests show that keeping the coolant on a very low setting and a enougth air so that you can just see the coolant spraying onto the part works well.&lt;br /&gt;
* The tool setter wont work if there is a conductive path from where it is placed to the machine bed (this can be caused by the clamps touching it or metal chips once you have done the first pass) so these need to be cleared between each tool change.&lt;br /&gt;
* Adaptive clearing toolpaths are recommended for most stages as this will keep a constant tool load, if you leave some stock after this opperation 0.3mm worked well for me then you can finish up with other toolpaths to get a good surface finish. .&lt;br /&gt;
* Use only climb cutting if possible, (if using fusion it will default to this in most places but steps like facing need to have this selected manualy).&lt;br /&gt;
* The air blow gun by the lathe is useful to clear chips while cutting&lt;br /&gt;
&lt;br /&gt;
== Tooling suppliers ==&lt;br /&gt;
If needing tools beyond those in the communinual set the following list contains information on tooling suppliers that have been used by other members.&lt;br /&gt;
&lt;br /&gt;
=== [https://www.shop-apt.co.uk/ APT (&#039;&#039;&#039;Associated Production Tools Ltd)&#039;&#039;&#039;] ===&lt;br /&gt;
Apt largley sell tools for machining metals which includes a good range of tools for aluminium, they also sell a range of tooling for use on wood under the Milling/Routing-Engraving tools category. The tools usualy contain a set of recomended speeds and feeds however these may need adjusting to work well on the machine.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=161</id>
		<title>Big CNC Machine</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=161"/>
		<updated>2024-06-25T20:01:04Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add note on bottle with coolant ratios&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We have a CNC Machine in the workshop area of the Makerspace.&lt;br /&gt;
&lt;br /&gt;
The CNC machine requires an induction, and you can find the risk assessment and details on [https://somakeit.org.uk/cnc/ Workshop Induction pages.] Various manuals for the CNC can be found on the induction page.&lt;br /&gt;
&lt;br /&gt;
Note that we have a PC in the clean room which runs [https://www.vectric.com/products/vcarve-pro Vectric VCarve] Makerspace edition. This will generate GCode for the CNC toolpaths and also allow design work to be carried out.&lt;br /&gt;
&lt;br /&gt;
This page covers core details of the machine, for more advanced usage of the CNC machine see the  [[CNC Machine/Intermediate documentation|Intermediate documentation]] and [[CNC Machine/Advanced documentation|Advanced documentation]] pages.&lt;br /&gt;
&lt;br /&gt;
== About The Machine ==&lt;br /&gt;
&lt;br /&gt;
=== Specifications ===&lt;br /&gt;
{|&lt;br /&gt;
|&#039;&#039;&#039;Manufacturer&#039;&#039;&#039;&lt;br /&gt;
|StyleCNC&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Model&#039;&#039;&#039;&lt;br /&gt;
|STM6090&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;No. Axes&#039;&#039;&#039;&lt;br /&gt;
|4 &amp;lt;small&amp;gt;(XYZ + Rotary)&amp;lt;/small&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Bed Size&#039;&#039;&#039;&lt;br /&gt;
|600×900mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Effective Work Volume&#039;&#039;&#039;&lt;br /&gt;
|600×750×150mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Controller&#039;&#039;&#039;&lt;br /&gt;
|RichAuto A18&lt;br /&gt;
|}&lt;br /&gt;
For further information on the machine, check out the manufacturer&#039;s website: &amp;lt;nowiki&amp;gt;https://www.stylecnc.com&amp;lt;/nowiki&amp;gt;. (Note that our machine has some modifications to allow for coolant, and dust collection).&lt;br /&gt;
&lt;br /&gt;
To learn more about the controller, here is the manufacturer&#039;s page: [http://richnc.com.cn:9092/en/product/content-41.html http://richnc.com.cn]&lt;br /&gt;
&lt;br /&gt;
=== Mist coolant system ===&lt;br /&gt;
For curring aluminium, and similar amterials the machine has a mist coolant system fitted. when cutting materials like wood to avoid unwanted coolant contact the mist coolant head should be raised up and the air supply disconnected.&lt;br /&gt;
&lt;br /&gt;
To use the mist coolant connect the mist coolant air line to the air connector on the shelf support to the left of the lathe and move the mist collant head to point at the cutter/workpiece. The dials on the mist coolant head can adjust air and coolant flow. Coolant should be mixed in a 5% ratio of colant oil and 95% distilled water, there is a bottle on the shelf with the ratios marked on it. &lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Programming ===&lt;br /&gt;
According to it&#039;s [http://richnc.com.cn:9092/attach?id=917&amp;amp;down=1 manual], the controller accepts &#039;standard G-Code&#039;. Unfortunately, no further information is provided, so it is assumed it supports most of the basic G-Codes listed on [[wikipedia:G-code|Wikipedia]]. By default, the router always has the spindle on, and feeds and speeds are specified through a menu before a program is run. See information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page to configure this through g code.&lt;br /&gt;
&lt;br /&gt;
As mentioned earlier, the makerspace has a license for VCarve, which can also be used to program the router. For those wishing to use other software e.g. Fusion 360 see information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page&lt;br /&gt;
&lt;br /&gt;
==== Programming 4th axis ====&lt;br /&gt;
While VCarve has some support for the rotary axis, it is not practical as it replaces X or Y moves with the rotary, meaning you won&#039;t be able to program true 4 axis toolpaths. For true 4 axis milling you will need to manually program the moves, or find/buy a piece of software that has the features you are looking for&lt;br /&gt;
&lt;br /&gt;
=== Spindle speeds ===&lt;br /&gt;
&lt;br /&gt;
The machine has several preset spindle speeds which are listed below.&lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! mode || Speed &lt;br /&gt;
|-&lt;br /&gt;
| 1 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|2 || 6000 &lt;br /&gt;
|-&lt;br /&gt;
|3 || 9000 &lt;br /&gt;
|-&lt;br /&gt;
|4 || 12000 &lt;br /&gt;
|-&lt;br /&gt;
|5 || 16200 &lt;br /&gt;
|-&lt;br /&gt;
|6 || 18000 &lt;br /&gt;
|-&lt;br /&gt;
|7 || 21000 &lt;br /&gt;
|-&lt;br /&gt;
|8 || 24000 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== USB Drive requirements ===&lt;br /&gt;
The CNC controller doesent work with large capacity USB drives (these use NTFS format by default). You will need a FAT32 formmatted drive, 8GB drives are known to work larger drives may also work but need to be reformatted with a smaller partition. A 64GB drive reformatted as a 30GB FAT32 is known to not work however when formatted at 16GB in FAT32 it does.&lt;br /&gt;
&lt;br /&gt;
== Avaliable Tools ==&lt;br /&gt;
&lt;br /&gt;
There is a Stanley toolbox by the CNC that contains some tools for use with the CNC which are documented below.&lt;br /&gt;
&lt;br /&gt;
=== Collets ===&lt;br /&gt;
&lt;br /&gt;
The space has ER collets in 1-13mm&lt;br /&gt;
&lt;br /&gt;
There are also ER collets in 1/2in and 1/8in&lt;br /&gt;
&lt;br /&gt;
=== Flat end mills ===&lt;br /&gt;
&lt;br /&gt;
The space has the following HSS flat endmills  &lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! diameter || shaft diameter || Flute length || overall length&lt;br /&gt;
|-&lt;br /&gt;
| 1.5mm || 6mm || 4mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2mm || 6mm || 7mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2.5mm || 6mm || 8mm || 52mm&lt;br /&gt;
|-&lt;br /&gt;
| 3.5mm || 6mm || 10mm || 54mm&lt;br /&gt;
|-&lt;br /&gt;
| 4.5mm || 6mm || 11mm | &lt;br /&gt;
|54mm&lt;br /&gt;
|-&lt;br /&gt;
| 5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|-&lt;br /&gt;
| 5.5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Other bits ===&lt;br /&gt;
&lt;br /&gt;
There are a few countersink and chamfer bits in the box allong with a 1/4in ball endmill&lt;br /&gt;
[[Category:Tools]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=160</id>
		<title>Big CNC Machine</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=160"/>
		<updated>2024-06-22T16:59:45Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add details on mist colant&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We have a CNC Machine in the workshop area of the Makerspace.&lt;br /&gt;
&lt;br /&gt;
The CNC machine requires an induction, and you can find the risk assessment and details on [https://somakeit.org.uk/cnc/ Workshop Induction pages.] Various manuals for the CNC can be found on the induction page.&lt;br /&gt;
&lt;br /&gt;
Note that we have a PC in the clean room which runs [https://www.vectric.com/products/vcarve-pro Vectric VCarve] Makerspace edition. This will generate GCode for the CNC toolpaths and also allow design work to be carried out.&lt;br /&gt;
&lt;br /&gt;
This page covers core details of the machine, for more advanced usage of the CNC machine see the  [[CNC Machine/Intermediate documentation|Intermediate documentation]] and [[CNC Machine/Advanced documentation|Advanced documentation]] pages.&lt;br /&gt;
&lt;br /&gt;
== About The Machine ==&lt;br /&gt;
&lt;br /&gt;
=== Specifications ===&lt;br /&gt;
{|&lt;br /&gt;
|&#039;&#039;&#039;Manufacturer&#039;&#039;&#039;&lt;br /&gt;
|StyleCNC&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Model&#039;&#039;&#039;&lt;br /&gt;
|STM6090&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;No. Axes&#039;&#039;&#039;&lt;br /&gt;
|4 &amp;lt;small&amp;gt;(XYZ + Rotary)&amp;lt;/small&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Bed Size&#039;&#039;&#039;&lt;br /&gt;
|600×900mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Effective Work Volume&#039;&#039;&#039;&lt;br /&gt;
|600×750×150mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Controller&#039;&#039;&#039;&lt;br /&gt;
|RichAuto A18&lt;br /&gt;
|}&lt;br /&gt;
For further information on the machine, check out the manufacturer&#039;s website: &amp;lt;nowiki&amp;gt;https://www.stylecnc.com&amp;lt;/nowiki&amp;gt;. (Note that our machine has some modifications to allow for coolant, and dust collection).&lt;br /&gt;
&lt;br /&gt;
To learn more about the controller, here is the manufacturer&#039;s page: [http://richnc.com.cn:9092/en/product/content-41.html http://richnc.com.cn]&lt;br /&gt;
&lt;br /&gt;
=== Mist coolant system ===&lt;br /&gt;
For curring aluminium, and similar amterials the machine has a mist coolant system fitted. when cutting materials like wood to avoid unwanted coolant contact the mist coolant head should be raised up and the air supply disconnected.&lt;br /&gt;
&lt;br /&gt;
To use the mist coolant connect the mist coolant air line to the air connector on the shelf support to the left of the lathe and move the mist collant head to point at the cutter/workpiece. The dials on the mist coolant head can adjust air and coolant flow. Coolant should be mixed in a 5% ratio of colant oil and 95% distilled water. &lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Programming ===&lt;br /&gt;
According to it&#039;s [http://richnc.com.cn:9092/attach?id=917&amp;amp;down=1 manual], the controller accepts &#039;standard G-Code&#039;. Unfortunately, no further information is provided, so it is assumed it supports most of the basic G-Codes listed on [[wikipedia:G-code|Wikipedia]]. By default, the router always has the spindle on, and feeds and speeds are specified through a menu before a program is run. See information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page to configure this through g code.&lt;br /&gt;
&lt;br /&gt;
As mentioned earlier, the makerspace has a license for VCarve, which can also be used to program the router. For those wishing to use other software e.g. Fusion 360 see information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page&lt;br /&gt;
&lt;br /&gt;
==== Programming 4th axis ====&lt;br /&gt;
While VCarve has some support for the rotary axis, it is not practical as it replaces X or Y moves with the rotary, meaning you won&#039;t be able to program true 4 axis toolpaths. For true 4 axis milling you will need to manually program the moves, or find/buy a piece of software that has the features you are looking for&lt;br /&gt;
&lt;br /&gt;
=== Spindle speeds ===&lt;br /&gt;
&lt;br /&gt;
The machine has several preset spindle speeds which are listed below.&lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! mode || Speed &lt;br /&gt;
|-&lt;br /&gt;
| 1 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|2 || 6000 &lt;br /&gt;
|-&lt;br /&gt;
|3 || 9000 &lt;br /&gt;
|-&lt;br /&gt;
|4 || 12000 &lt;br /&gt;
|-&lt;br /&gt;
|5 || 16200 &lt;br /&gt;
|-&lt;br /&gt;
|6 || 18000 &lt;br /&gt;
|-&lt;br /&gt;
|7 || 21000 &lt;br /&gt;
|-&lt;br /&gt;
|8 || 24000 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== USB Drive requirements ===&lt;br /&gt;
The CNC controller doesent work with large capacity USB drives (these use NTFS format by default). You will need a FAT32 formmatted drive, 8GB drives are known to work larger drives may also work but need to be reformatted with a smaller partition. A 64GB drive reformatted as a 30GB FAT32 is known to not work however when formatted at 16GB in FAT32 it does.&lt;br /&gt;
&lt;br /&gt;
== Avaliable Tools ==&lt;br /&gt;
&lt;br /&gt;
There is a Stanley toolbox by the CNC that contains some tools for use with the CNC which are documented below.&lt;br /&gt;
&lt;br /&gt;
=== Collets ===&lt;br /&gt;
&lt;br /&gt;
The space has ER collets in 1-13mm&lt;br /&gt;
&lt;br /&gt;
There are also ER collets in 1/2in and 1/8in&lt;br /&gt;
&lt;br /&gt;
=== Flat end mills ===&lt;br /&gt;
&lt;br /&gt;
The space has the following HSS flat endmills  &lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! diameter || shaft diameter || Flute length || overall length&lt;br /&gt;
|-&lt;br /&gt;
| 1.5mm || 6mm || 4mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2mm || 6mm || 7mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2.5mm || 6mm || 8mm || 52mm&lt;br /&gt;
|-&lt;br /&gt;
| 3.5mm || 6mm || 10mm || 54mm&lt;br /&gt;
|-&lt;br /&gt;
| 4.5mm || 6mm || 11mm | &lt;br /&gt;
|54mm&lt;br /&gt;
|-&lt;br /&gt;
| 5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|-&lt;br /&gt;
| 5.5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Other bits ===&lt;br /&gt;
&lt;br /&gt;
There are a few countersink and chamfer bits in the box allong with a 1/4in ball endmill&lt;br /&gt;
[[Category:Tools]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Warco_mill&amp;diff=159</id>
		<title>Warco mill</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Warco_mill&amp;diff=159"/>
		<updated>2024-04-09T21:11:30Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add a stub page for the Mill&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
&lt;br /&gt;
We have a Warco mill, which requires a induction to use, this tool is quite new and more documentation will be added here later&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Main_Page&amp;diff=158</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Main_Page&amp;diff=158"/>
		<updated>2024-04-09T21:09:55Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Add mill to workshop section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&#039;&#039;&#039;This Wiki is for SoMaketIt space and equipment configuration information &amp;amp; detail only. Any H&amp;amp;S rules, policies and process, and workshop tool risk assessments &amp;amp; inductions are detailed on the main site on the [https://somakeit.org.uk/inductions-and-processes/ Induction Website Pages] so it is clear what requires an induction and what does not.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The old wiki and content has been archived at https://old-wiki.somakeit.org.uk and may contain some information that has not yet been added to this page.&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;Main Index&#039;&#039;&#039; (all pages must link from here) ==&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;[[3D Printing]]&#039;&#039;&#039; ===&lt;br /&gt;
[[Printing with Cura]]&lt;br /&gt;
&lt;br /&gt;
[[Octoprint and OctoEverywhere|Octoprint / OctoEverywhere]]&lt;br /&gt;
&lt;br /&gt;
[[3D Printers Models|Printers]]&lt;br /&gt;
&lt;br /&gt;
[[Filament]]&lt;br /&gt;
&lt;br /&gt;
=== [[CNC Machine]] ===&lt;br /&gt;
[[CNC Machine/Intermediate documentation|Documentation for intermediate users]]&lt;br /&gt;
&lt;br /&gt;
[[CNC Machine/Advanced documentation|Documentation for advanced users]]&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;Electronics area&#039;&#039;&#039; ===&lt;br /&gt;
[[Rigol DS1104Z-S PLUS Oscilloscope|Rigol DS1104-Z-S Oscilloscope]]&lt;br /&gt;
&lt;br /&gt;
[[Soldering]]&lt;br /&gt;
&lt;br /&gt;
[[Electronics test equipment|Other Test equipment]]&lt;br /&gt;
&lt;br /&gt;
[[Electronics Components]]&lt;br /&gt;
&lt;br /&gt;
===&#039;&#039;&#039;Other Cleanroom Equipment&#039;&#039;&#039;===&lt;br /&gt;
[[Vinyl Cutter]]&lt;br /&gt;
&lt;br /&gt;
[[Laser Cutter]]&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;Kitchen &amp;amp; Social Area&#039;&#039;&#039; ===&lt;br /&gt;
[[General Kitchen &amp;amp; Social Area information]]&lt;br /&gt;
&lt;br /&gt;
=== Workshop tools ===&lt;br /&gt;
&#039;&#039;&#039;The workshop and all tools within it require [https://somakeit.org.uk/workshop-induction/ an induction.] Induction processes are tightly controlled and can be found on a separate area of the website.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Metal bender]]&lt;br /&gt;
&lt;br /&gt;
[[Wood planer]]&lt;br /&gt;
&lt;br /&gt;
[[Warco mill]]&lt;br /&gt;
&lt;br /&gt;
=== Meetings and Events ===&lt;br /&gt;
[[Members&#039; Meeting]]&lt;br /&gt;
&lt;br /&gt;
[[Hack the space day|Hack the Space Day]]&lt;br /&gt;
&lt;br /&gt;
Python/Code club?&lt;br /&gt;
&lt;br /&gt;
=== Space IT infastucture ===&lt;br /&gt;
[[Yoshi|Yoshi (web services server)]]&lt;br /&gt;
&lt;br /&gt;
[[Members|members (memebers area server)]]&lt;br /&gt;
&lt;br /&gt;
[[network]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Main_Page&amp;diff=157</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Main_Page&amp;diff=157"/>
		<updated>2024-04-09T21:08:01Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Update introduction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&#039;&#039;&#039;This Wiki is for SoMaketIt space and equipment configuration information &amp;amp; detail only. Any H&amp;amp;S rules, policies and process, and workshop tool risk assessments &amp;amp; inductions are detailed on the main site on the [https://somakeit.org.uk/inductions-and-processes/ Induction Website Pages] so it is clear what requires an induction and what does not.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The old wiki and content has been archived at https://old-wiki.somakeit.org.uk and may contain some information that has not yet been added to this page.&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;Main Index&#039;&#039;&#039; (all pages must link from here) ==&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;[[3D Printing]]&#039;&#039;&#039; ===&lt;br /&gt;
[[Printing with Cura]]&lt;br /&gt;
&lt;br /&gt;
[[Octoprint and OctoEverywhere|Octoprint / OctoEverywhere]]&lt;br /&gt;
&lt;br /&gt;
[[3D Printers Models|Printers]]&lt;br /&gt;
&lt;br /&gt;
[[Filament]]&lt;br /&gt;
&lt;br /&gt;
=== [[CNC Machine]] ===&lt;br /&gt;
[[CNC Machine/Intermediate documentation|Documentation for intermediate users]]&lt;br /&gt;
&lt;br /&gt;
[[CNC Machine/Advanced documentation|Documentation for advanced users]]&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;Electronics area&#039;&#039;&#039; ===&lt;br /&gt;
[[Rigol DS1104Z-S PLUS Oscilloscope|Rigol DS1104-Z-S Oscilloscope]]&lt;br /&gt;
&lt;br /&gt;
[[Soldering]]&lt;br /&gt;
&lt;br /&gt;
[[Electronics test equipment|Other Test equipment]]&lt;br /&gt;
&lt;br /&gt;
[[Electronics Components]]&lt;br /&gt;
&lt;br /&gt;
===&#039;&#039;&#039;Other Cleanroom Equipment&#039;&#039;&#039;===&lt;br /&gt;
[[Vinyl Cutter]]&lt;br /&gt;
&lt;br /&gt;
[[Laser Cutter]]&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;Kitchen &amp;amp; Social Area&#039;&#039;&#039; ===&lt;br /&gt;
[[General Kitchen &amp;amp; Social Area information]]&lt;br /&gt;
&lt;br /&gt;
=== Workshop tools ===&lt;br /&gt;
&#039;&#039;&#039;The workshop and all tools within it require [https://somakeit.org.uk/workshop-induction/ an induction.] Induction processes are tightly controlled and can be found on a separate area of the website.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Metal bender]]&lt;br /&gt;
&lt;br /&gt;
[[Wood planer]]&lt;br /&gt;
&lt;br /&gt;
=== Meetings and Events ===&lt;br /&gt;
[[Members&#039; Meeting]]&lt;br /&gt;
&lt;br /&gt;
[[Hack the space day|Hack the Space Day]]&lt;br /&gt;
&lt;br /&gt;
Python/Code club?&lt;br /&gt;
&lt;br /&gt;
=== Space IT infastucture ===&lt;br /&gt;
[[Yoshi|Yoshi (web services server)]]&lt;br /&gt;
&lt;br /&gt;
[[Members|members (memebers area server)]]&lt;br /&gt;
&lt;br /&gt;
[[network]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=156</id>
		<title>Big CNC Machine</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Big_CNC_Machine&amp;diff=156"/>
		<updated>2024-02-20T21:11:55Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Update info on USB drive requirements&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Induction Required}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We have a CNC Machine in the workshop area of the Makerspace.&lt;br /&gt;
&lt;br /&gt;
The CNC machine requires an induction, and you can find the risk assessment and details on [https://somakeit.org.uk/cnc/ Workshop Induction pages.] Various manuals for the CNC can be found on the induction page.&lt;br /&gt;
&lt;br /&gt;
Note that we have a PC in the clean room which runs [https://www.vectric.com/products/vcarve-pro Vectric VCarve] Makerspace edition. This will generate GCode for the CNC toolpaths and also allow design work to be carried out.&lt;br /&gt;
&lt;br /&gt;
This page covers core details of the machine, for more advanced usage of the CNC machine see the  [[CNC Machine/Intermediate documentation|Intermediate documentation]] and [[CNC Machine/Advanced documentation|Advanced documentation]] pages.&lt;br /&gt;
&lt;br /&gt;
== About The Machine ==&lt;br /&gt;
&lt;br /&gt;
=== Specifications ===&lt;br /&gt;
{|&lt;br /&gt;
|&#039;&#039;&#039;Manufacturer&#039;&#039;&#039;&lt;br /&gt;
|StyleCNC&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Model&#039;&#039;&#039;&lt;br /&gt;
|STM6090&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;No. Axes&#039;&#039;&#039;&lt;br /&gt;
|4 &amp;lt;small&amp;gt;(XYZ + Rotary)&amp;lt;/small&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Bed Size&#039;&#039;&#039;&lt;br /&gt;
|600×900mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Effective Work Volume&#039;&#039;&#039;&lt;br /&gt;
|600×750×150mm&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Controller&#039;&#039;&#039;&lt;br /&gt;
|RichAuto A18&lt;br /&gt;
|}&lt;br /&gt;
For further information on the machine, check out the manufacturer&#039;s website: &amp;lt;nowiki&amp;gt;https://www.stylecnc.com&amp;lt;/nowiki&amp;gt;. (Note that our machine has some modifications to allow for coolant, and dust collection).&lt;br /&gt;
&lt;br /&gt;
To learn more about the controller, here is the manufacturer&#039;s page: [http://richnc.com.cn:9092/en/product/content-41.html http://richnc.com.cn]&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Programming ===&lt;br /&gt;
According to it&#039;s [http://richnc.com.cn:9092/attach?id=917&amp;amp;down=1 manual], the controller accepts &#039;standard G-Code&#039;. Unfortunately, no further information is provided, so it is assumed it supports most of the basic G-Codes listed on [[wikipedia:G-code|Wikipedia]]. By default, the router always has the spindle on, and feeds and speeds are specified through a menu before a program is run. See information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page to configure this through g code.&lt;br /&gt;
&lt;br /&gt;
As mentioned earlier, the makerspace has a license for VCarve, which can also be used to program the router. For those wishing to use other software e.g. Fusion 360 see information on the [[CNC Machine/Intermediate documentation|Intermediate documentation]] page&lt;br /&gt;
&lt;br /&gt;
==== Programming 4th axis ====&lt;br /&gt;
While VCarve has some support for the rotary axis, it is not practical as it replaces X or Y moves with the rotary, meaning you won&#039;t be able to program true 4 axis toolpaths. For true 4 axis milling you will need to manually program the moves, or find/buy a piece of software that has the features you are looking for&lt;br /&gt;
&lt;br /&gt;
=== Spindle speeds ===&lt;br /&gt;
&lt;br /&gt;
The machine has several preset spindle speeds which are listed below.&lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! mode || Speed &lt;br /&gt;
|-&lt;br /&gt;
| 1 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|2 || 6000 &lt;br /&gt;
|-&lt;br /&gt;
|3 || 9000 &lt;br /&gt;
|-&lt;br /&gt;
|4 || 12000 &lt;br /&gt;
|-&lt;br /&gt;
|5 || 16200 &lt;br /&gt;
|-&lt;br /&gt;
|6 || 18000 &lt;br /&gt;
|-&lt;br /&gt;
|7 || 21000 &lt;br /&gt;
|-&lt;br /&gt;
|8 || 24000 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== USB Drive requirements ===&lt;br /&gt;
The CNC controller doesent work with large capacity USB drives (these use NTFS format by default). You will need a FAT32 formmatted drive, 8GB drives are known to work larger drives may also work but need to be reformatted with a smaller partition. A 64GB drive reformatted as a 30GB FAT32 is known to not work however when formatted at 16GB in FAT32 it does.&lt;br /&gt;
&lt;br /&gt;
== Avaliable Tools ==&lt;br /&gt;
&lt;br /&gt;
There is a Stanley toolbox by the CNC that contains some tools for use with the CNC which are documented below.&lt;br /&gt;
&lt;br /&gt;
=== Collets ===&lt;br /&gt;
&lt;br /&gt;
The space has ER collets in 1-13mm&lt;br /&gt;
&lt;br /&gt;
There are also ER collets in 1/2in and 1/8in&lt;br /&gt;
&lt;br /&gt;
=== Flat end mills ===&lt;br /&gt;
&lt;br /&gt;
The space has the following HSS flat endmills  &lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! diameter || shaft diameter || Flute length || overall length&lt;br /&gt;
|-&lt;br /&gt;
| 1.5mm || 6mm || 4mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2mm || 6mm || 7mm || 51mm&lt;br /&gt;
|-&lt;br /&gt;
| 2.5mm || 6mm || 8mm || 52mm&lt;br /&gt;
|-&lt;br /&gt;
| 3.5mm || 6mm || 10mm || 54mm&lt;br /&gt;
|-&lt;br /&gt;
| 4.5mm || 6mm || 11mm | &lt;br /&gt;
|54mm&lt;br /&gt;
|-&lt;br /&gt;
| 5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|-&lt;br /&gt;
| 5.5mm || 6mm || 13mm || 57mm&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Other bits ===&lt;br /&gt;
&lt;br /&gt;
There are a few countersink and chamfer bits in the box allong with a 1/4in ball endmill&lt;br /&gt;
[[Category:Tools]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Members&amp;diff=155</id>
		<title>Members</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Members&amp;diff=155"/>
		<updated>2024-02-17T19:01:12Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Updated formatting of install details&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Members is the Digital Ocean droplet hosting [https://members.somakeit.org.uk members.somakeit.org.uk].&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
Members is configured to run the members areas software called HMS (https://github.com/NottingHack/hms2). The software and its deployment is largley maintained for us by its creator (we still handle package updates and simlar tasks). &lt;br /&gt;
&lt;br /&gt;
=== Ansible ===&lt;br /&gt;
An ansible playbook to configure the server can be found on github https://github.com/somakeit/members_ansible_config (currently only visible to org members), this is fairly up to date but may not contain changes since the last time the config stored here was checked (this can be done by running the playbook with --check) in most cases the files on the server should be considered the correct configuration should they differ from ansible. The ansible-vault password used to encrypt the server secrets in this repo is stored with the trustees and with the members who manage the server.&lt;br /&gt;
&lt;br /&gt;
=== Original Setup notes ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
These are the instalation steps taken to set members up when Scorpia @ Bracken replaced the much more expensive droplet. These will not include any changes since the oringal install&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Made new droplet: 46.101.29.241 ubuntu 22.04&lt;br /&gt;
&lt;br /&gt;
## Created user accounts&lt;br /&gt;
* tyler&lt;br /&gt;
* bracken &lt;br /&gt;
* other ssh keys left in root auth keys for now (unusable because PermitRootLogin is off) &lt;br /&gt;
* dpslwk so Matt (HMS author) can help &lt;br /&gt;
* chris18890 as existing admin&lt;br /&gt;
&lt;br /&gt;
## Server hardening&lt;br /&gt;
* Disable PermitRootLogin for ssh&lt;br /&gt;
* Enabled UFW with allow for port 22 globaly&lt;br /&gt;
* UFW allow 80 and 443 globaly&lt;br /&gt;
* UFW allow 1194/udp globally for OpenVPN&lt;br /&gt;
* UFW allow 3306 from 10.8.0.0/24 for doors to access database over encrypted tunnel&lt;br /&gt;
* Copied letsencrypt files from the old server, installed certbot with apt, dry-ran a renew sucessfully&lt;br /&gt;
&lt;br /&gt;
## Mysql&lt;br /&gt;
* installed mariadb-server&lt;br /&gt;
* Copied the live database to the new server, needs to be re-done clean before golive.&lt;br /&gt;
* Copied clean database over at approx 17:00.&lt;br /&gt;
&lt;br /&gt;
## Redis&lt;br /&gt;
* Apt-get install redis&lt;br /&gt;
* set requirepass&lt;br /&gt;
&lt;br /&gt;
## Nginx&lt;br /&gt;
* Installed nginx&lt;br /&gt;
&lt;br /&gt;
## HMS&lt;br /&gt;
* created hms user&lt;br /&gt;
* checked out hms git repo&lt;br /&gt;
* installed php php-redis php-curl php-xml&lt;br /&gt;
* installed composer&lt;br /&gt;
* curl -sS https://getcomposer.org/installer | php&lt;br /&gt;
* sudo mv composer.phar /usr/local/bin/composer&lt;br /&gt;
* composer install&lt;br /&gt;
* composer update&lt;br /&gt;
&lt;br /&gt;
## attempt 2 with old php&lt;br /&gt;
* sudo apt install software-properties-common&lt;br /&gt;
* sudo add-apt-repository ppa:ondrej/php -y&lt;br /&gt;
* sudo apt install php7.4 php7.4-redis php7.4-curl php7.4-xml php7.4-zip php7.4-sql php7.4-mysql php7.4 php7.4-fpm php7.4-mbstring&lt;br /&gt;
* sudo update-alternatives --config php&lt;br /&gt;
* recheckout hms&lt;br /&gt;
* add .env file&lt;br /&gt;
* composer update&lt;br /&gt;
* run artisan commands from vagrant script (some may have caused issues)&lt;br /&gt;
* add crontab as set by vagrant script&lt;br /&gt;
* add hms-7.4.conf in /etc/php/7.4/fpm/pool.d/&lt;br /&gt;
* run php artisan config:cache then php artisan hor:ter&lt;br /&gt;
* add uncommitted images used in emails.&lt;br /&gt;
&lt;br /&gt;
## NPM&lt;br /&gt;
* install node 14 https://github.com/nodesource/distributions/blob/master/README.md&lt;br /&gt;
* https://unix.stackexchange.com/questions/627635/upgrading-nodejs-on-ubuntu-how-to-fix-broken-pipe-error&lt;br /&gt;
* copy npm rc&lt;br /&gt;
* add font awsome token&lt;br /&gt;
* npm install&lt;br /&gt;
* add resources/sass/_variables_somakeit.scss&lt;br /&gt;
* npm run&lt;br /&gt;
&lt;br /&gt;
## Other&lt;br /&gt;
* install laravel-echo-server&lt;br /&gt;
* add systemd for echo server and horizon&lt;br /&gt;
* copy over oauth keys&lt;br /&gt;
* Add new box IP to mailgun approved IPs&lt;br /&gt;
&lt;br /&gt;
## OpenVPN (for the doors)&lt;br /&gt;
* Installed using https://github.com/angristan/openvpn-install and (https://github.com/angristan/openvpn-install/issues/1030).&lt;br /&gt;
* Created a client for kong and added route-nopull to make it a split tunnel config.&lt;br /&gt;
* Created a client for extDoorPi added route-nopull&lt;br /&gt;
* Installed openvpn configs on both pis, tested and door access working.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access to the server ==&lt;br /&gt;
&lt;br /&gt;
There are accounts for a few members on the machine which are the main way to access the server. There is also a trustees account for which they have the password should other users be unavaliable.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Members&amp;diff=154</id>
		<title>Members</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Members&amp;diff=154"/>
		<updated>2024-02-17T18:59:04Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Updated configuration information&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Members is the Digital Ocean droplet hosting [https://members.somakeit.org.uk members.somakeit.org.uk].&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
Members is configured to run the members areas software called HMS (https://github.com/NottingHack/hms2). The software and its deployment is largley maintained for us by its creator (we still handle package updates and simlar tasks). &lt;br /&gt;
&lt;br /&gt;
=== Ansible ===&lt;br /&gt;
An ansible playbook to configure the server can be found on github https://github.com/somakeit/members_ansible_config (currently only visible to org members), this is fairly up to date but may not contain changes since the last time the config stored here was checked (this can be done by running the playbook with --check) in most cases the files on the server should be considered the correct configuration should they differ from ansible. The ansible-vault password used to encrypt the server secrets in this repo is stored with the trustees and with the members who manage the server.&lt;br /&gt;
&lt;br /&gt;
=== Original Setup notes ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
These are the instalation steps taken to set members up when Scorpia @ Bracken replaced the much more expensive droplet. These will not include any changes since the oringal install&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Made new droplet: 46.101.29.241 ubuntu 22.04&lt;br /&gt;
&lt;br /&gt;
==== Created user accounts ====&lt;br /&gt;
* tyler&lt;br /&gt;
* bracken &lt;br /&gt;
* other ssh keys left in root auth keys for now (unusable because PermitRootLogin is off) &lt;br /&gt;
* dpslwk so Matt (HMS author) can help &lt;br /&gt;
* chris18890 as existing admin&lt;br /&gt;
&lt;br /&gt;
==== Server hardening ====&lt;br /&gt;
* Disable PermitRootLogin for ssh&lt;br /&gt;
* Enabled UFW with allow for port 22 globaly&lt;br /&gt;
* UFW allow 80 and 443 globaly&lt;br /&gt;
* UFW allow 1194/udp globally for OpenVPN&lt;br /&gt;
* UFW allow 3306 from 10.8.0.0/24 for doors to access database over encrypted tunnel&lt;br /&gt;
* Copied letsencrypt files from the old server, installed certbot with apt, dry-ran a renew sucessfully&lt;br /&gt;
&lt;br /&gt;
==== Mysql ====&lt;br /&gt;
* installed mariadb-server&lt;br /&gt;
* Copied the live database to the new server, needs to be re-done clean before golive.&lt;br /&gt;
* Copied clean database over at approx 17:00.&lt;br /&gt;
&lt;br /&gt;
==== Redis ====&lt;br /&gt;
* Apt-get install redis&lt;br /&gt;
* set requirepass&lt;br /&gt;
&lt;br /&gt;
==== Nginx ====&lt;br /&gt;
* Installed nginx&lt;br /&gt;
&lt;br /&gt;
==== HMS ====&lt;br /&gt;
* created hms user&lt;br /&gt;
* checked out hms git repo&lt;br /&gt;
* installed php php-redis php-curl php-xml&lt;br /&gt;
* installed composer&lt;br /&gt;
* curl -sS https://getcomposer.org/installer | php&lt;br /&gt;
* sudo mv composer.phar /usr/local/bin/composer&lt;br /&gt;
* composer install&lt;br /&gt;
* composer update&lt;br /&gt;
&lt;br /&gt;
==== attempt 2 with old php ====&lt;br /&gt;
* sudo apt install software-properties-common&lt;br /&gt;
* sudo add-apt-repository ppa:ondrej/php -y&lt;br /&gt;
* sudo apt install php7.4 php7.4-redis php7.4-curl php7.4-xml php7.4-zip php7.4-sql php7.4-mysql php7.4 php7.4-fpm php7.4-mbstring&lt;br /&gt;
* sudo update-alternatives --config php&lt;br /&gt;
* recheckout hms&lt;br /&gt;
* add .env file&lt;br /&gt;
* composer update&lt;br /&gt;
* run artisan commands from vagrant script (some may have caused issues)&lt;br /&gt;
* add crontab as set by vagrant script&lt;br /&gt;
* add hms-7.4.conf in /etc/php/7.4/fpm/pool.d/&lt;br /&gt;
* run php artisan config:cache then php artisan hor:ter&lt;br /&gt;
* add uncommitted images used in emails.&lt;br /&gt;
&lt;br /&gt;
==== NPM ====&lt;br /&gt;
* install node 14 https://github.com/nodesource/distributions/blob/master/README.md&lt;br /&gt;
* https://unix.stackexchange.com/questions/627635/upgrading-nodejs-on-ubuntu-how-to-fix-broken-pipe-error&lt;br /&gt;
* copy npm rc&lt;br /&gt;
* add font awsome token&lt;br /&gt;
* npm install&lt;br /&gt;
* add resources/sass/_variables_somakeit.scss&lt;br /&gt;
* npm run&lt;br /&gt;
&lt;br /&gt;
==== Other ====&lt;br /&gt;
* install laravel-echo-server&lt;br /&gt;
* add systemd for echo server and horizon&lt;br /&gt;
* copy over oauth keys&lt;br /&gt;
* Add new box IP to mailgun approved IPs&lt;br /&gt;
&lt;br /&gt;
==== OpenVPN (for the doors) ====&lt;br /&gt;
&lt;br /&gt;
==== Installed using https://github.com/angristan/openvpn-install and (https://github.com/angristan/openvpn-install/issues/1030). ====&lt;br /&gt;
* Created a client for kong and added route-nopull to make it a split tunnel config.&lt;br /&gt;
* Created a client for extDoorPi added route-nopull&lt;br /&gt;
* Installed openvpn configs on both pis, tested and door access working.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access to the server ==&lt;br /&gt;
&lt;br /&gt;
There are accounts for a few members on the machine which are the main way to access the server. There is also a trustees account for which they have the password should other users be unavaliable.&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Yoshi&amp;diff=153</id>
		<title>Yoshi</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Yoshi&amp;diff=153"/>
		<updated>2024-02-17T18:42:43Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added a stub page on the Yoshi server&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Yoshi is a VM hosted by Bitfolk that runs our website and this wiki. &lt;br /&gt;
&lt;br /&gt;
=== Configuration ===&lt;br /&gt;
Yoshi is configured as a docker host with each service running as a seperate docker container. the configuration of the containers can be found in https://github.com/somakeit/yoshi_container_config (only visible to org members).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Yoshi is primaraly configured using ansible (a configuration mangement tool). The playbooks to do this can be found on github at https://github.com/somakeit/yoshi_ansible_config (only visible to org members). The ansible-vault password used to encrypt the server secrets in this repo is stored with the trustees and with the members who manage the server.&lt;br /&gt;
&lt;br /&gt;
=== Access to the server ===&lt;br /&gt;
There are accounts for several members on the machine which are the main way to access the server. There is also a trustees account for which they have the password should other users be unavaliable. &lt;br /&gt;
[[Category:Servers]]&lt;br /&gt;
[[Category:Infrastructure]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
	<entry>
		<id>https://wiki.somakeit.org.uk/index.php?title=Main_Page&amp;diff=152</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.somakeit.org.uk/index.php?title=Main_Page&amp;diff=152"/>
		<updated>2024-02-17T18:24:58Z</updated>

		<summary type="html">&lt;p&gt;Scorpia: Added pages for space infastructure&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&#039;&#039;&#039;The old wiki and content it is at https://old-wiki.somakeit.org.uk Selected content will be eventually migrated to this wiki as appropriate.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;This Wiki is for SoMaketIt space and equipment configuration information &amp;amp; detail only. Any H&amp;amp;S rules, policies and process, and workshop tool risk assessments &amp;amp; inductions will be migrated to the new [https://somakeit.org.uk/inductions-and-processes/ Induction Website Pages] so it is clear what requires an induction and what does not.&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;Main Index&#039;&#039;&#039; (all pages must link from here) ==&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;[[3D Printing]]&#039;&#039;&#039; ===&lt;br /&gt;
[[Printing with Cura]]&lt;br /&gt;
&lt;br /&gt;
[[Octoprint and OctoEverywhere|Octoprint / OctoEverywhere]]&lt;br /&gt;
&lt;br /&gt;
[[3D Printers Models|Printers]]&lt;br /&gt;
&lt;br /&gt;
[[Filament]]&lt;br /&gt;
&lt;br /&gt;
=== [[CNC Machine]] ===&lt;br /&gt;
[[CNC Machine/Intermediate documentation|Documentation for intermediate users]]&lt;br /&gt;
&lt;br /&gt;
[[CNC Machine/Advanced documentation|Documentation for advanced users]]&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;Electronics area&#039;&#039;&#039; ===&lt;br /&gt;
[[Rigol DS1104Z-S PLUS Oscilloscope|Rigol DS1104-Z-S Oscilloscope]]&lt;br /&gt;
&lt;br /&gt;
[[Soldering]]&lt;br /&gt;
&lt;br /&gt;
[[Electronics test equipment|Other Test equipment]]&lt;br /&gt;
&lt;br /&gt;
[[Electronics Components]]&lt;br /&gt;
&lt;br /&gt;
===&#039;&#039;&#039;Other Cleanroom Equipment&#039;&#039;&#039;===&lt;br /&gt;
[[Vinyl Cutter]]&lt;br /&gt;
&lt;br /&gt;
[[Laser Cutter]]&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;Kitchen &amp;amp; Social Area&#039;&#039;&#039; ===&lt;br /&gt;
[[General Kitchen &amp;amp; Social Area information]]&lt;br /&gt;
&lt;br /&gt;
=== Workshop tools ===&lt;br /&gt;
&#039;&#039;&#039;The workshop and all tools within it require [https://somakeit.org.uk/workshop-induction/ an induction.] Induction processes are tightly controlled and can be found on a separate area of the website.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Metal bender]]&lt;br /&gt;
&lt;br /&gt;
[[Wood planer]]&lt;br /&gt;
&lt;br /&gt;
=== Meetings and Events ===&lt;br /&gt;
[[Members&#039; Meeting]]&lt;br /&gt;
&lt;br /&gt;
[[Hack the space day|Hack the Space Day]]&lt;br /&gt;
&lt;br /&gt;
Python/Code club?&lt;br /&gt;
&lt;br /&gt;
=== Space IT infastucture ===&lt;br /&gt;
[[Yoshi|Yoshi (web services server)]]&lt;br /&gt;
&lt;br /&gt;
[[Members|members (memebers area server)]]&lt;br /&gt;
&lt;br /&gt;
[[network]]&lt;/div&gt;</summary>
		<author><name>Scorpia</name></author>
	</entry>
</feed>