Oricom Technologies
www.oricomtech.com

Return to:
OOBOT40 main page.
OOBOT40-3 Controller Additional Info

For technical details on the pcb, see here: OOBOT40-3 Details.


OOPic Pinout on OOBOT40-3 Board

The figure on the right shows how the physical pins on the OOPic chip correspond to operational functions in the software. This includes which pins correspond to which OOPic I/O lines and groups, as well as which connect to the hardware on the OOBOT40-3 pcb - such as the EEPROM (U2), serial port MAX232 chip (U3), and L298 h-bridge chip (HB1).

  • OOPic I/O Lines 1 - 7 can be used for digital I/O or 7 A/D converter channels.
  • h-bridge HB1 input lines IN1 - IN4 drive motor outputs M1 - M4 on the pcb.
  • cpu PWM1 and PWM2 pins connect to the enable pins on HB1 - motor speed is controlled by the PWM duty-cycle values.
  • OOPic I/O Line 16 is tied to push-button switch SW1, as well as Led L2.
  • OOPic I/O Line 21 drives the piezo beeper.
  • OOPic I/O Lines 28 and 29 drive the 2 MOSFET inverters.
  • NOTE - there is an error in the OOPic manual regards how much voltage can be applied to the Vref pin, which is chip pin RA3 = I/O line 4. The manual says "up to 14V", but in fact, no more than 5V should be applied - else the chip will be damaged. Indeed, no more than 5V hard-voltage should be applied to ANY pin on the OOPic chip.

    OOPic Compatibility

    The OOBOT40-3 Controller Board is compatible with both old and new versions of the OOPic controller chip, in 40-pin DIP package. The Oricom BOT40-3 Controller alone can be purchased by people already having the older version OOPics.


    H-Bridge Operation

    L298 h-bridge operating guidelines, see: hb-43.txt

    Motor control program example in OOPic Basic, see:

  • mot43-1.txt (OOPic II+ version)
  • mot43-c1.txt (updated version for OOPic III+ chip)
    High-Current Drivers

    The high-current drivers on the OOBOT40-3 Controller Board consists of layout for 2 n-channel MOSFET transistors, wired as simple inverters. Heavy pcb traces can carry output currents of 5+ Amp. The pcb does not have room for recirculation diodes, so these should be wired directly across any inductive loads driven by the inverters.


    Interconnects:

    Header Connectors. Parts for building interface cables to connect to the 0.100" headers on the controller board can be found at jameco.com - 2-pin (p/n 100811) and 3-pin (p/n 157382) receptacle, insert pin (p/n 100765).

    I²C Busses. See the next page about different ways for connecting the I²C busses on the OOBOT40-3 Controller Board.


    RS-232 Daisy-Chain - (advanced concepts)

    Normal Operation. The Daisy-Chain feature is unique to the OricomTech OOBOT40-3 pcbs. First off, the boards can be used normally, for standard 1-on-1 connection to a host PC or other computer, like any other OOPic board. In this case, the primary transmit-receive channel on the MAX232 chip is used by the OOPic internal UART to make comms with the host computer, and the secondary MAX232 channel is available for OOPic control of external serial LCDs, etc. This is the default mode of operation.

    Daisy-Chain. In addition, several OOBOT40-3 pcbs can be connected in a daisy-chain arrangement, where the secondary MAX232 channel set is used for comms to "downstream" boards in the chain. By using the MAX232 for this purpose, the signals can go for long distances, and much longer than when using 0 - 5v (eg, I²C-style) networking, since they are "re-amplified" to standard +/-10v RS-232 levels in each board. In essence, the "downlink" signals are simply passed along by each board, while the "uplink" signals are logically OR-ed together by circuitry on the OOBOT40-3 pcb.

    Ths Daisy-Chain is a Master-Slave Arrangement, where the master controller (a host PC, or OOPic or other controller) exclusively broadcasts down the "downlink", but any of the slaves can respond back on the "uplink". Any slave-to-slave comms is made via the master controller.

  • Simple Master-Slave Protocol - the only requirement for making a successful network is that no more than 1 slave at a time must attempt to use the uplink. IE, the software for the slaves can be written so a given slave will respond back on the uplink only when the master specifically addresses it, such as by sending a unique address code. This scheme is similar to how the majority of I²C buss arrangements work, in actual practice. Namely, a master device is connected to, and controls, a number of slave devices on the buss, each of which has its own specific node address.
  • Advanced Master-Slave Protocol - alternately, and more complicated, it's possible to create a software system where slaves can send signals up the uplink, whenever they wish, by using something like the CDMA/CD collision-detect "test and fall-back" protocol of ethernet. Possibilities here are wide-open.

    [OOBOT40-3 Daisy-Chain] Note - that the "first" [host - master] and "last" processors on the daisy-chain need not be OOBOT40-3 boards, only the intermediary processors, which pass the signals along. Eg, an OOBOT40-3 board can be "inserted" into the middle of an existing host PC-to-OOPic connection.

    The figure at right shows an example of such a daisy-chain. A host PC [master-controller] is connected to the main serial port of the board on the right via its DB09 connector, and this board is daisy-chained via its secondary port to the main serial port of a second board, at left. The PC could talk to the 2 boards individually, since the chips on the boards used different control and addressing protocols. The chip in the board at the right was actually running OricomTech XSCC20 multi-servo controller firmware, and the board on the left was downloadable from the OOPic IDE.

    Because standard RS-232 levels are regenerated at each node by the MAX232 serial chip, the daisy-chain can extend for long distances.


  • Datasheets for parts are available on the web:
  • OOPIC microcontrollers: OOPic
  • L298: ST Micro
  • MAX232: Maxim

    <| TOP


    © Oricom Technologies, updated Jan 2008