Silicon ChipMicromite Plus Explore 100 With Touchscreen, Pt.1 - September 2016 SILICON CHIP
  1. Outer Front Cover
  2. Contents
  3. Publisher's Letter: Taiwan's booming electronics industry
  4. Feature: LUCAS: Bringing The Dead Back To Life by Ross Tester
  5. Feature: A Look At Military Robots by Dr David Maddison
  6. Project: Two 230VAC Mains Timers (Cyclic Pump Timer and Period Timer) by John Clarke
  7. Feature: Electronex: Electronics Design & Assembly Expo by Silicon Chip
  8. Feature: Taiwan’s Booming Electronics Industry by Leo Simpson
  9. Serviceman's Log: The unfit Fitbit that was made fit by Dave Thompson
  10. Project: 4-Input Automotive Fault Detector by Dr Hugo Holden & Greg Swain
  11. Project: Micromite Plus Explore 100 With Touchscreen, Pt.1 by Geoff Graham
  12. Project: Touchscreen Appliance Energy Meter, Pt.2 by Jim Rowe & Nicholas Vinen
  13. PartShop
  14. Vintage Radio: Astor’s M5/M6 5-transistor mantel sets by Ian Batty
  15. Market Centre
  16. Advertising Index

This is only a preview of the September 2016 issue of Silicon Chip.

You can view 54 of the 112 pages in the full issue, including the advertisments.

For full access, purchase the issue for $10.00 or subscribe for access to the latest issues.

Items relevant to "Two 230VAC Mains Timers (Cyclic Pump Timer and Period Timer)":
  • Cyclic Timer / Mains Period Timer PCBs [10108161/2] (AUD $10.00)
  • PIC12F675-I/P programmed for the Cyclic Timer / Mains Period Timer [1010816A.HEX] (Programmed Microcontroller, AUD $10.00)
  • Talema AC1015 Current Transformer (Component, AUD $20.00)
  • Firmware (ASM and HEX) files for the Cyclic Timer / Mains Period Timer [1010816A.HEX] (Software, Free)
  • Cyclic Timer / Mains Period Timer PCB patterns (PDF download) [10108161/2] (Free)
  • Cyclic Timer / Mains Period Timer lid panel artwork and drilling templates (PDF download) (Free)
Items relevant to "4-Input Automotive Fault Detector":
  • Automotive Fault Detector PCB [05109161] (AUD $10.00)
  • Automotive Fault Detector PCB pattern (PDF download) [05109161] (Free)
Items relevant to "Micromite Plus Explore 100 With Touchscreen, Pt.1":
  • Micromite Plus Explore 100 PCB [07109161 RevC] (AUD $15.00)
  • PIC32MX470F512L-120/PF programmed for the Micromite Plus (Programmed Microcontroller, AUD $25.00)
  • CP2102-based USB/TTL serial converter with microUSB socket and 6-pin right-angle header (Component, AUD $5.00)
  • CP2102-based USB/TTL serial converter with microUSB socket and 6-pin right-angle header (clone version) (Component, AUD $3.00)
  • DS3231-based Real Time Clock & Calendar module with mounting hardware (Component, AUD $6.00)
  • MCP120-270GI/TO Supply Supervisor IC (TO-92) (Component, AUD $2.00)
  • Short Form Kit for the Micromite Plus Explore 100 (Component, AUD $75.00)
  • Firmware (HEX) file and documents for the Micromite Mk.2 and Micromite Plus (Software, Free)
  • Micromite Plus Explore 100 PCB pattern (PDF download) [07109161 RevC] (Free)
Articles in this series:
  • Micromite Plus Explore 100 With Touchscreen, Pt.1 (September 2016)
  • Micromite Plus Explore 100 With Touchscreen, Pt.1 (September 2016)
  • Micromite Plus Explore 100 Module, Pt.2 (October 2016)
  • Micromite Plus Explore 100 Module, Pt.2 (October 2016)
Items relevant to "Touchscreen Appliance Energy Meter, Pt.2":
  • Touchscreen Appliance Energy Meter PCB [04116061 RevI] (AUD $15.00)
  • PIC32MX170F256B-50I/SP programmed for the Micromite-based Touchscreen Energy Meter v1.01 [0411606A.hex] (Programmed Microcontroller, AUD $15.00)
  • CP2102-based USB/TTL serial converter with microUSB socket and 6-pin right-angle header (Component, AUD $5.00)
  • CP2102-based USB/TTL serial converter with microUSB socket and 6-pin right-angle header (clone version) (Component, AUD $3.00)
  • DS3231-based Real Time Clock & Calendar module with mounting hardware (Component, AUD $6.00)
  • ACS718 20A isolated current monitor (Component, AUD $15.00)
  • Firmware (HEX) file and BASIC source code for the Micromite-based Touchscreen Appliance Energy Meter [v1.01] (Software, Free)
  • Touchscreen Appliance Energy Meter PCB pettern (PDF download) [04116061 RevG] (PCB Pattern, Free)
  • Touchscreen Appliance Energy Meter lid panel artwork (PDF download) (Free)
