James Charles Brick

( Jim Brick )
820 Sweetbay Drive
Sunnyvale, CA 94086
408-247-0312 (home)
408-499-0569 (voice or text)
james@jbrick.org
Embedded System Firmware
RTOS

Expertise

More than twenty years of writing and implementing chip-level firmware and RTOS' on a variety of microprocessors and microcontrollers.

Keywords

Embedded, firmware, software, hardware interface, RTOS, OS, multi-tasking, drivers, state machines, interrupts, low power, flash, MMU, EEPROM, EEROM, NAND, NOR, ROM, ROM emulator, ICE, GUI, JTAG, ARM, Intel, GSM, ISDN, Ethernet, TCP/IP, CodeWright, SlickEdit, BBEdit, XCode, HTML, CSS, JavaScript.

Programming Philosophy

 

Employment History

GoPro, Senior Camera System Firmware Engineer2013-2017
Work for the Advanced Technology group, essentially, R&D. Developed the firmware flow diagrams and initial firmware modules, for an advanced GoPro ISP chip. Developed firmware for the Synopsys HAPS to verify GoPro’s ISP data flow. Worked on firmware for USB TYPE-C PD and Display Port solutions.
Microprocessors/controllers used: MicroSemi SmartFusion (Cortex M3), Freescale Tower (Cortex A5, M4, & M0), Atmel SAMD & SAML (Cortex M0), Cypress PSOC4 BLE (Cortex M0).
Tools used: ARM (Keil) uVision5, Cypress PSOC Creator including the PSOC Creator to uVision5 converter, IAR Embedded Workbench for ATSAML22, ARM DS-5.

Contracting with Lucilient as a Sr. Firmware Design Engineer2012-2013
Currently implementing and configuring the ARM RTOS & RTL on a Microsemi (Actel) SmartFusion chip for Lucilient. The SmartFusion chip is to be used as the engine for an ink-less ink-jet printer.

Elesys, Sr. Firmware Design Engineer2002-2012
Worked on the architecture and firmware for their new product idea, a unique CD/DVD Recorder/Printer. Was involved in the hardware architecture and wrote the firmware that interfaced the product to a host computer via USB. Wrote the RTOS and scheduler for the project.

Agilent Technologies, Senior Scientist1998-2002
Developed a chip (PhotoChip) that would replace much of the discrete IC's in the typical digital camera. The processor core was the NEC MIPS microprocessor. Wrote the firmware that controlled PhotoChip's resources, wrote the RTOS so that various camera operations (tasks) could run simultaneously. Developed a complete working digital camera using PhotoChip. Wrote all of the firmware that controlled Photochip, the JPEG chip, the CF card interface, and all of the other low level chips and protocols contained within the camera.

Independent Consultant/Contractor1979-1998
Supplied embedded computer system design, implementation, and debug for a myriad of companies throughout the San Francisco Bay Area as well as a major company in Colorado Springs, CO. Some of my more memorable contracts were with:

ARM: Began consulting for ARM back when ARM USA (ARM Inc.) was started. Tim O'Donnell started ARM Inc. (a US office of ARM Ltd. in the UK). ARM (Tim) had one employee, an FAE. Was hired by Tim as a consultant to bring-up the Demon debugger on customer's ARM cores. Did this for ARM for several years, until ARM Inc. grew large enough to hire an internal software engineer. Did specialty consulting jobs for ARM Inc. throughout the 1990's.

Visioneer: Visioneer made monochrome page scanners, both stand alone and built into a keyboard. Wrote the firmware for their color scanner version. Link.

Omnipoint Communications: Was hired by Omnipoint to write firmware for a new spread spectrum cellular phone protocol. Worked directly with Bob Dixon, the father of spread spectrum technology, to develop this cellular phone protocol. Wrote the code for a complete cell site, that would handle 32 simultaneous calls, and hand-off/pick-up ongoing calls as the phones were traveling. Also handled the back-end interface to the telephone system through an ISDN switch. Wrote a complete RTOS for this project.

Another Omnipoint Project: Designed a system for the floor traders at the Chicago Board of Trade. Instead of marking trades on cards, they would use handsets (made by TI) to register a trade. The handset would communicate the trade with a base station. Wrote the base station code that could handle 100 handsets simultaneously. On the back-end, interfaced to the Board of Trade's Ethernet, which connected to their mainframe computers so the trade could be further processed and analyzed. Wrote this project in RTX Forth as this project hardware used the Harris RTX2000 Forth chip.

