Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Administrator

Pages: [1]
Projects / Sprinkler Controller using the IOR5E and SBC65EC
« on: August 08, 2006, 02:03:54 PM »
Helmut Hissen from Zeebar Technology has created a nice web page documenting how to turn the IOR5E and SBC65EC into a sprinkler controller. For details, see

IOR5E / Turning the IOR5E into a Sprinkler Controller
« on: August 08, 2006, 02:01:49 PM »
Helmut Hissen from Zeebar Technology has created a nice web page documenting how to turn the IOR5E and SBC65EC into a sprinkler controller. For details, see

Ethernet Boards (8-bit) / == Compatible third party boards ==
« on: June 18, 2006, 11:33:50 PM »
The following section list some compatible third party boards that can be used to add additional functionality to our MicroX SBC boards.

=== LCD Board for the SBC65EC and SBC68EC boards =====
A LCD board with LED backlight, RTC, 1-wire bus master is available from SKPang here.

=== RTC and 1-Wire Daughter board for the SBC65EC and SBC68EC boards ===
RTC and 1-Wire Bus Master for the SBC65EC and SBC68EC is available from SKPang here.

=== Metal Enclosure for the SBC44EC and SBC45EC boards ===
A metal enclosure for the SBC44EC and SBC45EC is available from SKPang here.

If you have any custom boards you would like listed here, please contact us.

We have had some complaints that our default IP addresses that end with 1 clash with router addresses that are normally also configured to end with ".1" ( for example). Is this an issue for many users? Would using be a better default IP address for most users. Similarly we could change the default IP addresses for savemode to:


In stead of the current settings that all end with 1

IOR5E / == IOR5E Test code ==
« on: August 29, 2005, 10:37:37 PM »
Below is some sample code for testing all LEDs and relays on the IOR5E. Simply add this code to your mxwebsrvr.c file of the SBC65EC source code download. This code will sequentially turn all LEDs and Relays on and off.

Code: [Select]
//Latch pins
#define LATCH_SER       PORTC_RC0
#define LATCH_SCLK      PORTC_RC1
#define LATCH_RCLK      PORTC_RC2
#define LATCH_OE        PORTC_RC5

* Write the given value to the 595s internal register. It is not latched to it's output register.
* Important!! After calling this function, the output register must still be latched:
*   //Latch the 595's internal register to it's output register
*   LATCH_RCLK = 1;
*   LATCH_RCLK = 0;
void setLatch595(BYTE c) {
    BYTE mask = 0x80;

    LATCH_RCLK = 0;
    //Shift all 8 bits into latch
    for (;;) {
        //Shift out next bit
        LATCH_SCLK = 0;
        if (c & mask)
            LATCH_SER = 1;
            LATCH_SER = 0;
        LATCH_SCLK = 1;

        //Break if all 8 bits have been shifted out
        if (mask == 0x01) break;
        mask = mask >> 1;
    LATCH_SCLK = 0;

* Main entry point.
void main(void)
    BYTE latchRly, latchLED1, latchLED2;

    //Reset all outputs to 0
    TRIS_LATCH_SER  = 0;
    //Clock 595's internal register
    LATCH_RCLK = 1;
    LATCH_RCLK = 0;

    //Now (after all output have been initialized with 0, Enable output latches
    TRIS_LATCH_OE = 0;
    LATCH_OE = 0;

    //Initialize Relay and Latch outputs
    latchRly = 0x01;
    latchLED1 = 0x01;
    latchLED2 = 0x01;


         * Increment Relay, LED latches every 500ms
        if ( TickGetDiff(TickGet(), tTest) >= TICK_SECOND/4 )
            tTest = TickGet();
            //Rotate values by one
            latchRly <<= 1;
            latchLED1 <<= 1;
            latchLED2 <<= 1;
            if (latchRly == 0) {
                latchRly = 0x01;
                latchLED1 = 0x01;
                latchLED2 = 0x01;

            //Shift out all latches

            //Clock 595's internal register
            LATCH_RCLK = 1;
            LATCH_RCLK = 0;



Ethernet Boards (8-bit) / Using Port B0 on SBC65EC
« on: May 04, 2005, 01:19:16 AM »
The default configuration on the current version of SBC65EC boards (V2.02) is that the INT0 pin of the RTL8019AS Ethernet chip (connected to PIC Port pin B0) is set as an output, and indicates the interrupt request status of the RTL8019AS. The TCP/IP software stack however does not use this information, and pin RB0 is basically wasted. The user can not use it!

This can easily be changed by setting the INT0 pin of the RTL8019AS to tri-state. This will free up the PIC port RB0, and the user can use it for general purpost I/O. To do the above, add the following lines to the end of the MACInit() function in mac.c of the TCP/IP stack:

//Disable RTL8019AS interrupts. All INT lines go tri-state, and
//PIC pin RB0 is available to user
NICPut(CMDR, 0xe0);         //Select page 3
NICPut(RTL9346CR, 0xc0); //Config register write enable
NICPut(RTLCONF1, 0);        //Interrupt disable - will cause INT0 to be high impedance.
NICPut(RTL9346CR, 0x00);  //Normal operating mode
NICPut(CMDR, 0x20);         //Reset to default = Page 0

Ethernet Boards (8-bit) / Restoring corrupted EEPROM data
« on: April 24, 2005, 03:18:41 PM »
When developing code that modifies the EEPROM data, it is very easy to corrupt the configuration data on the EEPROM. The configuration data on the SBC65EC lives in the first 64 bytes on the EEPROM. See for info on how to change this.  Be aware that when trying to write data to the EEPROM you could accidentally overwrite the configuration data of the EEPROM, which will cause the SBC65EC to not work after next power up - due to EEPORM being corrupt!  See documentaion for further details on reserved EEPORM space, and how to define it using MPFS.EXE.

If the EEPROM configuration data gets corrupted (board doesn't start up anymore), do the following:

1) Remove power from SBC65EC board and remove EEPROM chip from socket.
2) Apply power to SBC65EC board. Seeing that there is no EEPROM, board will load default configuration.
3) Use web browser to log onto SBC65EC web page - will be at default IP address of (
4) Insert EEPROM into socket.
5) On web page, make any modification and press "update" button. For example, make a change on the "port settings" page and click on "update" button.

