Silicon ChipModifying Micromite software to use a 3.5in display - November 2021 SILICON CHIP
  1. Outer Front Cover
  2. Contents
  3. Publisher's Letter: Standardising on USB-C: a good idea
  4. Mailbag
  5. Feature: Big Brother is Tracking You! – Part 1 by Dr David Maddison
  6. Project: USB Cable Tester – Part 1 by Tim Blythman
  7. Feature: El Cheapo Modules: 6GHz Digital Attenuator by Jim Rowe
  8. Review: R80 Synthesised Aviation Band Receiver Kit by Andrew Woodfield
  9. Circuit Notebook: Modifying Micromite software to use a 3.5in display by Tim Blythman
  10. Circuit Notebook: Voice-operated and proximity lift controls by Bera Somnath
  11. Project: Pocket Weather Station by Aarav Garg
  12. Project: Model Railway Carriage Lights by Les Kerr
  13. Vintage Radio: Stromberg-Carlson model 496 radio by Associate Professor Graham Parslow
  14. Project: Two- or Three-Way Stereo Active Crossover – Part 2 by Phil Prosser
  15. Serviceman's Log: That ‘80s gear and the art of printer repair by Dave Thompson
  16. PartShop
  17. Ask Silicon Chip
  18. Market Centre
  19. Advertising Index
  20. Outer Back Cover

This is only a preview of the November 2021 issue of Silicon Chip.

You can view 0 of the 96 pages in the full issue.

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

Articles in this series:
  • Big Brother is Tracking You! – Part 1 (November 2021)
  • Big Brother is Tracking You! – Part 2 (December 2021)
Items relevant to "USB Cable Tester – Part 1":
  • USB Cable Tester main PCB [04108211] (AUD $7.50)
  • PIC16F18877-I/P programmed for the USB Cable Tester [0410821C.HEX] (Programmed Microcontroller, AUD $15.00)
  • Relay - EA2-5NU (Component, AUD $3.00)
  • IPP80P03P4L-07 high-current P-channel Mosfet (Component, AUD $2.50)
  • Short form kit for the USB Cable Tester (Component, AUD $110.00)
  • USB Cable Tester front panel PCB [04108212] (AUD $5.00)
  • Laser-cut acrylic bezel for USB Cable Tester (PCB, AUD $2.50)
  • Firmware and bezel laser cutting files for the USB Cable Tester [0410821A.HEX] (Software, Free)
  • USB Cable Tester PCB patterns (PDF download) [04108211/2] (Free)
Articles in this series:
  • USB Cable Tester – Part 1 (November 2021)
  • USB Cable Tester – Part 2 (December 2021)
