Cypress Maker of the Month: Tom Moxon | Cypress Semiconductor
Cypress Maker of the Month: Tom Moxon
The Maker of the Month series recognizes unique projects created by the maker community. At Cypress, we are committed to helping our customers (international OEMs and makers alike) bring their innovations to life with our easy-to-use software tools and programmable solutions. For more information about Cypress’s maker community involvement, check out the rest of our Maker of the Month series and our efforts to empower up-and-coming engineers via the Cypress University Alliance (CUA).
Read the Q&A with Cypress’s Maker of the Month, Tom Moxon. Tom is the founder and chief technology officer of PatternAgents and has developed several reference designs, boards and projects using Cypress technology.
Please provide some background about yourself and your work at PatternAgents.
I've worked at the intersection of engineering, electronics and the arts for over thirty years now,
designing integrated circuits for Cray Research, Digital Equipment Corporation (DEC) and others, image processing systems for NASA Jet Propulsion Laboratory (JPL) and digital audio sampling keyboards for E-MU Systems. If you've ever listened to Depeche Mode, Yes or Peter Gabriel, you've likely heard music from sampling synthesizers I've worked on, or if you've seen cartoons from Hanna-Barbera Productions, many were produced on imaging processing equipment that I've worked on.
With experience ranging from supercomputers and mainframes to minicomputers and microprocessors, you begin to be able to identify repeatable patterns in technology. While technology advances and changes, these basic design patterns repeat themselves. PatternAgents is about identifying or codifying these design patterns and providing Open Source Hardware implementations of these patterns for everyone to be able to utilize.
We’ve produced several Open Source Hardware Libraries of Capacitive Sensing Widgets for creating human machine interfaces like buttons, sliders, wheels and other control surfaces using only the printed circuit board (PCB) itself with capacitive sensing technology. What we've done is distill down the expert knowledge needed to design touch control surfaces so that anyone can download and utilize these libraries to create their own custom designs and products. That's what PatternAgents is all about.
"PSoC has been my secret weapon for years; it’s used to quickly solve my customers’ design problems and it's been great fun teaching it to a new generation of engineers and programmers."
Tell us about your new “thingSoC” standard, and the boards that feature Cypress technology.
The “thingSoC” is an Open Source Hardware standard that defines a vendor independent socket system for the creation of new “Internet Things;” it addresses many of the limitations of current platforms by adding capabilities for automatic device discovery, device configuration, monitoring, instrumentation and testing. The thingSoC virtual platform definition supports a number of different System-on-Chip architectures, peripheral devices and radios, such as cell modems, packet radios, Bluetooth®, Wi-Fi®, LoRa and more.
We designed thingSoC as “everyday electronics,” a no-frills, low-cost approach to modular embedded product design. Boards for thingSoC are similar in size to most common break-out-boards (BOBs), but feature a standardized stacking pinout as well as a persistent meta-data store (internal database) to indicate what peripherals should be installed and how they are configured.
We have released several thingSoC reference designs using PSoC® 4 and are working on several more, including designs for Cypress Bluetooth and several new Cypress components.
One of these is the thingSoC NEOLED, a PSoC 4 based driver for strings of WS2812 color LEDs.
It drives eight strings of programmable color LEDs and offloads a real-time update of the LEDs from the host processors, like the Intel Edison or the Raspberry Pi, running on Linux. To the host processors, thingSoC NEOLED looks like a simple memory device where each memory location controls a single LED color. Because these designs are open source, anyone can download the design files and build their own or even modify the design if they want to.
Another board is our thingSoC USBUART, which includes a Cypress CY7C65213 USB to UART bridge. Most makers are familiar with FTDI’s USB UART adapters that are used for programming a number of different development platforms, such as the Arduino Pro or Arduino Mini. However, we decided to use the Cypress CY7C65213 for our programming adapter because it is much faster, allowing our users to download programs up to ten times faster.
Can you also tell us about your work with Honeybee Colony Collapse Disorder (CCD) and your “Beacons for the Bees” effort? How has Cypress’s technology helped in these initiatives?
There are many factors that are contributing to Honeybee Colony Collapse Disorder including habitat destruction (loss of wild areas), pesticides (especially neonicotinoids), mono-cropping (single crops limits the bees’ pollen, contributing to a lack of food source diversity), pests and parasites (Varroa Destructor Mites and others), and viral and fungal infections.
Several of the factors can only be addressed by new laws or changes in land-use practices, but we wanted to see what factors could be addressed using technology. I worked with Eltopia for monitoring the health of the hive and for controlling the Varroa Destructor Mite life cycle. Once the Varroa Mite pierces the Honeybee exoskeleton, the Honeybee becomes more susceptible to infections and poisons. So, if we can interrupt the life cycle of the Varroa Destructor Mite, then we can reduce its effect on the health of the beehive.
I used the PSoC 4 for the rapid prototyping of a Varroa Mite control system installed within a frame of a standard Langstroth Beehive. Because many farm systems already utilize Modbus, I designed it to look like a standard Modbus RTU interface, allowing many hives to be easily daisy-chained together into a (hive) network.
A separate effort I started this year is “Beacons for the Bees,” which entails applying Bluetooth Beacons to mark the location of wild and domestic beehives using Google’s “Physical Web.” When anyone walks past a marked hive, they get a notification on their smartphone. This is primarily to raise awareness of the plight of the Honeybee and alert people to the bees in their surroundings. For example, a child who is allergic to stings would get a notification when a hive is nearby and perhaps think twice before climbing that tree. By using Cypress Bluetooth modules we can make simple, low-cost Beacons for the Bees as markers.
How did Cypress’s technology help execute your projects, and what are the benefits you’ve seen with using these technologies?
I've used a number of different Cypress technologies in my designs, including SRAM, nvSRAM and F-RAM memories, USB controllers, timing products, and, of course, the PSoC families. The PSoC Creator IDE is an incredible time saver for me and I can prototype many ideas in just a few minutes in order to see if they are feasible or not.
I can usually create a very tight hardware/software integration using PSoC by moving critical functions into custom hardware blocks to increase performance, while at the same time reducing the power consumption (versus a pure software implementation of those same functions). I can also fit a customer design within a single PSoC where another solution might require a handful of chips to implement. This also increases my customers’ design security as it is much more difficult to reverse engineer a PSoC design that uses custom hardware blocks.
Cypress USB technology, like the FX2, FX3 and USB Bridge devices, have enabled me to design a number of interesting products for my consulting customers, including high-speed video and audio processor interfaces, as well as custom FPGA and bridge interfaces. Most people don't realize that the heart of their USB Oscilloscope or Logic Analyzer is often a Cypress USB controller. We also use the Cypress USB technology to add built-in testability layers to our thingSoC products to create an “instrumented platform” that can monitor transactions and device operation.
You mentioned you have a new Cypress PSoC 4L USB design in the works, any details you can provide?
We have a new thingSoC base board in the works using the PSoC 4L USB family, which includes an ARM® Cortex®-M0 microcontroller, USB controller, serial controllers and programmable logic fabric.
Our PSoC 4L USB board features a Cypress PSoC 4L USB (ARM Cortex-M0), Cypress nvSRAM, Li-Po battery connector and integrated battery charger, thingSoC instrumented socket, MikroBUS compatible socket, dual “Grove” connectors for sensors and peripherals, and color LED (WS2812) drivers. Between the thingSoC, MikroBUS, and Grove connectors, the board provides plug-and-play access to over 300 radios, sensors and peripherals so that users can quickly prototype any system they can think of.
Are you working on any other projects that use Cypress’s technology?
I think that the Maker community has started to learn the power of the Cypress PSoC platform and I've been working on another effort to make that adoption easier. I've created a PSoC I2C emulation project that uses PSoC to create a “Smart Device tree.” Rather than use a “dumb” EEPROM, PSoC is used to emulate an EEPROM, as well as provide other bridge functions in a very cost-effective implementation.
I just presented a paper to the Open Source Hardware Association (OSWHA) on “Embedis,” our Embedded Dictionary Server library for the Arduino IDE. Embedis is used for embedding Key-Value Stores (KVS) into Flash, nvSRAM, F-RAM or other memory systems of small, limited-resource computing platforms. Many of the different persistent memory technologies have different access methods and Embedis is used to provide a simple API and command line interface for storing and retrieving data from pins, sensors, interfaces and embedded memory systems.
In a nutshell, Embedis makes it much easier to use Cypress Flash, nvSRAM, F-RAM and other memory components within user designs, as we have done the heavy lifting to create the KVS methods for you.
Any other comments you want to add?
I've been teaching PSoC workshops for a number of years now and it’s always gratifying to see the light go on when people are first introduced to PSoC and they see it’s potential. PSoC has been my secret weapon for years; it’s used to quickly solve my customers’ design problems and it's been great fun teaching it to a new generation of engineers and programmers.
For questions or more information, you can reach out to Tom at the following platforms
Thanks again to Tom Moxon for participating in our Maker of the Month program. If you would like to be considered for our next Maker of the Month profile, please email us and share a brief description of what project(s) you have made using Cypress’s technology.