» Iosoft Ltd
  - Wireless
  - Books
  - ChipVid Video
  - Software Updates
  - Embedded Web

» Embedded TCP/IP
  - Chipweb
  - Versions
  - Licensing
  - License FAQ

» Wireless
  - Introduction
  - 802.11 kit
  - Licensing
  - Wireless FAQ

» Video
  - ChipVid
  - Frame Grabber

» Real-time data
  - Introduction
  - Air Quality

» Books
  - First Edition
  - Second Edition

» Support
  - Compilers
  - Updates
  - License
  - Errata
  - Application notes
  - FAQs

» Online Sales

» Licensing

» Contact

ChipWeb Wireless FAQ

Frequently Asked Questions for the Iosoft ChipWeb Wireless 802.11b development kit

  1. What do I need to set up a wireless network?
  2. I don't read manuals - how do I get the board going?
  3. Why doesn't the ER21 respond when I switch between wired & wireless interfaces?
  4. Which wireless cards are compatible?
  5. Does the ER21 act as a router?
  6. Can I use my existing ChipWeb code on the ER21?
  7. The new ChipWeb v2.17 code has new features (such as long EGI variable names) I'd like to use on the PICDEM.net - is the software still compatible?
  8. Which microcontroller is used?
  9. Which compiler can I use?
  10. Why does the voltage regulator get hot?
  11. What can I do to reduce power consumption?
  12. Why do I get a 'wireless card not responding' error?
  13. How can I attach my own I/O devices to the ER21?
  14. What is the difference between the ER21 and ER22?
  15. What else do I need to get my ER21/ER22 working?
  16. Can I use 3.3V WLAN cards in my ER21 or ER22?
  17. My ER21/ER22 behaves erratically, what is wrong?
  18. Does the software include a socket interface?

1. What do I need to set up a wireless network?

We strongly recommend you set up a new 'scratch' wireless network for your experimentation, rather than using an existing one. The simplest network uses 'ad-hoc' mode, where you only need another PC with a PCMCIA (PC card), USB or PCI wireless network interface - the manufacturer is unimportant, so long as it is 802.11b-compliant.

'Infrastructure' networks are more common, and based around an 'Access Point', which is effectively a hub for wireless communications. Access Points also have an Ethernet connection, so you can use them to bridge between wired and wireless networks; some have advanced routing and firewall capabilities, but these can be a liability when first setting up a test network - start with the simplest device you can find.

2. I don't read manuals - how do I get the ER21/ER22 board going?

  • Use a 9V DC regulated supply with 500mA capacity - don't use unregulated or AC supplies.
  • Connect the ER21 to a PC using an uncrossed DB9M-DB9F serial cable.
  • Run a terminal emulator on the PC at 9600 baud, 1 stop bit, no parity.
  • Hold the pushbutton down while powering up the ER21.
  • Enter when prompted the serial number (from sticker on the board), IP address, WLAN type (Infrastructure or Ad-hoc), channel number and network name (SSID).
  • If you are running v2.21 or later software, you will be asked whether power-management is required. Respond 'Y', unless you have a time-critical application.
  • When the XMODEM prompt appears, re-power the board, and check the new IP address is displayed.
  • Connect the PC to the ER21 using Ethernet (uncrossed cable if using a hub, crossed if connected direct) or Wireless (via Access Point if in Infrastructure mode).
  • Enter the IP address into a Web browser, and the configuration Web page will appear.

3. Why doesn't the ER21 respond when I switch between wired & wireless interfaces?

The ER21 has one IP address, but two hardware (MAC) addresses, one for each interface. The PC maintains a record (ARP cache) of the last-known hardware address, and will continue to use it, even if you have switched network interfaces. The quick way to eliminate this ARP cache is to use the ARP command in a DOS box, giving the IP address of the ER21

ARP -d 192.168.0.20

This flushes out the old IP-to-MAC address mapping, and forces the PC to fetch the new MAC address.

4. Which wireless cards are compatible?

The software is compatible with PCMCIA (PC) 802.11b cards using the Intersil PRISM2 , 2.5 and 3 chipset. The Netgear MA401 card is supplied with the ER21 and ER22 kits, and we do recommend this card.

