Silicon ChipVoltage/Current Reference With Touchscreen, Pt.2 - December 2016 SILICON CHIP
  1. Outer Front Cover
  2. Contents
  3. Publisher's Letter: Controversial topics should be able to be discussed
  4. Feature: A Look At Nuclear Submarines by Dr David Maddison
  5. Project: Automotive Sensor Modifier by John Clarke
  6. Feature: Keep Track Of Anything With TrackR by Ross Tester
  7. Feature: Altronics: 40 Years And Going Strong by Leo Simpson
  8. Project: Arduino-Based Digital Theremin by Bao Smith
  9. Product Showcase
  10. Serviceman's Log: Two crook MacBook Pro laptops by Dave Thompson
  11. Project: Voltage/Current Reference With Touchscreen, Pt.2 by Nicholas Vinen
  12. Feature: Micromite Plus Advanced Programming, Pt.2 by Geoff Graham
  13. Project: El Cheapo Modules From Asia - Part 2 by Jim Rowe
  14. Subscriptions
  15. Vintage Radio: Grundig’s 1958 Taschen-Transistor-Boy 58 by Ian Batty
  16. PartShop
  17. Market Centre
  18. Advertising Index
  19. Notes & Errata: 50A Battery Charger Controller, Nov 16; WiFi Switch Using A Raspberry Pi, Nov 16; Precision Voltage & Current Reference With Touchscreen Control, Oct 16
  20. Outer Back Cover

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

You can view 45 of the 104 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 "Automotive Sensor Modifier":
  • Automotive Sensor Modifier PCB [05111161] (AUD $10.00)
  • PIC16F88-E/P programmed for the Automotive Sensor Modifier [0511116A.HEX] (Programmed Microcontroller, AUD $15.00)
  • Firmware (ASM and HEX) files for the Automotive Sensor Modifier [0511116A.HEX] (Software, Free)
  • Automotive Sensor Modifier PCB pattern (PDF download) [05111161] (Free)
Items relevant to "Arduino-Based Digital Theremin":
  • Firmware (.ino and .c) files for Giving the Ultrasonic Theremin a Volume Control (Software, Free)
  • Firmware (INO and C) files for the Arduino Theremin (Software, Free)
Articles in this series:
  • Arduino-Based Digital Theremin (December 2016)
  • Arduino-Based Digital Theremin (December 2016)
  • Giving the Ultrasonic Theremin A Volume Control (January 2017)
  • Giving the Ultrasonic Theremin A Volume Control (January 2017)
Items relevant to "Voltage/Current Reference With Touchscreen, Pt.2":
  • Touchscreen Voltage/Current Reference PCB [04110161] (AUD $12.50)
  • PIC32MX170F256B-50I/SP programmed for the Micromite-based Touchscreen Voltage/Current Reference v1.00 [0411016A.HEX] (Programmed Microcontroller, AUD $15.00)
  • Short Form Kit for the Touchscreen Voltage/Current Reference (Component, AUD $120.00)
  • Translucent Blue UB1 Lid for the Precision Voltage & Current Reference with Touchscreen Control (PCB, AUD $10.00)
  • Firmware (HEX) file and BASIC source code for the Micromite-based Touchscreen Voltage/Current Reference v1.00 [0411016A.HEX] (Software, Free)
  • Touchscreen Voltage/Current Reference PCB pattern (PDF download) [04110161] (Free)
Articles in this series:
  • Voltage/Current Reference With Touchscreen, Pt.1 (October 2016)
  • Voltage/Current Reference With Touchscreen, Pt.1 (October 2016)
  • Voltage/Current Reference With Touchscreen, Pt.2 (December 2016)
  • Voltage/Current Reference With Touchscreen, Pt.2 (December 2016)
Articles in this series:
  • Micromite Plus Advanced Programming (November 2016)
  • Micromite Plus Advanced Programming (November 2016)
  • Micromite Plus Advanced Programming, Pt.2 (December 2016)
  • Micromite Plus Advanced Programming, Pt.2 (December 2016)