Articles in this series:
  • Touchscreen-Controlled Energy Meter, Pt.1 (August 2016)
  • Touchscreen-Controlled Energy Meter, Pt.1 (August 2016)
  • Touchscreen Appliance Energy Meter, Pt.2 (September 2016)
  • Touchscreen Appliance Energy Meter, Pt.2 (September 2016)
  • Touchscreen Appliance Energy Meter, Pt.3 (October 2016)
  • Touchscreen Appliance Energy Meter, Pt.3 (October 2016)

Purchase a printed copy of this issue for $10.00.

• • • • • 5-inch touch screen Even more I/O pins Expansion slots USB & serial interfaces PS/2 keyboard socket Micromite Plus Explore 100 Pt.1: By Geoff Graham The Explore 100 expands on the Micromite Plus Explore 64 described last month, adding more I/O pins, two slots for mikroBUS Click expansion boards, provision for a Real Time Clock (RTC), USB-to-serial adaptors and a PS/2 keyboard socket. Perhaps most importantly, it connects directly to (and mounts on) a 5-inch touchscreen for stunning graphics. It can be used as a fully integrated computer or as an advanced embedded controller. T HE EXPLORE 100 combines a high-performance microcontroller, programmed with the Micromite Plus firmware, with a large and colourful display panel that can draw graphics and sophisticated on-screen controls such as radio buttons, check boxes, spin boxes and more. The Explore 100 PCB is designed to match the dimensions of a standard 76  Silicon Chip 5-inch touch-sensitive LCD panel so that when the two are mated, they make a slim “sandwich”. This neat display/controller package can be treated as a single intelligent device and mounted in a control panel or on the front of an enclosure where it could display data and accept control input via the touch-sensitive screen. At the core of the Explore series is the Micromite Plus, a fast microcontroller with a built-in BASIC interpreter and drivers for touch-sensitive LCD displays, PS/2 keyboards, SD/ microSD cards and a host of special devices such as infrared remote controls and temperature sensors. This project has a dual personality. Firstly, it makes an ideal controller/ interface for anything that needs an insiliconchip.com.au Full-size SD card socket (up to 4GB) on back of LCD panel 37 I/O pins, including 17 analog inputs, SPI, I2C & serial Sockets for two MikroBUS Click boards General purpose LEDs Power LED Parallel interface to 5-inch touchscreen LCD. Can also be connected to 4.3-inch & 7-inch LCDs USB 2.0 interface Power socket: requires 5V <at> 200-800mA depending on the LCD Micromite Plus 32-bit microcontroller: 120MHz, 512KB flash memory, 128KB RAM PS/2 keyboard socket Socket for RTC module Piezo transducer (underneath) Reset supervisor (optional) Serial console with provision for USBto-serial bridge This photo summarises the features and capabilities of the Explore 100. These features include the 32-bit microcontroller with its in-built BASIC interpreter, 37 input/output pins for controlling external devices, two sockets for MikroElektronika click boards, a USB 2.0 interface, a connector for a PS/2 keyboard and on-board sockets for a super-accurate real time clock (RTC) module and a USB-to-serial converter. put system and control display panel. Examples include a sophisticated irrigation controller, an easy-to-use security system, a computer-controlled lathe and a general industrial controller. The Explore 100 can be mounted in a control panel where it can display graphs and numbers while accepting input commands on its touch-sensitive screen. It has 37 spare input/output lines which can be used for monitoring voltages, currents, switch closures, etc and can control external devices by closing relays, illuminating LEDs etc. Secondly, the Explore 100 can act as a completely self-contained computer, similar to the Tandy TRS-80, Commodore 64 or Apple II of yesteryear. It’s a bit like the popular Maximite featured siliconchip.com.au in SILICON CHIP in the March-May 2011 and September & October 2012 issues – but much more powerful! With its colourful LCD screen and PS/2 keyboard interface, you can learn to program it in the easy-to-use BASIC language and make use of the SD card facility to save and load programs and data. Using BASIC, you can draw graphic objects on the LCD panel, including lines, circles and boxes, as well as turn individual pixels on (or off) in any one of 16 million colours. You can use it for educating your children, tracking astronomical objects, writing games or just exploring a fun, easy-to-use computer system. LCD touch-screen panel The Explore 100 can use all the dif- ferent LCD panels that were described in the Explore 64 article last month, ranging from a tiny 1.44-inch display up to a monster 8-inch touchscreen with a resolution of 800x480 pixels. But it’s specifically designed to work with panels that use the SSD1963 display controller, ranging from 4.3 inches (diagonal) to 8 inches. The SSD1963 has a parallel interface, allowing the Micromite Plus to transfer data at high speed, so these screens are ideal for displaying complex graphics. Compatible displays can be found on eBay for US$25 to US$60. In addition to the display itself, they feature a touch-sensitive screen surface and a full-size SD card socket, both of which are fully supported by the Micromite Plus. September 2016  77 Explore 100: Features & Specifications • Mates with a 5-inch SSD1963-based touch-sensitive LCD with 800 x 480 pixels <at> 16 million colours (4.3, 7 & 8-inch panels are also suitable) • 32-bit CPU running at 120MHz with 512KB of flash memory (58KB available for programs) and 128KB RAM (52KB available) • In-built Microsoft-compatible BASIC interpreter with 64-bit integer, floating point and string variables, arrays and user-defined subroutines and functions • 37 I/O pins independently configurable as digital inputs or outputs; 17 can be used as analog inputs • Two MikroElektronika Click board sockets. Almost 200 Click boards are available including Ethernet, WiFi, Bluetooth, relay outputs, current measuring and more • • • • USB 2.0 serial interface for program editing and upload/download from a PC • • • In-built graphics commands, including pixel, line, circle and box • Standard Micromite features, including many communications protocols with SPI, I2C and 1-Wire plus in-built commands to directly interface with IR remote controls, temperature sensors and other devices • PWM or SERVO outputs and special embedded controller features such as variable CPU speed, sleep, watchdog timer and automatic start and run • Runs from 5V DC at up to 750mA (depending on LCD panel and brightness) Supports microSD and SD cards up to 64GB On-board sockets for accurate real-time clock and USB-to-serial converter PS/2 keyboard connector allows the Explore 100 to can act as a fully selfcontained computer and development system Six in-built fonts plus many more fonts that can be embedded in a program Advanced graphics commands include on-screen keyboards, buttons, switches, check boxes and radio buttons The mounting holes and physical dimensions of the Explore 100’s PCB are designed to match the 5-inch display version. The Explore 100 is secured to the back of the display using four spacers, one at each corner, to create a single rigid assembly. Input/output pins The Explore 100 has a 40-pin general purpose input/output (GPIO) connector. Various pins on this connector can be configured as analog or digital inputs, digital outputs, frequency inputs, The Explore 100 uses a 100-pin Microchip PIC32MX470 microcontroller programmed with the MMBasic firmware. The pins on this surface-mount package have a 0.5mm spacing which can be soldered with a standard temperature-controlled soldering iron. Photo courtesy Microchip. 78  Silicon Chip PWM outputs and much more. Also available on this connector are three high-speed serial ports (RS-232 TTL), an I2C interface and an SPI interface. In total, this connector has 37 I/O pins plus three pins for supplying power (ground, +3.3V and +5V). All of the I/O pins can act as either digital inputs or outputs, while 17 of them can also be used for measuring analog voltages. The GPIO connector can be linked to another PCB via a 40-way ribbon cable or connected directly to another PCB which can piggyback onto the Explore 100, making a 3-board sandwich. If you want to develop additional circuitry on a breadboard, you can purchase adapter boards that take a 40-way cable and spread the signal lines out to 0.1-inch pins that can plug into a standard solderless breadboard. They are intended for use with the Raspberry Pi but they work well with the Explore 100 (all except a few I/O pins are available). mikroBUS Click boards The Explore 100 has two sockets for mikroBUS Click boards, which is a standard developed by the European company MikroElektronika. At last count, there were almost 200 of these little boards providing just about any function that you can think of, including an Ethernet interface, Bluetooth, WiFi and GPS (plus many more). They are ideal for adding a specific function to the Explore 100 without the hassle of building it yourself. For example, by plugging in the TextToSpeech Click board, you can make voice announcements from your BASIC program and by using one of the WiFi boards, your program can generate a web page for access via the internet. Another example is the RF Meter click board which can be used to measure RF power over a frequency range of 1MHz to 8GHz with a 60dB dynamic range. The MikroElektronika catalog also includes an adaptor Click board which allows you to use the range of 10-pin Olimex UEXT Modules and these add a further 100 or so modules to the available selection. You can find compatible Click boards by searching the internet for “click board” and UEXT modules by searching for “UEXT”. A self-contained computer Perhaps the most exciting feature of the Explore 100 is that it makes an excellent self-contained computer. It starts up instantly, contains its own programming language and it’s just a matter of plugging in a keyboard to start experimenting. If this sounds familiar, it might be because you’ve read the articles on (or perhaps even built) the Maximite and the Colour Maximite, featured in SILICON CHIP in March-May 2011 and September-October 2012. The Explore 100 acts very much the same as these; the difference is that it uses a full colour LCD panel (rather than eight colours on a bulky VGA monitor) and runs twice as fast with four times the memory. The keyboard interface will work with a standard PS/2 keyboard and has support for the number pad, function and editing keys. The keyboard is essential if you are using the Explore 100 as a general-purpose, self-contained computer and is also useful when the Explore 100 is mounted in a control panel. In that case, you can plug in a keyboard and make changes to the program without pulling out your laptop. siliconchip.com.au An important part of a self-contained computer is the program editor. The full-screen editor used in the Micromite Plus is quite advanced and allows you to scroll through your program, search for text and cut or copy text to the clipboard and paste it somewhere else. It also displays your program on the LCD panel with colour coding, so that keywords are in one colour, comments in another and so on. The best part of the editor is that the run/edit/run cycle is very fast. When you have edited your program, you only need to press the F2 key on the keyboard to automatically save and run it. If your program contains an error, the BASIC interpreter will stop and display an error message. You can then press the F4 key to take you back into the editor, with the cursor positioned at the line which halted the program. After you have corrected the fault, pressing F2 will save and run the program again. It doesn’t get much easier than this. You can save programs on an SD (or microSD) card for safekeeping, although this is not strictly necessary as the program in the Micromite Plus is held in non-volatile flash memory, which means that it will not be lost when the power is turned off. However, using an SD card allows you to have multiple programs which you can load, edit and save at will. As a self-contained computer, the Explore 100 still has access to all the features of the Micromite Plus, including a USB (serial) interface, multiple fonts, an extensive suite of graphics commands and powerful input/output facilities. In addition, the two Click board sockets allow you to quickly add extra functions to expand the computer’s capability. For example, you could plug in an RS-232 Click board and use the Explore 100 to control an item of test equipment. Display size When you are using the Explore 100 as a self-contained computer, the larger the screen size the better. We recommend the 5-inch display as it works well and matches the size of the Explore 100 board. However, if you opt for a larger screen, the characters are correspondingly larger and easier to read. Clearly, the 7-inch display will be easier to read than the 5-inch display and the 8-inch display easier again siliconchip.com.au The Explore 100 has two sockets for mikroBUS-compatible Click boards. This is a standard developed by the European company MikroElektronika and covers a wide range of plug-in modules, including Ethernet, Bluetooth, WiFi and GPS modules – perfect for adding extra functions to the Explore 100. A WiFi board and a relay board are shown connected here (available from EastRising at www. buydisplay.com). Note though that the East­Rising panel uses non-standard interface connector pin-outs so you must use point-to-point wiring between the Explore 100 PCB and the LCD panel. Incidentally, the LCD panels do not cost a huge amount so you could always purchase both a 5-inch and a 7-inch panel and see which one better suits your requirements. That will also give you a back-up panel which could come in handy during testing. Console connections On the lower righthand corner of the Explore 100’s PCB are the serial console and USB console connectors. The console is an important part of the Micromite Plus as this is how you configure and program it using a larger computer, running a terminal emulator. The serial console and USB console work the same, so you can use either as the console or even both at the same time. In the Explore 64 article last month, we discussed when and why a serial console is handy (rather than just using the USB console). Basically it’s because the serial interface will remain working whenever the Micromite Plus is restarted, unlike the USB interface which will lose its connection on every restart. Depending on what type of development work you are doing, you may need to reset the Micromite Plus regularly and this is where the serial console is handy. If you are using the Explore 100 as a self-contained computer, this is less of an issue and generally the in-built USB interface will be fine. Serial port driver If you are using a version of Windows earlier than Windows 10, you must install the SILICON CHIP USB Serial Port Driver on your PC (available for download from the SILICON CHIP website) before you can use the USB console. The full instructions are inSeptember 2016  79 cluded with this driver. The Micromite Plus uses the standard CDC protocol and drivers are built into the Mac and Linux operating systems (and also into Windows 10). The PCB also features a footprint to suit a CP2102-based USB-to-serial converter which gives the Explore 100 a USB console that will not reset when the Micromite is reset. These converters are available from the SILICON CHIP Online Shop – see www.siliconchip. com.au/Shop/7/3543 The CP2102-based USB-to-serial converter needs a 6-pin header soldered to the appropriate pins and then it can be simply plugged into its position on the PCB. There are no special configuration commands that need to be run, as MMBasic defaults to using a serial console unless told otherwise. CON1 (ALTERNATIVES) MCP120 reset supervisor The PCB also has provision for installing a Microchip MCP120 supervisor device. This is optional and if installed, will monitor the main 3.3V power rail and reset the Micro80  Silicon Chip Q1 IRF9333 REG1 LM3940IT–3.3 S 1,2,3 D 5,6,7,8 POWER 1 2 3 X 4 GND 100nF +3.3V OUT IN 10 µF G 4 10 µF 100nF +5V JP1 CON2 MINI USB–B 1 2 3 X 4 3.3V OUT CP2102 BASED USB/SERIAL CONVERTER MODULE RXI Tx TXO Rx GND GND +3.3V +5V RESET S1 CON3 IC2 MCP120 470Ω Vdd MCLR 1 RST Vss 100nF Vcc 2 PROG (ICSP) 3 HEADER 4 +3.3V CON6 CONSOLE HEADER DTR Other features The Explore 100 is designed to use the full-sized SD card socket which is mounted on all compatible LCD display panels. However, if you are mounting the Explore 100 on the back of the 5-inch display as intended, the SD card will stick out the top. This could be a bit awkward in some situations so the SILICON CHIP version of the Explore 100 PCB also has an on-board microSD card socket (the original version has an SD card header only – see panel). You can use either, or both. The two sockets share the same SPI serial interface but have separate CS (card select) and CD (card detect) lines. Currently, the Micromite Plus has to be rebooted to change the SD card pins so you can’t switch between the sockets at will, although this might change in future versions You can open files on either card to read or write data from within the BASIC program. All files created are compatible with standard desktop computers so you can use the SD card to log data for later analysis. You could also mount a second SD card socket somewhere else using the alternate SD card connector (CON10), which is wired in parallel with the onboard microSD card socket. +5V OPTIONAL GND PGD PGC 5 CON8 MAIN I/O HEADER I C PULLUPS (OPTIONAL) 2 +5V +3.3V 4x 10k IC1 PIN66 IC1 PIN67 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 IC1 PIN59 PIN60 PIN61 PIN66 PIN67 PIN68 PIN70 PIN71 PIN72 PIN74 PIN79 PIN80 PIN81 PIN88 PIN90 PIN91 PIN92 PIN95 PIN96 PIN97 40 38 36 34 32 30 28 26 24 22 20 18 16 14 12 10 8 6 4 2 39 37 35 33 31 29 27 25 23 21 19 17 15 13 11 9 7 5 3 1 +3.3V +5V 1k JP2 mikroBUS CLICK 1 IC1 PIN23 AN PWM IC1 PIN29 RST INT IC1 PIN28 CS RX JP3 JP4 JP5 mikroBUS CLICK 2 IC1 PIN82 IC1 PIN27 AN PWM IC1 PIN9 IC1 PIN8 IC1 PIN73 RST INT IC1 PIN7 IC1 PIN69 CS RX IC1 PIN70 SCK IC1 PIN70 SCK IC1 PIN71 MISO SCL IC1 PIN66 IC1 PIN71 MISO SCL IC1 PIN66 IC1 PIN72 MOSI SDA IC1 PIN67 IC1 PIN72 MOSI SDA IC1 PIN67 3.3V 5.0V +5.0V 3.3V 5.0V +5.0V GND GND GND GND +3.3V TX +3.3V CON5 CON4 SC 20 1 6 TX MICROMITE+ EXPLORE 100 mite Plus if the voltage drops below a critical level (around 2.7V for the specified part). Basically, the MCP120 is designed to provide an extra level of protection in an industrial environment where power brownouts and electrical noise could cause a microcontroller like the siliconchip.com.au +5V +3.3V +3.3V 7x 100nF 470Ω 470Ω 10k 10Ω λ +3.3V LED2 λ LED1 λ LED3 K PB1 PIEZO BUZZER A A A 100nF 470Ω K K 100nF 37 46 3V3 PIN40 PIN38 PIN36 PIN34 PIN32 PIN30 PIN28 PIN26 PIN24 PIN22 PIN20 PIN18 PIN16 CON8 PIN14 CON8 PIN12 CON8 PIN10 CON8 PIN8 CON8 PIN6 CON8 PIN4 CON8 PIN2 CON5 PIN9 CON4 PIN9 62 86 C Vdd 58 38 39 48 47 12 10 11 40 42 1 5 4 B SCL2/RA2 TCK/RA1 RPF13/RF13 RPD15/RD15 RPD14/RD14 AN18/RPG8/RG8 AN16/RPG6/RG6 AN17/RPG7/RG7 RPF12/RF12 AN13/PMA10/RB13 RG15 AN27/PMD7/RE7 AN23/PMD6/RE6 3 AN22/PMD5/RE5 9 CTED7/RPC4/RC4 8 RPC3 /RC3 RPC3/RC3 7 RPC2/RC2 100 AN21/PMD4/RE4 99 RPE3/PMD3/RE3 98 AN20/PMD2/RE2 94 PMD1/RE1 9 3 93 PMD0/RE0 82 PMRD/RPD5/RD5 73 SOSC1/RPC13/RC13 69 RPD9/RD9 18 RPE8/RE8 19 RPE9/RE9 6 RPC1/RC1 53 RPF8/RF8 52 RPF2/RF2 17 TMS/CTED/RA0 87 RF0/RPF0/PMD11 89 RG1 /R RG1/RPG1/PMD9 PG1/PMD9 13 MCLR CON8 CON8 CON8 CON8 CON8 CON8 CON8 CON8 CON8 CON8 CON8 CON8 CON8 55 25 PGED1/AN0/RB0/RPB0 24 PGEC1/AN1/RB1/RPB1 59 RA3/SDA2 60 RA4/TDI/CTED9 61 RA5/TDO IC1 66 RA14/RPA14/SCL1 PIC32MX470 PIC3 2 MX470 67 RA15/RPA15/SDA1 F512L–120/PT 68 RD8/RPD8/RTCC 70 RD10/RPD10/SCK1 71 RD11/RPD11/PMCS1 72 RD0/RPD0/INT0 74 RC14/RPC14/T1CK RC14/RPC1 4 /T1CK 79 RD12/RPD12/PMD12 80 RD13/PMD13 81 RD4/RPD4/PMWR 14 RG9/AN19/RPG9/PMA2 20 RB5/AN5/VBUSON/RPB5 21 RB4/AN4 22 RB3/AN3/RPB3 26 RB6/RPB6/AN6 32 RB8/RPB8/AN8 33 RB9/AN9/RPB9/CTED4 34 RB10/AN10/RPB10/PMA13 USBID/RPF3/RF3 35 RB11/AN11/PMA12 41 RB12/AN12/PMA11 43 RB14/AN14/PMA1/RPB14 44 RB15/AN15/PMA0/RPB15 76 RD1/AN24/RPD1 PMD14/RD6 77 RD2/AN25/RPD2 78 RD3/AN26/RPD3 88 RF1/RPF1/PMD10 90 RG0/RGP0/PMD8 91 RA6/TRCLK 92 RA7/TRD3/CTED8 95 RG14/TRD2 PMD15/RD7 96 RG12/TRD1 PMA6/VREF+/RA10 97 RG13/TRD0 PMA7/VREF–/RA9 2 7 27 RB7/AN7/RPB7/PGED2 23 PMA8/RPF5/RF5 RB2/AN2/RPB2/PGEC3 Vss AVss Vss Vss Vss Vss Vcap OSC2 OSC1 64 63 15 31 36 45 65 7 5 85 X1 20MHz 3.3k BL LED A SD CS SD DI SD CLK SD DO TCH IRQ TCH DO CON9 PIN33 TCH DI TCH CS TCH CLK LCD D7 CON5 PIN8 CON4 PIN7 CON5 PIN7 LCD D6 LCD D5 LCD D4 LCD D3 LCD D2 LCD D1 LCD D0 CON4 PIN8 CON5 PIN10 CON5 PIN11 CON9 SSD 1963 LCD PANEL 40 38 36 34 32 30 28 26 24 22 20 18 16 14 12 10 8 6 4 2 39 +5V 37 35 33 RST 31 F CS 29 LCD CS 27 IC1 25 PIN42 23 21 19 17 10k 15 13 11 9 7 5 3 1 LCD RST LCD WR LCD RD CON14 MICROSD CARD SOCKET +3.3V CD 51 PIN51 1 GND MOSI 3 SCLK 4 MISO 5 CARD DETECT 6 83 CON7 KEYBRD +5V 6 5 4 3 2 84 29 28 50 7 WRITE PROTECT 8 CON10 ALTERNATIVE SD CARD 1 CON4 PIN10 CON4 PIN11 2 CS CON13 CON11 REALTIME CLOCK MODULE 3V BACKUP BATTERY 32K SQW 10 µF IC1 PIN66 SCL IC1 PIN67 SDA +5.0V VCC X5R 22pF Q2 BC338 E MISO 16 SCLK 54 VBUS 56 D– 57 D+ 49 RF4/RPF4/PMA9 2 Vdd Vdd Vdd Vdd VUSB Vdd MOSI 30 AVdd 22pF DS3231 (HAS INTERNAL 32kHz XTAL) CON12 SCL SDA VCC GND GND PIC32MX470F512L LEDS Vss K A Micromite Plus to run amok. Yet another feature is a piezo buzzer. This is mounted underneath the board and produces a “click” sound for ausiliconchip.com.au RST Vdd LM3940IT IRF9333 MCP120 8 4 1 GND IN GND OUT 100 1 Fig.1: the complete circuit of the Explore 100 module. It’s based on a 100-pin PIC32MX470F512L microcontroller IC1, running the Micromite Plus firmware. Many of the pins on IC1 are routed to various connectors for GPIO, the LCD panel, Click boards and other modules. The remaining circuitry consists of a power supply (based on REG1) and an optional supply supervisor (IC2). September 2016  81 Explore 100 Parts List 1 4-layer PCB, code 07109161, 135mm x 85mm 1 5-inch LCD panel with SSD1963 controller, touch interface and SD card socket OR 1 4.3-inch, 7-inch or 8-inch LCD panel with SSD1963 controller 1 5V DC 1A+ regulated DC power supply with 2.1/2.5mm inner diameter DC connector (centre pin positive) or micro-USB plug 1 PCB-mount DC socket, 2.1/2.5mm inner diameter, to suit power supply (CON1a; eg, Altronics P0620) OR 1 SMD micro-USB Type B socket (CON1b) 1 SMD mini USB Type B socket (CON2; Altronics P1308 or similar) 4 8-pin, two 6-pin and one 4-pin female header sockets (CON4CON6,CON11a,CON11b) OR 2 40-pin or 1 50-pin female header socket cut into sections (as above) 1 40-pin or 50-pin male header, 2.54mm pitch, snapped into two 2-pin, one 6-pin & one 8-pin sections (JP1, JP2, CON3, CON10) 1 3-pin right-angle header, 2.54mm pitch (CON6) 1 6-pin PCB-mount mini DIN socket (CON7; Altronics P1106 or similar) 1 dual-row 40-pin header, 2.54mm pitch (CON8) 1 dual-row 40-pin female header, 2.54mm pitch, or dual-row 40pin male header and matching IDC cable (CON9; see text) 1 microSD card socket (CON12, optional; Altronics P5717 or similar) 2 shorting blocks (JP1,JP2) 1 20MHz crystal, low profile (X1) 1 23mm buzzer (Altronics S6108) or 14mm buzzer (Altronics S6104 or S6105) (PB1; see text) 1 tactile pushbutton switch, four pin, through hole (S1) dible feedback when a GUI element on the screen is activated. The PCB also has three indicator LEDs. The green LED is the power indicator, while the red and yellow LEDs are general-purpose indicators 82  Silicon Chip 4 M3 x 12mm tapped spacers & 8 M3 x 6mm machine screws OR 4 M3 x 12mm untapped spacers & 4 x M3 x 16mm machine screws plus 4 x M3 nuts (LCD mounting) 1 M3 x 6mm machine screw with matching nut (for REG1) Semiconductors 1 PIC32MX470F512L-120/PF (120MHz) OR PIC32MX470F512L-I/PF (100MHz) in 100-pin TQFP package, programmed with Micromite Plus firmware (IC1) 1 MCP120-270GI/TO reset supervisor, TO-92 package (IC2, optional – see text) 1 LM3940IT-3.3 regulator, TO-220 package (REG1) 1 IRF9333PbF Mosfet (Q1, optional – see text) 1 BC338 transistor, TO-92 (Q2) 1 green 3mm LED (LED1) 1 red 3mm LED (LED2) 1 yellow 3mm LED (LED3) Capacitors 2 100µF 16V electrolytic 1 10µF SMD ceramic, 3216/1206 package, X5R or X7R dielectric 11 100nF ceramic disc or multilayer ceramic 2 22pF NP0 ceramic disc Resistors (0.25W, 5%) 2 10kΩ 4 470Ω 1 3.3kΩ 1 10Ω 1 1kΩ Where To Buy Parts A PCB and a short form kit with the four surface-mount components already soldered in place is available from Graeme Rixon – see www. rictech.nz/micromite-products SILICON CHIP can also supply the PCB, programmed microcontroller, RTC module and USB-to-serial adaptor as separate items, as well as a complete kit without the LCD – see our Online Shop for details. which can be controlled by the BASIC program to signify some status. Circuit details Referring to Fig.1, you can see that the Explore 100 is mostly a carrier for Two PCB Versions As noted in the text, the Explore 100 PCB was designed by Graeme Rixon of Dunedin, NZ – see www. rictech.nz/micromite-products The PCB sold by SILICON CHIP is virtually identical to this board, the main difference being that we’ve added an on-board micro-SD card socket (CON14). It’s linked directly to the original SD card header on the PCB (CON10). The SILICON CHIP PCB can also accept either a DC power socket or a micro-USB socket for CON1, whereas the alternative PCB now has provision for a DC socket only (in place of the original micro-USB socket). Finally, note that the PCB shown in the photos is a prototype and the final version differs in a few respects. In particular, the earlier version did not include Mosfet Q1 in the supply line to provide protection against reversed supply polarity. the 100-pin PIC32 chip (programmed with the Micromite Plus firmware) and the various connectors. Other than the voltage regulator and two transistors, there are no other active devices. The power input is protected from reverse polarity by Q1 which is a Pchannel Mosfet. This is optional and the board is designed so that you can run a blob of solder over two pads and dispense with the Mosfet. Having said that, it doesn’t cost much and has little effect on the circuit other than to protect it against damage, so we’d recommend you fit it. The input 5V is routed to a number of locations, including the Click board sockets, the real-time clock module (RTC), keyboard and I/O connector (CON8). It is also routed to the LCD connector (CON9) as some displays, particularly the 7-inch versions, use this for powering the backlight. REG1 is a low-dropout linear regulator which provides 3.3V to the PIC32 (Micromite Plus), the Click boards, I/O connector and the LCD panel. It is mounted on a large area of copper on the PCB which acts as a heatsink. As a result, it only gets slightly warm, even at full load. As with most designs involving a microcontroller, there are 100nF capacsiliconchip.com.au The Explore 100 is designed to work with LCD panels that use the SSD1963 display controller which range in size from 4.3 inches (diagonal) to 8 inches. The mounting holes and physical dimensions of the PCB are designed to match the 5-inch version of this display. The PCB mounts onto the back of the display with four spacers, one at each corner, which creates a single rigid assembly. itors across all supply lines to reduce voltage variations when pulses of current are drawn. These are through-hole components; the only surface-mount passive component is the 10µF multilayer ceramic capacitor for the PIC32’s internal 1.8V core regulator (connected to pin 85). The part used should have an X5R or X7R dielectric. The circuit shows pin 51 from IC1 connected to a 2-pin header. This I/O pin was spare and rather than ignore it, we routed it to a header so that it can be used for something if needed. The circuit also shows four 10kΩ resistors marked “I2C pull-ups”. These provide the option of pulling up the I2C signal lines to either 3.3V or 5V. Normally they are not required as most modules using I2C already have these resistors onboard. Jumper JP1 allows 5V from USB connector CON2 to supply power to the Explore 100. For normal use, a jumper should not be fitted as it could cause the 5V supply from CON1 to back-feed the USB host (a no-no!). However, if you want the USB connector to power the board, you can short JP1 but then you must not use CON1. Power supply The photos show an early version of the prototype which used a micro-USB connector for the power input. The final PCB has the option of using either a micro-USB or a standard DC power connector. It also has provision for the previously-described optional Mosfet to protect against accidental power polarity reversal. The most convenient power source for the Explore 100 is a 5V regulated plugpack. Make sure that you do not siliconchip.com.au The Explore 100 has two sockets for mikroBUS Click boards, allowing a range of functions to be easily added to the Explore 100. A twin-relay board and a WiFi module are pictured here but there are lots more. use one of the older transformer-style plugpacks which can easily deliver 8V or more when unloaded, even though they are labelled as 5V. An over-voltage of that magnitude will destroy IC2, the keyboard and any attached Click boards. The current drawn by the Explore 100 depends on the LCD panel used. With a standard 5-inch panel it will be about 500mA, not including the power drawn by the Click boards or I/O pins. With a 7-inch LCD, it will be about 750mA with the same provisos. PCB design The Explore 100 is built on a fourlayer PCB which, like the Explore 64 described last month, was designed by SILICON CHIP reader Graeme Rixon of Dunedin, New Zealand. Normally you would expect something of this complexity to fit on a double-sided board but because the 100-pin Micromite Plus in the centre connects to almost every other place on the board, a 4-layer design was required. A 4-layer PCB essentially consists of two thin double-sided PCBs glued in a sandwich, with a dielectric (insulator) in between. The layers are connected by drilled and plated vias which pass through all four layers. Note that some 4-layer boards have vias which don’t go all the way through. In fact, in some cases, they only pass through internal layers (“blind vias”), so they are not visible from the outside of the board. Our design doesn’t use any such vias, though. We’re using the outer (top and bottom) layers for signal and power routing and ground planes, with the two internal layers for additional signal routing only. Typically, for a four or 6-layer PCB, the internal layers are used for power and ground planes and the outer layers for signal routing but this is a signal-heavy board so a different scheme was used. Next month That’s all we have space for this month. Next month, we’ll give the full assembly details for the Explore 100, describe the display mounting and describe the setting-up, testing and SC fault-finding procedures. September 2016  83