After clicking the update button, the EEPROM will be written with new configuration data. It will now work after power up again, and the configured values will be loaded.

MicroX Modules and SBC Boards / Using the DS1307 on the SBC44B
« on: April 24, 2005, 02:31:49 PM »
The SBC44B has a socket for a DS1307 RTC (real time clock). The DS1307 is configured and read via the I2C port of the PIC chip. The SBC44B also has a jumper for connecting a external battery for the DS1307, JP1. If you are not using a backup battery for the DS1307, it seems that on some chips you must have the Vbat input of the DS1307 pulled low. This can easily be done by inserting a jumper onto the JP1 header. JP1 is situated right next to the ICSP connector, and has "Gnd" and "Vbat" written next to it. This only seems to affect some DS1307 chips. So, all that needs to be done is to short the pins of the JP1 header, by using a 2.54mm jumper for example.

Ethernet Boards (8-bit) / Configuring Modtronix Ethernet Boards
« on: April 04, 2005, 02:43:09 PM »
At delivery the Modtronix SBC65EC Ethernet boards are not configured for DHCP, so they have a fixed IP address of "". They can be configured via one of two ways:
1) Connect a serial cable to the 3 pin molex connector and configure with terminal program at 57600 baud.
2) Connect to Ethernet network and log onto via browser.

To use the first option, you need a CAB3S6FT serial cable from Modtronix. On windows, you can use Hyperterminal configured for 57600 baud, 8 bits, 1 stop bit, no handshaking, no parity.

To use the second option, you need to ensure that the PC you are going to configure the device with can access Your network address will probably be different. So, for you to access it, you could for example change your PCs network settings to:
IP Address:
Subnet mask:
After doing this, and connecting the Modtronix Ethernet board to your network, you should be able to access it via a standard web browser.

Be aware that the Modtronix Ethernet board's Ethernet port has the same polarity as a PC, so you will need a crossover cable to connect it straight to your PC. If connecting it via a switch or hub, also make sure the Ethernet cable is correct. Most switches have automatic polarity setting, but if it doesn't, you will need a straight Ethernet network cable to connect the Modtronix Ethernet board to your switch or hub.

The SBC45EC and SBC44EC are configured in a similar way, but the IP address at delivery is "" and the terminal speed is 19200 baud.

I just created a JavaScript web page that scales all values to 5V, 12V and 24V. For the source code and js2.bin (MPFS image to load to EEPROM) see Using JavaScript one can basically display anything depending on the state of the inputs and outputs - is really great!

When embedding JavaScript into the web pages running on a Modtronix Ethernet board remember to end every statement with a ';' character. This is not required by JavaScript, but seeing that the MPFS.EXE image builder removes all new line characters from the web pages, it is required.


Ethernet Boards (8-bit) / Free C Compiler from Microchip
« on: January 26, 2005, 09:13:24 PM »
Hi All

Great news, Microchip has released a free student version of their MPLAB Ca8 C compiler. See

For a discussion on it, see Microchip forum

The restriction are so miner, it should make hardly any difference on compiled code. So, there is now a FREE C compiler that can be used for compiling the TCP/IP stack - that will not expire - Great !!!! Thanks Microchip!

From Microchip site:
"The Student Edition has all the features of the full compiler and libraries including support for all devices. After 60 days, the optimizations related to procedural abstraction and to the extended instruction set of the newer PIC18XXXX devices will be disabled. Resulting code compiled after the expiration date will function, but may require more memory space."

As clarified by Microchip:
"To clarify, the Student Edition replaces the previous demo version which became inoperable after 60 days. Now the Student Edition will stay functional indefinitely with all the features of the full compiler except that some of the optimizations will be removed after 60 days. We encourage everyone to use the Student Edition as long as they like. Note that technical support on the Student Edition is limited, and if you get to a point where memory becomes an issue, the full version can be purchased."


A new File Upload page has been added to our server. See  If you have ANY code you want to share with the rest of us, please upload it here - will be much appreciated! Thanks to Jean-Marc too for his great SMTP code that enables our Ethernet boards to send Emails!

Contract Programmers / Contract programmers
« on: August 11, 2004, 05:31:52 PM »
Hi All

Can any contract programmers who are available to do customized software implementations please reply to this topic.

David :?:

Projects / Custom projects
« on: August 11, 2004, 05:12:37 PM »
Hi Everyone

If you have implemented any custom projects using our MicroX boards, can you please share it with the rest of us.

David :idea:

Microchip TCP/IP stack / Modifications to TCP/IP stack
« on: August 11, 2004, 05:05:29 PM »
Hi Everyone

I anyone has made modifications to the Microchip TCP/IP stack, can they please be so kind and share it with the rest of us on this forum.


Pages: [1]