Customers have reported success with D-Link DWL650 and Linksys WPC11 PCMCIA & WCF11 Compact Flash (CF) cards, though it is essential to check compatibility before using an alternative card. The ER21 hardware powers the PCMCIA card at 5 volts, so 3.3 volt cards can not be used.

Some cards such as the Linksys WPC11 version3, or the Senao/Engenius 2511 plus, claim to be dual-voltage but are always powered at 3.3V when used in laptops, and we have experienced difficulties getting them to work at 5V.

See question 16 for more information on 3.3V compatibility

5. Does the ER21 act as a router?

No. Although the ER21 has both Ethernet and Wireless interfaces, and responds to Web accesses on both interfaces, the standard software does not include a router capability (i.e. it does not transfer network frames from one interface to the other). A skeletal router could be implemented, but the 1.5KB RAM in the PICmicro would place severe limits on its functionality.

6. Can I use my existing ChipWeb code on the ER21?

Yes. The ER21 has a very similar hardware layout to the existing PICmicro networking board, so the ChipWeb Ethernet and serial drivers run without modification. The addition of the wireless interface has introduced significant extra complexity, but we have tried to minimise the changes needed to the top-level code when switching from a wired to wireless interface.

7. The new ChipWeb v2.17 code has new features (such as long EGI variable names) I'd like to use on the PICDEM.net - is the software still compatible?

Yes, you can treat ChipWeb v2.17 as an upgrade for the v2.02 release supplied in 'TCP/IP Lean' 2nd edition; the wireless extensions can easily be disabled, and the LCD support enabled, so that it runs on a PIC18xxx PICDEM.net board.

8. Which microcontroller is used?

The current release is based on the PIC18F452. The PIC16xxx series can't be used as it has insufficient ROM.

9. Which compiler can I use?

The first release requires a recent version of the CCS PCH or PCWH compiler; it was tested with v3.110. The Hi-Tech PICC18 compiler v8.20 PL2 may also be used, see the application note www.iosoft.co.uk/docs/cw217notes.pdf.

Version 2.21 and later of the source code accommodates CCS and Hi-Tech compilers, including PICC18 v8.20 PL3 and PL4.

10. Why does the voltage regulator get hot?

The average ER21 current consumption is around 250 mA, of which the PCMCIA card takes about 200 mA, assuming power management is disabled (see next question). The temperature of the voltage regulator can be reduced by dropping the supply voltage (minimum 7.8 volts), or adding a heatsink

11. What can I do to reduce power consumption?

In v2.21 or later software, there is a serial configuration option to enable the PCMCIA card's Power Management facility, which roughly halves the card consumption when in infrastructure mode. Unfortunately it does introduce a noticeable delay to all network transactions, which may be unacceptable in some high-speed applications.

The ER25 has a separate high-efficiency power supply for the wireless card which may be shut down by the microcontroller, a major power saving if communications are infrequent.

12. Why do I get a 'wireless card not responding' error?

The two most common causes are the use of a Microchip In-Circuit Debug adaptor, and incorrect PICmicro configuration settings.

The Microchip in-circuit debug interfaces (ICD and ICD2) use port B pins 6 and 7 to communicate with the processor, and these lines are driven by the ICD even when debugging is disabled. The same lines are used on the ER21 as PCMCIA address lines A6 and A7, so the PCMCIA interface will fail if an ICD is connected. If an ICD has been used to program the PICmicro, it must be disconnected before the software is run.

PICmicro configuration settings:

  • Watchdog must be disabled
  • Low-voltage programming must be disabled
  • Power-up timer must be enabled
  • Clock-switching must be disabled
  • Clock source must be high-speed crystal (HS)
  • Debug must be disabled

Although not recommended in 'TCP/IP Lean' appendix D, it is advisable to enable the power-up timer, as it gives extra time for a slow LCD to settle after power-up.

There are a wide variety of setting methods and terminology used by device programmers, and the fuse settings in the hex file aren't necessarily propagated into the programmer, so it is wise to check the settings before programming a device.

If you are using P18WEB v2.17, be sure to read the software notes www.iosoft.co.uk/docs/cw217notes.pdf

13. How can I attach my own I/O devices to the ER21?