Olivetti ATC: Was hired to create a system that would boot up to eight motherboards and run diagnostics on them. This was for Olivetti's manufacturing/assembly line in Ivrea Italy. Wrote this in 8086 assembly, to run on an Olivetti PC which had eight serial ports. New motherboards would be plugged into one of the serial ports and booted through that port. A set of motherboard diagnostic were then uploaded. The diagnostics reported back through the serial port into one of eight windows on the PC screen. Motherboards could be plugged-in and unplugged randomly.

ULTRON Labs: Joined Ultron Labs when they were in the process of inventing a 'Crypto Engine'. An IC that would take plain text as input, and output encrypted text, and vice versa. This part was sanctioned by NSA for use by our military. Wrote all of the firmware that ran the Crypto Engine. My interface to the outside world was via the Intel 82586 Ethernet LAN Co-processor. Here is the Data Sheet for the Ultron Labs Crypto Engine. I held a secret clearance while at Ultron.

NASA Ames Research Lab: Designed and built a controller for their 2'x2' supersonic wind tunnel. Tailored a version of PolyForth specifically for this hardware. Wrote PID algorithms to smoothly bring-up the wind tunnel to either high altitude (vacuum) or the opposite (pressure), and to the specific turbine speed. I incorporated a 16 key keyboard and 32 character dot matrix display so the wind tunnel operator could enter the specific tunnel parameters as well as make changes to the PID algorithm parameters.

Tencore Instruments: Tencore Instruments made surface analysis machines. They wanted a RTOS for the microprocessor system used in their instruments. Designed and built a PolyForth RTOS specifically for their hardware which gave them total internal & external control over their instruments.

Forth Inc.: Forth Inc. invented the Forth computer language and PolyForth as a RTOS. Its drawback was that it ran native on only a few specific pieces of hardware. Bought a copy of PolyForth and changed it to run under the CP/M operating system so that it could then run on literally thousands of different systems. Forth Inc. incorporated it into their product line. For many years, it was the best selling product that Forth Inc. had.

IMG Photo Products: IMG Photo Products manufactured a series of mechanical photo silver recovery units which used DC current to plate-out silver, from B&W fixer, on to a rotating cathode. IMG needed a microprocessor based system for plating-out silver from bleach-fix (BLIX), a color process fixer. This required controlling the DC current to the cathode and monitoring the BLIX silver concentration. Designed the complete microprocessor hardware and wrote all of the firmware. Kodak contracted with IMG Photo Products to supply these silver recovery units for their mini-lab installations.

PhotoChem Systems & Engineering: Designed, built, wrote the firmware for, and installed a microprocessor based system to control the pH of photo processing chemistry. It was initially installed in a large photo processing lab in Hayward, CA. PCSE went on to install these in labs throughout the US.

Advanced Micro Devices, Manager Systems & Applications1976-1979

bt

Began working on a new product called 'System 29'. System 29 was the world's first (and only) Bit-Slice Development System. Built a new operating system for System 29. Ran AMDASM, a 2900 bit-slice assembler, on System 29. Wrote the debugger that loaded the 2900 object code into the bit-slice microprogram memory and then provided breakpoints, single stepping, and most other debug features. The microprogram pipeline could be up to 128 bits wide.

The 2900 series bit-slice product line has been used in countless products, from Cisco routers, to phased array radar systems, and in the Space Shuttle itself.

Following the 2900 series effort, became manager of bipolar support for MOS technology.

While designing System 29, John Mick & I wrote the definitive bit-slice book, published by McGraw Hill, translated in to 18 different languages and used in 170 universities worldwide.

EDUCATION:
Four years Oregon State College (Electrical Engineering)
Two years Brooks Institute of Photography (Commercial Photography)

PATENTS:
#20060209102 “Off-radial axis circular printing device and methods" (Elesys).
#5768264 "Time Division Duplex Communications Protocol Supporting ISDN messages." (Omnipoint).

SERVICE:
United States Coast Guard. 6 months active duty, 5-1/2 years active reserve, 2 years inactive reserve, for an 8 year obligation. Honorable discharge.

ADDENDUM:
Have a working knowledge of HTML, CSS, JavaScript, Dreamweaver, InDesign, Photoshop, Lightroom, and Adobe Illustrator. I created my personal website from scratch, using Photoshop, Dreamweaver, HTML5, CSS3, and JavaScript.
My references are listed on 'My Website'.