Articles in this series:
  • El Cheapo Modules From Asia - Part 1 (October 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 4 (February 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 7: LED Matrix displays (June 2017)
  • El Cheapo Modules: Li-ion & LiPo Chargers (August 2017)
  • El Cheapo modules Part 9: AD9850 DDS module (September 2017)
  • El Cheapo Modules Part 10: GPS receivers (October 2017)
  • El Cheapo Modules 11: Pressure/Temperature Sensors (December 2017)
  • El Cheapo Modules 12: 2.4GHz Wireless Data Modules (January 2018)
  • El Cheapo Modules 13: sensing motion and moisture (February 2018)
  • El Cheapo Modules 14: Logarithmic RF Detector (March 2018)
  • El Cheapo Modules 16: 35-4400MHz frequency generator (May 2018)
  • El Cheapo Modules 17: 4GHz digital attenuator (June 2018)
  • El Cheapo: 500MHz frequency counter and preamp (July 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 21: stamp-sized audio player (December 2018)
  • El Cheapo Modules 22: Stepper Motor Drivers (February 2019)
  • El Cheapo Modules 23: Galvanic Skin Response (March 2019)
  • El Cheapo Modules: Class D amplifier modules (May 2019)
  • El Cheapo Modules: Long Range (LoRa) Transceivers (June 2019)
  • El Cheapo Modules: AD584 Precision Voltage References (July 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: 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, Part 2 (June 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: LCR-T4 Digital Multi-Tester (February 2021)
  • El Cheapo Modules: USB-PD chargers (July 2021)
  • El Cheapo Modules: USB-PD Triggers (August 2021)
  • El Cheapo Modules: 3.8GHz Digital Attenuator (October 2021)
  • El Cheapo Modules: 6GHz Digital Attenuator (November 2021)
  • El Cheapo Modules: 35MHz-4.4GHz Signal Generator (December 2021)
  • El Cheapo Modules: LTDZ Spectrum Analyser (January 2022)
  • Low-noise HF-UHF Amplifiers (February 2022)
  • A Gesture Recognition Module (March 2022)
  • Air Quality Sensors (May 2022)
Items relevant to "R80 Synthesised Aviation Band Receiver Kit":
  • R80 Assembly Instructions (Software, Free)
Items relevant to "Modifying Micromite software to use a 3.5in display":
  • Firmware for Micromite 3.5-inch display emulation (Software, Free)
Items relevant to "Voice-operated and proximity lift controls":
  • Firmware for the Voice-Operated Lift Controls (Software, Free)
Items relevant to "Pocket Weather Station":
  • Arduino sketch for the Pocket Weather Station (Software, Free)
Items relevant to "Model Railway Carriage Lights":
  • Model Railway Carriage Lights PCB [09109211] (AUD $2.50)
  • PIC12F617-I/SN programmed for the Model Railway Carriage Lights [0910921A.HEX] (Programmed Microcontroller, AUD $10.00)
  • Hard-to-get parts for the Model Railway Carriage Lights (Component, AUD $27.50)
  • Firmware for the Model Railway Carriage Lights [0910921A.HEX] (Software, Free)
  • Model Railway Carriage Lights PCB pattern (PDF download) [09109211] (Free)
Items relevant to "Two- or Three-Way Stereo Active Crossover – Part 2":
  • Two- or Three-Way Stereo Active Crossover PCB [01109211] (AUD $15.00)
  • Two- or Three-Way Active Crossover PCB patterns (PDF download) [01109211] (Free)
Articles in this series:
  • Two- or Three-Way Stereo Active Crossover – Part 1 (October 2021)
  • Two- or Three-Way Stereo Active Crossover – Part 2 (November 2021)

Purchase a printed copy of this issue for $11.50.

CIRCUIT NOTEBOOK Interesting circuit ideas which we have checked but not built and tested. Contributions will be paid for at standard rates. All submissions should include full name, address & phone number. Modifying Micromite software to use a 3.5in display Our readers often ask if it is possible to make software written for the Micromite BackPack V1 (February 2016; siliconchip.com.au/Article/9812) or V2 (May 2017; siliconchip.com.au/ Article/10652) which normally use a 2.8in touchscreen to instead work with the larger 3.5in display. At the very least, a different display driver is needed. The ILI9488 controller used on the 3.5in touchscreen does not have a native Micromite MMBasic driver, so we need to load an external CSUB library. This consumes around 6kB of library space, so it won’t fit if the original program comes close to filling the available flash memory space. Assuming the driver fits, rewriting the MMBasic code to function with the 3.5in display is possible, but it is tedious, time-consuming and requires thorough testing. That’s because these display controllers cannot perform scaling to fill the screen. Also, Micromite fonts are bitmap-based and cannot be resized easily, except in integer multiples. The 2.8in display has 320x240 pixels, while the 3.5in display has 480x320 pixels. Pixels would have to be mapped 2:3, which would appear chunky and grainy as this must be done on a per-pixel basis. Also, screen elements may be anchored to the different parts of the display, so they could become scattered confusingly around the screen. But there is another, easier solution. It tricks MMBasic into thinking that it is connected to a 320x240 display, so all display elements are where they should be. As far as the MMBasic program is concerned, it is connected to a 320x240 screen. The downside is that these 320x240 pixels are located in one corner of the larger screen, meaning that the entire 3.5in display area is not available. In fact, since the pixel pitch of the 3.5in display is smaller than the 2.8in display, the resulting active display area is actually smaller. Still, as long as you have 6kB of flash memory spare, it will give you a functional, working display. Most importantly, it will be the same as far as the software is concerned. All you need to do is load our Library file (available for download from siliconchip.com.au/Shop/6/5949) instead of the inbuilt LCD driver, usually done with the OPTION LCDPANEL command. The main part of the Library file is the ILI9488 driver that we have used previously. The MM.STARTUP subroutine runs when the Micromite starts up. This loads the driver, clears the display and then uses POKE commands to override the display driver resolution. After this, the display is indistinguishable (as far as MMBasic is concerned) from the ILI9341 display driver. By initialising and clearing the display before changing the resolution, the unused parts of the display are simply left blank. You could also add other commands here to set this area to a contrasting colour if needed. The POKE commands are as follows. You could modify the values to emulate other display sizes: ‘set width POKE WORD PEEK( WORD &H9D000094),320 ‘set height POKE WORD PEEK( WORD &H9D000098),240 The sequence of commands needed to configure the Micromite is as follows; these are also listed in the Library file. After loading Library.bas into the Micromite (eg, using MMEdit or TeraTerm), type: LIBRARY SAVE WATCHDOG 1 OPTION TOUCH 7, 15 GUI CALIBRATE GUI TEST LCDPANEL GUI TEST TOUCH While not elegant, this solution is fully functional and results in a pixelidentical image to what would be seen on a 2.8in screen. Here’s what a typical screen from the DDS Signal Generator (April 2017; siliconchip.com.au/ Article/10616) looks like. siliconchip.com.au Australia’s electronics magazine Following these steps, develop or load your MMBasic program. This solution will only work with the V1-V3 Micromite BackPacks (using the PIC32MX170 processor) and not the Micromite Plus. Tim Blythman, Silicon Chip. November 2021  53