Articles in this series:
  • El Cheapo Modules From Asia - Part 1 (October 2016)
  • El Cheapo Modules From Asia - Part 1 (October 2016)
  • El Cheapo Modules From Asia - Part 2 (December 2016)
  • El Cheapo Modules From Asia - Part 2 (December 2016)
  • El Cheapo Modules From Asia - Part 3 (January 2017)
  • El Cheapo Modules From Asia - Part 3 (January 2017)
  • El Cheapo Modules from Asia - Part 4 (February 2017)
  • El Cheapo Modules from Asia - Part 4 (February 2017)
  • El Cheapo Modules, Part 5: LCD module with I²C (March 2017)
  • El Cheapo Modules, Part 5: LCD module with I²C (March 2017)
  • El Cheapo Modules, Part 6: Direct Digital Synthesiser (April 2017)
  • El Cheapo Modules, Part 6: Direct Digital Synthesiser (April 2017)
  • El Cheapo Modules, Part 7: LED Matrix displays (June 2017)
  • El Cheapo Modules, Part 7: LED Matrix displays (June 2017)
  • El Cheapo Modules: Li-ion & LiPo Chargers (August 2017)
  • El Cheapo Modules: Li-ion & LiPo Chargers (August 2017)
  • El Cheapo modules Part 9: AD9850 DDS module (September 2017)
  • El Cheapo modules Part 9: AD9850 DDS module (September 2017)
  • El Cheapo Modules Part 10: GPS receivers (October 2017)
  • El Cheapo Modules Part 10: GPS receivers (October 2017)
  • El Cheapo Modules 11: Pressure/Temperature Sensors (December 2017)
  • El Cheapo Modules 11: Pressure/Temperature Sensors (December 2017)
  • El Cheapo Modules 12: 2.4GHz Wireless Data Modules (January 2018)
  • El Cheapo Modules 12: 2.4GHz Wireless Data Modules (January 2018)
  • El Cheapo Modules 13: sensing motion and moisture (February 2018)
  • El Cheapo Modules 13: sensing motion and moisture (February 2018)
  • El Cheapo Modules 14: Logarithmic RF Detector (March 2018)
  • El Cheapo Modules 14: Logarithmic RF Detector (March 2018)
  • El Cheapo Modules 16: 35-4400MHz frequency generator (May 2018)
  • El Cheapo Modules 16: 35-4400MHz frequency generator (May 2018)
  • El Cheapo Modules 17: 4GHz digital attenuator (June 2018)
  • El Cheapo Modules 17: 4GHz digital attenuator (June 2018)
  • El Cheapo: 500MHz frequency counter and preamp (July 2018)
  • El Cheapo: 500MHz frequency counter and preamp (July 2018)
  • El Cheapo modules Part 19 – Arduino NFC Shield (September 2018)
  • El Cheapo modules Part 19 – Arduino NFC Shield (September 2018)
  • El cheapo modules, part 20: two tiny compass modules (November 2018)
  • El cheapo modules, part 20: two tiny compass modules (November 2018)
  • El cheapo modules, part 21: stamp-sized audio player (December 2018)
  • El cheapo modules, part 21: stamp-sized audio player (December 2018)
  • El Cheapo Modules 22: Stepper Motor Drivers (February 2019)
  • El Cheapo Modules 22: Stepper Motor Drivers (February 2019)
  • El Cheapo Modules 23: Galvanic Skin Response (March 2019)
  • El Cheapo Modules 23: Galvanic Skin Response (March 2019)
  • El Cheapo Modules: Class D amplifier modules (May 2019)
  • El Cheapo Modules: Class D amplifier modules (May 2019)
  • El Cheapo Modules: Long Range (LoRa) Transceivers (June 2019)
  • El Cheapo Modules: Long Range (LoRa) Transceivers (June 2019)
  • El Cheapo Modules: AD584 Precision Voltage References (July 2019)
  • El Cheapo Modules: AD584 Precision Voltage References (July 2019)
  • Three I-O Expanders to give you more control! (November 2019)
  • Three I-O Expanders to give you more control! (November 2019)
  • El Cheapo modules: “Intelligent” 8x8 RGB LED Matrix (January 2020)
  • El Cheapo modules: “Intelligent” 8x8 RGB LED Matrix (January 2020)
  • El Cheapo modules: 8-channel USB Logic Analyser (February 2020)
  • El Cheapo modules: 8-channel USB Logic Analyser (February 2020)
  • New w-i-d-e-b-a-n-d RTL-SDR modules (May 2020)
  • New w-i-d-e-b-a-n-d RTL-SDR modules (May 2020)
  • New w-i-d-e-b-a-n-d RTL-SDR modules, Part 2 (June 2020)
  • New w-i-d-e-b-a-n-d RTL-SDR modules, Part 2 (June 2020)
  • El Cheapo Modules: Mini Digital Volt/Amp Panel Meters (December 2020)
  • El Cheapo Modules: Mini Digital Volt/Amp Panel Meters (December 2020)
  • El Cheapo Modules: Mini Digital AC Panel Meters (January 2021)
  • El Cheapo Modules: Mini Digital AC Panel Meters (January 2021)
  • El Cheapo Modules: LCR-T4 Digital Multi-Tester (February 2021)
  • El Cheapo Modules: LCR-T4 Digital Multi-Tester (February 2021)
  • El Cheapo Modules: USB-PD chargers (July 2021)
  • El Cheapo Modules: USB-PD chargers (July 2021)
  • El Cheapo Modules: USB-PD Triggers (August 2021)
  • El Cheapo Modules: USB-PD Triggers (August 2021)
  • El Cheapo Modules: 3.8GHz Digital Attenuator (October 2021)
  • El Cheapo Modules: 3.8GHz Digital Attenuator (October 2021)
  • El Cheapo Modules: 6GHz Digital Attenuator (November 2021)
  • El Cheapo Modules: 6GHz Digital Attenuator (November 2021)
  • El Cheapo Modules: 35MHz-4.4GHz Signal Generator (December 2021)
  • El Cheapo Modules: 35MHz-4.4GHz Signal Generator (December 2021)
  • El Cheapo Modules: LTDZ Spectrum Analyser (January 2022)
  • El Cheapo Modules: LTDZ Spectrum Analyser (January 2022)
  • Low-noise HF-UHF Amplifiers (February 2022)
  • Low-noise HF-UHF Amplifiers (February 2022)
  • A Gesture Recognition Module (March 2022)
  • A Gesture Recognition Module (March 2022)
  • Air Quality Sensors (May 2022)
  • Air Quality Sensors (May 2022)
  • MOS Air Quality Sensors (June 2022)
  • MOS Air Quality Sensors (June 2022)
  • PAS CO2 Air Quality Sensor (July 2022)
  • PAS CO2 Air Quality Sensor (July 2022)
  • Particulate Matter (PM) Sensors (November 2022)
  • Particulate Matter (PM) Sensors (November 2022)
  • Heart Rate Sensor Module (February 2023)
  • Heart Rate Sensor Module (February 2023)
  • UVM-30A UV Light Sensor (May 2023)
  • UVM-30A UV Light Sensor (May 2023)
  • VL6180X Rangefinding Module (July 2023)
  • VL6180X Rangefinding Module (July 2023)
  • pH Meter Module (September 2023)
  • pH Meter Module (September 2023)
  • 1.3in Monochrome OLED Display (October 2023)
  • 1.3in Monochrome OLED Display (October 2023)
  • 16-bit precision 4-input ADC (November 2023)
  • 16-bit precision 4-input ADC (November 2023)
  • 1-24V USB Power Supply (October 2024)
  • 1-24V USB Power Supply (October 2024)
  • 14-segment, 4-digit LED Display Modules (November 2024)
  • 0.91-inch OLED Screen (November 2024)
  • 0.91-inch OLED Screen (November 2024)
  • 14-segment, 4-digit LED Display Modules (November 2024)
  • The Quason VL6180X laser rangefinder module (January 2025)
  • TCS230 Colour Sensor (January 2025)
  • The Quason VL6180X laser rangefinder module (January 2025)
  • TCS230 Colour Sensor (January 2025)
  • Using Electronic Modules: 1-24V Adjustable USB Power Supply (February 2025)
  • Using Electronic Modules: 1-24V Adjustable USB Power Supply (February 2025)

