Difference between revisions of "Screwduino"
Jump to navigation
Jump to search
Blwikiadmin (talk | contribs) (→Power) |
Blwikiadmin (talk | contribs) |
||
Line 134: | Line 134: | ||
* [[Screwduino Assembly Sheet]] | * [[Screwduino Assembly Sheet]] | ||
+ | |||
+ | == Revision History == | ||
+ | |||
+ | Rev X6 (vs X5) | ||
+ | <pre> | ||
+ | From kiCompNL.py | ||
+ | First netlist: Screwduino X5\screwduino.net | ||
+ | Number of Nets: 33 | ||
+ | Second netlist: screwduino.net (Rev X6) | ||
+ | Number of Nets: 33 | ||
+ | Mismatch in net (1): +5V diff ['JP8-3'] | ||
+ | Mismatch in net (1): /SDA diff ['JP8-2'] | ||
+ | Mismatch in net (1): /SCK diff ['JP8-1'] | ||
+ | Mismatch in net: +5V diff ['JP8-2'] | ||
+ | Mismatch in net: /SDA diff ['JP8-3'] | ||
+ | Mismatch in net: /SCK diff ['JP8-4'] | ||
+ | Rev X5 (vs X4) | ||
+ | From kiCompNL.py | ||
+ | First netlist: C:\Users\doug_000\Documents\GitHub\lb-boards\Screwduino\ScrewduinoX4\screwduino.net | ||
+ | Number of Nets: 33 | ||
+ | Second netlist: C:\Users\doug_000\Documents\GitHub\lb-boards\Screwduino\Screwduino X5\screwduino.net | ||
+ | Number of Nets: 33 | ||
+ | Mismatch in net (1): 5V diff ['C8-1', 'C7-1'] | ||
+ | Mismatch in net (1): SDA diff ['R3-2'] | ||
+ | Mismatch in net (1): SCK diff ['R2-2'] | ||
+ | Mismatch in net (1): RST* diff ['C1-1', 'R1-2'] | ||
+ | Mismatch in net (1): VIN diff ['C2-1', 'C3-1'] | ||
+ | Mismatch in net (1): DTR* diff ['C1-2'] | ||
+ | Mismatch in net: 5V diff ['C1-1', 'C2-1'] | ||
+ | Mismatch in net: SDA diff ['R2-2'] | ||
+ | Mismatch in net: SCK diff ['R1-2'] | ||
+ | Mismatch in net: RST* diff ['C3-1', 'R3-2'] | ||
+ | Mismatch in net: VIN diff ['C8-1', 'C7-1'] | ||
+ | Mismatch in net: DTR* diff ['C3-2'] | ||
+ | Rev X4 (vs X3) | ||
+ | No netlist changes | ||
+ | Rev X3 (vs X2) | ||
+ | From kiCompNL.py | ||
+ | net is in 1 but not 2 ['+5V', 'JP6-7', 'JP7-2', 'JP3-2', 'D1-2', 'R1-1', 'JP4-3', 'JP2-2', 'JP4-4', 'U1-7', 'U1-20', 'C8-1', 'C9-1', 'C7-1', 'C4-1', 'JP8-3', 'C5-1', 'R3-1', 'R2-1', 'C6-1'] | ||
+ | net is in 1 but not 2 ['/D12', 'U1-18', 'JP3-1', 'JP6-2'] | ||
+ | net is in 1 but not 2 ['/AREF', 'U1-21', 'JP5-8'] | ||
+ | net is in 1 but not 2 ['/D5', 'U1-11', 'JP7-3'] | ||
+ | net is in 1 but not 2 ['/D4', 'U1-6', 'JP7-4'] | ||
+ | net is in 1 but not 2 ['/D0', 'JP1-4', 'JP7-8', 'U1-2'] | ||
+ | net is in 1 but not 2 ['/D6', 'U1-12', 'JP4-8'] | ||
+ | net is in 1 but not 2 ['/D7', 'U1-13', 'JP4-7'] | ||
+ | net is in 1 but not 2 ['/D8', 'JP4-6', 'U1-14'] | ||
+ | net is in 1 but not 2 ['/SDA', 'JP8-2', 'R3-2', 'U1-27', 'JP5-2'] | ||
+ | net is in 1 but not 2 ['/VROUT', 'U2-2', 'U2-4', 'JP2-1'] | ||
+ | net is in 1 but not 2 ['/VUSB', 'JP1-3', 'JP2-3'] | ||
+ | net is in 1 but not 2 ['/SCK', 'R2-2', 'U1-28', 'JP8-1', 'JP5-1'] | ||
+ | net is in 1 but not 2 ['/AD3', 'U1-26', 'JP5-3'] | ||
+ | net is in 1 but not 2 ['/AD2', 'U1-25', 'JP5-4'] | ||
+ | net is in 1 but not 2 ['/AD1', 'JP5-5', 'U1-24'] | ||
+ | net is in 1 but not 2 ['/AD0', 'JP5-6', 'U1-23'] | ||
+ | net is in 1 but not 2 ['/RST*', 'SW1-1', 'U1-1', 'JP4-5', 'SW1-2', 'D1-1', 'R1-2', 'JP3-5', 'C1-1'] | ||
+ | net is in 1 but not 2 ['/D11', 'U1-17', 'JP3-4', 'JP6-3'] | ||
+ | net is in 1 but not 2 ['/D13', 'JP3-3', 'JP6-1', 'U1-19'] | ||
+ | net is in 1 but not 2 ['/D2', 'U1-4', 'JP7-6'] | ||
+ | net is in 1 but not 2 ['/VIN', 'C2-1', 'C3-1', 'U2-3', 'K1-1', 'JP6-6'] | ||
+ | net is in 1 but not 2 ['/D9', 'JP6-5', 'U1-15'] | ||
+ | net is in 1 but not 2 ['/D10', 'U1-16', 'JP6-4'] | ||
+ | net is in 1 but not 2 ['/D1', 'JP1-5', 'U1-3', 'JP7-7'] | ||
+ | net is in 1 but not 2 ['/D3', 'JP7-5', 'U1-5'] | ||
+ | net is in 1 but not 2 ['""', 'MTG4-1'] | ||
+ | net is in 1 but not 2 ['""', 'MTG3-1'] | ||
+ | net is in 1 but not 2 ['/CX1', 'X1-1', 'U1-10'] | ||
+ | net is in 1 but not 2 ['/CX2', 'U1-9', 'X1-3'] | ||
+ | net is in 1 but not 2 ['/DTR*', 'JP1-6', 'C1-2'] | ||
+ | net is in 1 but not 2 ['""', 'MTG1-1'] | ||
+ | net is in 1 but not 2 ['""', 'MTG2-1'] | ||
+ | </pre> |
Revision as of 13:58, 10 January 2020
Contents
Features
- Arduino UNO compatible
- Arduino UNO bootloader
- Select UNO in Arduino IDE to download card
- No USB connector/chip.
- Use a FTDI download cable or FTDI to USB interface for USB (not supplied)
- ICSP header for download
- 4-pin I2C connector for easy attachment of an I2C LCD display and other I2C sensors (like temperature sensors).
- Beware there are many different I2C pinouts.
- Added 10K ohm pullup resistors (R3 and R4) from the I2C SDA/SCL to +5V
- If the user doesn't want the resistors, they can snip them out of the circuit
- Uses through hole parts so that it is easier to assemble.
- The sole exception is the voltage regulator which is surface mount for heat transfer
- 5mm pitch screw terminal blocks.
- Reset switch.
- 7-12V DC on standard 2.1mm DC power connector
- Power selection jumper (FTDI, Regulator, Screw Terminals)
- Four (4) good mounting holes that take 4-40 screws and have more than enough clearance for screw heads, standoffs and/or nuts.
Design Advantages
Gets away from all of the painful wire jumpers and pins that constantly come loose. Makes the step from prototype to final design much easier.
Method | Material Costs | Labor Tasks | Power/Ground pins | Wires secure? | Mounting | I2C Support |
---|---|---|---|---|---|---|
Processor | UNO - $30 | Strip wires and solder to parts | 3 GND1 PWR | Wires don't stay in holes with any stress. | Poor | No connector |
Breadboards | Uno - $30 +Breadboard $10 | Strip wires or use breadboard wires | 120 each PWR/GND for 700 point breadboard | Moderately secure since the holes are usually “tight” | Poor | No connector |
ProtoShields | Uno - $30 +Shields - $15 | Lot of time- consuming soldering of custom wiring | Vary but usually enough although maybe not connectorized in the best use | Wires typically soldered so secure | Poor | No connector |
Sensor Shields | Uno - $30 +Shields - $15 | Use custom wires | Excellent at 1 per Arduino Digital/Analog pin | Connectors are secure | Poor | Yes |
Screw Wings | Uno - $30 + Wing Shield - $15 | Strip wires and solder to parts | Varies depending upon shield | Connections very secure | Poor | No connector |
Screwduino | $30 (est) | Strip wires and solder to parts | 5 – Ground 4 – PowerAdditional on other connectors | Connections very secure | Excellent | Yes |
Screwduino Schematic
Screwduino Layout
Power
Measured 15 mA with 9V external power input (no loads but running program).
Card Power Source - VSEL Jumper
- This jumper selects the power source for the card
- Install jumper across the USB pins to power the card from the FTDI interface.
- Install jumper across the EXT pins to power the card from the DC jack.
- Leave the jumper off when powering the card from the ISP connector.
Factory Test Procedure
Remove power select jumper JP2 (install with 1 side of jumper on pin 1 and other side of jumper to air) Disconnect USB cable from ISP programmer to power programmer off Connect ISP cable to JP3 being careful to observe location of pin 1 (red power lead is at pin 2) Program the Screwduino with UNO bootloader - verify it programs without error Move power select jumper JP2 to USB pins Attach FTDI to USB being careful to observe proper polarity of connector Upload Screwduino Test Code Attach LED with series resistor Ground to GND connection in bottom right screw terminal Move LED + side to terminal pins D3-D13 and A0-A5. LED should blink shortly at each position Disconnect USB at FTDI Install power select jumper JP2 on EXT pins Apply 9V power to DC power jack using current limited power supply Verify power is 5.0V +/- 0.1V at terminal block pins +5V and Ground Verify LED lights briefly on terminal pins D3-D13 and A0-A5. LED should blink shortly at each position Disconnect DC power jack Move power select jumper JP2 to USB pins Download Arduino minimal sketch via FTDI USB connector (not via programmer) Part should program (this checks the D0 and D1 connections to the FTD)) Remove power select jumper JP2 (install with 1 side of jumper on pin 1 and other pin to air) Board ships with the power select jumper in the open position (for ISP programming) or USB (for FTDI)
Assembly Sheet
Revision History
Rev X6 (vs X5)
From kiCompNL.py First netlist: Screwduino X5\screwduino.net Number of Nets: 33 Second netlist: screwduino.net (Rev X6) Number of Nets: 33 Mismatch in net (1): +5V diff ['JP8-3'] Mismatch in net (1): /SDA diff ['JP8-2'] Mismatch in net (1): /SCK diff ['JP8-1'] Mismatch in net: +5V diff ['JP8-2'] Mismatch in net: /SDA diff ['JP8-3'] Mismatch in net: /SCK diff ['JP8-4'] Rev X5 (vs X4) From kiCompNL.py First netlist: C:\Users\doug_000\Documents\GitHub\lb-boards\Screwduino\ScrewduinoX4\screwduino.net Number of Nets: 33 Second netlist: C:\Users\doug_000\Documents\GitHub\lb-boards\Screwduino\Screwduino X5\screwduino.net Number of Nets: 33 Mismatch in net (1): 5V diff ['C8-1', 'C7-1'] Mismatch in net (1): SDA diff ['R3-2'] Mismatch in net (1): SCK diff ['R2-2'] Mismatch in net (1): RST* diff ['C1-1', 'R1-2'] Mismatch in net (1): VIN diff ['C2-1', 'C3-1'] Mismatch in net (1): DTR* diff ['C1-2'] Mismatch in net: 5V diff ['C1-1', 'C2-1'] Mismatch in net: SDA diff ['R2-2'] Mismatch in net: SCK diff ['R1-2'] Mismatch in net: RST* diff ['C3-1', 'R3-2'] Mismatch in net: VIN diff ['C8-1', 'C7-1'] Mismatch in net: DTR* diff ['C3-2'] Rev X4 (vs X3) No netlist changes Rev X3 (vs X2) From kiCompNL.py net is in 1 but not 2 ['+5V', 'JP6-7', 'JP7-2', 'JP3-2', 'D1-2', 'R1-1', 'JP4-3', 'JP2-2', 'JP4-4', 'U1-7', 'U1-20', 'C8-1', 'C9-1', 'C7-1', 'C4-1', 'JP8-3', 'C5-1', 'R3-1', 'R2-1', 'C6-1'] net is in 1 but not 2 ['/D12', 'U1-18', 'JP3-1', 'JP6-2'] net is in 1 but not 2 ['/AREF', 'U1-21', 'JP5-8'] net is in 1 but not 2 ['/D5', 'U1-11', 'JP7-3'] net is in 1 but not 2 ['/D4', 'U1-6', 'JP7-4'] net is in 1 but not 2 ['/D0', 'JP1-4', 'JP7-8', 'U1-2'] net is in 1 but not 2 ['/D6', 'U1-12', 'JP4-8'] net is in 1 but not 2 ['/D7', 'U1-13', 'JP4-7'] net is in 1 but not 2 ['/D8', 'JP4-6', 'U1-14'] net is in 1 but not 2 ['/SDA', 'JP8-2', 'R3-2', 'U1-27', 'JP5-2'] net is in 1 but not 2 ['/VROUT', 'U2-2', 'U2-4', 'JP2-1'] net is in 1 but not 2 ['/VUSB', 'JP1-3', 'JP2-3'] net is in 1 but not 2 ['/SCK', 'R2-2', 'U1-28', 'JP8-1', 'JP5-1'] net is in 1 but not 2 ['/AD3', 'U1-26', 'JP5-3'] net is in 1 but not 2 ['/AD2', 'U1-25', 'JP5-4'] net is in 1 but not 2 ['/AD1', 'JP5-5', 'U1-24'] net is in 1 but not 2 ['/AD0', 'JP5-6', 'U1-23'] net is in 1 but not 2 ['/RST*', 'SW1-1', 'U1-1', 'JP4-5', 'SW1-2', 'D1-1', 'R1-2', 'JP3-5', 'C1-1'] net is in 1 but not 2 ['/D11', 'U1-17', 'JP3-4', 'JP6-3'] net is in 1 but not 2 ['/D13', 'JP3-3', 'JP6-1', 'U1-19'] net is in 1 but not 2 ['/D2', 'U1-4', 'JP7-6'] net is in 1 but not 2 ['/VIN', 'C2-1', 'C3-1', 'U2-3', 'K1-1', 'JP6-6'] net is in 1 but not 2 ['/D9', 'JP6-5', 'U1-15'] net is in 1 but not 2 ['/D10', 'U1-16', 'JP6-4'] net is in 1 but not 2 ['/D1', 'JP1-5', 'U1-3', 'JP7-7'] net is in 1 but not 2 ['/D3', 'JP7-5', 'U1-5'] net is in 1 but not 2 ['""', 'MTG4-1'] net is in 1 but not 2 ['""', 'MTG3-1'] net is in 1 but not 2 ['/CX1', 'X1-1', 'U1-10'] net is in 1 but not 2 ['/CX2', 'U1-9', 'X1-3'] net is in 1 but not 2 ['/DTR*', 'JP1-6', 'C1-2'] net is in 1 but not 2 ['""', 'MTG1-1'] net is in 1 but not 2 ['""', 'MTG2-1']