Monday, October 22, 2012

Ethernet based PIC SBCs

Almost every PIC project has to deal with implementing some kind of a user interface. Buttons, LEDs, LCD display – the hardware is not trivial to add and the result is far from user friendly. What’s more, you have to walk up to the unit to interact with it. This is far from ideal – a rolling potato gathers no couch.

An Ethernet based SBC (Single Board Computer) is one solution. Such an SBC will at the very least have an Ethernet connection. It should have the ability to host a web server. The code for this should be available. Writing one from scratch is way beyond my abilities. With the web server must come a large amount of flash storage, not a few KB but hundreds of KB.

Once you have an Ethernet based SBC, you can hook it up to a home network that already has a wireless access point. This means any device in the vicinity – a laptop, smartphone or tablet – can interact with the unit. You can use a browser to interact with the unit. This can be as slick a user interface as you want – a far cry from a few buttons and LEDs. The browser is an additional powerful processing environment with the use of javascript. The SBC software can be relatively simple. Just a few urls implemented as ajax calls in the browser.

This should allow the code to be distributed between the SBC (written in C) and the browser (written in HTML/javascript). Fortunately, I am equally comfortable with either environment.

For my USB projects, I am a great fan of the Modtronix SBCs. They are compact and have a very good daughter-board solution making it very easy to prototype an application. When you are done with the project, pull out the daughter-board and chuck it in your junk box. The SBC can be reused and if you want your old project back just pull it out and plug it in. Having the circuit on a separate board beats using a proto area on the SBC. But when it comes to Ethernet, their SBCs are a bit clunky. Instead of using the modern PIC chips that have built-in Ethernet support, they have an external chip. This makes it a bit harder to move from prototype to final PCB. An external chip just makes the design unnecessarily complex.

Summary

SBC Features Cost
AU$
Size Pros Cons
Olimex PIC-WEB CPU:18F67J60
Flash:256KB
$38 60x65mm Nice connector for daughter-board
Fairly compact
Olimex PIC Micro-WEB CPU:18F67J60
Flash:256KB
$50 30x50mm Small size D connector interface
Olimex P67J60 CPU:18F67J60
Flash:256KB
$38 80x100mm Large size
SIL connector
Microchip PICDEM.net2 CPU:18F97J60
Flash:32KB
$165 114x140mm Plenty of peripherals Huge size
Higher cost
Sure Wifi Web Server CPU:24FJ256GB106
Flash:SD Card
$60 46x63mm Wifi support
SD card storage
Not in 18F family
No external connector
Modtronix SBC66EC CPU:24FJ256GB206
Flash:32MB
$70 54x58mm Great daughter-board solution
Large Flash
Not in 18F family
External ethernet chip

Comparison of Ethernet PIC SBCs

All PIC based Ethernet SBCs use some version of the Microchip TCP/IP stack. Among other features, it has a web server. These web pages can be served from the spare space in the program memory or an external EEPROM. The web pages can be downloaded from the ethernet connection using a utility or a browser.

I will focus on the two things I am keen about. A compact size and the ability to use a detachable daughter-board.

Olimex PIC-WEB

There are a few other options to choose from. To start with, the one I opted for – the Olimex PIC-WEB. I have the Rev B but now they are up to Rev C.

Olimex PIC-WEB

It is based on the PIC 18F67J60 with 128K of program memory and 3.8K of RAM. It has an additional 256KB Flash chip for the web pages. It costs about AU$38. The board is a compact 60x65 mm. The PICKit2 can be connected to a connector on board. A 34 pin header brings out a whole bunch of connections. A PCB mounted connector can be used to build a daughter-board.

Olimex PIC-MicroWEB

Another intriguing option is the Olimex PIC Micro-WEB.

Olimex PIC-MicroWEB

The hardware is similar to the PIC-WEB except the whole thing is packed into a shell for a 25 pin D connector. Prototyping around a D connector is a lot more inconvenient than a 0.1 matrix connector.

Olimex P67J60

Yet another Olimex option is the Olimex P67J60.

Olimex P67J60

This has the same hardware as the two previous Olimex boards but this one is filed under protoboards. This is probably because of the large prototype area. It also has a 0.1" connector that may be a bit awkward to use with a daughter-board. Because of the proto area, the board is quite large - 80x100 mm.

Microchip PICDEM.net2

There are a few other options from Microchip itself. One of them is the PICDEM.net2 board.

Microchip PICDEM.net2

It is chock full of peripherals like buttons, LCD. It is based on a PIC 18F97J60. It has both on board ethernet and an ENC28J60 chip. It has a 32KB EEPROM. There is a small proto area. I have one of these but haven’t got around to using it. It has a connector - the PICTail which can be used for a daughter-board. Compared to other SBCs, it is huge. It goes for a pricey AU$165.

Sure Electronics Wifi Web Server

A new option I noticed surfing ebay is the Sure Electronics Wifi Web Server. It is based on the 24F family rather than the 18F family (the one I am familiar with). The great thing about this unit is that it has wifi. This means no Ethernet cabling is required to the SBC. It also uses an SD card providing large amounts of storage and easy means of transferring the web pages on to it. Most laptops have an SD slot and memory card readers are common. This is definitely worth a try.

Sure Electronics WiFi Web Server

The SBC is based on a PIC24FJ256GB106 with a Microchip MRF24WB0MB WiFi transceiver. It measures 63x46 mm and costs AU$60. It has no external connector making adding custom circuitry impractical.

Modtronix SBC66EC

Modtronix has the SBC66EC.

Modtronix SBC66EC

Typical of a Modtronix board, it has a compact form factor with great daughter-board support. Unfortunately, I am not looking at moving out of the 18F family yet.

Conclusion

I have a project in mind for the ethernet SBC which I will outline in the next blog. I am going for the Olimex PIC-WEB. It is relatively small. It uses the PIC 18F family that I am comfortable with. It has a connector suitable for a small daughter-board. I have had one lying around in my collection that I will finally get to use.

Some images of SBCs taken from the respective manufacturer's web sites

No comments:

Post a Comment