| Datasheets.org.uk - 100 Million Datasheets from 7500 Manufacturers. |
Virtual Wire® Development Manual DR1007-DK Virtual Wire® Developm
Top Searches for this datasheetFile: 400-1397.doc 400-1397-001, Rev: Virtual Wire® Development Manual DR1007-DK Virtual Wire® Development Hardware Warranty Special Notices Virtual Wire® Development Introduction Purpose Virtual Wire® Development Intended User General Description Features Development Contents Low-Power Wireless Data Communications Operational Considerations Regulations Example Applications FAQs Developing Virtual Wire® Application Simulating Application Power Considerations Communications Protocol Antenna Considerations Internal Noise Management Final Product Testing Regulatory Certification Regulatory Authority Product Certification Certification Testing Installation Operation Development Assembly Instructions Data Radio Board Frequency Options Antenna Options Adjustment Copyright 1996, 1997, 1998 RFM®. Protocol Board Node Programming RS232 Interface Functions Terminal Program Installation Configuration Operation Theory Operation Data Radio Boards Interface Transmitter Receiver AGC/Antenna Switch Specifications Protocol Board Interface RS232 Interface Protocol Microcontroller CMOS/RS232 Level Converter Specifications Protocol Firmware Description Message Format Terminal Program Description Source Code Listing Drawings Antenna Mounting Node Programming Data Radio Schematic Data Radio Bill Materials Data Radio Component Placement 916.5 Test Antenna Drawing Protocol Board Schematic Protocol Board Component Placement Protocol Board Bill Materials Copyright 1996, 1997, 1998 RFM®. Virtual Wire® Development Hardware Warranty Limited Hardware Warranty. Monolithics, Inc. ("RFM") warrants solely purchaser that hardware components Virtual Wire® Development (the "Kit") will free from defects materials workmanship under normal period days from date shipment RFM. This limited warranty does extend components which have been subjected misuse, neglect, accident, improper installation application. RFM's entire liability purchaser's sole exclusive remedy breach this Limited Hardware Warranty shall RFM's option, when accompanied valid receipt, either repair replacement defective components (ii) upon return defective Kit, refund purchase price paid Kit. EXCEPT LIMITED HARDWARE WARRANTY FORTH ABOVE, LICENSORS PROVIDE HARDWARE BASIS, WITHOUT WARRANTY KIND EITHER EXPRESS, IMPLIED STATUTORY, INCLUDING LIMITED IMPLIED WARRANTIES NONINFRINGEMENT, MERCHANTABILITY FITNESS PARTICULAR PURPOSE. Some states allow exclusion implied warranties, above exclusion apply you. This warranty gives specific legal rights also have other rights which vary from state state. Limitation Liability. EVENT SHALL SUPPLIERS LIABLE DAMAGES (WHETHER SPECIAL, INCIDENTAL, CONSEQUENTIAL OTHERWISE) EXCESS PRICE ACTUALLY PAID KIT, REGARDLESS UNDER WHAT LEGAL THEORY, TORT, CONTRACT SUCH DAMAGES ALLEGED (INCLUDING, WITHOUT LIMITATION, CLAIMS, DAMAGES, LIABILITIES LOSS BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS BUSINESS INFORMATION, INJURY PERSON PROPERTY) ARISING INABILITY KIT, EVEN BEEN ADVISED POSSIBILITY SUCH DAMAGES. BECAUSE SOME STATES ALLOW EXCLUSION LIMITATION LIABILITY CONSEQUENTIAL INCIDENTAL DAMAGES, ABOVE LIMITATION APPLY YOU. Special notice restricted Virtual Wire® Development Kits Virtual Wire® Development Kits intended solely professional engineers purpose evaluating feasibility low-power wireless data communications applications. user's evaluation must limited assembled within laboratory setting which provides adequate shielding emission which might caused operation following assembly. field testing, assembled device must operated residential area area where radio devices might subject harmful electrical interference. This been certified accord with Part ETSI I-ETS I-ETS 220-1 regulations, other known standards operation governing radio emissions. Distribution sale intended solely future development Copyright 1996, 1997, 1998 RFM®. devices which subject regulation, other authorities governing radio emission. This resold users purpose. Accordingly, operation development future devices deemed within discretion user user shall have responsibility compliance with regulation other authority governing radio emission such development use, including without limitation reducing electrical interference legally acceptable levels. products developed user must approved other authority governing radio emission prior marketing sale such products user bears responsibility obtaining FCC's prior approval, approval needed from other authority governing radio emission. user obtained purpose identified above, including conditions assembly use, user should return Monolithics, Inc. immediately. experimental device, makes representation with respect adequacy developing low-power wireless data communications applications systems, adequacy such design result. does cannot warrant that functioning will uninterrupted error-free. products based technology operate shared radio channels. Radio interference occur place time, thus communications link absolutely reliable. Products using Virtual Wire® technology must designed that loss communications radio interference otherwise will endanger either people property, will cause loss valuable data. assumes liability performance products which designed created using Kit. products suitable life-support applications, biological hazard applications, nuclear control applications, radioactive areas. Virtual Wire registered trademarks Monolithics, Inc. MS-DOS, QuickBASIC, Windows registered trademarks Microsoft Corporation. Copyright 1996, 1997, 1998 RFM®. Virtual Wire® Development Introduction Purpose DR1007-DK Virtual Wire® Development DR1007-DK Virtual Wire® Development tool evaluating feasibility low-power wireless data communications application. also used design guide facilitate development actual system. addition, modules available from Monolithics, Inc. (RFM) system manufacturing. Intended User Virtual Wire® Development Kits intended professional engineer with working knowledge data communications. kits intended product, individuals that have professional background data communications. Please refer Special Notices section front this manual. General Description Virtual Wire® Development allows user implement low-power wireless data communications based half-duplex packet transmissions. contains hardware software needed establish wireless link between DOS-based computers with RS232C serial ports. includes communications nodes, with each node consisting data radio board host protocol board, plus accessories. DR1007-DK operates 916.5 MHz, which popular frequency power wireless data transmission applications North America, South America Australia. Copyright 1996, 1997, 1998 RFM®. Features DR1007-DK Virtual Wire® Development includes number features: "Out box" operation between DOS-based PC's low-current data radio transceivers operating 916.5 Excellent receiver off-channel interference rejection Receiver resistance on-channel interference Reference antennas low-current protocol boards based ATMEL AT89C2051 20-pin microcontroller On-board CMOS logic RS232C level conversion with bypass provisions direct CMOS logic interface Packet link-layer protocol with 3309 error detection automatic packet retransmission; message bytes packet transmission (ASCII binary) DC-balanced data coding robust transmission performance Simple packet protocol application layer interface with example application software Diagnostic LEDs system performance evaluation different node addresses supported jumper programmable Battery operation from cells (Batteries included with development kit) Development Contents Each development contains following items: data radio transceiver boards host protocol boards Copyright 1996, 1997, 1998 RFM®. reference antennas 3.5" floppy disk with example application software Manual Low-Power Wireless Applications Operational Considerations Low-power wireless (RF) systems typically transmit less than power, operate over distances meters. Once certified comply with local communications regulations, they require license "air-time fee" operation. There more than million systems manufactured each year that utilize low-power wireless security, control data transmission. Many applications low-power wireless emerging, sales expected million systems year decade. classical uses low-power wireless systems one-way remote control alarm links, including garage door openers, automotive "keyless entry" transmitters, home security systems. Recently, strong interest developed two-way data communications applications. These low-power wireless systems used eliminate nuisance cables types digital products, much cordless phones have eliminated cumbersome phone wires. RFM's Virtual Wire® Development Kits intended support design these types low-power wireless applications. Most low-power wireless systems operate with interference problems. However, these systems operate shared radio channels, interference occur place time. Products that incorporate low-power wireless communications must designed that loss communication radio interference other reason does create dangerous situation, damage equipment property, cause loss valuable data. Copyright 1996, 1997, 1998 RFM®. Regulations While low-power wireless products have individually licensed, they subject regulation. Before low-power wireless systems marketed most countries, they must certified comply with specific technical regulations. issues this certification. most Europe Scandinavia, certification based ETSI standards, administered PTTs each country. While technical regulations vary from country country, they follow same general philosophy assuring that low-power wireless systems will significantly interfere with licensed radio systems. Regulations specify limitations fundamental power, harmonic spurious emission levels, transmitter frequency stability, transmission bandwidth. Example Applications Applications low-power wireless data communications growing very rapidly. following list example applications demonstrates diversity uses low-power wireless technology: Wireless bar-code readers bar-code label printers Smart tags inventory tracking identification Wireless automatic utility meter reading systems Wireless receipt printers rental returns, restaurants, etc. Communications links hand held terminals, HPCs, PDAs, peripherals Portable field data logging Location tracking (follow-me phone extensions, etc.) Sports telemetry Surveying system data links Engine diagnostic links Copyright 1996, 1997, 1998 RFM®. Polled wireless security alarm sensors Authentication access control tags Arcade games FAQs does Virtual Wire® Development include packet protocol microcontroller? connect data radio board directly computer serial port? hook data radio board directly computer serial port (using RS232 CMOS level converter). However, results likely satisfactory. First, error detection limited byte parity checking, which will many errors undetected. Also, balance data very poor, which will greatly reduce data radio's range. Packet protocol used extensively two-way data communications. example, Internet digital cellular phones packet transmissions. While there many packet protocols use, they provide basic features, including effective means transmission error detection, routing support (such "to" "from" address). This allows error free data communications performed highly automatic way. protocol microcontroller used Virtual Wire® Development provides error detection automatic message retransmission, message routing, link failure alarms DC-balanced packet coding. What operating range low-power wireless systems? tests electrically quiet outdoor location, easily communicate meters with DR1007-DK. However, operating range given situation influenced building construction materials contents when indoors, other radio systems operating vicinity, noise generated nearby Copyright 1996, 1997, 1998 RFM®. equipment. Virtual Wire® Development taken into target environment used help gain sense operating range proposed system. communicate between more than nodes same location with lowpower communications link? Yes. benefits packet transmissions channel sharing. case Virtual Wire® Development Kit, each protocol board programmed have fifteen addresses, with address reserved messages that broadcast nodes. example, node transmitting bar-code readings node while node transmitting bar-codes node same location. long average channel usage less than about 12%, randomly transmitted messages will though without excessive transmission "collisions" transmission retries. Developing Virtual Wire® Application Simulating Application There hundreds potential applications short-range wireless communications links. Because there many different variables potential application, simulating application often best gain insight into feasibility. Virtual Wire® Development Kits very helpful simulating potential applications. following simulation check list covers issues common most low-power wireless applications. user should also consider what other specific issues apply application being simulated: Maximum operating range required Type operating environment (outdoor, indoor, indoor building construction, etc.) Number nodes (transceivers) required application Copyright 1996, 1997, 1998 RFM®. Node interaction (communications between pairs nodes only, master node several slave nodes, communications between nodes, etc.) Possible on-channel interference/noise sources (ISM equipment, electrical equipment, nearby spread-spectrum systems, etc.) Channel usage (average peak number messages expected each minute, average message transmission/acknowledgment duration, average percentage time channel use, etc.) Message characteristics (average maximum length; message type such data, telemetry, control codes, etc.) Antenna logistics (omnidirectional, directional, hidden, etc.) Environmental considerations Indoor radio propagation issue special consideration. most indoor locations, "dead spots" found where reception very difficult. These occur even there appears line sight relationship between nodes. These "dead spots", nulls, multiple transmission paths existing between locations because reflections metal objects such steel beams, concrete rebar, metal door, window ceiling tile frames, etc. Nulls occur when path lengths effectively differ half-wavelength. Deep nulls usually very localized, avoided moving either node slightly. Diversity reception techniques very helpful reducing indoor null problems. Many low-power wireless systems involve communications between master multiple slave units. this case, master transmission sent twice; first from master then again from second master slightly different location. nulls each master will tend different locations, slave very likely hear transmission from other master. Likewise, transmission from slave likely heard least masters. Hand-held applications usually involve some movement, automatic packet retransmission often succeeds completing transmission hand motion moves node through null back into good transmission point. Copyright 1996, 1997, 1998 RFM®. Power Considerations DR1007-DK node (data radio protocol board) requires supply voltage range with less than ripple, peak current capability data radio boards draw approximately both transmit receive. protocol board draws about quiescent mode, with peak currents when data sent RS232 port. Care must taken avoid reversing polarity power supply since diode protection provided. protecting diodes (D2) used protect MMIC amplifer DR1007's from discharges antenna. Data radio boards protocol boards staticsensitive. precautions CMOS devices. Communications Protocol Almost two-way wireless data communications some form packet protocol automatically assure information received correctly correct destination. protocol provided with Virtual Wire® Development Kits link-layer protocol, includes following features: 16-bit 3309 error detection calculation test message integrity 4-bit TO/FROM address routing with different node addresses available ASCII binary message support, bytes packet Automatic packet retransmission until acknowledgment received; retries with semi-random back-off delays plus "acknowledge" "link failure alarm" messages. Also included with simple terminal program with source code provide example interfacing host (application) software Virtual Wire® link layer protocol. Most users will develop specific host software match needs their application. protocol software does require support hardware flow control, Copyright 1996, 1997, 1998 RFM®. host software will have some timekeeping interface protocol software. Study source code listing comments details this interface. Also refer software application notes site (www.rfm.com). Users familiar with hardwired packet networks consider message bytes packet limit quite small. Packets sent low-power wireless systems kept deliberately short improve performance where on-channel burst interference signal-to-noise conditions often encountered. Antenna Considerations Suitable antennas crucial success Virtual Wire® application. Here several points consider designing antennas your application: Where possible, antenna should placed outside product. Also, place antenna product. product "body worn", antenna away body practical. Regulatory agencies prefer antennas that permanently fixed product. Antennas supplied with cable, provided non-standard connector used discourage antenna substitution (these connectors often referred "Part connectors). antenna placed inside metal case, case will shield Also, some plastics (and coatings) significantly attenuate signals these materials should used product cases, antenna going inside case. antenna designs used included drawings section manual. Many other antenna designs possible, efficient antenna development requires access antenna test equipment such vector network analyzer, calibrated test antenna, antenna range, etc. Unless have access this type equipment, antenna consultant recommended. patch slot antenna used some applications where external antenna would subject damage. These types antennas usually have Copyright 1996, 1997, 1998 RFM®. designed case-by-case basis. Contact RFM's application engineering group additional information. Internal Noise Management transceivers operating under "Part rules sensitive noise passband receiver, because desired transmitted signals restricted power levels. Commonly encountered internal noise sources microprocessors (both control functions computer functions), brush-type motors high-speed logic circuits. rise time fall time clock microprocessor fast enough produce harmonics frequency range receiver harmonics fall within passband receiver, then special care must taken reduce level harmonic antenna port receiver. engineer option, should choose microprocessor that slowest rise fall time application avoid troublesome harmonics band. possible, brush-type motors should avoided, since arcing brushes commutator makes very effective spark-gap transmitter. necessary brush-type motor, spark suppression techniques should used. Such motors purchased with spark suppression built-in. motor does have built-in spark suppression, bypass capacitors, series resistors shielding have employed. High-speed logic circuits produce noise similar microprocessors. Once again, engineer should logic with slowest rise fall times that will work application. items listed below should considered application that more above noise sources included. possible follow these guidelines particular application. Locate transceiver antenna from noise source possible. Copyright 1996, 1997, 1998 RFM®. transceiver must enclosed with noise source, remotely locate antenna using coaxial cable. Terminate high-speed logic circuits with their characteristic impedance microstrip interconnect lines designed that impedance. Keep traces wires that carry high-speed logic signals supply brush-type motors short possible. Such lines antennas that radiate unwanted noise. possible, enclose noise source grounded metal decoupling input/output lines. Avoid using same power lines transceiver noise source least thoroughly filter decouple) such power lines. advisable separate voltage regulators, possible. antenna cannot remotely located, place from noise source possible opposite board). Orient antenna such that axis same plane with board containing noise source. wires that supply noise source close proximity antenna. Final Product Testing wireless data communications system must thoroughly tested "anything happen sequence" nature wireless communications. highly recommended that beta sites chosen operational system testing which represent "limit" situations system expected operate Testing regulatory certification discussed Section 3.7. recommended that user either establish test range working relationship with recognized test early system development phase, allow periodic evaluation system's emissions during development. Many labs experienced solving radiation problems that cause certification test failures and/or jamming low-power wireless link. Identifying these types problems early save development time. Copyright 1996, 1997, 1998 RFM®. Regulatory Certification Regulatory Authority Worldwide, man-made electromagnetic emissions controlled international treaty (International Telecommunications Union) committee recommendations. These treaties require countries within geographical region comparable tables channel allocations emission limits, assure that users operate with reasonable levels interference. Recognizing need protect their limited frequency resources, many countries have additional local laws, regulations government decrees acceptable emission levels from various electronic equipment, both military commercial. requiring that each model equipment tested authorization permit issued after payment (called grant fee), government attempts control sale poor quality equipment also record known manufacturers. Enforcement expectation local varies, course. USA, Canada, most European countries have adopted tables their respective radio regions. Australia, Hong Kong Japan also have extensive rules regulations power transmitters receivers, with significant differences tables that radio region. Most other countries have less formal regulations, often modeled either regulations. country, important contact Ministry Telecommunications Postal Services determine local limitations, allocations, certifications PRIOR assembling testing your first product. mildest penalty often total loss your import, export foreign exchange privileges. These laws requirements applicable finished product, configuration that will sold general public user. components often Copyright 1996, 1997, 1998 RFM®. certified, since they require additional non-standard attachments before they have functional purpose. Unless otherwise marked, Virtual Wire® Development modules have been certified particular regulations. Each module suggested countries use, depending current allocations technical limits. Emissions from receivers unexpected problem, modules have special features help with this part emission testing. Product Certification General requirements emissions ingressions called susceptibility, errors occur) controlled engineering standards performance, regulations, customer's expectations. Canada, example, must formally measure emissions, file certification authorization, affix permanent marking label every device, prior offering your system sale. Regulations allow build only small number (usually pieces) testing in-company use, before certification marketing. Trade shows product announcements problem marketing, when products advertised without proper disclaimers. With Internet access, "www.fcc.org" information "www.ic.gc.ca" Canada. Canada rules RCC-210, Revision Parts contains needed information sales. European Union (EU) requirements allow self-certification some systems require formal measurement reports other systems. cases, however, directives demand mark" added compliant devices before device freely shipped commerce. Directive also adds various tests expectations levels signal that will permit acceptable operation. directives introduce concepts "cognizant body", "notification body" "construction file". Cognizant bodies simply technical experts recognized Copyright 1996, 1997, 1998 RFM®. committees review technical regulations compliance. acceptable test will have preferred cognizant body their certifications. Each regulatory body will have least engineer designated notification body that country, receives communication about certification changes certified system. While this seem confusing, does avoid legal problems engineering titles varied bureaucratic ministry names. Construction files (CF) common format presenting pictures, schematics other information parts processes used actually build certified system, report antenna range measurements will included Your cognizant body will review construction file before granting authorizations mark identification label your system. first problem usually Border Customs, have been trained look logo marking products. need special forms permits simply ship pre-production models your test lab. Internet site "www.etsi.co.fr" information ordering full marketing regulations. Certification Testing emissions measured calibrated environment defined regulations. Canada "open field" range with meters between device under test (DUT) antenna. range calibrated measurement known signal sources generate range attenuation (correction) curves accordance with ANSI C63.4-1992. measurement rules based similar arrangement, "standard dipole" antenna substituted calibrate range attenuation. Since measurements comparison substitution rules, they often easier follow informal pre-testing designer. ETSI-300-220 drawings completely describe typical test configuration. Copyright 1996, 1997, 1998 RFM®. United States Canadian requirements contained ANSI C63.4-1992, including step-by-step test calibration measurement procedure. Since these rules include range attenuation factors, must make twice measurements test method. Other countries follow these techniques, with exception meter range (separation) measurement different range test frequencies. Each listed contacts next page will have resources provide (for fee) current regulations certification forms. They also suggest sources your formal tests, either commercial labs government testing office. Unless want invest qualified radiated signals test range, commercial labs help with preliminary measurements some expertise correcting difficulties that noted. Copyright 1996, 1997, 1998 RFM®. Contacts further information current test facilities listings: ANSI Institute Electrical Electronics Engineers, East 47th Street, York, 10017 ETSI European Telecommunications Standard Institute F-06921 Sophia Antipolis Cedex FRANCE Federal Communications Commission Washington 20554 Canada Industrie Canada Attn: Certification, Engineering Operations Section, 1241 Clyde Avenue, Ottawa CANADA UNITED KINGDOM LPRA (manufacturing association information) Power Radio Association Vicarage, Haley Hill, Halifax Radiocommunications Agency (official) Waterloo Bridge House, Waterloo Road London JATE Japan Approvals Institute (JATE) Isomura Bldg, 1-1-3 Toranomon Minato-ku Tokyo JAPAN Copyright 1996, 1997, 1998 RFM®. Virtual Wire® Development Installation Operation Development Assembly Instructions assembly includes following steps: Install antennas antenna cables) data radio boards (see Appendix node address protocol boards Obtain install batteries protocol boards (power switch OFF) Plug data radio boards onto protocol boards Connect 9-Pin cables between protocol boards host computers Install terminal program host computers Configure terminal programs test Virtual Wire® communications link Take care plugging transceiver board into protocol board. transceiver board must oriented that BOARD RESTS NYLON SCREW SUPPORTS OVER BATTERIES. sure that transceiver board pins correctly plugged into protocol board connector. possible plug transceiver board that hanging left right. SURE INSPECT CONNECTOR ALIGNMENT BEFORE APPLYING POWER. Options adjustments discussed below: Data Radio Board Frequency Options- This uses DR1007 data radio boards that operate 916.50 MHz. This frequency commonly used North America, South America, Australia. Contact RFM's application engineering group visit site information data radio boards development kits other frequencies. Antenna Options- Antennas supplied with data radio boards that simply soldered provided input (see drawings section Copyright 1996, 1997, 1998 RFM®. manual). These antennas simple base-loaded monopoles. Alternatively, coaxial cable (RG-178, etc.) soldered input adjacent ground pad(s), remotely located antenna used. remote antenna should have impedance approximately ohms, preferably with VSWR less than 1.5:1. remote antenna necessary transceiver housed inside metal box, which very desirable noise source such high-speed microprocessor, high-speed logic brush-type motor mounted close proximity transceiver board itself. Adjustment- data radio boards adjusted voltage between 1.70 1.75 volts node between potentiometer, R14, resistor with signal applied. (See component placement drawings location test pad). This setting does adversely affect sensitivity level receiver. purpose circuit level desired signal level but, rather, prevent saturation receiver in-band interfering signal. cases in-band interference, desired signal must larger than undesired signal intelligible information obtained from receiver. circuit merely prevents saturation eventual capture receiver's demodulator interfering signals more than above receiver sensitivity level. factory setting optimum this task most situations (except cases very strong interference). Turning potentiometer counter-clockwise causes voltage increase and, thus, engages gain control lower signal level vice versa. strong interference encountered, trying increasing incrementally until operation achieved. Protocol Board Node Programming node address each protocol board from placing jumpers double pins located between IC's. With jumpers, node address Placing jumper across pins nearest RS232 connector programs board address rule that node number binary "jumper" value with jumper pins closest RS232 connector being position. exception jumpers pins, which interpreted node Copyright 1996, 1997, 1998 RFM®. Node reserved packets broadcasted other nodes. There node address table drawings section (appendix manual. Power Supply Each node operated from batteries. RS232 Interface Level conversion from CMOS RS232 levels provided possible remove this jumper socket direct CMOS operation. Functions Three indicators provided protocol board. labeled indicates signals being received. indicates that valid packet been received. indicates that message been received from Terminal Program Installation terminal program designed operate under MS-DOS, version higher, equipped with RS232 port COM1 COM2. install terminal program, create hard drive directory Virtual Wire® application copy files enclosed disk directory. After connecting Virtual Wire® node computer turning node start terminal program from within directory typing VWT97V01. Configuration configuration file, VWT97.CFG provided with default values follows: "COM1:""19200""2" ("com port number:""baud rate""TO node address") configuration file edited from terminal program. edit from terminal program, ALT-S. Note that protocol board addressed node other programmed node when received. minimum, VWT97.CFG file will Copyright 1996, 1997, 1998 RFM®. have edited least host computers before Virtual Wire® link tested. Operation following files included terminal program disk: VWT97V01.BAS VWT97V01.EXE VWT97.CFG VWT97.RME QuickBASIC (DOS) Source File Terminal Program Executable File Terminal Program Configuration File (ASCII) Terminal Program "Read File (ASCII) program uses following control keys: ALT-A ALT-B ALT-C ALT-D ALT-H ALT-I ALT-R ALT-S ALT-T ALT-X CTL-N CTL-T Function task (transmit) Read Node Number Broadcast Mode Clear Screen Decrement Node Address Help Screen Increment Node Address Protocol Board Reset Configuration Protocol Board Self-Test Exit Program Software Reset Node Address Telemetry Mode ACK/NAK; both nodes must enable) Sends multi-packet test message When VWT97V01.EXE begins running, program looks VWT97.CFG current directory obtains port, baud rate node address communications link. VWT97.CFG present, program requests configuration information builds VWT97.CFG. Pressing ALT-S will display configuration Copyright 1996, 1997, 1998 RFM®. information allow real-time configuration editing. After reading building configuration file, program gets FROM node address from protocol board enters terminal mode (.UNIT RESPONDING. message displayed protocol board does respond). terminal mode screen includes three windows. window MESSAGES RECEIVED window, displays packets sent local node. bottom window ENTER MESSAGE SEND window, where messages sent input. blinking cursor form provided. VWT97V01.EXE supports "plain text" ASCII messages. middle window MESSAGES SENT window, which shows message packets sent (SOT [02h] [03h] symbols displayed ""), packet number, packet status. This window gives real time depiction messages packetized sent. Message PACKET# (recycling). Packet STATUS retry number 1-8) acknowledged packets. From keyboard, user enter text characters message. Backspace allows character erasures corrections, Delete erases characters entered transmitted. Pressing Enter terminates message input starts packetizing transferring message protocol board serial port. Also, when characters input, message automatically sent. Enter pressed first keyboard action after starting terminal program, default message **Virtual Wire Link Test** received message displayed single line MESSAGES RECEIVED window, whether made more packets. When whole message received, displayed. multi-packet message partially received then first Copyright 1996, 1997, 1998 RFM®. packet message received, partial message discarded reception message begun. When text reaches bottom MESSAGES RECEIVED MESSAGES SENT window, text will scroll until ALT-C invoked clear windows. When characters input Enter pressed ENTER MESSAGE SEND window, this window cleared cursor moves back left side window. event that link between protocol board lost (low battery voltage, ON/OFF switch off, cable, etc.) TIME UNIT RESPONDING alarm message will displayed. packet unacknowledged after eight tries, LINK FAULT message will displayed STATUS column MESSAGES SENT window. There many other possible ways interact with Virtual Wire® Link Layer Protocol. main purposes VWT97V01 terminal program demonstrate software handshaking with protocol support initial Development testing. Check RFM's Internet site, www.rfm.com, additional Development software software application notes. VWTP1.ZIP posted this version manual went press. contains very simple terminal program with application note that explains purpose each line code. Similar terminal programs Visual Basic Windows Windows Visual Windows available from RFM. Copyright 1996, 1997, 1998 RFM®. Theory Operation Data Radio Boards Interface- Referring Data Radio Board schematic diagram, connector interface connector protocol board. transmitter data input driven directly CMOS gate. transmitter on-off (OOK) modulated signal this line changing from volts. high level turns transmitter oscillator level turns off. input impedance this line approximately ohms. line transmitter. applied this line continuous basis without current penalty, since transmitter does draw current until data input line pulled high. line that enables transmit mode. This line puts transmit/receive switch transmit mode when high (2.5 volts minimum maximum). provides power receiver circuitry, volts. ground. reference voltage output (VRef) from hybrid receiver. provides power receiver hybrid, volts. data output from comparator receiver hybrid. This data output CMOS compatible capable driving single CMOS gate bipolar transistor with base resistor. last connection data radio board antenna input (see Appendix antenna location). antenna either connected directly board connected remotely using coaxial cable. Transmitter- Referring Data Radio Board schematic diagram, transmitter surface mount hybrid. device transmitter data input previously discussed connected directly connector transmitter (power) connection. hybrids draw maximum peak current with volts. Since transmitter only turned when data line high, average transmitter current depends duty cycle incoming data. device ground output. output power Copyright 1996, 1997, 1998 RFM®. nominally with load. transmitter power applied antenna port through transmit/receive switch, When line pulled high, turned connect transmitter antenna. Receiver- receiver RX2020 amplifier-sequenced hybrid (ASH) receiver. architecture, theory operational characteristics this receiver included application note, "New Receiver Architecture Achieves High Sensitivity Very Power Consumption". applied receiver from connector bypass capacitor, bypass capacitor, C14, also connected this pin. necessary keep internal comparator switching noise base-band amplifier circuitry base-band output. signal detected, filtered signal before applied comparator input. output dc-coupled internal detector output. output from connected comparator input, coupling capacitor, also bypassed value coupling capacitor, determined longest pulse width encountered data stream. capacitor must large enough prevent long data pulses from "sagging" comparator input. Capacitive coupling used reasons. first reason prevent offset voltage base-band amplifier output from false triggering comparator. second reason prevent output from detector, produced in-band interfering signal, from triggering comparator, while allowing changes level, desired signal, pass through comparator input. Note that resistor, connected between comparator input ground 916.5 boards. This will explained conjunction with discussion ground. comparator threshold override pin. this left open, threshold voltage comparator grounded, threshold voltage zero volts. internal threshold level very desirable range higher sensitivity higher average noise this band. However, lower voltage threshold required receivers 916.5 obtain Copyright 1996, 1997, 1998 RFM®. best performance. Thus, grounded 916.5 receivers left open lower frequency receivers. Spurious noise comparator output receiver 916.5 minimized using resistor, from ground. This resistor effectively reduces offset comparator input which equivalent using very threshold level. reference voltage output power supply included custom used This must bypassed capacitor, C11, avoid comparator switching noise base-band amplifier. also bypassed C16. comparator output data output. comparator capable driving single CMOS gate input. Pins primarily grounds. input port device. This port driven from source. Preamp/AGC/Antenna Switch- out-of-band interfering signal rejection amplifier-sequenced receiver architecture excellent allows receiver perform presence large interfering signals without range degradation. However, there some applications that will encounter in-band interference. majority in-band interference encountered primarily comes from unintentional radiators such clock harmonics from computers local oscillators from superheterodyne receivers. circuit discussed here primarily intended in-band interfering signals. These particular concern office environment. receiver, discussed previous section, capacitive coupling between base-band amplifier output comparator input. Thus, level generated detector base-band amplifier either signal blocked from comparator input, only (AM) signals pass. limiting factor in-band interference rejection level which detector associated base-band amplifier saturate. RX2020 used DR1007 saturates level approximately dBm. Preamp/AGC circuit used DR1007 provides about gain quiet conditions improved operating range while providing range minimize saturation receiver in-band interfering signals. Copyright 1996, 1997, 1998 RFM®. Referring schematic diagram data radio board, amplifier, placed between antenna receiver input. Transistors serve gain control providing total range approximately "on" insertion gain This effectively extends range over which receiver operate without saturation reference voltage circuit derived from VRef This reference voltage very constant from receiver another. signal level dependent input circuit derived from base-band output receiver which dc-coupled internal detector. offset base-band output, with signal applied receiver, vary from receiver another. This makes necessary include potentiometer, R14, circuit adjust engage point AGC. VRef voltage base-band signal both applied inverting non-inverting inputs, respectively, operational amplifier, U2A. data filtered base-band signal using C13. sets gain amplifier C10, conjunction with C13, time constant corner frequency circuit. time constant circuit chosen long enough avoid response individual data bits desired signal. drives inverting input U2B. output applied base which turns drives base Thus, interfering signal level increases, transistor preamp gradually turn off. line presents kohms ground receive mode, does affect voltage applied U2B. transmit mode, line pulled high, overriding circuit biasing base through U2B. thus turned off, isolating RX2020 from antenna port. high voltage line also turns connecting HX2000 output antenna port. Copyright 1996, 1997, 1998 RFM®. DR1007 Data Radio Board Specifications Operating Frequency 916.5 Modulation On-Off Keyed (OOK) Antenna Maximum Data Rate 11.5 kbps µsec min. pulse width input) Frequency Tolerance less than ±200 kHz, including set-on, temperature aging drift year) Output Power minimum Harmonics less than Receiver Performance less than 10E-4 input (11.5 kbps, dc-balanced encoding used) Pulse Distortion less than ±35% µsec pulse Dynamic Range Data Balance receiver performance shall maintained data with average density from Data Length receiver performance shall maintained lengths least bits Copyright 1996, 1997, 1998 RFM®. Off-Channel Rejection greater than 0.25 2500 On-Channel Rejection less than degradation interfering signal least below desired signal after bits (50% duty cycle) desired signal received, interfering signal less No-Signal Output less than noise "spike" average interval under "white thermal noise" reception conditions Transceiver Mode Change Power Supply Vdc, peak-to-peak ripple Supply Current, Mode less than 11.5 supply Supply Current, Mode less than peak supply Data Interface CMOS logic level serial input; serial output capable driving CMOS gate TX/RX Control Input high (source min.) Operating Temperature Range Copyright 1996, 1997, 1998 RFM®. Protocol Board Interface Connector (see Protocol Board schematic) interface between protocol board data radio board. J1-Pin1 carries transmit data stream from U2-Pin input data radio board. J1-Pin2 provides power transmitter hybrid data radio board. J1-Pin3 provides transmit enable signal (PTT) from transistor data radio board requires input enable transmit mode. J1-Pin provides power receiver hybrid. J1-Pin ground. J1-Pin reference voltage input (VREF) from hybrid receiver. J1-Pin provides power receiver circuitry. J1-Pin carries receiver output signal (RRX) from data radio board. provides high input impedance buffer between this signal input RS232 Interface Connector RS232 interface protocol board. This 9-Pin female connector configured appear (modem). protocol board implements software flow control, only J2-Pin J2-Pin carry active signals. J2-Pin2 (RD) sends data host computer, J2-Pin3 receives data from host computer (TD). Pins connected (DTR DSR), Pins connected (CD, RQS, CTS) J2-Pin5 ground. Protocol Microcontroller link-layer protocol implemented ATMEL AT89C2051 microcontroller 8-bit microcontroller operates from 11.059 quartz crystal. microcontroller includes Kbytes flash PEROM memory bytes RAM. microcontroller also includes 16-bit timers hardware serial port, making especially suitable link-layer packet controller. timers, serial port input interrupts remain active while processor power-saving idle mode, allowing link-layer protocol implemented average current budget. Inputs microcontroller include node programming pins ID3, Pins buffered receive data (RRX) CMOS-level input from Copyright 1996, 1997, 1998 RFM®. host computer reference voltage (VREF) input Outputs from microcontroller include transmit data data output host computer transmit enable signal RS232-transceiver control outputs Pins (RXI), RCV), 11(PC RCV). Diode capacitor form power-up reset circuit microcontroller. CMOS/RS232 Level Converter Conversion from RS232 CMOS logic levels done Maxim MAX218 (series) Dual RS232 Transceiver. operation MAX218 controlled microcontroller minimize average current consumption. operate conjunction with IC's switch-mode power supply generate ±6.5 transmitter receiver conversions. controls switched-mode supply RS232 serial input signal from J2-Pin input U1-Pin converted CMOS level (note inversion) output U1-Pin CMOS serial output signal from U2-Pin input U1-Pin converted RS232 output (note inversion) U1-Pin This signal found J2-Pin RS232 conversion bypassed direct CMOS operation removing from socket placing jumper socket Pins second jumper socket Pins Protocol Board Specifications Host Interface RS232 compatible 9-Pin female (modem) connector, 19.2 kbps, byte asynchronous, start bit, data bits, parity, stop Copyright 1996, 1997, 1998 RFM®. Radio Interface Data Radio Type-1 interface, 8-Pin connector, 11.5 kbps, DC-balanced symbol bits message byte, with integrated control Power Supply nominal from batteries from external regulated supply with less than ripple peak Operating Temperature Range Storage Temperature Range Protocol Firmware Description purpose this data-link protocol provide automatic, verified, error-free transmission messages between Virtual Wire® Radio Nodes RS232 serial connections host processors. Operation both RS232 side radio side half-duplex. Operation RS232 serial connection 19.2 kbps, with eight data bits (byte), stop bit, parity bit. transmission rate radio side approximately 11.5 kbps, using 12-bit dc-balanced symbols each data byte. radio receiver slightly "squelched" when receiving data, will output occasional random positive noise spikes. following lines implemented protocol microcontroller: radio receive line (RRX) radio transmit line (RTX) radio transmit/receive control line, high transmit (PTT) RS232 receive line (PRX) Copyright 1996, 1997, 1998 RFM®. RS232 transmit line (PTX) Maxim ON/OFF control line node input lines (ID0 through ID3) three control Lines (RXI, RCV) link-layer protocol capable transmitting/receiving binary data bytes pattern. Messages sent received from RS232 interface standard asynchronous format PRX. first byte RS232-side messages contain "TO/FROM" address, with high nibble "TO" node nibble "FROM" node second byte message sequence number (1-7 recycling used telemetry packets), third byte number data bytes message hex), followed data bytes. single message contain data bytes, with data bytes typical. protocol software continually tests line line, searching start bit. When start detected input lines, software will attempt receive message that input line. error detected message, will discarded software will resume testing input lines. valid message received input line, software will format radio packet from message queue packet transmission. packet format shall include start symbol hex), TO/FROM byte, message number, number data bytes message, data bytes, error detection "frame check sequence" (FCS). calculated based bits message following start symbol. defined 3309 used. Each byte transmitted radio converted into bit, dc-balanced symbol. balance "trains" receiver data slicer best noise immunity setting threshold half between value. dc-balanced symbols used have more than bits same value row. This limited "run length" allows receiver data slicer tuned recover quickly from heavy noise burst strong interfering signal. Copyright 1996, 1997, 1998 RFM®. queued packet transmitted (RTX line with invoked), software then looks "packet received" acknowledgment (RRX line). acknowledgment packet includes start byte, TO/FROM byte, packet number being acknowledged, retry number correctly received) FCS. When acknowledgment received queued packet, acknowledgment message (packet less start symbol FCS) sent line, packet discarded, software resumes testing input lines. packet acknowledgment received packet resent after randomly selected delay (approximately) 120, packet acknowledged after total eight tries, software will send "NAK" message line (TO/FROM address, packet number DD), discard packet, resume testing input lines. When start symbol detected line, software will attempt receive verify message checking correct TO/FROM address, valid packet sequence number, valid number data bytes "ACK" character), correct calculation. packet verified "TO" nibble matches, TO/FROM address, packet sequence number, number data bytes data bytes message sent line packet acknowledgment transmitted back line. Otherwise, message discarded testing input lines resumed. software will accept message packets acknowledgment packets sequence. acknowledged packet received second time (based current value message sequence counter) reacknowledged retransmitted PTX. TO/FROM address treated "broadcast" packet. this case, received packet sent line number data bytes valid range calculation matches. broadcast mode, packet transmitted eight times enhance probability reception. broadcast packet acknowledged receiving node(s). packet with packet number treated Copyright 1996, 1997, 1998 RFM®. telemetry packet. address matches local node number number bytes valid, placed PTX, acknowledged. start detected either PRX, software receives acts information that input line, does service other input line until received acted data from first input line. Host software must implement simple transmit message software flow control accommodate this characteristic. When host software ready send message protocol software, tests availability interrupt sending just TO/FROM address character protocol board. this TO/FROM address echoed back within control interrupt process send rest message following character input with high nibble equal local node address byte equal broadcast packet) within window, could inbound message local node, rest message should received tested valid message. character echoed following TO/FROM character transmission, protocol board assumed busy interrupt either receiving packet tripped receiver output noise. host program should sending first character message again. inbound packet occur time, character with high nibble equal local node address byte should processed test valid message. addition packet messages, special messages provided, such "Run Self Test". Special message formats given below. Copyright 1996, 1997, 1998 RFM®. Protocol-Host Message Formats General Message Format: TO/FROM Byte Packet Size/Status Byte Message bytes) Note: Size/Status byte indicates number bytes message 20h), status message (e.g., 0Enh, 0DDh, etc.) Packet indicates telemetry packet. address indicates broadcast packet. Link Status Messages: TO/FROM Packet TO/FROM Packet Special Messages from Host Protocol: Reset: FROM/FROM Send Node Address: Node Address: Self Test: FROM/FROM Special Messages from Protocol Host: Message from Host Long: FROM/FROM |01h Failed Self Test: FROM/FROM Copyright 1996, 1997, 1998 RFM®. Passed Self Test: FROM/FROM Local Node Address: FROM/FROM where FROM/FROM local address Terminal Program Description VWT97V01.EXE compiled QuickBASIC (4.5) program that demonstrates interaction with Virtual Wire® Protocol. commented source code listing provided below reference. sure check RFM's Internet site www.rfm.com software updates: Source Code Listing'VWT97V01.BAS 'REV 04-15-97 'REV 04-25-97 'REV 05-06-97 'REV 05-10-97 'REV 05-15-97 VWDK TERMINAL PROGRAM, Copyright Monolithics, Inc., 1996, 1997 ADDED MULTIPLE BAUD RATE SUPPORT MISC SCREEN CLEAN ADDED ADDRESS" ALERT MESSAGE GENERAL CLEAN FIRST RELEASE 'Check www.rfm.com latest VWDK updates DEFINT A-Z: OPTION BASE MINI.MSG$(100) 'THE SPECIAL MESSAGE FORMAT SAME FROM VIRTUAL WIRE UNIT. 'SPECIAL MESSAGE FORMAT ADDRESS PACKET# #BYTES |SPECIAL MSG. |SPECIAL MSG. 'NOTE SINCE MESSAGE OTHER UNITS. SPECIAL MESSAGES FROM VIRTUAL WIRE UNIT -MSG.FROM.VW$ CHR$(&H0) 'NULL UNKNOWN MESSAGE RECEIVED MSG0.FROM.VW$ '(&H30) MESSAGE PACKET i.e. NUMBER BYTES LONG MSG1.FROM.VW$ '(&H31) BATTERY MSG2.FROM.VW$ 'BATTERY VOLTAGE MSG3.FROM.VW$ 'FAILED SELF TEST MSG4.FROM.VW$ 'PASSED SELF TEST MSG5.FROM.VW$ 'TO/FROM (T/F) VIRTUAL WIRE UNIT ADDRESS SPECIAL MESSAGES UNIT FROM -MSG0.TO.VW$ MSG1.TO.VW$ MSG2.TO.VW$ MSG3.TO.VW$ MSG4.TO.VW$ 'RESET UNIT 'SEND ADDRESS 'TEST BATTERY RETURN RESULTS 'RUN SELF TEST 'CHANGE NODE ADDR. 'VIRTUAL WIRE "ACK" VW.ACK$ CHR$(&HEE) Copyright 1996, 1997, 1998 RFM®. VW.NAK$ CHR$(&HDD) 'VIRTUAL WIRE "NAK" FULL.MSG$ CHR$(0) CHR$(59) CHR$(0) CHR$(60) CHR$(0) CHR$(61) CHR$(0) CHR$(62) CHR$(0) CHR$(63) CHR$(0) CHR$(64) CHR$(0) CHR$(65) CHR$(0) CHR$(66) CHR$(0) CHR$(67) F10$ CHR$(0) CHR$(68) 'FUNCTION CHR$(0) CHR$(72) DWN$ CHR$(0) CHR$(80) LFT$ CHR$(0) CHR$(75) CHR$(0) CHR$(77) DEL$ CHR$(0) CHR$(83) BACK$ CHR$(8) ESC$ CHR$(27) CHR$(13) BLANK$ CHR$(&H20) PGUP$ CHR$(0) CHR$(&H49) PGDN$ CHR$(0) CHR$(&H51) 'DELETE 'BACK SPACE 'ESCAPE 'RETURN /ENTER CODE 'SPACE CHARACTER 'PAGE 'PAGE DOWN TAB$ CHR$(9) SHIFT.TAB$ CHR$(0) CHR$(&HF) ALT.C$ ALT.S$ ALT.X$ ALT.A$ ALT.H$ ALT.I$ ALT.V$ ALT.T$ ALT.D$ ALT.B$ ALT.R$ CHR$(0) CHR$(0) CHR$(0) CHR$(0) CHR$(0) CHR$(0) CHR$(0) CHR$(0) CHR$(0) CHR$(0) CHR$(0) CHR$(46) CHR$(31) CHR$(45) CHR$(30) CHR$(35) CHR$(23) CHR$(47) CHR$(20) CHR$(32) CHR$(48) CHR$(19) CTRL.T$ CHR$(20) CTRL.N$ CHR$(14) 'COMM. SOH$ STX$ ETX$ EOT$ ETB$ NAK$ ACK$ CONTROL CHARACTERS CHR$(1) 'START HEADER CHR$(2) 'START TEXT START XMISSION CHR$(3) 'END TEXT XMISSION CHR$(4) 'END TRANSMISSION CHR$(&H17) 'END BLOCK LAST DATA BYTE CHR$(&H15) 'NEGATIVE ACKNOWLEDGE CHECK COMPUTE CHR$(6) 'ACKNOWLEDGE CHECK 'POINTER RECEIVE WINDOW 'tweaked 97.05.10 RCV.PTRX RCV.PTRY LAST.MSG$ "**Virtual Wire Link Test**" Packet TO.ADDR TO.ADDR$ COM.PORT$ "COM2:" BAUD.RATE$ "4800" 'DEFAULT 'DEFAULT added 97.05.10 'DEFAULT 'DEFAULT ERROR GOTO PRTERRO 'set error handler (files, port, etc.) GOSUB SETUP.DSK 'read/build/save configuration files disk 97.05.10 OPEN COM.PORT$ BAUD.RATE$ ",N,8,1,RS,CD0,DS0,CS0" RANDOM 2048 Copyright 1996, 1997, 1998 RFM®. GOSUB GET.ADDRESS GOSUB TOADDR.MSG MAIN: COLOR RCV.PTRX RCV.PTRY GOSUB SCREEN1 'added 97.05.10 'Ensure screen state 97.05.10 'POINTER RECEIVE WINDOW LOC(1) THEN DATAB$ INPUT$(LOC(1), ELSE DATAB$ 'CLEAR COMM. BUFFER '*************************** EDIT MESSAGE ****************************** MINI.WORD: ERASE MINI.MSG$ 'MESSAGE SENDING UNIT LOCATE MINI: BUSY NUMBER.TO.SEND THEN GOSUB SEND.PACKET ELSE '-CHECK COMM. BUFFER LOC(1) THEN 'KEEP LOOKING COMMUNICATIONS GOSUB READ.BUFFER BUSY THEN 'SEE RESPONSE LAST PACKET LEN(DATAB$) THEN 'LENGTH CORRECT VW.ACK VW.NAK ASC(MID$(DATAB$, Packet THEN 'CORRECT RESPONSE Packet Packet Packet THEN Packet ELSE VW.ACK$ &HEn RIGHT$(DATAB$, CHR$(&HE1) RIGHT$(DATAB$, CHR$(&HE9) THEN RMSG$ CHR$((ASC(RIGHT$(DATAB$, &HE0) &H30) ELSEIF RIGHT$(DATAB$, CHR$(&HEE) THEN 'For compatibility with VWT.BAS (4-25-97) RMSG$ ELSEIF RIGHT$(DATAB$, VW.NAK$ THEN BROADCAST THEN RMSG$ "BROADCAST FINISHED" ELSE (ASC(LEFT$(DATAB$, &HF) TO.ADDR THEN '-ATMEL DOES SEND "NAK" COULD FUTURE RMSG$ LINK FAULT (REMOTE)" 'tweaked 97.05.10 ELSEIF (ASC(LEFT$(DATAB$, &HF0) TO.ADDR THEN RMSG$ LINK FAULT" RESPONSE TIME tweaked 97.05.10 ELSE BEEP BUSY LINK FAULT THEN STOP SENDING NUMBER.TO.SEND ELSE RMSG$ DATAB$ Copyright 1996, 1997, 1998 RFM®. MESSAGE DISPLAY RMSG$ THEN SELECT CASE PACKET.PTR CASE LOCATE PRINT RMSG$; CASE LOCATE PRINT RMSG$; CASE LOCATE PRINT RMSG$; CASE ELSE SELECT BUSY PACKET.PTR PACKET.PTR PACKET.PTR NUMBER.TO.SEND THEN PACKET.PTR NUMBER.TO.SEND GOSUB CLEAR.W3 COLOR LOCATE ELSE ELSE 'LAST PACKET SENT ELSE 'WRONG PACKET# ERROR ELSE GOSUB RECEIVE.DATA 'LONGER THEN THREE BYTES INCOMING PACKET. ELSE GOSUB RECEIVE.DATA ELSE 'Nothing buffer CHECK COMM. BUFFER TELEMETRY RETURN.FROM.SEND THEN RETURN.FROM.SEND BUSY NUMBER.TO.SEND COLOR GOSUB CLEAR.W2 GOSUB CLEAR.W3 COLOR START.OF.PACKET PACKET.PTR GOTO MINI.WORD ELSE INKEY$ THEN GOTO MINI ESC$ THEN BUSY NUMBER.TO.SEND COLOR GOSUB CLEAR.W2 GOSUB CLEAR.W3 COLOR START.OF.PACKET PACKET.PTR GOTO MINI.WORD ELSE Copyright 1996, 1997, 1998 RFM®. CHANGE UNIT ADDRESS CTRL.N$ THEN GOSUB CLEAR.W3 LOCATE COLOR INPUT "ENTER ADDRESS NODE$ COLOR NODE VAL(NODE$) Packet$ CHR$(0) 'PACKET N.BYTES$ CHR$(2) BYTE MESSAGE MSG$ MSG4.TO.VW$ 'SPECIAL MESSAGE UNIT CHANGE NODE ADDR. TAD$ CHR$(0) MSG.FORMAT$ TAD$ Packet$ N.BYTES$ MSG$ CHR$(NODE) PRINT MSG.FORMAT$; DELAY.TIME! TIMER WHILE ABS(TIMER DELAY.TIME!) 'DELAY BATTERY TEST LOOP LOC(1) THEN 'LOOK RESPONSE GOSUB READ.BUFFER ELSE DATAB$ ALT.A$ ELSE 'SET NEXT CODE READ ADDRESS READ ADDRESS ALT.A$ THEN GOSUB CLEAR.W1 COLOR GOSUB GET.ADDRESS LOCATE PRINT FROM; GOSUB CLEAR.W1 GOSUB CLEAR.W2 GOSUB CLEAR.W3 COLOR LOCATE GOTO MAIN: ELSE TOGGLE BROADCAST FLAG -'BROADCAST SENDS MESSAGE UNITS. ALT.B$ THEN SAVE.X POS(0) SAVE.Y CSRLIN BROADCAST THEN BROADCAST COLOR LOCATE PRINT COLOR ELSE BROADCAST LOCATE PRINT BROADCAST MODE ENABLED LOCATE SAVE.Y, SAVE.X, ELSE TOGGLE TELEMETRY FLAG Copyright 1996, 1997, 1998 RFM®. 'TELEMETRY DOES RECEIVE "ACK" CTRL.T$ THEN SAVE.X POS(0) SAVE.Y CSRLIN TELEMETRY THEN TELEMETRY Packet COLOR LOCATE PRINT COLOR ELSE TELEMETRY LOCATE PRINT TELEMETRY ENABLED LOCATE SAVE.Y, SAVE.X, ELSE BATTERY TEST COMMAND ALT.V$ THEN 'BATTERY TEST Packet$ CHR$(0) 'PACKET N.BYTES$ CHR$(1) BYTE MESSAGE MSG$ MSG2.TO.VW$ 'SPECIAL MESSAGE UNIT BATTERY TEST TAD$ CHR$((FROM FROM) &HFF) MSG.FORMAT$ TAD$ Packet$ N.BYTES$ MSG$ PRINT MSG.FORMAT$; DELAY.TIME! TIMER SAVE.X POS(0) SAVE.Y CSRLIN GOSUB CLEAR.W2 COLOR LOCATE PRINT TESTING BATTERY COLOR WHILE ABS(TIMER DELAY.TIME!) 'DELAY BATTERY TEST LOOP LOC(1) THEN 'LOOK RESPONSE GOSUB READ.BUFFER LEN(DATAB$) THEN 'ECHO RETURNED STRING LEFT$(DATAB$, TAD$ MID$(DATAB$, TAD$ THEN RIGHT$(DATAB$, MSG2.FROM.VW$ THEN 'BATTERY VOLTAGE GOSUB CLEAR.W2 COLOR LOCATE PRINT BATTERY COLOR GOSUB ShowIt 'added 97.05.10 GOSUB CLEAR.W2 'added 97.05.10 ELSEIF RIGHT$(DATAB$, MSG1.FROM.VW$ THEN GOSUB CLEAR.W2 COLOR LOCATE PRINT BATTERY COLOR BEEP GOSUB ShowIt 'added 97.05.10 GOSUB CLEAR.W2 'added 97.05.10 ELSE COLOR 'added 97.05.10 LOCATE PRINT INVALID TEST RETRY ALT-V COLOR BEEP GOSUB ShowIt GOSUB CLEAR.W2 ELSE COLOR 'added 97.05.10 Copyright 1996, 1997, 1998 RFM®. LOCATE PRINT INVALID TEST RETRY ALT-V COLOR BEEP GOSUB ShowIt GOSUB CLEAR.W2 ELSE COLOR 'added 97.05.10 LOCATE PRINT INVALID TEST RETRY ALT-V COLOR BEEP GOSUB ShowIt GOSUB CLEAR.W2 ELSE GOSUB CLEAR.W2 COLOR LOCATE PRINT UNIT RESPONDING 'tweaked 97.05.10 COLOR BEEP GOSUB ShowIt 'added 97.05.10 GOSUB CLEAR.W2 'added 97.05.10 LOCATE SAVE.Y, SAVE.X, COLOR 'added 97.05.10 DATAB$ ELSE 'not ALT-V SELF TEST COMMAND ALT.T$ THEN 'SELF TEST Packet$ CHR$(0) 'PACKET N.BYTES$ CHR$(1) BYTE MESSAGE MSG$ MSG3.TO.VW$ 'SPECIAL MESSAGE UNIT SELF TEST TAD$ CHR$((FROM FROM) &HFF) MSG.FORMAT$ TAD$ Packet$ N.BYTES$ MSG$ PRINT MSG.FORMAT$; DELAY.TIME! TIMER SAVE.X POS(0) SAVE.Y CSRLIN GOSUB CLEAR.W2 COLOR LOCATE PRINT TESTING UNIT LOCATE PRINT RESET AFTER SELF TEST 'tweaked 97.05.10 COLOR WHILE ABS(TIMER DELAY.TIME!) 'DELAY TEST LOOP LOC(1) THEN 'LOOK RESPONSE GOSUB READ.BUFFER LEN(DATAB$) THEN 'ECHO RETURNED STRING LEFT$(DATAB$, TAD$ MID$(DATAB$, CHR$(0) THEN RIGHT$(DATAB$, MSG4.FROM.VW$ THEN 'TEST GOOD GOSUB CLEAR.W2 COLOR LOCATE PRINT UNIT TEST 'tweaked 97.05.10 COLOR GOSUB ShowIt 'added 97.05.10 GOSUB CLEAR.W2 'added 97.05.10 ELSEIF RIGHT$(DATAB$, MSG3.FROM.VW$ THEN GOSUB CLEAR.W2 COLOR LOCATE PRINT FAILED SELF TEST 'tweaked 97.05.10 COLOR BEEP GOSUB ShowIt 'added 97.05.10 Copyright 1996, 1997, 1998 RFM®. GOSUB CLEAR.W2 ELSE GOSUB CLEAR.W2 COLOR LOCATE PRINT INVALID TEST RETRY ALT-T COLOR BEEP GOSUB ShowIt GOSUB CLEAR.W2 ELSE GOSUB CLEAR.W2 COLOR LOCATE PRINT INVALID TEST RETRY ALT-T COLOR BEEP GOSUB ShowIt GOSUB CLEAR.W2 ELSE GOSUB CLEAR.W2 COLOR LOCATE PRINT INVALID TEST RETRY ALT-T COLOR BEEP GOSUB ShowIt GOSUB CLEAR.W2 ELSE GOSUB CLEAR.W2 COLOR LOCATE PRINT UNIT RESPONDING COLOR BEEP GOSUB ShowIt GOSUB CLEAR.W2 'added 97.05.10 'added 97.05.10 'added 97.05.10 'added 97.05.10 'tweaked 97.05.10 'added 97.05.10 'added 97.05.10 LOCATE SAVE.Y, SAVE.X, COLOR 'added 97.05.10 DATAB$ MSG$ MSG0.TO.VW$ 'SPECIAL MESSAGE UNIT RESET MSG.FORMAT$ TAD$ Packet$ N.BYTES$ MSG$ ELSE 'Not self test RESET UNIT ALT.R$ THEN 'SELF TEST Packet$ CHR$(0) 'PACKET N.BYTES$ CHR$(1) BYTE MESSAGE MSG$ MSG0.TO.VW$ 'SPECIAL MESSAGE UNIT TAD$ CHR$((FROM FROM) &HFF) MSG.FORMAT$ TAD$ Packet$ N.BYTES$ MSG$ PRINT MSG.FORMAT$; SAVE.X POS(0) SAVE.Y CSRLIN GOSUB CLEAR.W2 COLOR LOCATE PRINT RESET COMMAND GOSUB ShowIt 'added GOSUB CLEAR.W2 'added LOCATE SAVE.Y, SAVE.X, COLOR 'added DATAB$ ELSE RESET 97.05.10 97.05.10 97.05.10 Copyright 1996, 1997, 1998 RFM®. ALT.X$ THEN SAVE.X POS(0) SAVE.Y CSRLIN GOSUB CLEAR.W2 COLOR LOCATE BEEP PRINT EXIT PROGRAM Yes/No COLOR WHILE INKEY$ LOOP THEN COLOR ELSE GOSUB CLEAR.W2 LOCATE SAVE.Y, SAVE.X, COLOR ELSE ALT.C$ THEN START.OF.PACKET PACKET.PTR BUSY COLOR GOTO MAIN ELSE 'end program 'added 97.05.10 'added 97.05.10 ALT.H$ THEN COLOR LOCATE PRINT "<KEY> PRINT PRINT "<DEL> Deletes line." PRINT "<BACKSPACE> Deletes character left." PRINT "<ENTER> start line sends last message." PRINT "<ALT>+<C> Clears screen." PRINT "<ESC> Resets CHR$(&H22); "SEND PACKET"; CHR$(&H22); Mode." PRINT PRINT "<ALT>+<S> Invokes program." PRINT "<ALT>+<X> Returns system." PRINT "<ALT>+<I> Increments CHR$(&H22); "TO"; CHR$(&H22); address." PRINT "<ALT>+<D> Decrements CHR$(&H22); "TO"; CHR$(&H22); address." PRINT PRINT "<ALT>+<B> Broadcast i.e. send message units." PRINT "<ALT>+<T> Test unit perform selftest cycle power after test." PRINT "<ALT>+<R> Reset unit start over (warm boot)." PRINT "<ALT>+<V> unit battery voltage test." PRINT PRINT "<ALT>+<A> Read address." PRINT "<F1> send full buffer." PRINT "<CTRL>+<T> Telemetry." PRINT "<CTRL>+<N> change Node address." LOCATE PRINT "<ANY KEY> continue WHILE INKEY$ LOOP GOTO MAIN ELSE Copyright 1996, 1997, 1998 RFM®. 'Not ALT-H ALT.I$ ALT.D$ THEN ALT.I$ THEN TO.ADDR TO.ADDR TO.ADDR THEN TO.ADDR ELSE ELSE TO.ADDR TO.ADDR TO.ADDR THEN TO.ADDR ELSE TO.ADDR$ CHR$(TO.ADDR SAVE.X POS(0) SAVE.Y CSRLIN LOCATE COLOR PRINT PRINT TO.ADDR; PRINT LOCATE SAVE.Y, SAVE.X ELSE ALT.S$ THEN GOSUB SET.CONFIG GOTO MAIN ELSE BUSY THEN GOTO MINI ELSE 'WAIT COMMUNICATIONS COMPLETE 'tweaked 97.05.10 DEL$ THEN LOCATE PRINT STRING$(80, LOCATE MESSAGE$ ELSE BACK$ THEN 'DELETE LAST CHARACTER LEN(MESSAGE$) THEN MESSAGE$ LEFT$(MESSAGE$, POS(0) THEN LOCATE CSRLIN, PRINT LOCATE CSRLIN, ELSE CSRLIN THEN CSRLIN LOCATE LN1, PRINT LOCATE LN1, ELSE ELSE ELSE Copyright 1996, 1997, 1998 RFM®. THEN MESSAGE$ THEN MESSAGE$ LAST.MSG$ ELSE TELEMETRY THEN LEN(MESSAGE$) THEN MESSAGE$ LEFT$(MESSAGE$, ELSE GOSUB BUILD.MSG PACKET.PTR 'POINTS ARRAY SEND GOSUB SEND.PACKET ELSE THEN MESSAGE$ FULL.MSG$ LRDM$ LEFT$(FULL.MSG$, FULL.MSG$ RIGHT$(FULL.MSG$, LEN(FULL.MSG$) LRDM$ TELEMETRY THEN MESSAGE$ LEFT$(FULL.MSG$, GOSUB BUILD.MSG PACKET.PTR 'POINTS ARRAY SEND GOSUB SEND.PACKET ELSE BLANK$ THEN MESSAGE$ MESSAGE$ PRINT KY$; 'ADD CHARACTER MESSAGE 'PUT SCREEN LEN(MESSAGE$) ((BROADCAST TELEMETRY LEN(MESSAGE$) THEN BEEP GOSUB BUILD.MSG PACKET.PTR 'POINTS ARRAY SEND GOSUB SEND.PACKET UNTIL INKEY$ 'EMPTY BUFFER LOOP ELSE ELSE GOTO MINI '************* DISK DRIVE SAVING DATA FILES ******************* SETUP.DSK: 'READ SETUP FILE FROM DISK (edited 97.05.10) FAULT 'LOOK ERROR CODE OPEN "VWT97.CFG" INPUT FAULT THEN 'FILE OPEN INPUT COM.PORT$, BAUD.RATE$, TO.ADDR$ TO.ADDR ASC(TO.ADDR$) CLOSE ELSE CLOSE GOSUB SET.CONFIG RETURN 'READ CONFIG. VALUES Copyright 1996, 1997, 1998 RFM®. CONFIGURATION -SET.CONFIG: COLOR LOCATE PRINT "ADDRESS UNIT WANT TALK LOCATE CSRLIN, PRINT "<1> CHANGE." PRINT PRINT "YOUR CURRENT PORT COM.PORT$; LOCATE CSRLIN, PRINT "<2> CHANGE." PRINT PRINT "YOUR CURRENT BAUD RATE (MATCH VW): LOCATE CSRLIN, PRINT "<3> CHANGE." PRINT PRINT EXIT"; LOCATE CSRLIN, PRINT "<ESC>" LOCATE SETLP0: WHILE INKEY$ LOOP THEN INPUT "ENTER ADDRESS WANT TALK 15): TO.ADDR VAL(TO.ADDR$) GOTO SET.CONFIG ELSE THEN COM.PORT$ "COM1:" THEN COM.PORT$ "COM2:" ELSE COM.PORT$ "COM1:" GOTO SET.CONFIG ELSE THEN BAUD.RATE$ "4800" THEN BAUD.RATE$ "9600" ELSEIF BAUD.RATE$ "9600" THEN BAUD.RATE$ "19200" ELSEIF BAUD.RATE$ "19200" THEN BAUD.RATE$ "4800" GOTO SET.CONFIG ELSE ESC$ THEN CLOSE OPEN COM.PORT$ BAUD.RATE$ ",N,8,1,RS,CD0,DS0,CS0" RANDOM LOCATE PRINT "SAVE CONFIGURATION VALUES DISK LP01: WHILE INKEY$ LOOP TO.ADDR$; 'tweaked 97.05.10 'tweaked 97.05.10 BAUD.RATE$; TO.ADDR$ 'tweaked 97.05.10 Copyright 1996, 1997, 1998 RFM®. THEN GOSUB SAVE.CONFIG RETURN ELSE THEN RETURN ELSE ELSE GOTO SETLP0 '-SAVE CONFIGURATION FILE -SAVE.CONFIG: FAULT OPEN "VWT97.CFG" OUTPUT FAULT THEN 'FILE OPEN PRINT CHR$(34); COM.PORT$; CHR$(34); CHR$(34); BAUD.RATE$; CHR$(34); CHR$(34); TO.ADDR$; CHR$(34) ELSE CLOSE RETURN READ COMMUNICATIONS BUFFER HERE BUILD STRING -'NOTE: STRING BUILT FOLLOWS FIRST CHARACTER NULL 'WILL DISPLAYED NULLS QB4.5 DEBUGGER. LENGTH 'CORRECT ONLY CLUE THAT DATA REALLY STRING. LESSEN FROM SCHOOL HARD KNOCKS. READ.BUFFER: CHANGE HANDLE NULL CHARACTER WHILE LOC(1) R.DATAB$ R.DATAB$ INPUT$(LOC(1), COM.TIME! TIMER LOOP UNTIL ABS(TIMER COM.TIME!) LOOP 'MAKE SURE RECEIVED LEN(R.DATAB$) THEN DATAB$ LEFT$(R.DATAB$, R.DATAB$ RIGHT$(R.DATAB$, LEN(R.DATAB$) ELSE DATAB$ R.DATAB$ R.DATAB$ RETURN Copyright 1996, 1997, 1998 RFM®. LINE EDITOR SCREEN -SCREEN1: PRINT "TO: COLOR PRINT PRINT FROM; PRINT LOCATE PRINT PRINT TO.ADDR; PRINT COLOR FROM address):"; LOCATE PRINT "MESSAGES RECEIVED"; GOSUB CLEAR.W1 LOCATE PRINT "MESSAGES SENT PACKET# GOSUB CLEAR.W2 LOCATE PRINT "ENTER MESSAGE SEND"; GOSUB CLEAR.W3 COLOR LOCATE PRINT ALT+H HELP LOCATE PRINT ALT+I CHR$(&H22); "TO"; CHR$(&H22); addr. LOCATE PRINT ALT+X EXIT PGM. LOCATE PRINT ALT+B BROADCAST BROADCAST THEN COLOR LOCATE PRINT COLOR ELSE LOCATE PRINT BROADCAST MODE ENABLED TELEMETRY THEN COLOR LOCATE PRINT COLOR ELSE LOCATE PRINT TELEMETRY ENABLED LOCATE RETURN STATUS"; CLEAR RECEIVE WINDOW -CLEAR.W1: COLOR LOCATE PRINT STRING$(80, NEXT COLOR RETURN CLEAR SEND WINDOW -CLEAR.W2: Copyright 1996, 1997, 1998 RFM®. COLOR LOCATE PRINT STRING$(80, NEXT COLOR RETURN CLEAR EDIT WINDOW -CLEAR.W3: COLOR LOCATE PRINT STRING$(80, NEXT COLOR RETURN BUILD MESSAGE ARRAY SEND UNIT -'EACH ARRAY ELEMENT WILL CHARACTERS. THIS LENGTH 'THE MESSAGE BUFFER UNIT. 'THE TOTAL MESSAGE SENT BUFFERED ASCII CONTROL CHARACTERS "STX" 'AND "ETX". 'EXAMPLE: BYTE MESSAGE FORMATED. WILL DIVIDED INTO 'STRINGS FOLLOWS: FIRST CHARACTERS. NEXT CHARACTERS. LAST CHARACTER ETX. BUILD.MSG: NUMBER.TO.SEND 'NUMBER PACKETS LEN(MESSAGE$) THEN 'LONGER THEN PACKET MINI.MSG$(1) STX$ LEFT$(MESSAGE$, MESSAGE$ RIGHT$(MESSAGE$, (LEN(MESSAGE$) 31)) LEN(MESSAGE$) (LEN(MESSAGE$) THEN NUMBER.TO.SEND ELSE NUMBER.TO.SEND THEN MINI.MSG$(A LEFT$(MESSAGE$, MESSAGE$ RIGHT$(MESSAGE$, (LEN(MESSAGE$) 32)) NEXT ELSE THEN MINI.MSG$(L RIGHT$(MESSAGE$, ETX$ ELSE MINI.MSG$(L ETX$ ELSE MINI.MSG$(1) STX$ MESSAGE$ ETX$ GOSUB CLEAR.W2 LOCATE COLOR NUMBER.TO.SEND PRINT MINI.MSG$(A); LOCATE CSRLIN, Packet TELEMETRY THEN PRINT Copyright 1996, 1997, 1998 RFM®. ELSE THEN PRINT ELSE PRINT NEXT GOSUB CLEAR.W3 COLOR LOCATE TELEMETRY THEN PRINT "BUSY SENDING DATA"; ELSE LAST.MSG$ NUMBER.TO.SEND LAST.MSG$ LAST.MSG$ MINI.MSG$(A) 'SAVE RETRANSMIT NEXT RIGHT$(LAST.MSG$, ETX$ THEN LAST.MSG$ LEFT$(LAST.MSG$, LEN(LAST.MSG$) 'REMOVE ELSE LEFT$(LAST.MSG$, STX$ THEN LAST.MSG$ RIGHT$(LAST.MSG$, LEN(LAST.MSG$) 'REMOVE ELSE MESSAGE$ RETURN TRANSMIT PACKET -SEND.PACKET: PACKET.PTR NUMBER.TO.SEND THEN TELEMETRY THEN RETURN.FROM.SEND ELSE RETURN.FROM.SEND TO.FROM$ CHR$((TO.ADDR FROM) &HFF) BROADCAST THEN TO.NAME$ CHR$(0) ELSE TO.NAME$ TO.FROM$ TELEMETRY THEN Packet ELSE 'SEND UNITS. 'T/F 'SEND ADDRESSED UNIT MSG.FORMAT$ TO.NAME$ CHR$(Packet &HF) 'ADD PACKET# MSG.FORMAT$ MSG.FORMAT$ CHR$(LEN(MINI.MSG$(PACKET.PTR)) &HFF)'#BYTES MSG.FORMAT$ MSG.FORMAT$ MINI.MSG$(PACKET.PTR) 'ADD MESSAGE TRYS SEND.AGAIN: TRYS TRYS PRINT LEFT$(MSG.FORMAT$, DELAY.TIME! TIMER 'SEND ATTENTION UNIT WHILE ABS(TIMER DELAY.TIME!) 'DELAY RESPONSE LOC(1) THEN GOSUB READ.BUFFER UNIT ALWAYS ECHOS FIRST CHARACTER BUSY LEN(DATAB$) LEN(DATAB$) DATAB$ TO.NAME$ THEN 'GOT VW'S ATTENTION DATAB$ SEND REMAINDER PACKET PRINT RIGHT$(MSG.FORMAT$, LEN(MSG.FORMAT$) 'SEND Copyright 1996, 1997, 1998 RFM®. BUSY EXIT ELSE ELSE LOOP THEN 'T/F DIDN'T THROUGH LEN(DATAB$) THEN BUSY TIME PICKED DATAB$ DELAY.TIME! TIMER DELAY WHILE UNIT RECOVERS WHILE ABS(TIMER DELAY.TIME!) 'DELAY RESPONSE LOOP GOTO SEND.AGAIN 'PARTIAL DATA. ELSE GOSUB RECEIVE.DATA 'LONGER THEN BYTE INCOMING PACKET. ELSE THEN RESPONSE TIME AGAIN TRYS THEN DELAY.TIME! TIMER DELAY WHILE UNIT RECOVERS WHILE ABS(TIMER DELAY.TIME!) 'DELAY RESPONSE LOOP GOTO SEND.AGAIN ELSE BUSY NUMBER.TO.SEND COLOR GOSUB CLEAR.W2 BEEP LOCATE COLOR PRINT "TIME UNIT RESPONDING." GOSUB CLEAR.W3 COLOR LOCATE ELSE ELSE BUSY RETURN RECEIVE PACKETS DISPLAY -RECEIVE.DATA: LEN(DATAB$) THEN 'LENGTH CORRECT RECEIVED PACKET ((ASC(LEFT$(DATAB$, &HF0) '-THIS GETS AROUND NULL CHAR. PROBLEM WITH DEBUGGER FROM LEFT$(DATAB$, CHR$(0) THEN ADDR. MESSAGE LENGTH NUMBER BYTES ASC(MID$(DATAB$, LEN(RIGHT$(DATAB$, LEN(DATAB$) THEN SAVE.Y CSRLIN SAVE.X POS(0) '-SCROLL RECEIVE WINDOW NEEDED GOSUB SCROLL.WINDOW1 LOCATE RCV.PTRY, RCV.PTRX, Copyright 1996, 1997, 1998 RFM®. PRINT DATAB$ MID$(DATAB$, STX$ THEN START.OF.PACKET LEN(PRTMSG$) THEN PACKET LOST COLOR PRINT PACKET LOST COLOR BEEP START.OF.PACKET PRTMSG$ GOSUB BootCom GOTO MAIN 'link overload reboot 97.05.15 RCV.PTRY CSRLIN 'UPDATE RECEIVE WINDOW POINTERS RCV.PTRX POS(0) GOSUB SCROLL.WINDOW1 ELSE START.OF.PACKET 'USE DETECT LOST PACKET PRTMSG$ RIGHT$(DATAB$, LEN(DATAB$) 'REMOVE RCV.PTRX THEN 'PRTMSG$ PRTMSG$ 'STX MIDDLE LINE START PRINT CR$; RCV.PTRY CSRLIN 'UPDATE RECEIVE WINDOW POINTERS RCV.PTRX POS(0) GOSUB SCROLL.WINDOW1 ELSE ELSEIF START.OF.PACKET THEN PRTMSG$ PRTMSG$ RIGHT$(DATAB$, LEN(DATAB$) 'USE ELSE COLOR PRINT PACKET LOST COLOR BEEP START.OF.PACKET PRTMSG$ GOSUB BootCom GOTO MAIN 'link overload reboot 97.05.15 RCV.PTRY CSRLIN 'UPDATE RECEIVE WINDOW POINTERS RCV.PTRX POS(0) GOSUB SCROLL.WINDOW1 START.OF.PACKET PRTMSG$ RIGHT$(PRTMSG$, ETX$ THEN 'REMOVE RETURN. PRTMSG$ LEFT$(PRTMSG$, LEN(PRTMSG$) 'REMOVE LEN(PRTMSG$) THEN COLOR PRINT PACKET LOST COLOR BEEP RCV.PTRY CSRLIN 'UPDATE RECEIVE WINDOW POINTERS RCV.PTRX POS(0) GOSUB SCROLL.WINDOW1 START.OF.PACKET PRINT RIGHT$(PRTMSG$, RCV.PTRY CSRLIN 'UPDATE RECEIVE WINDOW POINTERS RCV.PTRX POS(0) PRTMSG$ ELSE PRINT PRTMSG$ 'PUT MESSAGE SCREEN RCV.PTRY CSRLIN 'UPDATE RECEIVE WINDOW POINTERS RCV.PTRX POS(0) START.OF.PACKET PRTMSG$ ELSE RCV.PTRY CSRLIN 'UPDATE RECEIVE WINDOW POINTERS Copyright 1996, 1997, 1998 RFM®. RCV.PTRX POS(0) LOCATE SAVE.Y, SAVE.X, ELSE ELSE ELSE DATAB$ RETURN SCROLL RECEIVE WINDOW -SCROLL.WINDOW1: RCV.PTRY THEN RCV.PTRY 'LIMIT LAST LINE RCV.PTRX LOCATE PRINT STRING$(80, LOCATE PRINT CHR$(SCREEN(A B)); NEXT NEXT LOCATE PRINT STRING$(80, LOCATE RCV.PTRY, RCV.PTRX ELSE RETURN ADDRESS VIRTUAL WIRE UNIT -GET.ADDRESS: Try: TryIt Retry: TryIt TryIt LOCATE PRINT "POLLING VIRTUAL WIRE ADDRESS, TryIt; LOC(1) THEN DATAB$ INPUT$(LOC(1), ELSE DATAB$ Packet$ CHR$(0) N.BYTES$ CHR$(1) MSG$ MSG1.TO.VW$ FROM TO.FROM$ CHR$(0) 'GET ADDR. USES PACKET MSG.FORMAT$ TO.FROM$ Packet$ N.BYTES$ MSG$ PRINT MSG.FORMAT$; DELAY.TIME! TIMER WHILE ABS(TIMER DELAY.TIME!) LOOP LOC(1) THEN 'DELAY RESPONSE 'PACKET BYTE MESSAGE 'SPECIAL MESSAGE UNIT SEND ADDR. 'CLEAR COMM. BUFFER 'RESTORE SCREEN LOCATION Copyright 1996, 1997, 1998 RFM®. GOSUB READ.BUFFER UNIT ALWAYS ECHOS FIRST CHARACTER BUSY INSTR(1, DATAB$, MSG5.FROM.VW$) THEN address message came back FROM$ MID$(DATAB$, 1)'BACK FROM ASC(FROM$) 'got FROM address from unit ELSE 'did address ELSE 'nothing input buffer DATAB$ FROM THEN TryIt THEN GOTO Retry 'did FROM address, 'retry several times automatically 'auto retry help, user know LOCATE PRINT unit responding check power, cables, port, heavy noise" LOCATE PRINT retry, <ESC> main program (then <ALT-S> configuration up)" WHILE INKEY$ LOOP THEN 'added 97.05.10 GOTO 'manual retry ELSE 'drop main program configuration RETURN TOADDR.MSG: COLOR LOCATE PRINT "Who want talk today??" LOCATE PRINT Double check your Address!!" BEEP DELAY.TIME! TIMER WHILE ABS(TIMER DELAY.TIME!) 'DELAY RESPONSE LOOP COLOR RETURN ShowIt: 'added 97.05.10 'DELAY RESPONSE 'added 97.05.10 DELAY.TIME! TIMER WHILE ABS(TIMER DELAY.TIME!) LOOP RETURN BootCom: OPEN COM.PORT$ BAUD.RATE$ ",N,8,1,RS,CD0,DS0,CS0" RANDOM 2048 RETURN Copyright 1996, 1997, 1998 RFM®. '******************** ERROR RECOVERY PRTERRO: FAULT RESUME NEXT Copyright 1996, 1997, 1998 RFM®. Antenna Mounting Detail component placement (Top View) Antenna location. Mount antenna perpendicular Printed Circuit Board shown. View From Antenna Port Copyright 1996, 1997, 1998 RFM®. Node Programming Jumper Locations Node binary Header Node Copyright 1996, 1997, 1998 RFM®. Jumper Locations Index (PCB Silkscreen) ANT. HX2000 BFS17 DATA P1-8 P1-6 DATA P1-1 2,3,5 P1-2 P1-3 P1-7 RX2020 MMBD101 Copyright 1996, 1997, 1998 RFM®. P1-6 LM358 LM358 DATA OUT(RX) VRef DATA P1-4 SCHEMATIC, DR1007, 916.5 MHz, 11.5 kbps BOM, DR1007, 916.5 MHz, 11.5 kbps PCB1 C11, C14, C15, C16, C17, C18, R16, R13, HX2000 RX2020 500-0298-001 500-0183-001 500-0653-001 500-0142-001 500-0817-001 500-0759-001 500-0643-001 500-0010-100 500-0693-001 500-0644-001 500-0244-106 500-0243-105 500-0623-104 500-0003-101 500-0003-330 500-0003-270 500-0022-222 500-0022-100 500-0022-103 500-0022-511 500-0022-365 500-0022-685 500-0645-001 500-0022-105 500-0022-104 500-0022-223 500-0022-822 500-0022-204 500-0668-001 Hybrid Transmitter Receiver Description 400-1368-001 Printed Circuit Board Transistor, SMT, BFS17 XSTR, SOT, MMBT2222L XSTR, PNP, MMBT2907L Schottky Diode, SMT, MMBD101 Dual Diode, BAV99 MMIC, UPC2746TB, Dual Amp, SMT, LM358D Inductor, SMT, Coilcraft 1008CS-100 Ferrite Bead, (Fair-Rite 2743021447) Header, Pins, Molex 22-03-2081 Capacitor, SMT, 10uf, Kemet T491B106K006AS Used DR1007 Capacitor, SMT, 1uf, Kemet T491A105K016AS Capacitor, SMT, (0805) Capacitor, SMT, 100pf (0805) Capacitor, SMT, 33pf, (0805) Capacitor, SMT, 27pf, (0805) Res, Chip, .2W, (0805) Res, Chip, .2W, (0805) Used DR1007 Res, Chip, .2W, (0805) Res, Chip, 510, .2W, (0805) Res, Chip, 3.6M, .2W, (0805) Res, Chip, 6.8M, .2W, (0805) Potentiometer, SMT, Spectrol Type 4M504 Res, Chip, 1.0M, .2W, (0805) Res, Chip, 100K, .2W, (0805) Res, Chip, 22K, .2W, (0805) Res, Chip, 8.2K, .2W, (0805) Res, Chip, 200K, .2W, (0805) Jumper (0805) Copyright 1996, 1997, 1998 RFM®. Copyright 1996, 1997, 1998 RFM®. Copyright 1996, 1997, 1998 RFM®. 1.950 .025 1.45 R.03 .005 Strip insulation bare copper approx. .125 min, .150 max. drawn scale. Units inches. insulated solderable magnet wire. turns close wound .130 dia. Finished .130, .003 916.5 7/07/98 1998 400-1309-001 Copyright 1996, 1997, 1998 RFM®. 1.8K 15uh 1N5819 .1uf 1N4148 11.059 VREF 100K ZVN2106A ADDRESS MMBT 2907 MAX218 AT89C2051 Copyright 1996, 1997, 1998 RFM®. 5,17,20 10uf DATA (RTX) (PTT) SPLY 100uf (VREF) DATA (RRX) SCHEMATIC, PB1003, 11.5 kbps Copyright 1996, 1997, 1998 RFM®. Copyright 1996, 1997, 1998 RFM®. BOM, PB1003 0.025 400-1299-001 500-0669-001 500-0243-105 500-0244-106 500-0623-104 500-0646-001 500-0051-001 500-0647-001 500-0648-001 500-0649-001 500-0650-001 500-0651-001 500-0651-002 500-0652-001 500-0653-001 500-0022-182 500-0673-753 500-0673-104 500-0022-204 500-0022-513 500-0022-103 500-0022-104 500-0654-001 500-0655-001 500-0656-001 500-0657-001 500-0658-001 500-0659-001 500-0660-001 500-0661-001 500-0663-001 600-0061-002 500-0664-001 500-0665-001 Digi-Key Digi-Key Digi-Key Digi-Key Arrow Electronics Radio Shack Digi-Key Digi-Key McMaster Carr McMaster Carr McMaster Carr McMaster Carr EG1906-ND CTX078-ND ED3320-ND MAX218CPP-ND 270-398 H560-ND H620-ND 91771A107 91841A005 98449A005 9723K22 Digi-Key Digi-Key Digi-Key Digi-Key Newark Newark Force Electronics Force Electronics Digi-Key Newark 1N5819CT-ND 1N4148CT-ND LT1034-ND WM3206-ND 89N1583 44F4268 10-89-6804 10-89-6084 ZVN2106A-ND MMBT2907AL Newark Newark Newark 51F2912 89F5035 92F5768 Vendor Vendor Description Printed Circuit Board Cap, electrolytic, 100uf Cap, SMT, Kemet T491A105K016AS Cap, SMT, Kemet T491B106K006AS Cap, chip, 0805, 0.1uf Diode, Schottky, 1N5819 Diode, High speed switching, JANTX1N4148 Ultrabright connector, Molex 22-02-2085 socket, pin, Technology DE9S-FRS Inductor, 15uh header from dual header dual header, Molex 10-89-6084 N-Channel Mosfet Xstr, SOT, MMBT2907AL Resistor, chip, 1.8K(J), .2w, Resistor, chip, 75K, .2w, Resistor, chip, 100K, .2w, Resistor, chip, 200K(J), .2w, Resistor, chip, 51K(J), .2w, Resistor, chip, 10K(J), .2w, Resistor, chip, 1M(J), .2w, Switch, angle 11.0592 Xtal, Series Resonant socket RS232 Transceiver, MAX218CPP battery holder Screw, 6-32, inch, nylon Nut, 6-32, nylon Screw, 4-40, 5/16 Nut, 4-40 machine Washer, internal tooth Bumper feet, .375 square AT89C2051-12PC 12MHz, PDIP, temp Copyright 1996, 1997, 1998 RFM®. Other recent searchesSi7434DP - Si7434DP Si7434DP Datasheet S15VT80 - S15VT80 S15VT80 Datasheet MC9S12DT128B - MC9S12DT128B MC9S12DT128B Datasheet MC68HC812A4 - MC68HC812A4 MC68HC812A4 Datasheet LIN-3944XX - LIN-3944XX LIN-3944XX Datasheet LIN-3945XX - LIN-3945XX LIN-3945XX Datasheet HV219 - HV219 HV219 Datasheet BLV45 - BLV45 BLV45 Datasheet
Privacy Policy | Disclaimer |