The PCMCIA card uses almost all of the PICmicro I/O pins, so the ER21 does not include any specific provision for attaching other I/O devices (there is no I/O expansion connector). However, the following I/O lines might be useful

  • RA4 is connected to PCMCIA IREQ, but is unused.
  • RC2 is connected to the CTS input, but unused - it could be disconnected and re-assigned.
  • RC3 and RC4 are used for an on-board i2c device; other devices could be added to this bus.
  • RC5 is used for outgoing RTS handshake, which may not be required
  • RD0-RD7 are treated as an 8-bit bus; other devices may be attached to this, providing they don't interfere with the PCMCIA and Ethernet interfaces.

The easiest way to add extra I/O devices is via the 2-wire i2c bus, for example one or more Philips PCF8574 devices could be used, each device providing an extra eight bi-directional I/O lines. Alternatively, the RS232 port could be used to communicate with another microcontroller that performs the I/O functions.

The ER22 and ER25 cards are designed for easy I/O interfacing.

14. What is the difference between the ER21, ER22 and ER25?

The ER21 is the original development board with a PICmicro, WLAN and Ethernet interfaces. The ER22 has the following changes

  • An address latch has been fitted to free up some PICmicro I/O pins.
  • 11 PICmicro I/O pins are available on 0.1-inch pitch connector, namely RA0, RB0-RB7, RC0 and RC1. A further 3 I/O pins RC3-RC5, with power and ground, are available on another connector to simplify connection to the i2c bus.
  • The Microchip ICD 2 can be used for debugging, since RB6 and RB7 are unused
  • The PCB is 4-layer, with solid power and ground planes to reduce electrical noise.
The ER25 is a power-efficient version of the ER22:
  • Efficient switchmode supply for the WLAN card (5-15V input, 3.3V output)
  • Separate linear PSU for the microcontroller
  • Microcontroller can power down the wireless card when not in use
  • No Ethernet interface, unused lines RE0 and RE1 brought out to the I/O connector
  • Socket for second serial EEPROM device
  • Compatible with existing ER22 WLAN software

The ChipWeb software has been updated to accomodate the new boards, see ChipWeb version information for details

15. What else do I need to get my ER21/ER22/ER25 working?

If you are new to the PICmicro, check out our beginner's guide

In addition to the ER21/ER22/ER25 hardware, you will need

  • The ChipWeb source-code package, available from the Iosoft e-commerce site, or on CD-ROM from our hardware suppliers.
  • A PIC18 'C' compiler; we only support the CCS and Hi-Tech compilers, see Iosoft support pages for details
  • A means of programming the PICmicro devices, either a stand-alone PICmicro device programmer, or the Microchip ICD 2 in-circuit debugger (or the CCS ICD-U equivalent). ICD devices can be difficult to set up, please see the manufacturer's documentation for details.
  • The 'TCP/IP Lean' 2nd edition book is essential to gain an understanding of PICmicro networking principles, and the ChipWeb software structure, based on serial and Ethernet connectivity.
  • It is very useful to have some spare PICmicro devices, so you can keep various software versions on them (including one with the original Iosoft code). You need to buy 40 MHz PIC18F452 devices in the 40 pin dual-in-line (PDIP) package, e.g. PIC18F452-I/P.

If you have used an ICD to program the PICmicro device on the ER22/ER25, it can also be used for debugging, though for professional code development we do recommend using an in-circuit emulator such as the Microchip ICE2000.

16. Can I use 3.3V WLAN cards in my ER21 or ER22?

No, the ER21 and ER22 power the card at 5 volts. You can't just drop the supply voltage, because the Ethernet controller requires a 5V supply. Also, 3.3V-only cards have special PCMCIA keying to prevent their insertion into 5V slots.

The ER25 is designed for use with 3.3V cards.

17. My ER21/ER22 behaves erratically, what is wrong?

The most probable cause is the power, a regulated supply of at least 6.5V 500mA capacity must be used. Inadequate or unregulated supplies will cause erratic operation.

18. Does the ChipWeb software include a socket interface?

No, the limitations of the PICmicro RAM size prevent us from using a a standard socket interface. For details of the underlying program methodology see the 'TCP/IP Lean' book 2nd edition; it does not include any wireless networking, but does describe similar networking techniques using Ethernet.

© Iosoft Ltd. 2004 Version 6 28-April-04