├── .gitignore ├── LICENSE ├── README.md ├── doc ├── 01_RelayModification.JPG ├── 02_SpaghettiDriver.JPG ├── 03_SingleChannelDemo.JPG ├── 04_FinishedRelayDriver.JPG ├── 05_OpticalSensor.JPG ├── 06_FinishedBidriectionalAssembly.JPG ├── 07_FilteredWaveform1Bit.JPG ├── 08_CompleteAssembly.JPG ├── 09_CompleteAssemblyDetail.JPG ├── 10_Ping.png ├── IPoS_PCB_3D.png └── IPoS_Schematic.pdf ├── ecad ├── IPoS.kicad_pcb ├── IPoS.pro ├── IPoS.sch ├── fp-info-cache ├── lib │ ├── ATMega328.dcm │ └── ATMega328.lib └── sym-lib-table └── firmware └── IPoS_Firmware └── IPoS_Firmware.ino /.gitignore: -------------------------------------------------------------------------------- 1 | **/.DS_Store 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Creative Commons Attribution 4.0 International Public License 2 | 3 | By exercising the Licensed Rights (defined below), You accept and agree 4 | to be bound by the terms and conditions of this Creative Commons 5 | Attribution 4.0 International Public License ("Public License"). To the 6 | extent this Public License may be interpreted as a contract, You are 7 | granted the Licensed Rights in consideration of Your acceptance of 8 | these terms and conditions, and the Licensor grants You such rights in 9 | consideration of benefits the Licensor receives from making the 10 | Licensed Material available under these terms and conditions. 11 | 12 | 13 | Section 1 -- Definitions. 14 | 15 | a. Adapted Material means material subject to Copyright and Similar 16 | Rights that is derived from or based upon the Licensed Material 17 | and in which the Licensed Material is translated, altered, 18 | arranged, transformed, or otherwise modified in a manner requiring 19 | permission under the Copyright and Similar Rights held by the 20 | Licensor. For purposes of this Public License, where the Licensed 21 | Material is a musical work, performance, or sound recording, 22 | Adapted Material is always produced where the Licensed Material is 23 | synched in timed relation with a moving image. 24 | 25 | b. Adapter's License means the license You apply to Your Copyright 26 | and Similar Rights in Your contributions to Adapted Material in 27 | accordance with the terms and conditions of this Public License. 28 | 29 | c. Copyright and Similar Rights means copyright and/or similar rights 30 | closely related to copyright including, without limitation, 31 | performance, broadcast, sound recording, and Sui Generis Database 32 | Rights, without regard to how the rights are labeled or 33 | categorized. For purposes of this Public License, the rights 34 | specified in Section 2(b)(1)-(2) are not Copyright and Similar 35 | Rights. 36 | 37 | d. Effective Technological Measures means those measures that, in the 38 | absence of proper authority, may not be circumvented under laws 39 | fulfilling obligations under Article 11 of the WIPO Copyright 40 | Treaty adopted on December 20, 1996, and/or similar international 41 | agreements. 42 | 43 | e. Exceptions and Limitations means fair use, fair dealing, and/or 44 | any other exception or limitation to Copyright and Similar Rights 45 | that applies to Your use of the Licensed Material. 46 | 47 | f. Licensed Material means the artistic or literary work, database, 48 | or other material to which the Licensor applied this Public 49 | License. 50 | 51 | g. Licensed Rights means the rights granted to You subject to the 52 | terms and conditions of this Public License, which are limited to 53 | all Copyright and Similar Rights that apply to Your use of the 54 | Licensed Material and that the Licensor has authority to license. 55 | 56 | h. Licensor means the individual(s) or entity(ies) granting rights 57 | under this Public License. 58 | 59 | i. Share means to provide material to the public by any means or 60 | process that requires permission under the Licensed Rights, such 61 | as reproduction, public display, public performance, distribution, 62 | dissemination, communication, or importation, and to make material 63 | available to the public including in ways that members of the 64 | public may access the material from a place and at a time 65 | individually chosen by them. 66 | 67 | j. Sui Generis Database Rights means rights other than copyright 68 | resulting from Directive 96/9/EC of the European Parliament and of 69 | the Council of 11 March 1996 on the legal protection of databases, 70 | as amended and/or succeeded, as well as other essentially 71 | equivalent rights anywhere in the world. 72 | 73 | k. You means the individual or entity exercising the Licensed Rights 74 | under this Public License. Your has a corresponding meaning. 75 | 76 | 77 | Section 2 -- Scope. 78 | 79 | a. License grant. 80 | 81 | 1. Subject to the terms and conditions of this Public License, 82 | the Licensor hereby grants You a worldwide, royalty-free, 83 | non-sublicensable, non-exclusive, irrevocable license to 84 | exercise the Licensed Rights in the Licensed Material to: 85 | 86 | a. reproduce and Share the Licensed Material, in whole or 87 | in part; and 88 | 89 | b. produce, reproduce, and Share Adapted Material. 90 | 91 | 2. Exceptions and Limitations. For the avoidance of doubt, where 92 | Exceptions and Limitations apply to Your use, this Public 93 | License does not apply, and You do not need to comply with 94 | its terms and conditions. 95 | 96 | 3. Term. The term of this Public License is specified in Section 97 | 6(a). 98 | 99 | 4. Media and formats; technical modifications allowed. The 100 | Licensor authorizes You to exercise the Licensed Rights in 101 | all media and formats whether now known or hereafter created, 102 | and to make technical modifications necessary to do so. The 103 | Licensor waives and/or agrees not to assert any right or 104 | authority to forbid You from making technical modifications 105 | necessary to exercise the Licensed Rights, including 106 | technical modifications necessary to circumvent Effective 107 | Technological Measures. For purposes of this Public License, 108 | simply making modifications authorized by this Section 2(a) 109 | (4) never produces Adapted Material. 110 | 111 | 5. Downstream recipients. 112 | 113 | a. Offer from the Licensor -- Licensed Material. Every 114 | recipient of the Licensed Material automatically 115 | receives an offer from the Licensor to exercise the 116 | Licensed Rights under the terms and conditions of this 117 | Public License. 118 | 119 | b. No downstream restrictions. You may not offer or impose 120 | any additional or different terms or conditions on, or 121 | apply any Effective Technological Measures to, the 122 | Licensed Material if doing so restricts exercise of the 123 | Licensed Rights by any recipient of the Licensed 124 | Material. 125 | 126 | 6. No endorsement. Nothing in this Public License constitutes or 127 | may be construed as permission to assert or imply that You 128 | are, or that Your use of the Licensed Material is, connected 129 | with, or sponsored, endorsed, or granted official status by, 130 | the Licensor or others designated to receive attribution as 131 | provided in Section 3(a)(1)(A)(i). 132 | 133 | b. Other rights. 134 | 135 | 1. Moral rights, such as the right of integrity, are not 136 | licensed under this Public License, nor are publicity, 137 | privacy, and/or other similar personality rights; however, to 138 | the extent possible, the Licensor waives and/or agrees not to 139 | assert any such rights held by the Licensor to the limited 140 | extent necessary to allow You to exercise the Licensed 141 | Rights, but not otherwise. 142 | 143 | 2. Patent and trademark rights are not licensed under this 144 | Public License. 145 | 146 | 3. To the extent possible, the Licensor waives any right to 147 | collect royalties from You for the exercise of the Licensed 148 | Rights, whether directly or through a collecting society 149 | under any voluntary or waivable statutory or compulsory 150 | licensing scheme. In all other cases the Licensor expressly 151 | reserves any right to collect such royalties. 152 | 153 | 154 | Section 3 -- License Conditions. 155 | 156 | Your exercise of the Licensed Rights is expressly made subject to the 157 | following conditions. 158 | 159 | a. Attribution. 160 | 161 | 1. If You Share the Licensed Material (including in modified 162 | form), You must: 163 | 164 | a. retain the following if it is supplied by the Licensor 165 | with the Licensed Material: 166 | 167 | i. identification of the creator(s) of the Licensed 168 | Material and any others designated to receive 169 | attribution, in any reasonable manner requested by 170 | the Licensor (including by pseudonym if 171 | designated); 172 | 173 | ii. a copyright notice; 174 | 175 | iii. a notice that refers to this Public License; 176 | 177 | iv. a notice that refers to the disclaimer of 178 | warranties; 179 | 180 | v. a URI or hyperlink to the Licensed Material to the 181 | extent reasonably practicable; 182 | 183 | b. indicate if You modified the Licensed Material and 184 | retain an indication of any previous modifications; and 185 | 186 | c. indicate the Licensed Material is licensed under this 187 | Public License, and include the text of, or the URI or 188 | hyperlink to, this Public License. 189 | 190 | 2. You may satisfy the conditions in Section 3(a)(1) in any 191 | reasonable manner based on the medium, means, and context in 192 | which You Share the Licensed Material. For example, it may be 193 | reasonable to satisfy the conditions by providing a URI or 194 | hyperlink to a resource that includes the required 195 | information. 196 | 197 | 3. If requested by the Licensor, You must remove any of the 198 | information required by Section 3(a)(1)(A) to the extent 199 | reasonably practicable. 200 | 201 | 4. If You Share Adapted Material You produce, the Adapter's 202 | License You apply must not prevent recipients of the Adapted 203 | Material from complying with this Public License. 204 | 205 | 206 | Section 4 -- Sui Generis Database Rights. 207 | 208 | Where the Licensed Rights include Sui Generis Database Rights that 209 | apply to Your use of the Licensed Material: 210 | 211 | a. for the avoidance of doubt, Section 2(a)(1) grants You the right 212 | to extract, reuse, reproduce, and Share all or a substantial 213 | portion of the contents of the database; 214 | 215 | b. if You include all or a substantial portion of the database 216 | contents in a database in which You have Sui Generis Database 217 | Rights, then the database in which You have Sui Generis Database 218 | Rights (but not its individual contents) is Adapted Material; and 219 | 220 | c. You must comply with the conditions in Section 3(a) if You Share 221 | all or a substantial portion of the contents of the database. 222 | 223 | For the avoidance of doubt, this Section 4 supplements and does not 224 | replace Your obligations under this Public License where the Licensed 225 | Rights include other Copyright and Similar Rights. 226 | 227 | 228 | Section 5 -- Disclaimer of Warranties and Limitation of Liability. 229 | 230 | a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE 231 | EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS 232 | AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF 233 | ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, 234 | IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, 235 | WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR 236 | PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, 237 | ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT 238 | KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT 239 | ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. 240 | 241 | b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE 242 | TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, 243 | NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, 244 | INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, 245 | COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR 246 | USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN 247 | ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR 248 | DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR 249 | IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. 250 | 251 | c. The disclaimer of warranties and limitation of liability provided 252 | above shall be interpreted in a manner that, to the extent 253 | possible, most closely approximates an absolute disclaimer and 254 | waiver of all liability. 255 | 256 | 257 | Section 6 -- Term and Termination. 258 | 259 | a. This Public License applies for the term of the Copyright and 260 | Similar Rights licensed here. However, if You fail to comply with 261 | this Public License, then Your rights under this Public License 262 | terminate automatically. 263 | 264 | b. Where Your right to use the Licensed Material has terminated under 265 | Section 6(a), it reinstates: 266 | 267 | 1. automatically as of the date the violation is cured, provided 268 | it is cured within 30 days of Your discovery of the 269 | violation; or 270 | 271 | 2. upon express reinstatement by the Licensor. 272 | 273 | For the avoidance of doubt, this Section 6(b) does not affect any 274 | right the Licensor may have to seek remedies for Your violations 275 | of this Public License. 276 | 277 | c. For the avoidance of doubt, the Licensor may also offer the 278 | Licensed Material under separate terms or conditions or stop 279 | distributing the Licensed Material at any time; however, doing so 280 | will not terminate this Public License. 281 | 282 | d. Sections 1, 5, 6, 7, and 8 survive termination of this Public 283 | License. 284 | 285 | 286 | Section 7 -- Other Terms and Conditions. 287 | 288 | a. The Licensor shall not be bound by any additional or different 289 | terms or conditions communicated by You unless expressly agreed. 290 | 291 | b. Any arrangements, understandings, or agreements regarding the 292 | Licensed Material not stated herein are separate from and 293 | independent of the terms and conditions of this Public License. 294 | 295 | 296 | Section 8 -- Interpretation. 297 | 298 | a. For the avoidance of doubt, this Public License does not, and 299 | shall not be interpreted to, reduce, limit, restrict, or impose 300 | conditions on any use of the Licensed Material that could lawfully 301 | be made without permission under this Public License. 302 | 303 | b. To the extent possible, if any provision of this Public License is 304 | deemed unenforceable, it shall be automatically reformed to the 305 | minimum extent necessary to make it enforceable. If the provision 306 | cannot be reformed, it shall be severed from this Public License 307 | without affecting the enforceability of the remaining terms and 308 | conditions. 309 | 310 | c. No term or condition of this Public License will be waived and no 311 | failure to comply consented to unless expressly agreed to by the 312 | Licensor. 313 | 314 | d. Nothing in this Public License constitutes or may be interpreted 315 | as a limitation upon, or waiver of, any privileges and immunities 316 | that apply to the Licensor or You, including from the legal 317 | processes of any jurisdiction or authority. 318 | 319 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # IP_Over_Spaghetti 2 | Transmitting IP packages using two spaghetti as transport medium 3 | 4 | ![Alt text](doc/08_CompleteAssembly.JPG?raw=true "Title") 5 | 6 | Actually this is rather RS232 over spaghetti. But using the SLIP protocol, some USB-to-RS232 adapters and two Linux machines, one can easily tunnel IP over RS232, thus effectively tunneling IP over the spaghetti. 7 | 8 | The whole chain looks like this: 9 | SLIP(Linux) -> FTDI (USB<->RS232) -> ATMega328P -> Relais -> Spaghetti -> Optical Sensor -> ATMega328P -> FTDI (USB<->RS232) -> SLIP(Linux) 10 | 11 | ![Alt text](doc/10_Ping.png?raw=true "Title") 12 | 13 | 14 | -------------------------------------------------------------------------------- /doc/01_RelayModification.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/01_RelayModification.JPG -------------------------------------------------------------------------------- /doc/02_SpaghettiDriver.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/02_SpaghettiDriver.JPG -------------------------------------------------------------------------------- /doc/03_SingleChannelDemo.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/03_SingleChannelDemo.JPG -------------------------------------------------------------------------------- /doc/04_FinishedRelayDriver.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/04_FinishedRelayDriver.JPG -------------------------------------------------------------------------------- /doc/05_OpticalSensor.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/05_OpticalSensor.JPG -------------------------------------------------------------------------------- /doc/06_FinishedBidriectionalAssembly.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/06_FinishedBidriectionalAssembly.JPG -------------------------------------------------------------------------------- /doc/07_FilteredWaveform1Bit.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/07_FilteredWaveform1Bit.JPG -------------------------------------------------------------------------------- /doc/08_CompleteAssembly.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/08_CompleteAssembly.JPG -------------------------------------------------------------------------------- /doc/09_CompleteAssemblyDetail.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/09_CompleteAssemblyDetail.JPG -------------------------------------------------------------------------------- /doc/10_Ping.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/10_Ping.png -------------------------------------------------------------------------------- /doc/IPoS_PCB_3D.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/IPoS_PCB_3D.png -------------------------------------------------------------------------------- /doc/IPoS_Schematic.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peterheinrich/InternetOverSpaghetti/476c3ab3ce769531b4f09b40d4953eabe1107261/doc/IPoS_Schematic.pdf -------------------------------------------------------------------------------- /ecad/IPoS.pro: -------------------------------------------------------------------------------- 1 | update=2019 August 04, Sunday 16:34:20 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [pcbnew] 16 | version=1 17 | PageLayoutDescrFile= 18 | LastNetListRead=IPoS.net 19 | CopperLayerCount=2 20 | BoardThickness=1.6 21 | AllowMicroVias=0 22 | AllowBlindVias=0 23 | RequireCourtyardDefinitions=0 24 | ProhibitOverlappingCourtyards=1 25 | MinTrackWidth=0.2 26 | MinViaDiameter=0.4 27 | MinViaDrill=0.3 28 | MinMicroViaDiameter=0.2 29 | MinMicroViaDrill=0.09999999999999999 30 | MinHoleToHole=0.25 31 | TrackWidth1=0.8 32 | ViaDiameter1=0.8 33 | ViaDrill1=0.4 34 | dPairWidth1=0.2 35 | dPairGap1=0.25 36 | dPairViaGap1=0.25 37 | SilkLineWidth=0.15 38 | SilkTextSizeV=1 39 | SilkTextSizeH=1 40 | SilkTextSizeThickness=0.15 41 | SilkTextItalic=0 42 | SilkTextUpright=1 43 | CopperLineWidth=0.2 44 | CopperTextSizeV=1.5 45 | CopperTextSizeH=1.5 46 | CopperTextThickness=0.3 47 | CopperTextItalic=0 48 | CopperTextUpright=1 49 | EdgeCutLineWidth=0.15 50 | CourtyardLineWidth=0.05 51 | OthersLineWidth=0.15 52 | OthersTextSizeV=1 53 | OthersTextSizeH=1 54 | OthersTextSizeThickness=0.15 55 | OthersTextItalic=0 56 | OthersTextUpright=1 57 | SolderMaskClearance=0.2 58 | SolderMaskMinWidth=0 59 | SolderPasteClearance=0 60 | SolderPasteRatio=0 61 | [pcbnew/Layer.F.Cu] 62 | Name=F.Cu 63 | Type=0 64 | Enabled=1 65 | [pcbnew/Layer.In1.Cu] 66 | Name=In1.Cu 67 | Type=0 68 | Enabled=0 69 | [pcbnew/Layer.In2.Cu] 70 | Name=In2.Cu 71 | Type=0 72 | Enabled=0 73 | [pcbnew/Layer.In3.Cu] 74 | Name=In3.Cu 75 | Type=0 76 | Enabled=0 77 | [pcbnew/Layer.In4.Cu] 78 | Name=In4.Cu 79 | Type=0 80 | Enabled=0 81 | [pcbnew/Layer.In5.Cu] 82 | Name=In5.Cu 83 | Type=0 84 | Enabled=0 85 | [pcbnew/Layer.In6.Cu] 86 | Name=In6.Cu 87 | Type=0 88 | Enabled=0 89 | [pcbnew/Layer.In7.Cu] 90 | Name=In7.Cu 91 | Type=0 92 | Enabled=0 93 | [pcbnew/Layer.In8.Cu] 94 | Name=In8.Cu 95 | Type=0 96 | Enabled=0 97 | [pcbnew/Layer.In9.Cu] 98 | Name=In9.Cu 99 | Type=0 100 | Enabled=0 101 | [pcbnew/Layer.In10.Cu] 102 | Name=In10.Cu 103 | Type=0 104 | Enabled=0 105 | [pcbnew/Layer.In11.Cu] 106 | Name=In11.Cu 107 | Type=0 108 | Enabled=0 109 | [pcbnew/Layer.In12.Cu] 110 | Name=In12.Cu 111 | Type=0 112 | Enabled=0 113 | [pcbnew/Layer.In13.Cu] 114 | Name=In13.Cu 115 | Type=0 116 | Enabled=0 117 | [pcbnew/Layer.In14.Cu] 118 | Name=In14.Cu 119 | Type=0 120 | Enabled=0 121 | [pcbnew/Layer.In15.Cu] 122 | Name=In15.Cu 123 | Type=0 124 | Enabled=0 125 | [pcbnew/Layer.In16.Cu] 126 | Name=In16.Cu 127 | Type=0 128 | Enabled=0 129 | [pcbnew/Layer.In17.Cu] 130 | Name=In17.Cu 131 | Type=0 132 | Enabled=0 133 | [pcbnew/Layer.In18.Cu] 134 | Name=In18.Cu 135 | Type=0 136 | Enabled=0 137 | [pcbnew/Layer.In19.Cu] 138 | Name=In19.Cu 139 | Type=0 140 | Enabled=0 141 | [pcbnew/Layer.In20.Cu] 142 | Name=In20.Cu 143 | Type=0 144 | Enabled=0 145 | [pcbnew/Layer.In21.Cu] 146 | Name=In21.Cu 147 | Type=0 148 | Enabled=0 149 | [pcbnew/Layer.In22.Cu] 150 | Name=In22.Cu 151 | Type=0 152 | Enabled=0 153 | [pcbnew/Layer.In23.Cu] 154 | Name=In23.Cu 155 | Type=0 156 | Enabled=0 157 | [pcbnew/Layer.In24.Cu] 158 | Name=In24.Cu 159 | Type=0 160 | Enabled=0 161 | [pcbnew/Layer.In25.Cu] 162 | Name=In25.Cu 163 | Type=0 164 | Enabled=0 165 | [pcbnew/Layer.In26.Cu] 166 | Name=In26.Cu 167 | Type=0 168 | Enabled=0 169 | [pcbnew/Layer.In27.Cu] 170 | Name=In27.Cu 171 | Type=0 172 | Enabled=0 173 | [pcbnew/Layer.In28.Cu] 174 | Name=In28.Cu 175 | Type=0 176 | Enabled=0 177 | [pcbnew/Layer.In29.Cu] 178 | Name=In29.Cu 179 | Type=0 180 | Enabled=0 181 | [pcbnew/Layer.In30.Cu] 182 | Name=In30.Cu 183 | Type=0 184 | Enabled=0 185 | [pcbnew/Layer.B.Cu] 186 | Name=B.Cu 187 | Type=0 188 | Enabled=1 189 | [pcbnew/Layer.B.Adhes] 190 | Enabled=1 191 | [pcbnew/Layer.F.Adhes] 192 | Enabled=1 193 | [pcbnew/Layer.B.Paste] 194 | Enabled=1 195 | [pcbnew/Layer.F.Paste] 196 | Enabled=1 197 | [pcbnew/Layer.B.SilkS] 198 | Enabled=1 199 | [pcbnew/Layer.F.SilkS] 200 | Enabled=1 201 | [pcbnew/Layer.B.Mask] 202 | Enabled=1 203 | [pcbnew/Layer.F.Mask] 204 | Enabled=1 205 | [pcbnew/Layer.Dwgs.User] 206 | Enabled=1 207 | [pcbnew/Layer.Cmts.User] 208 | Enabled=1 209 | [pcbnew/Layer.Eco1.User] 210 | Enabled=1 211 | [pcbnew/Layer.Eco2.User] 212 | Enabled=1 213 | [pcbnew/Layer.Edge.Cuts] 214 | Enabled=1 215 | [pcbnew/Layer.Margin] 216 | Enabled=1 217 | [pcbnew/Layer.B.CrtYd] 218 | Enabled=1 219 | [pcbnew/Layer.F.CrtYd] 220 | Enabled=1 221 | [pcbnew/Layer.B.Fab] 222 | Enabled=1 223 | [pcbnew/Layer.F.Fab] 224 | Enabled=1 225 | [pcbnew/Layer.Rescue] 226 | Enabled=0 227 | [pcbnew/Netclasses] 228 | [pcbnew/Netclasses/Default] 229 | Name=Default 230 | Clearance=0.2 231 | TrackWidth=0.8 232 | ViaDiameter=0.8 233 | ViaDrill=0.4 234 | uViaDiameter=0.3 235 | uViaDrill=0.1 236 | dPairWidth=0.2 237 | dPairGap=0.25 238 | dPairViaGap=0.25 239 | [schematic_editor] 240 | version=1 241 | PageLayoutDescrFile= 242 | PlotDirectoryName= 243 | SubpartIdSeparator=0 244 | SubpartFirstId=65 245 | NetFmtName=Pcbnew 246 | SpiceAjustPassiveValues=0 247 | LabSize=50 248 | ERC_TestSimilarLabels=1 249 | -------------------------------------------------------------------------------- /ecad/IPoS.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | LIBS:IPoS-cache 3 | EELAYER 29 0 4 | EELAYER END 5 | $Descr A4 11693 8268 6 | encoding utf-8 7 | Sheet 1 1 8 | Title "IP over spaghetti" 9 | Date "2019-06-07" 10 | Rev "A" 11 | Comp "" 12 | Comment1 "Creative Commons License: Attribution 4.0 International (CC BY 4.0)" 13 | Comment2 "Peter Heinrich" 14 | Comment3 "" 15 | Comment4 "" 16 | $EndDescr 17 | $Comp 18 | L Connector:AVR-ISP-10 J2 19 | U 1 1 5CFAB7AA 20 | P 1250 1700 21 | F 0 "J2" H 970 1796 50 0000 R CNN 22 | F 1 "AVR-ISP-10" H 970 1705 50 0000 R CNN 23 | F 2 "Connector_IDC:IDC-Header_2x05_P2.54mm_Vertical" V 1000 1750 50 0001 C CNN 24 | F 3 " ~" H -25 1150 50 0001 C CNN 25 | 1 1250 1700 26 | 1 0 0 -1 27 | $EndComp 28 | Wire Wire Line 29 | 1650 1700 2650 1700 30 | Wire Wire Line 31 | 2650 2700 2100 2700 32 | Wire Wire Line 33 | 1850 2700 1850 1800 34 | Wire Wire Line 35 | 1850 1800 1650 1800 36 | $Comp 37 | L ATMega328:ATMega328 U1 38 | U 1 1 5CFAB999 39 | P 2750 1100 40 | F 0 "U1" H 3850 1265 50 0000 C CNN 41 | F 1 "ATMega328" H 3850 1174 50 0000 C CNN 42 | F 2 "Package_DIP:DIP-28_W7.62mm_LongPads" H 2750 1100 50 0001 C CNN 43 | F 3 "" H 2750 1100 50 0001 C CNN 44 | 1 2750 1100 45 | 1 0 0 -1 46 | $EndComp 47 | $Comp 48 | L Device:R R1 49 | U 1 1 5CFABA16 50 | P 2100 2450 51 | F 0 "R1" H 2170 2496 50 0000 L CNN 52 | F 1 "10K" H 2170 2405 50 0000 L CNN 53 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 2030 2450 50 0001 C CNN 54 | F 3 "~" H 2100 2450 50 0001 C CNN 55 | 1 2100 2450 56 | 1 0 0 -1 57 | $EndComp 58 | $Comp 59 | L Device:C C2 60 | U 1 1 5CFABA8A 61 | P 2100 2950 62 | F 0 "C2" H 2215 2996 50 0000 L CNN 63 | F 1 "100n" H 2215 2905 50 0000 L CNN 64 | F 2 "Capacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mm" H 2138 2800 50 0001 C CNN 65 | F 3 "~" H 2100 2950 50 0001 C CNN 66 | 1 2100 2950 67 | 1 0 0 -1 68 | $EndComp 69 | Wire Wire Line 70 | 2100 2600 2100 2700 71 | Connection ~ 2100 2700 72 | Wire Wire Line 73 | 2100 2700 1850 2700 74 | Wire Wire Line 75 | 2100 2700 2100 2800 76 | $Comp 77 | L power:GND #PWR0101 78 | U 1 1 5CFABB81 79 | P 2100 3200 80 | F 0 "#PWR0101" H 2100 2950 50 0001 C CNN 81 | F 1 "GND" H 2105 3027 50 0000 C CNN 82 | F 2 "" H 2100 3200 50 0001 C CNN 83 | F 3 "" H 2100 3200 50 0001 C CNN 84 | 1 2100 3200 85 | 1 0 0 -1 86 | $EndComp 87 | $Comp 88 | L power:GND #PWR0102 89 | U 1 1 5CFABB9B 90 | P 1150 3200 91 | F 0 "#PWR0102" H 1150 2950 50 0001 C CNN 92 | F 1 "GND" H 1155 3027 50 0000 C CNN 93 | F 2 "" H 1150 3200 50 0001 C CNN 94 | F 3 "" H 1150 3200 50 0001 C CNN 95 | 1 1150 3200 96 | 1 0 0 -1 97 | $EndComp 98 | Wire Wire Line 99 | 1150 2100 1150 3200 100 | Wire Wire Line 101 | 2100 3100 2100 3200 102 | $Comp 103 | L power:+5V #PWR0103 104 | U 1 1 5CFABCAF 105 | P 2100 2200 106 | F 0 "#PWR0103" H 2100 2050 50 0001 C CNN 107 | F 1 "+5V" H 2115 2373 50 0000 C CNN 108 | F 2 "" H 2100 2200 50 0001 C CNN 109 | F 3 "" H 2100 2200 50 0001 C CNN 110 | 1 2100 2200 111 | 1 0 0 -1 112 | $EndComp 113 | Wire Wire Line 114 | 2100 2200 2100 2300 115 | $Comp 116 | L power:+5V #PWR0104 117 | U 1 1 5CFABDC7 118 | P 1150 800 119 | F 0 "#PWR0104" H 1150 650 50 0001 C CNN 120 | F 1 "+5V" H 1165 973 50 0000 C CNN 121 | F 2 "" H 1150 800 50 0001 C CNN 122 | F 3 "" H 1150 800 50 0001 C CNN 123 | 1 1150 800 124 | 1 0 0 -1 125 | $EndComp 126 | Wire Wire Line 127 | 1150 800 1150 1200 128 | $Comp 129 | L Interface_UART:MAX232 U2 130 | U 1 1 5CFABF80 131 | P 3350 5600 132 | F 0 "U2" H 3850 6650 50 0000 C CNN 133 | F 1 "MAX232" H 3800 4550 50 0000 C CNN 134 | F 2 "Package_DIP:DIP-16_W7.62mm_Socket_LongPads" H 3400 4550 50 0001 L CNN 135 | F 3 "http://www.ti.com/lit/ds/symlink/max232.pdf" H 3350 5700 50 0001 C CNN 136 | 1 3350 5600 137 | -1 0 0 -1 138 | $EndComp 139 | $Comp 140 | L Device:C C7 141 | U 1 1 5CFAC088 142 | P 5350 2450 143 | F 0 "C7" H 5465 2496 50 0000 L CNN 144 | F 1 "100n" H 5465 2405 50 0000 L CNN 145 | F 2 "Capacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mm" H 5388 2300 50 0001 C CNN 146 | F 3 "~" H 5350 2450 50 0001 C CNN 147 | 1 5350 2450 148 | 1 0 0 -1 149 | $EndComp 150 | $Comp 151 | L Device:C C8 152 | U 1 1 5CFAC130 153 | P 5800 2450 154 | F 0 "C8" H 5915 2496 50 0000 L CNN 155 | F 1 "100n" H 5915 2405 50 0000 L CNN 156 | F 2 "Capacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mm" H 5838 2300 50 0001 C CNN 157 | F 3 "~" H 5800 2450 50 0001 C CNN 158 | 1 5800 2450 159 | 1 0 0 -1 160 | $EndComp 161 | Wire Wire Line 162 | 5050 2700 5150 2700 163 | Wire Wire Line 164 | 5350 2700 5350 2600 165 | Wire Wire Line 166 | 5350 2700 5800 2700 167 | Wire Wire Line 168 | 5800 2700 5800 2600 169 | Connection ~ 5350 2700 170 | Wire Wire Line 171 | 5350 2300 5350 2200 172 | Wire Wire Line 173 | 5350 2200 5150 2200 174 | Wire Wire Line 175 | 5050 2100 5150 2100 176 | Wire Wire Line 177 | 5150 2100 5150 2200 178 | Connection ~ 5150 2200 179 | Wire Wire Line 180 | 5150 2200 5050 2200 181 | Wire Wire Line 182 | 5050 2600 5150 2600 183 | Wire Wire Line 184 | 5150 2600 5150 2700 185 | Connection ~ 5150 2700 186 | Wire Wire Line 187 | 5150 2700 5350 2700 188 | Wire Wire Line 189 | 5350 2200 5800 2200 190 | Wire Wire Line 191 | 5800 2200 5800 2300 192 | Connection ~ 5350 2200 193 | $Comp 194 | L power:+5V #PWR0105 195 | U 1 1 5CFAC9F8 196 | P 5800 2150 197 | F 0 "#PWR0105" H 5800 2000 50 0001 C CNN 198 | F 1 "+5V" H 5815 2323 50 0000 C CNN 199 | F 2 "" H 5800 2150 50 0001 C CNN 200 | F 3 "" H 5800 2150 50 0001 C CNN 201 | 1 5800 2150 202 | 1 0 0 -1 203 | $EndComp 204 | $Comp 205 | L power:GND #PWR0106 206 | U 1 1 5CFACA11 207 | P 5800 3200 208 | F 0 "#PWR0106" H 5800 2950 50 0001 C CNN 209 | F 1 "GND" H 5805 3027 50 0000 C CNN 210 | F 2 "" H 5800 3200 50 0001 C CNN 211 | F 3 "" H 5800 3200 50 0001 C CNN 212 | 1 5800 3200 213 | 1 0 0 -1 214 | $EndComp 215 | Wire Wire Line 216 | 5800 2700 5800 3200 217 | Connection ~ 5800 2700 218 | Wire Wire Line 219 | 5800 2150 5800 2200 220 | Connection ~ 5800 2200 221 | $Comp 222 | L Connector:DB9_Female J1 223 | U 1 1 5CFAD1CE 224 | P 850 5900 225 | F 0 "J1" H 770 6592 50 0000 C CNN 226 | F 1 "RS232" H 770 6501 50 0000 C CNN 227 | F 2 "Connector_Dsub:DSUB-9_Female_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset7.48mm" H 850 5900 50 0001 C CNN 228 | F 3 " ~" H 850 5900 50 0001 C CNN 229 | 1 850 5900 230 | -1 0 0 -1 231 | $EndComp 232 | Wire Wire Line 233 | 2550 5700 1150 5700 234 | Wire Wire Line 235 | 1900 5800 1150 5800 236 | Wire Wire Line 237 | 1150 5900 1800 5900 238 | Wire Wire Line 239 | 1800 5900 1800 6100 240 | Wire Wire Line 241 | 1800 6100 2550 6100 242 | Text Label 1300 5700 0 50 ~ 0 243 | RS232_RXD 244 | Text Label 1300 5800 0 50 ~ 0 245 | RS232_RTS 246 | Text Label 1300 5900 0 50 ~ 0 247 | RS232_TXD 248 | Text Label 1300 6000 0 50 ~ 0 249 | RS232_CTS 250 | $Comp 251 | L Device:CP C3 252 | U 1 1 5CFAF6A0 253 | P 2200 4850 254 | F 0 "C3" H 2318 4896 50 0000 L CNN 255 | F 1 "1u" H 2318 4805 50 0000 L CNN 256 | F 2 "Capacitor_THT:CP_Radial_D5.0mm_P2.50mm" H 2238 4700 50 0001 C CNN 257 | F 3 "~" H 2200 4850 50 0001 C CNN 258 | 1 2200 4850 259 | 1 0 0 -1 260 | $EndComp 261 | $Comp 262 | L Device:CP C6 263 | U 1 1 5CFAF738 264 | P 4400 4850 265 | F 0 "C6" H 4518 4896 50 0000 L CNN 266 | F 1 "1u" H 4518 4805 50 0000 L CNN 267 | F 2 "Capacitor_THT:CP_Radial_D5.0mm_P2.50mm" H 4438 4700 50 0001 C CNN 268 | F 3 "~" H 4400 4850 50 0001 C CNN 269 | 1 4400 4850 270 | 1 0 0 -1 271 | $EndComp 272 | Wire Wire Line 273 | 2550 4700 2200 4700 274 | Wire Wire Line 275 | 2550 5000 2200 5000 276 | Wire Wire Line 277 | 4150 4700 4400 4700 278 | Wire Wire Line 279 | 4150 5000 4400 5000 280 | $Comp 281 | L Device:CP C4 282 | U 1 1 5CFB2675 283 | P 2200 5500 284 | F 0 "C4" V 2455 5500 50 0000 C CNN 285 | F 1 "1u" V 2364 5500 50 0000 C CNN 286 | F 2 "Capacitor_THT:CP_Radial_D5.0mm_P2.50mm" H 2238 5350 50 0001 C CNN 287 | F 3 "~" H 2200 5500 50 0001 C CNN 288 | 1 2200 5500 289 | 0 -1 -1 0 290 | $EndComp 291 | $Comp 292 | L Device:CP C1 293 | U 1 1 5CFB26C5 294 | P 1900 5200 295 | F 0 "C1" V 1645 5200 50 0000 C CNN 296 | F 1 "1u" V 1736 5200 50 0000 C CNN 297 | F 2 "Capacitor_THT:CP_Radial_D5.0mm_P2.50mm" H 1938 5050 50 0001 C CNN 298 | F 3 "~" H 1900 5200 50 0001 C CNN 299 | 1 1900 5200 300 | 0 1 1 0 301 | $EndComp 302 | Wire Wire Line 303 | 2050 5200 2550 5200 304 | Wire Wire Line 305 | 2350 5500 2550 5500 306 | $Comp 307 | L power:GND #PWR0107 308 | U 1 1 5CFB49E0 309 | P 1600 5500 310 | F 0 "#PWR0107" H 1600 5250 50 0001 C CNN 311 | F 1 "GND" V 1605 5372 50 0000 R CNN 312 | F 2 "" H 1600 5500 50 0001 C CNN 313 | F 3 "" H 1600 5500 50 0001 C CNN 314 | 1 1600 5500 315 | 0 1 1 0 316 | $EndComp 317 | $Comp 318 | L power:+5V #PWR0108 319 | U 1 1 5CFB5462 320 | P 1600 5200 321 | F 0 "#PWR0108" H 1600 5050 50 0001 C CNN 322 | F 1 "+5V" V 1615 5328 50 0000 L CNN 323 | F 2 "" H 1600 5200 50 0001 C CNN 324 | F 3 "" H 1600 5200 50 0001 C CNN 325 | 1 1600 5200 326 | 0 -1 -1 0 327 | $EndComp 328 | Wire Wire Line 329 | 1600 5200 1750 5200 330 | Wire Wire Line 331 | 1600 5500 2050 5500 332 | $Comp 333 | L power:GND #PWR0109 334 | U 1 1 5CFB6A13 335 | P 1300 7100 336 | F 0 "#PWR0109" H 1300 6850 50 0001 C CNN 337 | F 1 "GND" H 1305 6927 50 0000 C CNN 338 | F 2 "" H 1300 7100 50 0001 C CNN 339 | F 3 "" H 1300 7100 50 0001 C CNN 340 | 1 1300 7100 341 | 1 0 0 -1 342 | $EndComp 343 | Wire Wire Line 344 | 1150 6300 1300 6300 345 | Wire Wire Line 346 | 1300 6300 1300 7100 347 | $Comp 348 | L power:GND #PWR0110 349 | U 1 1 5CFB814C 350 | P 3350 7100 351 | F 0 "#PWR0110" H 3350 6850 50 0001 C CNN 352 | F 1 "GND" H 3355 6927 50 0000 C CNN 353 | F 2 "" H 3350 7100 50 0001 C CNN 354 | F 3 "" H 3350 7100 50 0001 C CNN 355 | 1 3350 7100 356 | 1 0 0 -1 357 | $EndComp 358 | Wire Wire Line 359 | 3350 6800 3350 7100 360 | $Comp 361 | L Device:CP C5 362 | U 1 1 5CFB8D82 363 | P 3800 4150 364 | F 0 "C5" H 3918 4196 50 0000 L CNN 365 | F 1 "1u" H 3918 4105 50 0000 L CNN 366 | F 2 "Capacitor_THT:CP_Radial_D5.0mm_P2.50mm" H 3838 4000 50 0001 C CNN 367 | F 3 "~" H 3800 4150 50 0001 C CNN 368 | 1 3800 4150 369 | 1 0 0 -1 370 | $EndComp 371 | $Comp 372 | L power:GND #PWR0111 373 | U 1 1 5CFB8DCA 374 | P 3800 4350 375 | F 0 "#PWR0111" H 3800 4100 50 0001 C CNN 376 | F 1 "GND" H 3805 4177 50 0000 C CNN 377 | F 2 "" H 3800 4350 50 0001 C CNN 378 | F 3 "" H 3800 4350 50 0001 C CNN 379 | 1 3800 4350 380 | 1 0 0 -1 381 | $EndComp 382 | $Comp 383 | L power:+5V #PWR0112 384 | U 1 1 5CFB8E47 385 | P 3350 3850 386 | F 0 "#PWR0112" H 3350 3700 50 0001 C CNN 387 | F 1 "+5V" H 3365 4023 50 0000 C CNN 388 | F 2 "" H 3350 3850 50 0001 C CNN 389 | F 3 "" H 3350 3850 50 0001 C CNN 390 | 1 3350 3850 391 | 1 0 0 -1 392 | $EndComp 393 | Wire Wire Line 394 | 3350 3850 3350 3950 395 | Wire Wire Line 396 | 3800 4300 3800 4350 397 | Wire Wire Line 398 | 3800 4000 3800 3950 399 | Wire Wire Line 400 | 3800 3950 3350 3950 401 | Connection ~ 3350 3950 402 | Wire Wire Line 403 | 3350 3950 3350 4400 404 | Text Label 4600 5700 2 50 ~ 0 405 | TXD 406 | Text Label 4600 5900 2 50 ~ 0 407 | RTS 408 | Text Label 4600 6100 2 50 ~ 0 409 | RXD 410 | Text Label 4600 6300 2 50 ~ 0 411 | CTS 412 | Text Notes 3750 7100 0 50 ~ 0 413 | Null-Modem Configuration\nRXD <-> TXD\nTXD <-> RXD\nRTS <-> CTS\nCTS <-> RTS\n 414 | Wire Wire Line 415 | 5050 1200 5600 1200 416 | Wire Wire Line 417 | 5050 1300 5600 1300 418 | Wire Wire Line 419 | 5050 1500 5600 1500 420 | Text Label 5600 1200 2 50 ~ 0 421 | RXD 422 | Text Label 5600 1300 2 50 ~ 0 423 | TXD 424 | Text Label 5600 1400 2 50 ~ 0 425 | RTS 426 | Text Label 5600 1500 2 50 ~ 0 427 | CTS 428 | Wire Wire Line 429 | 5050 1600 5600 1600 430 | Wire Wire Line 431 | 5050 1700 5600 1700 432 | Text Label 5600 1600 2 50 ~ 0 433 | Spaghetti_TX 434 | Text Label 5600 1700 2 50 ~ 0 435 | Spaghetti_RX 436 | $Comp 437 | L Connector_Generic:Conn_01x04 J3 438 | U 1 1 5CFC6F5F 439 | P 5600 5600 440 | F 0 "J3" H 5520 5175 50 0000 C CNN 441 | F 1 "Optical Sensor" H 5520 5266 50 0000 C CNN 442 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Horizontal" H 5600 5600 50 0001 C CNN 443 | F 3 "~" H 5600 5600 50 0001 C CNN 444 | 1 5600 5600 445 | -1 0 0 1 446 | $EndComp 447 | $Comp 448 | L power:GND #PWR0113 449 | U 1 1 5CFC7128 450 | P 6000 6250 451 | F 0 "#PWR0113" H 6000 6000 50 0001 C CNN 452 | F 1 "GND" H 6005 6077 50 0000 C CNN 453 | F 2 "" H 6000 6250 50 0001 C CNN 454 | F 3 "" H 6000 6250 50 0001 C CNN 455 | 1 6000 6250 456 | 1 0 0 -1 457 | $EndComp 458 | Wire Wire Line 459 | 5800 5400 6000 5400 460 | Wire Wire Line 461 | 6000 5400 6000 5700 462 | Wire Wire Line 463 | 5800 5700 6000 5700 464 | Connection ~ 6000 5700 465 | Wire Wire Line 466 | 6000 5700 6000 6250 467 | $Comp 468 | L Device:R R2 469 | U 1 1 5CFC989F 470 | P 6200 5250 471 | F 0 "R2" H 6270 5296 50 0000 L CNN 472 | F 1 "150" H 6270 5205 50 0000 L CNN 473 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 6130 5250 50 0001 C CNN 474 | F 3 "~" H 6200 5250 50 0001 C CNN 475 | 1 6200 5250 476 | 1 0 0 -1 477 | $EndComp 478 | $Comp 479 | L Device:R R3 480 | U 1 1 5CFC98FA 481 | P 6500 5250 482 | F 0 "R3" H 6570 5296 50 0000 L CNN 483 | F 1 "150" H 6570 5205 50 0000 L CNN 484 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 6430 5250 50 0001 C CNN 485 | F 3 "~" H 6500 5250 50 0001 C CNN 486 | 1 6500 5250 487 | 1 0 0 -1 488 | $EndComp 489 | $Comp 490 | L Device:R R4 491 | U 1 1 5CFC9970 492 | P 6800 5250 493 | F 0 "R4" H 6870 5296 50 0000 L CNN 494 | F 1 "3K3" H 6870 5205 50 0000 L CNN 495 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 6730 5250 50 0001 C CNN 496 | F 3 "~" H 6800 5250 50 0001 C CNN 497 | 1 6800 5250 498 | 1 0 0 -1 499 | $EndComp 500 | Wire Wire Line 501 | 6200 5400 6200 5600 502 | Wire Wire Line 503 | 6200 5600 5800 5600 504 | Wire Wire Line 505 | 6200 5600 6500 5600 506 | Wire Wire Line 507 | 6500 5600 6500 5400 508 | Connection ~ 6200 5600 509 | Wire Wire Line 510 | 5800 5500 6800 5500 511 | Wire Wire Line 512 | 6800 5500 6800 5400 513 | $Comp 514 | L power:+5V #PWR0114 515 | U 1 1 5CFCDB7B 516 | P 6200 4800 517 | F 0 "#PWR0114" H 6200 4650 50 0001 C CNN 518 | F 1 "+5V" H 6215 4973 50 0000 C CNN 519 | F 2 "" H 6200 4800 50 0001 C CNN 520 | F 3 "" H 6200 4800 50 0001 C CNN 521 | 1 6200 4800 522 | 1 0 0 -1 523 | $EndComp 524 | Wire Wire Line 525 | 6200 4800 6200 5000 526 | Wire Wire Line 527 | 6200 5000 6500 5000 528 | Wire Wire Line 529 | 6500 5000 6500 5100 530 | Connection ~ 6200 5000 531 | Wire Wire Line 532 | 6200 5000 6200 5100 533 | Wire Wire Line 534 | 6500 5000 6800 5000 535 | Wire Wire Line 536 | 6800 5000 6800 5100 537 | Connection ~ 6500 5000 538 | $Comp 539 | L Amplifier_Operational:LM358 U3 540 | U 1 1 5CFD2417 541 | P 8300 5600 542 | F 0 "U3" H 8350 5750 50 0000 C CNN 543 | F 1 "LM358" H 8400 5450 50 0000 C CNN 544 | F 2 "Package_DIP:DIP-8_W7.62mm_LongPads" H 8300 5600 50 0001 C CNN 545 | F 3 "http://www.ti.com/lit/ds/symlink/lm2904-n.pdf" H 8300 5600 50 0001 C CNN 546 | 1 8300 5600 547 | 1 0 0 -1 548 | $EndComp 549 | Wire Wire Line 550 | 8000 5700 7950 5700 551 | Wire Wire Line 552 | 8700 5600 8600 5600 553 | $Comp 554 | L Amplifier_Operational:LM358 U3 555 | U 2 1 5CFD5CFE 556 | P 9950 5600 557 | F 0 "U3" H 10000 5750 50 0000 C CNN 558 | F 1 "LM358" H 10050 5450 50 0000 C CNN 559 | F 2 "Package_DIP:DIP-8_W7.62mm_LongPads" H 9950 5600 50 0001 C CNN 560 | F 3 "http://www.ti.com/lit/ds/symlink/lm2904-n.pdf" H 9950 5600 50 0001 C CNN 561 | 2 9950 5600 562 | 1 0 0 -1 563 | $EndComp 564 | $Comp 565 | L Amplifier_Operational:LM358 U3 566 | U 3 1 5CFD5DA0 567 | P 8300 5600 568 | F 0 "U3" H 8400 5450 50 0001 L CNN 569 | F 1 "LM358" H 8258 5555 50 0001 L CNN 570 | F 2 "Package_DIP:DIP-8_W7.62mm_LongPads" H 8300 5600 50 0001 C CNN 571 | F 3 "http://www.ti.com/lit/ds/symlink/lm2904-n.pdf" H 8300 5600 50 0001 C CNN 572 | 3 8300 5600 573 | 1 0 0 -1 574 | $EndComp 575 | Wire Wire Line 576 | 7950 6000 8700 6000 577 | Wire Wire Line 578 | 8700 5600 8700 6000 579 | Wire Wire Line 580 | 7950 5700 7950 6000 581 | $Comp 582 | L Device:R R6 583 | U 1 1 5CFD827F 584 | P 9000 5500 585 | F 0 "R6" V 8793 5500 50 0000 C CNN 586 | F 1 "1K" V 8884 5500 50 0000 C CNN 587 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 8930 5500 50 0001 C CNN 588 | F 3 "~" H 9000 5500 50 0001 C CNN 589 | 1 9000 5500 590 | 0 1 1 0 591 | $EndComp 592 | $Comp 593 | L Device:R R10 594 | U 1 1 5CFD831E 595 | P 10000 5150 596 | F 0 "R10" V 9793 5150 50 0000 C CNN 597 | F 1 "10K" V 9884 5150 50 0000 C CNN 598 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 9930 5150 50 0001 C CNN 599 | F 3 "~" H 10000 5150 50 0001 C CNN 600 | 1 10000 5150 601 | 0 1 1 0 602 | $EndComp 603 | Wire Wire Line 604 | 8700 5600 8700 5500 605 | Wire Wire Line 606 | 8700 5500 8850 5500 607 | Connection ~ 8700 5600 608 | Wire Wire Line 609 | 9150 5500 9550 5500 610 | Wire Wire Line 611 | 9850 5150 9550 5150 612 | Wire Wire Line 613 | 9550 5150 9550 5500 614 | Connection ~ 9550 5500 615 | Wire Wire Line 616 | 9550 5500 9650 5500 617 | Wire Wire Line 618 | 10150 5150 10400 5150 619 | Wire Wire Line 620 | 10400 5150 10400 5600 621 | Wire Wire Line 622 | 10400 5600 10250 5600 623 | $Comp 624 | L Device:R R9 625 | U 1 1 5CFE1EC0 626 | P 9350 5900 627 | F 0 "R9" H 9420 5946 50 0000 L CNN 628 | F 1 "3K3" H 9420 5855 50 0000 L CNN 629 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 9280 5900 50 0001 C CNN 630 | F 3 "~" H 9350 5900 50 0001 C CNN 631 | 1 9350 5900 632 | 1 0 0 -1 633 | $EndComp 634 | $Comp 635 | L Device:R R8 636 | U 1 1 5CFE1F40 637 | P 9350 5000 638 | F 0 "R8" H 9420 5046 50 0000 L CNN 639 | F 1 "3K3" H 9420 4955 50 0000 L CNN 640 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 9280 5000 50 0001 C CNN 641 | F 3 "~" H 9350 5000 50 0001 C CNN 642 | 1 9350 5000 643 | 1 0 0 -1 644 | $EndComp 645 | Wire Wire Line 646 | 9350 5150 9350 5700 647 | Wire Wire Line 648 | 9650 5700 9350 5700 649 | Connection ~ 9350 5700 650 | Wire Wire Line 651 | 9350 5700 9350 5750 652 | $Comp 653 | L power:GND #PWR0115 654 | U 1 1 5CFE877A 655 | P 8200 6250 656 | F 0 "#PWR0115" H 8200 6000 50 0001 C CNN 657 | F 1 "GND" H 8205 6077 50 0000 C CNN 658 | F 2 "" H 8200 6250 50 0001 C CNN 659 | F 3 "" H 8200 6250 50 0001 C CNN 660 | 1 8200 6250 661 | 1 0 0 -1 662 | $EndComp 663 | $Comp 664 | L power:GND #PWR0116 665 | U 1 1 5CFE87B3 666 | P 9350 6250 667 | F 0 "#PWR0116" H 9350 6000 50 0001 C CNN 668 | F 1 "GND" H 9355 6077 50 0000 C CNN 669 | F 2 "" H 9350 6250 50 0001 C CNN 670 | F 3 "" H 9350 6250 50 0001 C CNN 671 | 1 9350 6250 672 | 1 0 0 -1 673 | $EndComp 674 | Wire Wire Line 675 | 9350 6050 9350 6250 676 | Wire Wire Line 677 | 8200 5900 8200 6250 678 | $Comp 679 | L power:+5V #PWR0117 680 | U 1 1 5CFECF98 681 | P 8200 4800 682 | F 0 "#PWR0117" H 8200 4650 50 0001 C CNN 683 | F 1 "+5V" H 8215 4973 50 0000 C CNN 684 | F 2 "" H 8200 4800 50 0001 C CNN 685 | F 3 "" H 8200 4800 50 0001 C CNN 686 | 1 8200 4800 687 | 1 0 0 -1 688 | $EndComp 689 | Wire Wire Line 690 | 8200 4800 8200 5300 691 | $Comp 692 | L power:+5V #PWR0118 693 | U 1 1 5CFEF485 694 | P 9350 4800 695 | F 0 "#PWR0118" H 9350 4650 50 0001 C CNN 696 | F 1 "+5V" H 9365 4973 50 0000 C CNN 697 | F 2 "" H 9350 4800 50 0001 C CNN 698 | F 3 "" H 9350 4800 50 0001 C CNN 699 | 1 9350 4800 700 | 1 0 0 -1 701 | $EndComp 702 | Wire Wire Line 703 | 9350 4800 9350 4850 704 | Text Label 11000 5600 2 50 ~ 0 705 | Spaghetti_RX 706 | Text Notes 9800 5950 0 50 ~ 0 707 | Schmitt Trigger 708 | $Comp 709 | L Device:R R5 710 | U 1 1 5CFFD7A0 711 | P 7100 5500 712 | F 0 "R5" V 6893 5500 50 0000 C CNN 713 | F 1 "10K" V 6984 5500 50 0000 C CNN 714 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 7030 5500 50 0001 C CNN 715 | F 3 "~" H 7100 5500 50 0001 C CNN 716 | 1 7100 5500 717 | 0 1 1 0 718 | $EndComp 719 | $Comp 720 | L Device:C C9 721 | U 1 1 5CFFD8A2 722 | P 7450 5850 723 | F 0 "C9" H 7565 5896 50 0000 L CNN 724 | F 1 "100n" H 7565 5805 50 0000 L CNN 725 | F 2 "Capacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mm" H 7488 5700 50 0001 C CNN 726 | F 3 "~" H 7450 5850 50 0001 C CNN 727 | 1 7450 5850 728 | 1 0 0 -1 729 | $EndComp 730 | Wire Wire Line 731 | 6950 5500 6800 5500 732 | Connection ~ 6800 5500 733 | Wire Wire Line 734 | 7250 5500 7450 5500 735 | Wire Wire Line 736 | 7450 5700 7450 5500 737 | Connection ~ 7450 5500 738 | Wire Wire Line 739 | 7450 5500 8000 5500 740 | $Comp 741 | L power:GND #PWR0119 742 | U 1 1 5D004E42 743 | P 7450 6250 744 | F 0 "#PWR0119" H 7450 6000 50 0001 C CNN 745 | F 1 "GND" H 7455 6077 50 0000 C CNN 746 | F 2 "" H 7450 6250 50 0001 C CNN 747 | F 3 "" H 7450 6250 50 0001 C CNN 748 | 1 7450 6250 749 | 1 0 0 -1 750 | $EndComp 751 | Wire Wire Line 752 | 7450 6000 7450 6250 753 | Text Notes 6950 5950 0 50 ~ 0 754 | Low Pass 755 | $Comp 756 | L Connector_Generic:Conn_01x02 J5 757 | U 1 1 5D007AFB 758 | P 10750 3450 759 | F 0 "J5" H 10830 3442 50 0000 L CNN 760 | F 1 "Relais" H 10830 3351 50 0000 L CNN 761 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Horizontal" H 10750 3450 50 0001 C CNN 762 | F 3 "~" H 10750 3450 50 0001 C CNN 763 | 1 10750 3450 764 | 1 0 0 -1 765 | $EndComp 766 | $Comp 767 | L Transistor_BJT:BC547 Q1 768 | U 1 1 5D007C8A 769 | P 9900 3800 770 | F 0 "Q1" H 10091 3846 50 0000 L CNN 771 | F 1 "BC547" H 10091 3755 50 0000 L CNN 772 | F 2 "Package_TO_SOT_THT:TO-92_Wide" H 10100 3725 50 0001 L CIN 773 | F 3 "http://www.fairchildsemi.com/ds/BC/BC547.pdf" H 9900 3800 50 0001 L CNN 774 | 1 9900 3800 775 | 1 0 0 -1 776 | $EndComp 777 | $Comp 778 | L Device:D D1 779 | U 1 1 5D007D60 780 | P 10000 3300 781 | F 0 "D1" V 9954 3379 50 0000 L CNN 782 | F 1 "D" V 10045 3379 50 0000 L CNN 783 | F 2 "Diode_THT:D_A-405_P12.70mm_Horizontal" H 10000 3300 50 0001 C CNN 784 | F 3 "~" H 10000 3300 50 0001 C CNN 785 | 1 10000 3300 786 | 0 1 1 0 787 | $EndComp 788 | $Comp 789 | L power:GND #PWR0120 790 | U 1 1 5D007F26 791 | P 10000 4200 792 | F 0 "#PWR0120" H 10000 3950 50 0001 C CNN 793 | F 1 "GND" H 10005 4027 50 0000 C CNN 794 | F 2 "" H 10000 4200 50 0001 C CNN 795 | F 3 "" H 10000 4200 50 0001 C CNN 796 | 1 10000 4200 797 | 1 0 0 -1 798 | $EndComp 799 | Wire Wire Line 800 | 10550 3550 10000 3550 801 | Wire Wire Line 802 | 10000 3550 10000 3450 803 | Wire Wire Line 804 | 10000 3550 10000 3600 805 | Connection ~ 10000 3550 806 | Wire Wire Line 807 | 10000 3000 10000 3100 808 | Wire Wire Line 809 | 10000 3100 10350 3100 810 | Wire Wire Line 811 | 10350 3100 10350 3450 812 | Wire Wire Line 813 | 10350 3450 10550 3450 814 | Connection ~ 10000 3100 815 | Wire Wire Line 816 | 10000 3100 10000 3150 817 | Wire Wire Line 818 | 10000 4000 10000 4200 819 | $Comp 820 | L Device:R R7 821 | U 1 1 5D015D40 822 | P 9350 3800 823 | F 0 "R7" V 9143 3800 50 0000 C CNN 824 | F 1 "3K3" V 9234 3800 50 0000 C CNN 825 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 9280 3800 50 0001 C CNN 826 | F 3 "~" H 9350 3800 50 0001 C CNN 827 | 1 9350 3800 828 | 0 1 1 0 829 | $EndComp 830 | Wire Wire Line 831 | 9700 3800 9500 3800 832 | Wire Wire Line 833 | 9200 3800 8600 3800 834 | Text Label 8600 3800 0 50 ~ 0 835 | Spaghetti_TX 836 | Wire Wire Line 837 | 10400 5600 11000 5600 838 | Connection ~ 10400 5600 839 | $Comp 840 | L power:+12V #PWR0121 841 | U 1 1 5D025141 842 | P 10000 3000 843 | F 0 "#PWR0121" H 10000 2850 50 0001 C CNN 844 | F 1 "+12V" H 10015 3173 50 0000 C CNN 845 | F 2 "" H 10000 3000 50 0001 C CNN 846 | F 3 "" H 10000 3000 50 0001 C CNN 847 | 1 10000 3000 848 | 1 0 0 -1 849 | $EndComp 850 | Wire Wire Line 851 | 4600 5700 4150 5700 852 | Wire Wire Line 853 | 4150 5900 4600 5900 854 | Wire Wire Line 855 | 4150 6100 4600 6100 856 | Wire Wire Line 857 | 4150 6300 4600 6300 858 | Wire Wire Line 859 | 5050 1400 5600 1400 860 | $Comp 861 | L Regulator_Linear:L7805 U4 862 | U 1 1 5D053FD9 863 | P 9600 1200 864 | F 0 "U4" H 9600 1442 50 0000 C CNN 865 | F 1 "L7805" H 9600 1351 50 0000 C CNN 866 | F 2 "Package_TO_SOT_THT:TO-220F-3_Horizontal_TabDown" H 9625 1050 50 0001 L CIN 867 | F 3 "http://www.st.com/content/ccc/resource/technical/document/datasheet/41/4f/b3/b0/12/d4/47/88/CD00000444.pdf/files/CD00000444.pdf/jcr:content/translations/en.CD00000444.pdf" H 9600 1150 50 0001 C CNN 868 | 1 9600 1200 869 | 1 0 0 -1 870 | $EndComp 871 | $Comp 872 | L Device:C C11 873 | U 1 1 5D05452F 874 | P 9000 1450 875 | F 0 "C11" H 9115 1496 50 0000 L CNN 876 | F 1 "100n" H 9115 1405 50 0000 L CNN 877 | F 2 "Capacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mm" H 9038 1300 50 0001 C CNN 878 | F 3 "~" H 9000 1450 50 0001 C CNN 879 | 1 9000 1450 880 | 1 0 0 -1 881 | $EndComp 882 | $Comp 883 | L Device:C C12 884 | U 1 1 5D0545C7 885 | P 10200 1450 886 | F 0 "C12" H 10315 1496 50 0000 L CNN 887 | F 1 "100n" H 10315 1405 50 0000 L CNN 888 | F 2 "Capacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mm" H 10238 1300 50 0001 C CNN 889 | F 3 "~" H 10200 1450 50 0001 C CNN 890 | 1 10200 1450 891 | 1 0 0 -1 892 | $EndComp 893 | Wire Wire Line 894 | 9300 1200 9000 1200 895 | Wire Wire Line 896 | 9000 1200 9000 1300 897 | Wire Wire Line 898 | 9000 1600 9000 1700 899 | Wire Wire Line 900 | 9000 1700 9600 1700 901 | Wire Wire Line 902 | 9600 1700 9600 1500 903 | Wire Wire Line 904 | 9600 1700 10200 1700 905 | Wire Wire Line 906 | 10200 1700 10200 1600 907 | Connection ~ 9600 1700 908 | Wire Wire Line 909 | 10200 1300 10200 1200 910 | Wire Wire Line 911 | 10200 1200 9900 1200 912 | $Comp 913 | L Device:CP C10 914 | U 1 1 5D065F65 915 | P 8550 1700 916 | F 0 "C10" H 8668 1746 50 0000 L CNN 917 | F 1 "100u" H 8668 1655 50 0000 L CNN 918 | F 2 "Capacitor_THT:CP_Radial_D6.3mm_P2.50mm" H 8588 1550 50 0001 C CNN 919 | F 3 "~" H 8550 1700 50 0001 C CNN 920 | 1 8550 1700 921 | 1 0 0 -1 922 | $EndComp 923 | $Comp 924 | L Device:CP C13 925 | U 1 1 5D0660DD 926 | P 10650 1750 927 | F 0 "C13" H 10768 1796 50 0000 L CNN 928 | F 1 "100u" H 10768 1705 50 0000 L CNN 929 | F 2 "Capacitor_THT:CP_Radial_D6.3mm_P2.50mm" H 10688 1600 50 0001 C CNN 930 | F 3 "~" H 10650 1750 50 0001 C CNN 931 | 1 10650 1750 932 | 1 0 0 -1 933 | $EndComp 934 | Wire Wire Line 935 | 9000 1200 8800 1200 936 | Wire Wire Line 937 | 8550 1200 8550 1550 938 | Connection ~ 9000 1200 939 | Wire Wire Line 940 | 8550 1850 8550 2200 941 | Wire Wire Line 942 | 8550 2200 9600 2200 943 | Wire Wire Line 944 | 9600 2200 9600 1700 945 | Wire Wire Line 946 | 9600 2200 10650 2200 947 | Wire Wire Line 948 | 10650 2200 10650 1900 949 | Connection ~ 9600 2200 950 | Wire Wire Line 951 | 10200 1200 10650 1200 952 | Wire Wire Line 953 | 10650 1200 10650 1600 954 | Connection ~ 10200 1200 955 | $Comp 956 | L power:+12V #PWR0122 957 | U 1 1 5D07606E 958 | P 8800 1050 959 | F 0 "#PWR0122" H 8800 900 50 0001 C CNN 960 | F 1 "+12V" H 8815 1223 50 0000 C CNN 961 | F 2 "" H 8800 1050 50 0001 C CNN 962 | F 3 "" H 8800 1050 50 0001 C CNN 963 | 1 8800 1050 964 | 1 0 0 -1 965 | $EndComp 966 | Wire Wire Line 967 | 8800 1050 8800 1200 968 | Connection ~ 8800 1200 969 | Wire Wire Line 970 | 8800 1200 8550 1200 971 | $Comp 972 | L power:+5V #PWR0123 973 | U 1 1 5D07A465 974 | P 10650 1050 975 | F 0 "#PWR0123" H 10650 900 50 0001 C CNN 976 | F 1 "+5V" H 10665 1223 50 0000 C CNN 977 | F 2 "" H 10650 1050 50 0001 C CNN 978 | F 3 "" H 10650 1050 50 0001 C CNN 979 | 1 10650 1050 980 | 1 0 0 -1 981 | $EndComp 982 | Wire Wire Line 983 | 10650 1050 10650 1200 984 | Connection ~ 10650 1200 985 | $Comp 986 | L Connector:Screw_Terminal_01x02 J4 987 | U 1 1 5D07EBFB 988 | P 8000 1200 989 | F 0 "J4" H 7920 1417 50 0000 C CNN 990 | F 1 "Power In" H 7920 1326 50 0000 C CNN 991 | F 2 "TerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-3-2-5.08_1x02_P5.08mm_Horizontal" H 8000 1200 50 0001 C CNN 992 | F 3 "~" H 8000 1200 50 0001 C CNN 993 | 1 8000 1200 994 | -1 0 0 -1 995 | $EndComp 996 | Wire Wire Line 997 | 8200 1200 8550 1200 998 | Connection ~ 8550 1200 999 | Wire Wire Line 1000 | 8200 1300 8300 1300 1001 | Wire Wire Line 1002 | 8300 1300 8300 2200 1003 | Wire Wire Line 1004 | 8300 2200 8550 2200 1005 | Connection ~ 8550 2200 1006 | $Comp 1007 | L power:GND #PWR0124 1008 | U 1 1 5D09500C 1009 | P 10650 2300 1010 | F 0 "#PWR0124" H 10650 2050 50 0001 C CNN 1011 | F 1 "GND" H 10655 2127 50 0000 C CNN 1012 | F 2 "" H 10650 2300 50 0001 C CNN 1013 | F 3 "" H 10650 2300 50 0001 C CNN 1014 | 1 10650 2300 1015 | 1 0 0 -1 1016 | $EndComp 1017 | Wire Wire Line 1018 | 10650 2200 10650 2300 1019 | Connection ~ 10650 2200 1020 | Text Notes 7650 1550 0 50 ~ 0 1021 | 12V DC 250mA 1022 | $Comp 1023 | L Mechanical:MountingHole MH1 1024 | U 1 1 5D0B1E3D 1025 | P 6550 7000 1026 | F 0 "MH1" H 6650 7000 50 0000 L CNN 1027 | F 1 "MountingHole" H 6650 6955 50 0001 L CNN 1028 | F 2 "MountingHole:MountingHole_3.2mm_M3" H 6550 7000 50 0001 C CNN 1029 | F 3 "~" H 6550 7000 50 0001 C CNN 1030 | 1 6550 7000 1031 | 1 0 0 -1 1032 | $EndComp 1033 | $Comp 1034 | L Mechanical:MountingHole MH2 1035 | U 1 1 5D0B20DF 1036 | P 6550 7200 1037 | F 0 "MH2" H 6650 7200 50 0000 L CNN 1038 | F 1 "MountingHole" H 6650 7155 50 0001 L CNN 1039 | F 2 "MountingHole:MountingHole_3.2mm_M3" H 6550 7200 50 0001 C CNN 1040 | F 3 "~" H 6550 7200 50 0001 C CNN 1041 | 1 6550 7200 1042 | 1 0 0 -1 1043 | $EndComp 1044 | $Comp 1045 | L Mechanical:MountingHole MH3 1046 | U 1 1 5D0B213D 1047 | P 6550 7400 1048 | F 0 "MH3" H 6650 7400 50 0000 L CNN 1049 | F 1 "MountingHole" H 6650 7355 50 0001 L CNN 1050 | F 2 "MountingHole:MountingHole_3.2mm_M3" H 6550 7400 50 0001 C CNN 1051 | F 3 "~" H 6550 7400 50 0001 C CNN 1052 | 1 6550 7400 1053 | 1 0 0 -1 1054 | $EndComp 1055 | $Comp 1056 | L Mechanical:MountingHole MH4 1057 | U 1 1 5D0B219D 1058 | P 6550 7600 1059 | F 0 "MH4" H 6650 7600 50 0000 L CNN 1060 | F 1 "MountingHole" H 6650 7555 50 0001 L CNN 1061 | F 2 "MountingHole:MountingHole_3.2mm_M3" H 6550 7600 50 0001 C CNN 1062 | F 3 "~" H 6550 7600 50 0001 C CNN 1063 | 1 6550 7600 1064 | 1 0 0 -1 1065 | $EndComp 1066 | $Comp 1067 | L Device:LED D2 1068 | U 1 1 5CFAFCA4 1069 | P 6850 1800 1070 | F 0 "D2" H 6850 1700 50 0000 C CNN 1071 | F 1 "LED RD" H 6850 1900 50 0000 C CNN 1072 | F 2 "LED_THT:LED_D5.0mm" H 6850 1800 50 0001 C CNN 1073 | F 3 "~" H 6850 1800 50 0001 C CNN 1074 | 1 6850 1800 1075 | -1 0 0 1 1076 | $EndComp 1077 | $Comp 1078 | L Device:R R11 1079 | U 1 1 5CFB00EB 1080 | P 6450 1800 1081 | F 0 "R11" V 6243 1800 50 0000 C CNN 1082 | F 1 "1K" V 6334 1800 50 0000 C CNN 1083 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 6380 1800 50 0001 C CNN 1084 | F 3 "~" H 6450 1800 50 0001 C CNN 1085 | 1 6450 1800 1086 | 0 1 1 0 1087 | $EndComp 1088 | Wire Wire Line 1089 | 5050 1800 6300 1800 1090 | Wire Wire Line 1091 | 6600 1800 6700 1800 1092 | $Comp 1093 | L Device:R R12 1094 | U 1 1 5CFC3346 1095 | P 6450 2100 1096 | F 0 "R12" V 6243 2100 50 0000 C CNN 1097 | F 1 "1K" V 6334 2100 50 0000 C CNN 1098 | F 2 "Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal" V 6380 2100 50 0001 C CNN 1099 | F 3 "~" H 6450 2100 50 0001 C CNN 1100 | 1 6450 2100 1101 | 0 1 1 0 1102 | $EndComp 1103 | $Comp 1104 | L Device:LED D3 1105 | U 1 1 5CFC33B2 1106 | P 6850 2100 1107 | F 0 "D3" H 6850 2000 50 0000 C CNN 1108 | F 1 "LED GN" H 6850 2200 50 0000 C CNN 1109 | F 2 "LED_THT:LED_D5.0mm" H 6850 2100 50 0001 C CNN 1110 | F 3 "~" H 6850 2100 50 0001 C CNN 1111 | 1 6850 2100 1112 | -1 0 0 1 1113 | $EndComp 1114 | Wire Wire Line 1115 | 6600 2100 6700 2100 1116 | Wire Wire Line 1117 | 6300 2100 6150 2100 1118 | Wire Wire Line 1119 | 6150 2100 6150 1900 1120 | Wire Wire Line 1121 | 6150 1900 5050 1900 1122 | $Comp 1123 | L power:GND #PWR0125 1124 | U 1 1 5CFCD4AD 1125 | P 7200 3200 1126 | F 0 "#PWR0125" H 7200 2950 50 0001 C CNN 1127 | F 1 "GND" H 7205 3027 50 0000 C CNN 1128 | F 2 "" H 7200 3200 50 0001 C CNN 1129 | F 3 "" H 7200 3200 50 0001 C CNN 1130 | 1 7200 3200 1131 | 1 0 0 -1 1132 | $EndComp 1133 | Wire Wire Line 1134 | 7200 3200 7200 2100 1135 | Wire Wire Line 1136 | 7200 1800 7000 1800 1137 | Wire Wire Line 1138 | 7000 2100 7200 2100 1139 | Connection ~ 7200 2100 1140 | Wire Wire Line 1141 | 7200 2100 7200 1800 1142 | Wire Wire Line 1143 | 2650 1600 2300 1600 1144 | Wire Wire Line 1145 | 1650 1600 2000 1600 1146 | Wire Wire Line 1147 | 1650 1500 2000 1500 1148 | Wire Wire Line 1149 | 2650 1500 2300 1500 1150 | Text Label 2300 1500 0 50 ~ 0 1151 | MOSI 1152 | Text Label 2300 1600 0 50 ~ 0 1153 | MISO 1154 | Text Label 2000 1500 2 50 ~ 0 1155 | MISO 1156 | Text Label 2000 1600 2 50 ~ 0 1157 | MOSI 1158 | Wire Wire Line 1159 | 1900 6300 2550 6300 1160 | Wire Wire Line 1161 | 1900 5800 1900 6300 1162 | Wire Wire Line 1163 | 2400 6000 2400 5900 1164 | Wire Wire Line 1165 | 2400 5900 2550 5900 1166 | Wire Wire Line 1167 | 1150 6000 2400 6000 1168 | $EndSCHEMATC 1169 | -------------------------------------------------------------------------------- /ecad/fp-info-cache: -------------------------------------------------------------------------------- 1 | 0 2 | -------------------------------------------------------------------------------- /ecad/lib/ATMega328.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | #End Doc Library 4 | -------------------------------------------------------------------------------- /ecad/lib/ATMega328.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # ATMega328 5 | # 6 | DEF ATMega328 U 0 40 Y Y 1 F N 7 | F0 "U" 50 50 50 H V L CNN 8 | F1 "ATMega328" 50 -1750 50 H V L CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | DRAW 12 | S 0 0 2200 -1700 0 1 0 f 13 | X PC6/PCINT14/nRESET 1 -100 -1600 100 R 50 50 1 1 B 14 | X PB7/PCINT7/XTAL2/TOSC2 10 -100 -800 100 R 50 50 1 1 B 15 | X PD5/PCINT21/OC0B/T1 11 2300 -600 100 L 50 50 1 1 B 16 | X PD6/PCINT22/OC0A/AIN0 12 2300 -700 100 L 50 50 1 1 B 17 | X PD7/PCINT23/AIN1 13 2300 -800 100 L 50 50 1 1 B 18 | X PB0/PCINT0/CLKO/ICP1 14 -100 -100 100 R 50 50 1 1 B 19 | X PB1/OC1A/PCINT1 15 -100 -200 100 R 50 50 1 1 B 20 | X PB2/SS/OC1B/PCINT2 16 -100 -300 100 R 50 50 1 1 B 21 | X PB3/MOSI/OC2A/PCINT3 17 -100 -400 100 R 50 50 1 1 B 22 | X PB4/MISO/PCINT4 18 -100 -500 100 R 50 50 1 1 B 23 | X PB5/SCK/PCINT5 19 -100 -600 100 R 50 50 1 1 B 24 | X PD0/PCINT16/RXD 2 2300 -100 100 L 50 50 1 1 B 25 | X AVCC 20 2300 -1100 100 L 50 50 1 1 W 26 | X AREF 21 2300 -1200 100 L 50 50 1 1 W 27 | X GND 22 2300 -1600 100 L 50 50 1 1 W 28 | X PC0/ADC0/PCINT8 23 -100 -1000 100 R 50 50 1 1 B 29 | X PC1/ADC1/PCINT9 24 -100 -1100 100 R 50 50 1 1 B 30 | X PC2/ADC2/PCINT10 25 -100 -1200 100 R 50 50 1 1 B 31 | X PC3/ADC3/PCINT11 26 -100 -1300 100 R 50 50 1 1 B 32 | X PC4/ADC4/SDA/PCINT12 27 -100 -1400 100 R 50 50 1 1 B 33 | X PC5/ADC5/SCL/PCINT13 28 -100 -1500 100 R 50 50 1 1 B 34 | X PD1/PCINT17/TXD 3 2300 -200 100 L 50 50 1 1 B 35 | X PD2/PCINT18/INT0 4 2300 -300 100 L 50 50 1 1 B 36 | X PD3/PCINT19/OC2B/INT1 5 2300 -400 100 L 50 50 1 1 B 37 | X PD4/PCINT20/XCK/T0 6 2300 -500 100 L 50 50 1 1 B 38 | X VCC 7 2300 -1000 100 L 50 50 1 1 W 39 | X GND 8 2300 -1500 100 L 50 50 1 1 W 40 | X PB6/PCINT6/XTAL1/TOSC1 9 -100 -700 100 R 50 50 1 1 B 41 | ENDDRAW 42 | ENDDEF 43 | # 44 | #End Library 45 | -------------------------------------------------------------------------------- /ecad/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name ATMega328)(type Legacy)(uri ${KIPRJMOD}/lib/ATMega328.lib)(options "")(descr "")) 3 | (lib (name IPoS-rescue)(type Legacy)(uri ${KIPRJMOD}/IPoS-rescue.lib)(options "")(descr "")) 4 | ) 5 | -------------------------------------------------------------------------------- /firmware/IPoS_Firmware/IPoS_Firmware.ino: -------------------------------------------------------------------------------- 1 | #include "TimerOne.h" 2 | 3 | #define SPAGHETTI_RX 5 4 | #define SPAGHETTI_TX 4 5 | #define LED_RED 6 6 | #define LED_GREEN 7 7 | #define CTS 3 8 | #define RTS 2 9 | 10 | #define BUFFSIZE 32 11 | #define __DEBUG__ 12 | 13 | // Global variables need 'volatile' so that they can be altered within the ISR routine 14 | volatile int tick = 0; 15 | 16 | volatile char tx_buff[BUFFSIZE]; 17 | volatile char tx_buff_last = 0; 18 | volatile char tx_byte = 0; 19 | volatile char tx_state = 0; 20 | volatile char tx_bit = 0; 21 | volatile char tx_blank = 0; 22 | 23 | volatile char rx_byte = 0; 24 | volatile char rx_state = 0; 25 | volatile char rx_bit = 0; 26 | volatile char rx_tick_offset = 0; 27 | 28 | /* ********************************************************************** */ 29 | /* *** BOARD SETUP *** */ 30 | /* ********************************************************************** */ 31 | void setup() { 32 | 33 | // Setup board specific pins 34 | pinMode(SPAGHETTI_TX, OUTPUT); 35 | pinMode(SPAGHETTI_RX, INPUT); 36 | pinMode(LED_RED, OUTPUT); 37 | pinMode(LED_GREEN, OUTPUT); 38 | pinMode(CTS, INPUT); 39 | pinMode(RTS, OUTPUT); 40 | 41 | // Simple 9600 8N1 42 | Serial.begin(9600); 43 | 44 | // Assert RTS to accept incomming bytes 45 | digitalWrite(RTS,LOW); 46 | 47 | // Initialize 2.5ms timer interupt and register isr 48 | Timer1.initialize(2500); 49 | Timer1.attachInterrupt(isr_timer); 50 | 51 | } 52 | 53 | 54 | /* ********************************************************************** */ 55 | /* *** MAIN 400Hz INTERRUPT ROUTINE *** */ 56 | /* ********************************************************************** */ 57 | void isr_timer() { 58 | int i; 59 | 60 | /* ********************************************************************** */ 61 | /* *** TRANSMIT *** */ 62 | /* ********************************************************************** */ 63 | 64 | // Check if buffer is full. If buffer is full it is better to lose bytes than to crash ... 65 | if (Serial.available() > 0 && tx_buff_last < BUFFSIZE - 1) { 66 | tx_buff[tx_buff_last] = Serial.read() & 0xFF; 67 | tx_buff_last++; 68 | } 69 | 70 | // Some implementation take several bytes until they react on RTS deassertion. Thus, we accept only 4 bytes before deasserting RTS. 71 | if(tx_buff_last > 3) { 72 | digitalWrite(RTS,HIGH); 73 | } 74 | else { 75 | digitalWrite(RTS,LOW); 76 | } 77 | 78 | // A single bit is exactly 25ms long. Thus, we switch states every 10 timer ticks. 79 | if(tick % 10 == 0) { 80 | switch(tx_state) { 81 | case 0: 82 | // If buffer is nonempty, remove and transmit first byte from buffer 83 | if(tx_buff_last > 0) { 84 | tx_byte = tx_buff[0]; 85 | // move all items to the front - yes, dumb but simple! No need for a ringbuffer whatsoever! 86 | for(i = 1; i < tx_buff_last; i++) { 87 | tx_buff[i-1] = tx_buff[i]; 88 | } 89 | tx_buff_last --; 90 | tx_state = 1; 91 | tx_bit = 0; 92 | } 93 | break; 94 | case 1: 95 | // Write the start bit 96 | digitalWrite(SPAGHETTI_TX,HIGH); 97 | tx_state = 2; 98 | break; 99 | case 2: 100 | // Write individual bits 101 | digitalWrite(SPAGHETTI_TX,(tx_byte >> tx_bit) & 0x01); 102 | tx_bit++; 103 | if(tx_bit > 7) { 104 | tx_blank = 0; 105 | tx_state = 3; 106 | tx_bit = 0; 107 | } 108 | break; 109 | case 3: 110 | // Insert a two cycle blank 111 | digitalWrite(SPAGHETTI_TX,LOW); 112 | if(tx_blank > 1) { 113 | tx_state = 0; 114 | } 115 | tx_blank ++; 116 | break; 117 | } 118 | } 119 | 120 | /* ********************************************************************** */ 121 | /* *** RECEIVE *** */ 122 | /* ********************************************************************** */ 123 | 124 | // We scan for the start bit on any tick (400Hz) 125 | if(rx_state == 0) { 126 | if(digitalRead(SPAGHETTI_RX)) { 127 | 128 | #ifdef __DEBUG__ 129 | digitalWrite(LED_RED,HIGH); 130 | delay(1); 131 | digitalWrite(LED_RED,LOW); 132 | #endif 133 | 134 | rx_state = 1; 135 | rx_byte = 0x0; 136 | rx_bit = 0; 137 | // We store the offset to the 25ms bit cycle and add some margin to scan for the next bits roughly in the middle of their heigh period. 138 | rx_tick_offset = ((tick + 6) % 10); 139 | } 140 | } 141 | 142 | if(rx_state != 0 && tick % 10 == rx_tick_offset) { 143 | switch(rx_state) { 144 | case 1: 145 | // Waiting for the start bit to clear (dummy state) 146 | rx_state = 2; 147 | break; 148 | case 2: 149 | 150 | #ifdef __DEBUG__ 151 | digitalWrite(LED_GREEN,HIGH); 152 | delay(1); 153 | digitalWrite(LED_GREEN,LOW); 154 | #endif 155 | // Reading all the bits 156 | rx_byte = rx_byte | (digitalRead(SPAGHETTI_RX) << rx_bit); 157 | rx_bit ++; 158 | 159 | if(rx_bit > 7) { 160 | Serial.write(rx_byte); 161 | rx_state = 3; 162 | } 163 | break; 164 | case 3: 165 | // Waiting for last transferred bit to clear (dummy state) 166 | rx_state = 0; 167 | rx_bit = 0; 168 | break; 169 | } 170 | } 171 | 172 | /* ********************************************************************** */ 173 | /* *** HOUSE KEEPING *** */ 174 | /* ********************************************************************** */ 175 | 176 | // Increment tick counter and roll over 177 | tick ++; 178 | if(tick >= 1000) tick = 0; 179 | } 180 | 181 | // Nothing left to be done. Just an empty loop ... 182 | void loop() { 183 | 184 | } 185 | --------------------------------------------------------------------------------