Purchase a printed copy of this issue for $10.00.

Precision Voltage & Current Reference With Touchscreen Control Uses a chopper-stabilised op amp Pt.2: By Nicholas Vinen We introduced this instrument with its comprehensive touchscreen control in the October issue. It is a first for SILICON CHIP in that is is a test instrument with no physical switches or knobs to control its functions; everything is done via the touchscreen. In this second and final article, we give the construction details and provide all the testing and operation instructions. V IRTUALLY ALL the components are mounted on a single PCB coded 04110161 and measuring 140 x 85mm. Fig.3 shows how the components are fitted in both sides of the board. All the SMDs are mounted on one side while the through-hole components and the LCD BackPack mod64  Silicon Chip ule go on the other side. The only offboard components are the four insulated banana sockets.The PCB assembly and all four banana sockets are mounted on the lid, with short lengths of stiff wire joining the sockets to the board. Start by fitting the SMDs. The only slightly tricky parts are voltage refer- ence REF1 and the USB socket (micro or mini, depending on which you have decided to fit). These have the most closely spaced pins. However, there are only a few pins on each and the other components have much more generous spacing, making them quite easy to solder. siliconchip.com.au Start with REF1. Use a magnifying glass and a good light to identify the pin 1 dot on top of its package and place it on the PCB near its pads, with pin 1 closest to the adjacent board edge. Place a little solder on one of its corner pads, then heat that solder while sliding the part into place. Check that all its leads are over their associated pads; if not, reheat the solder joint and gently nudge it into place. Alternatively, having tinned one of the pads, you can carefully line up the IC and then press down gently on it while heating the solder on that pad to let it “sink in”. Either way, you should now have the part tacked down and properly aligned with all of its pads. You can then proceed to solder the remaining pins. This is easiest if you first apply a little flux paste to the pins. Don’t worry if you bridge any of the pins with solder; simply add a little flux paste and use solder wick to remove the excess solder. When finished, refresh the solder joint on the pin you first used to tack the part down, either by adding a little flux and heating it (the preferred method) or by adding some fresh solder. Clean off any flux residue using flux cleaner or alcohol (eg, methylated spirits or isopropyl alcohol) and carefully check all six leads to ensure that they have proper fillets and no bridges. Assuming you’re happy with that, move on to solder the remaining ICs (IC1-IC6 and REG1) using a similar technique. If you can’t locate a pin 1 dot or divot on any of these, check for a bevelled edge; pin 1 is on that side. Discrete semiconductors Next, move on to the smaller discrete semiconductors, ie, D1-D4, Q2, Q3, ZD1 and ZD2. Note that with the exception of D1, these are all in essentially identical packages so don’t get them mixed up. All you need to do is tack down one pin as above, check the placement and then solder the remaining pin(s). Now move on to the resistors and capacitors, using a similar technique. None of them are polarised. The resistors are labelled with their value in a shortened code (eg, 22kΩ = 223 or 2202) however you may need a magnifier to read them. SMD ceramic capacitors are not labelled. Note that the three 10µF capacitors may be larger than the others and the pads provided are more widely spaced to suit. The 0.1Ω resissiliconchip.com.au Parts List 1 PCB, code 04110161, 140 x 85mm 1 Micromite LCD BackPack module 1 UB1 jiffy box (157 x 95 x 53mm) 1 black laser-cut lid to suit jiffy box (optional) 2 red panel-mount binding posts/ banana sockets (IN+,OUT+) 2 black panel-mount binding posts/ banana sockets (IN-, OUT-) 3 0.9mm PCB pins (TP1-TP3) (optional) 1 47µH 6x6mm SMD inductor (L1) 1 220µH 3.2x2.6mm/1210 SMD inductor (L2) 18 HK4100F-DC5V-SHG SPDT relays (RLY1-16,RLY19,RLY20) 2 G6H2-5V DPDT relays (RLY17,RLY18) 1 SMD mini USB type B connector (CON1a) and/or 1 SMD micro USB type B connector (CON1b) 1 18-pin low-profile female header (or cut down 40-pin dual-wipe DIL socket) (CON2) 1 18-pin female header (or cut down 20+ pin female header) (CON2) 1 200mm length 0.7mm diameter tinned copper wire (or four component lead off-cuts) 4 M3 x 25mm machine screws 4 M3 x 15mm Nylon tapped spacers 4 3mm ID 6mm OD 1mm thick Nylon washers Semiconductors 4 TPIC6C595 8-channel SPI relay drivers, SOIC-16 (IC1-IC4) tor is larger again but a similar technique can be used, although you might need to hold the iron on the joint a bit longer to produce a good joint. The smaller inductor (L2) can be fitted in the same manner as the resistors and capacitors. And while a similar technique is required for L1, its much larger thermal inertia presents some challenges. Be sure to spread a little flux paste on both pads before starting. Also, when you slide the part onto the pad with the molten solder, you will find it solidifies as the inductor heats up and it will be several seconds be- 1 ADA4522-4ARZ quad precision op amp, SOIC-14 (IC5) 1 LM358, SOIC-8 (IC6) 1 MAX6071-2.5 precision 2.5V reference, SOT-23-6 (REF1) 1 CS5173 boost regulator, SOIC-8 (REG1) 1 BSP030 N-channel Mosfet, SOT-223 (Q1) 2 BC846 NPN transistors, SOT-23 (Q2,Q3) 1 5.6V SOT-23 zener diode (ZD1) 1 39V SOT-23 zener diode (ZD2) 1 DB2W60400L 60V 2A Schottky diode (D1) 3 BAT54S dual serial Schottky diodes (D2-D4) Capacitors (2012/0805 X7R 50V unless stated) 3 10µF 50V X5R 3216/1206 4 4.7µF 6.3V X5R 1 1µF 16V X7R 9 100nF 1 10nF 2 47pF 50V C0G/NP0 Resistors (0805 1% unless stated) 2 270kΩ 1 3kΩ 2 47kΩ 2 2.2kΩ 3 30kΩ 1 1.5kΩ 1 22kΩ 6 1kΩ 51 12kΩ 0.1% 1 750Ω 4 10kΩ 3 100Ω 1 4.7kΩ 2 47Ω 1 0.1Ω 1% 3W 2512 1 0Ω Note: a short form kit will be available for this project from the SILICON CHIP online shop which includes everything except for the BackPack kit (available separately), box, tinned copper wire and optional PCB pins. fore you can finally move the part into its correct location. Lastly, when applying solder to the second pad, you will need to heat it for a few seconds before a good solder joint will form. Now fit Mosfet Q1. Start by spreading a thin smear of flux paste on the large pad, then add solder to one of the smaller solder pads and slide the part into place, as with the other components. After that, solder the other two small pins before turning your attention to the large tab. As with L1, it will take a few seconds to heat the part and December 2016  65 RLY20 COIL COIL COIL COIL COIL RLY9 NC NO RLY10 NO NO RLY11 NC NO RLY12 NC NO RLY13 NC NO RLY14 NC NO NC RLY15 COIL IN− COIL COIL NC COIL COIL COIL COIL NO COIL RLY2 RLY3 RLY4 RLY5 RLY6 RLY7 RLY8 + RLY1 NC COIL NO COIL NC COIL NO COIL TP3 (VDIV) NC COMMON COMMON NO COMMON COMMON NC COMMON COMMON NO COMMON COMMON NC COMMON COMMON NO COMMON COMMON NC COMMON COMMON NO OUT+ COMMON COMMON NO NO NC COIL COMMON RLY19 NO RLY16 + RLY18 NC COIL COMMON NC IN+ TP1 (2.5V) MICROMITE LCD BACKPACK (ABOVE) NC NC NO TP2 (VREF) COIL OUT− RLY17 16101140 Fig.3: the parts layout diagrams for both sides of the main Voltage/Current Reference PCB. All SMD components go on one side of the board, as shown at top, while the relays and LCD BackPack are mounted on the other side. Only one of USB power input connectors, CON1a and CON1b, should be fitted. Note that the 18-pin female header that the LCD BackPack is plugged into actually consists of two stacked headers (see text). PCB up so that they are hot enough for the solder to flow properly and form a good joint. The final SMD part to fit is either CON1a or CON1b (one of the USB sockets). Normally, both would not be fitted, as plugging them both into two different USB sockets would potentially damage one or both of the power supplies. 66  Silicon Chip Decide which one you want to use, then solder one of its mounting lugs to the board, using a similar technique as before. Make sure all the small pins are properly aligned over the pads before soldering the other mounting lugs and finally, the pins themselves. You will probably need to apply flux and some solder wick to remove any bridges which form, as the pins are closely spaced. We’ve elongated the pads for both connectors to make this easier. Assembling the BackPack If you haven’t already done so, you will need to assemble the Micromite LCD BackPack, as described in the February 2016 issue. This is a pretty quick job as it only involves a dozen siliconchip.com.au That makes it easier to supply power for testing and also provides access to the serial console, should you need it. Once you’ve assembled the BackPack PCB, mount the LCD touchscreen in place. If you have purchased a kit which already has the correct software loaded, then you can test it by applying 5V power to the board and check that the display comes up correctly. The software should detect that the main board is not attached and display a message indicating this. You can now test the touch function by touching that message to dismiss it. If you don’t have a pre-programmed chip, there are two ways to program it. Firstly, you can download the HEX file for this project from the SILICON CHIP website and load this onto your PIC32 using a PICkit 3 and Microchip’s MPLAB X IPE (Integrated Programming Environment). You can then plug the chip in and proceed as per above, however, you need a PICkit 3 to do this, plugged into the ICSP header on the BackPack board. Alternatively, if you have a PIC32 programmed with MMBasic (or you can program one), you can then plug this into the LCD BackPack, power it up, connect it to your PC using a USB/ serial converter (as described in the February 2016 issue) and then set it up using the free MMChat software. To get it going, you will need to set up the TFT and touch interfaces (also described in the February 2016 issue), then download the BASIC source code for this project from the SILICON CHIP website and upload it to the Micromite chip, as detailed in the panel on page 70. Through-hole parts or so through-hole components. Note that this project was not designed to use the Micromite Plus LCD BackPack (described last month); it requires multiple 5V-tolerant pins, which is one of the few incompatibilities between the two. So for now, you will need to stick with the regular LCD BackPack. Note that the BackPack is available as a complete kit from the SILICON CHIP siliconchip.com.au Online Shop and you can even get it with the BASIC software for this project pre-loaded – see www.siliconchip. com.au/Shop/20/4021 One small change that we suggest you make while building the LCD BackPack is to use a right-angle header for CON1 (power and console), with the pins projecting out the side of the module, as shown in our photos. Now flip the board over and fit CON2. This is an 18-pin low-profile female header which can be cut from a 36-pin (or larger) DIL socket. 40-pin sockets are probably the most common part which can be used. Carefully separate one of the pin strips from the rest of the socket by cutting the plastic cross-braces with a side cutter. Trim off any large projections and cut off any excess pins so that you are left with 18 (be careful not to cut the 18th pin or you may have to throw it away and start again). Now, feed the four M3 x 25mm machine screws through the BackPack mounting holes on the main PCB (heads on the SMD component side) December 2016  67 The Micromite LCD BackPack module is plugged into the header socket on the relay side of the PCB and is secured in place using M3 x 15mm tapped Nylon spacers and machine screws (see text). and place one of the 1mm thick Nylon washers over each screw shaft. Screw a 15mm tapped spacer over each shaft until it is almost tight. Next, detach the TFT module from the BackPack PCB and unscrew the four tapped spacers. That done, plug the full-height 18-pin female header into the low-profile header you made earlier (from the DIL socket) and plug that assembly onto the 18-pin male header on the underside of the BackPack PCB. Push it all the way home. Now place the BackPack PCB over the four screw shafts sticking out of the tapped spacers and lower it down so that the pins of the female header go through the holes in the corresponding pads on the main board. That done, screw the 9mm tapped spacers removed from the BackPack earlier on top of the remaining shafts in order to hold the BackPack PCB in place while you solder the female header to the SMD component side of the main board. Make sure it’s sitting flat on the PCB before doing so. Now that the header has been soldered to the board, remove the BackPack PCB and its mounting screws and spacers and keep them until later. as shown in Fig.3. Make sure they are pushed down fully onto the board before soldering the pins. It’s a good idea to solder two diagonally opposite pins and then check the relay is sitting flat before soldering the remaining pins. The orientation of each of the 18 HK4100F relays is obvious, as they can only be inserted one way. Again, make sure they are pushed fully into the PCB before soldering. Now you can re-attach the BackPack PCB, as you did before. Make sure that all the screws and spacers are done up tightly. But before plugging the TFT module back into the BackPack PCB, trim the 14 solder joints adjacent to the LCD screen as short as possible using sharp side-cutters so that they won’t interfere with the lid later (these joints are for the 14-pin header which was supplied pre-soldered to the module). You can now plug the TFT module into the BackPack and attach it to the Nylon spacers using the 6mm machine screws supplied with the BackPack kit. Don’t lose the four extra Nylon washers or longer screws supplied with that kit as you will need them to attach the whole assembly to the lid shortly. Remaining on-board parts You can do some testing before proceeding to fit the unit into the case. It’s a good idea to check that the unit’s current drain is within the normal range when it’s first powered up. A current-limited power supply Basically, the only components left to fit to the PCB are the 20 relays. The two G6H2 DPDT relays must be soldered with their pin 1 markings towards the nearest edge of the board, 68  Silicon Chip Testing is handy to have, but not strictly necessary. You can use any 5V supply capable of delivering at least 500mA, connected in series with a DMM set to measure amps. It’s easiest to make the supply connections to CON1 on the LCD BackPack module. Be careful that you make the connections properly, especially since there is no reverse polarity protection; check the labels on the BackPack PCB. The current drain should be around 50-200mA, depending on the setting of the backlight trimpot. If you get a reading much higher than this, switch off immediately because that suggests you have a short circuit or an incorrectly placed component somewhere on the board. If you have an excessive current drain, you can troubleshoot further by unplugging the BackPack and briefly connecting a current-limited 5V supply across pins 1 & 2 of RLY17, with +5V to pin 1; pin 1 can be identified as having a square pad and pin 2 is adjacent. Without the BackPack attached, only a few milliamps should flow. Much more suggests that there is either a short circuit somewhere on the board (eg, due to bridged pins), an IC has been soldered with the incorrect orientation or one of the other parts is incorrectly installed. On the other hand, if the current is too low then that also suggests that there is a problem, possibly with the microcontroller programming or soldering, or its bypass capacitors. Proceed with troubleshooting the BackPack module as per the instructions in the February 2016 issue. Now is a good time to check that you have very close to 2.5V between TP1 and a convenient ground point, such as the shell of the USB connector. You should also find virtually the same voltage at TP2 at this point. Once the micro has been programmed and the software is running, you should be able to further verify the operation of the unit. On power-up, you should be greeted with the initial screen shown in Fig.4. Touch the voltage display below the top bar and on the keyboard which appears (Fig.6), press “2” and then “V”. Then press the line which reads “Zout=highΩ” at the bottom of the screen. You should get the display shown in Fig.7 and immediately upon pressing at the bottom of the screen, you should hear the relays click and the siliconchip.com.au current drain will jump as the coils are energised. Now connect a voltmeter between the OUT+ and OUTterminals at the left side of the board and you should measure very close to 2V. That verifies that the reference, divider ladder and relay drivers are all working properly. You can now test the boost regulator and PGA by again touching the voltage setting just below the top bar and this time entering “4V”. As soon as you’ve pressed the “V” button, the boost regulator will be enabled and the 5V current drain should jump again. Assuming all is well, you can measure 4V between OUT+ and OUT- and 5V (ie, Vref) between TP2 and ground. If you can access L2, you should be able to measure the voltage on either side of it, relative to ground, at around 39V. This is the output of the boost regulator. If you don’t get 4V at OUT+ or you find the unit locks up or draws an excessive amount of current, you may have a problem with REG1 or one of its associated components. But note that there is quite a large initial spike in the current drawn from the 5V supply when it starts up, so if you are powering the unit from a computer USB port, it may well detect this as a fault and shut the port down. So it’s best to power the unit from a 5V charger or bench supply. Assuming it’s all working so far, it’s worthwhile doing one final check before putting the unit in its case and that is to test the operation in current reference mode. To do this, touch the top of the screen and select “Current Reference”, then press the box below this and enter “10mA”, then press on “Zout= off” at the bottom of the screen to turn it on (Fig.8). It’s then just a matter of connecting an ammeter set to milliamps mode between the output of your 5V supply and the OUT+ terminal. You should get a reading close to 10mA±0.1mA (plus the tolerance of your ammeter). Basically, if the reading is between 9.5mA and 10.5mA then chances are everything is working correctly. Case preparation The case requires 10 holes in total: one in the side for the USB power supply socket, one rectangular cut-out in the lid for the touchscreen, four 3mm holes in the lid for mounting the whole assembly and four larger holes in the siliconchip.com.au These two views show how the Micromite LCD BackPack module and the Voltage/ Current Reference relay PCB are stacked together with the front panel. lid for the insulated banana input/output sockets. We’re not going to go into detail here because by far the simplest and neatest approach is to purchase a laser-cut panel from SILICON CHIP to replace the existing case lid. These are made from 3mm black acrylic with a matte surface on the top side and the holes are all neat and accurately cut. The panel is sized to fit exactly on a standard UB1 jiffy box and uses the same mounting holes for attachment. Also, the four banana socket holes in the laser-cut lid are profiled for a snug fit and to prevent accidental rotation of the sockets. The only disadvantage compared to the lid supplied with the case is that the corner screw mounting holes are not recessed, so the screw heads will project slightly above the lid. Also, you may need to use longer self-tapping screws than those supplied with the case (depending on the manufacturer). Still, we think this is the easiest approach that most constructors will adopt. If you still want to cut the holes in the lid yourself, download the drilling template PDF from the SILICON CHIP website and use this as a guide. Once you have prepared the lid (or obtained the laser-cut version), attach the completed PCB assembly to its underside with 1mm thick Nylon washers between the top of the TFT module PCB and the back side of the lid. Attach the module to the lid using M3 x 8-9mm machine screws (ideally, black). Make sure that the touchscreen surface is flush with the top of the lid and that it hasn’t caught on any plastic burrs or projections. Now remove the retaining nuts from the four insulated banana sockets, push the sockets through from the top side of the lid and then re-attach the nuts on the other side. Do them up tightly. Make sure that the red and black sockets are in the correct locations – if in doubt, refer to the photos in this article. Next, feed short lengths of tinned copper wire through the banana socket tabs and bend them over to go through their corresponding pads on the PCB. Solder these wires at both ends to complete the electrical assembly. Final assembly The only additional hole is the USB socket access hole, on the side of the case. This cut-out should be approximately rectangular in shape (12mm wide, 6mm high), with its upper edge positioned 32mm down from the top edge of the box. Its exact location depends on which USB socket you have fitted. The easiest approach is to download the drilling template from the SILICON CHIP website, cut out the side panel, attach it to the side of the UB1 jiffy box case and then drill a series of small holes around the inside of the appropriate cut-out. Knock out the December 2016  69 Uploading The BASIC Code To The BackPack The simplest approach here is to purchase a pre-programmed PIC or, if starting with a blank PIC, flash it with the supplied HEX file which includes MMBasic along with all our code. Alternatively, if you are starting with a regular LCD BackPack kit or you want to modify the software, here’s how you load the BASIC code. First, program your PIC32 with the MMBasic 5.2 firmware and establish a serial console connection using a USB-serial adaptor. You will need to set up the display and touch panel as detailed in the February 2016 article on the LCD BackPack. Note that the BackPack (and, if attached, the main board) are powered from the PC during this process. Then you need to load “SCVoltCurRef_Library.BAS” into the Micromite, which contains the fonts. Having downloaded this from the SILICON CHIP website, grab a copy of Jim Hiley’s Windows/Linux “MMEdit” program. It is freeware and available from www.c-com.com.au/MMedit.htm For Windows, download the setup file called MMEdit.exe and run it. It will work on any Windows version since XP. Run MMEdit and open the BASIC file mentioned above. Next, ensure the “Auto crunch on load” option in the Advanced menu is selected and set up the COM port to communicate with the Micromite by selecting the “New . . .” option under the Connect menu. You can then click the “Load and run current code” button, rightmost in the toolbar under the menu (with the icon that looks like a blue stick figure running while holding a torch). You should get a progress dialog and the upload will take around 30 seconds. If it fails, close this window and re-check the COM port settings; make sure you don’t have the port open in another program. Once the upload is complete, the MMChat console window should automatically appear. You can then execute the “LIBRARY SAVE” command (note: if you have previously done this, you will need to run “LIBRARY DELETE” first). After a brief delay, it should display the MMBasic prompt (>). You can verify that the code was saved by issuing a “MEMORY” command, which should yield a response like: > memory Flash: 0K (0%) Program (0 lines) 14K (24%) Library 46K (76%) Free Now open the file “SCVoltCurRef_Main.BAS” file (which is supplied in the same ZIP as the BASIC file loaded earlier) and, again ensuring that the “Auto crunch on load” option is enabled, upload that to the PIC32. The MMChat window should appear once this is complete. You can then type in “OPTION AUTORUN ON”, press enter, then execute the “RUN” command to start the program. Now unplug the USB lead and proceed with the remainder of construction/set-up. centre plastic section and file it into a rounded rectangle shape, then clean off any swarf and plastic pieces and drop the PCB assembly down into the case temporarily to make sure the USB socket lines up with the hole. Using it There are four basic ways to use the unit: (1) as a divider/attenuator, (2) as a voltage reference, (3) as a current reference or (4) as a resistance reference (albeit with a rather limited range). The first step, once the unit is up and running, is to select the mode and that’s done by touching the line right at the top of the screen. A list of six 70  Silicon Chip available modes appears and you select the one you want by pressing on it (see Fig.5). The two extra modes allow you to enable or disable the output buffering in the attenuation and voltage reference modes. Normally you’ll want to enable the buffering to reduce the chance of output loading affecting the accuracy of the unit, however, you need to use unbuffered mode for input voltages outside the range of 0-38V (up to ±60V). Having selected the mode, the next step is to set the required parameter by pressing on the display area just below the top mode bar and then using the keypad which appears. Taking each mode in turn, this parameter is: • Divider/attenuator mode: the attenuation factor between zero (100% attenuation) and one (no attenuation). There are a number of different ways to set this. You can enter a decimal number between zero and one, or you can enter a fraction like “1/2” or “2/3” (decimals are allowed in both the top and bottom parts), or you can enter a divider ratio such as “3:1” which operates like a resistive divider. In this case, it would operate similarly to a 3kΩ/1kΩ divider in that it is equivalent to a ratio of “1/4” or “0.25”. You can also enter a value in decibels (including decimal places), in which case, the attenuation factor will be calculated based on that. For example, entering 20dB is equivalent to entering “1/10” or “0.1” (see Fig.9). • Voltage reference mode: the desired output voltage, entered in either V or mV. The range is either 0-37V or 0-37000mV. You can also enter a fraction such as “2/3V”. • Current reference mode: the desired current to sink/source, in either A or mA. The range is either 0-5A or 0-5000mA. You can also enter a fraction such as “1/20A”. • Resistance reference mode: the desired resistance, between 3.5kΩ and 114kΩ. Enter the value desired, in either kΩ or Ω but note that the actual resistance you get (which will be displayed on the screen later; see Fig.10) may not be exactly what you have entered. For values in the range 4-12kΩ, chances are you will get the exact value you entered or very close (off by maybe one ohm). For 3.5-4kΩ and 12-18kΩ, expect a value within a few ohms of the target. Above 18kΩ, the error increases to around ±10Ω at 22kΩ, ±50Ω at 33kΩ and up to 1kΩ or more, above 55kΩ. Having entered your desired parameter, the actual output that you will get will be shown just below it. This display is most helpful in divider/attenuator mode as you can see the entered value (which may be in decibels or a fraction), along with the equivalent decimal value below. However, in all modes, the tolerance figure may be helpful. Towards the bottom of the screen, the approximate input and output impedances are shown. The output resistance is fixed and depends on the mode; it is normally either 0Ω (ie, a buffered output) or 2.4kΩ (the ladder output resiliconchip.com.au Fig.4: assuming everything is working properly, this is what should appear on the LCD when the unit is first powered up. Fig.5: after touching the bar at the very top of the screen, you can select from the six different modes shown. here. Fig.6: when you touch a value that can be changed, a keyboard like this appears. The keyboard layout changes to suit the value being entered. Fig.7: the unit has now been set as a 2V voltage reference with buffered output but the output has not been switched on yet, as shown at bottom. Fig.8: it is now operating as a 10mA current reference and the output is on. Note the always-present terminal labels at the left side of the screen. Fig.9: in divider mode, the division ratio can be entered in multiple ways; in this case, in decibels (dB). The attenuation factor is shown below. Fig.10: the resistance reference mode is somewhat limited; the selected resistance is shown at the top while the actual resistance is shown below. Fig.11: the set-up menu which provides access to the calibration menu and allows you to set up the output for manual or pulse mode. Fig.12: the calibration screen after pressing the Automatic calibration button. Note that the PGA resistors are now shown with the measured values. sistance). Note that initially, this will show “highΩ” or “output off”, indicating that the output is not yet switched on and you will need to press on this area to activate the output. The input resistance also depends on the mode as well as the current parameter setting (ie, attenuation, output voltage, etc). It ranges from 3.5kΩ to 114kΩ, ie, the same range as available in resistance reference mode. This means that if you’re using the unit to attenuate an external signal, depending on the attenuation factor, it may need to drive a load as low as 3.5kΩ. But you can always enter the required ratio and then check what the actual input impedance will be before proceeding. Note that most of the time, it’s the reference voltage generator driving the ladder so the input impedance is only really important in attenuator mode. While the unit is running, note also that on the left side of the screen, the inputs and outputs connections are shown so that you can always refer to these while wiring it up. Also note that the current mode and parameters are stored in non-volatile memory and will be restored when the unit is powered back up, however it will always power up with the output disabled. siliconchip.com.au Making connections Connections are made as follows, depending on the mode: • Divider/attenuator: the signal source is connected between IN+ and IN-, and the output is available between OUT+ and OUT-. An external connection between IN- and OUT- is required for correct operation. • Voltage reference: IN+ and IN- are not connected internally. The referDecember 2016  71 The completed unit, prior to installation in the case. The two input sockets (IN+ & IN-) are at top left, while the output sockets (OUT+ & OUT-) are immediately below them. ence voltage is available between the OUT+ and OUT- terminals. • Current reference: either connect OUT+ to your external positive supply rail and use OUT- as a current source, or connect OUT- to your external ground and use OUT+ as a current sink. • Resistance reference: the resistance shown is available between the IN+ and IN- terminals. OUT+ and OUTare not used. Calibration Automatic calibration primarily involves sensing the value of the resistors in the Programmable Gain Amplifier, used to provide reference voltages above 2.5V. This is not done automatically when the unit is first powered up, as it would complicate testing the unit. So once the unit is working properly, or if you want to re-calibrate the unit later, simply press the “Menu” button in the lower-right corner, which gives the screen shown in Fig.11. Then press the “Calibration” button, followed by the “Auto. Cal” button. The relays will click for a few seconds and you should then see new values for the PGA resistors appear, as shown in Fig.12. Press “Back” to exit this screen. To manually calibrate any value on this screen, simply touch that value (ie, Vref, Rshunt, Rval or one of the PGA resistors) and enter the measured value, or cancel to go back to the calibration screen. You can then use the “Back” button to return to normal operation. Vref calibration is not necessary and you only need to change Rval if you’ve used a precision resistor value other than 12kΩ to build the unit. 72  Silicon Chip The one manual calibration you will probably want to perform will be to set a more accurate value for Rshunt. If you’ve purchased a kit from SILICON CHIP, simply enter the value we supply along with the shunt resistor. Otherwise, you will need a high-precision ohmmeter to measure the shunt value and then enter that. External voltage reference The simplest way to use the unit with an external voltage reference is to set it to divider mode and then select the desired output voltage by entering a fraction. For example, say the external reference is 4.096V and you want to get an output of 2.5V. You could achieve this by simply entering an attenuation ratio of “2.5/4.096”. Note that when the unit is used as an unbuffered divider, the IN+, IN-, OUT+ and OUT- terminals are completely isolated from the rest of the circuitry and the maximum applied voltage between IN+ and IN- can range from -60V to +60V. However, when using it as a buffered divider, OUT- is necessarily connected to circuit ground and since normally OUT- and IN- are joined externally, by extension IN- is also. This should not normally matter since the unit’s supply will normally be floating but it’s worth keeping in mind. When operated as a resistance reference, the inputs and outputs are also fully isolated, whereas in both voltage reference and current reference mode, OUT- is connected internally to ground. Other features When using the unit in current ref- erence mode, the current, voltage and temperature of the controlling Mosfet (Q1) is continuously monitored (or in the case of temperature, estimated) and the temperature is shown on-screen, where the input impedance is normally shown (see Fig.8). As explained in the October issue, should any of these parameters exceed the normal limits, the output relay will immediately switch off and a message indicating the reason for disconnection will be displayed. You can simply press on this message to dismiss it (see Fig.13) and then switch the output back on again. When using the unit as a buffered voltage reference or divider, the output will also switch off if the output voltage is pulled outside its normal range by the load, although this would be a rare situation. This is to protect the op amps from being damaged by a backfed voltage and similarly, an on-screen message will appear if this happens to explain why the output has been disconnected. Pulse test mode Normally, once the output of the unit has been switched on, it stays on until you switch it off. But there may be situations where you want to feed the output of the unit to its load only for a brief period. This is especially useful if using the unit as a current source or sink above 100mA to prevent it from overheating, for example, while load testing a power supply but it can be applied to any mode. In this case, you can set an output on-time from 10ms to one minute. You switch the output on manually and it automatically switches off after the set time. Note that the actual on-time may differ slightly from the set time due to relay switching times. The on-time can be set via the set-up menu, accessed by touching the “Menu” button in the lower right-hand corner. You then have the option to select either continuous (ie, normal) or pulsed operation and set the pulse duration (see Fig.11). The mode and pulse time are stored in flash memory and will be automatically restored on power-up. When in pulse test mode, a countdown is shown on the screen each time the output is switched on and a message displayed after the output is switched off, which can be dismissed by pressing on it. SC siliconchip.com.au