Programify offers its core strengths in systems architecture and software engineering, coupled with electronics design for the low- to medium-volume adaptive manufacturing of bespoke electronic equipment.
We design, prototype and develop embedded systems for medical and industrial applications. Prototyping is a discovery process to which we bring years of experience and a wide variety of previous projects.
We also consider the device certification and approvals processes that should be addressed as early as possible in the design process.
Our in-house software engineering techniques have been developed over several decades. We have learnt that the forward-thinking organic approach to the growth of complex systems results in far fewer issues than might normally be expected.
Good engineering should result in code that is minimal, bug-free, system resource friendly, responsive in real-time, consistent in style, adaptable over time, and documented well enough for future developers to understand the mechanics of a system.
UI, UX & API Design
Part of the software engineering process is to pay attention to how people and systems interact. While thinking outside-of-the-box can often be celebrated, the best interfaces often adhere to tried and trusted principles that require minimal guesswork from users.
A powerful API is flexible, relevant and should be easy to understand. This is best achieved through an appreciation of good systems architecture and the importance of understanding the nature of the devices being controlled and for the end-user's expectations.
We can provide plans for the integration, implementation and operation of information-based systems. Our philosophy is to design systems that are adaptable and upgradable to withstand use in the real world where requirements may change over time.
As the global supply chains suffer the consequential effects of Covid-19 lockdowns, manufacturing itself has to adapt.
By balancing maximum design flexibility with minimum essential stock reserves, we can offer UK-based adaptive manufacturing by specializing in low- to medium-volume production runs.
Your company's market share may be eroding due to competitors adopting new technology. As you might expect, we keep an eye on science and technology, its genuine trends as well as the hype. Our knowledge could help you re-establish or maintain your market lead by transforming your product roadmap.
Elements of some current and recent projects...
To protect our operations we are designing our own rack-mounted extended-endurance UPS systems (yes, more than one) to run servers, communications and security devices during extended power outages.
Custom electrical installations need custom control panels. In this case we are using a 1.5mm mild steel panel, laser-cut to our design and powder coated in bumble bee yellow. Control markings, vertical segment lines, text labels and diagonal side hazard bars are over-printed in black and then baked on for a durable finish.
For rapid prototyping we might use in-house 3D printed plastics, as here with the custom keypad designed to fit within a consumer unit's standard aperture.
The keypad was built from the ground up, even the keycaps were silk-screen printed and lacquered. A custom keypad also needs a custom keypad decoder. As you might expect we designed and built our own embedded solution which also takes care of debouncing the tactile keys and translating hardware scan codes to ASCII characters.
We're happy to work with diverse materials such as PLA, ABS, carbon-fibre reinforced plastics, mild steel, and aluminium.
Our prototype design included a 2GB micro-SD card slot operated from one processor (Core-1) while the AVR programmer was operated exclusively by a second processor (Core-2).
Two processors were neccessary to greatly simplify the firmware. The target processor would be unaware of the module's programming capability, and would have just seen it as a data logging service. Instead we can keep firmware versions and updates on the SD Card and re-flash the host with the press of a single button.
Ideal for in-the-field firmware upgrades. Just place a new SD card in the slot and press the Upgrade button. Too easy.
All alarm systems have the same problem: How do you know your trigger sensors are still connected and working 24/7?
We use our own design of end-of-line resistor pairs to differentiate between line shorts and line disconnects, they also allow the remote sensor to indicate all is well or if they have triggered.
Using a low voltage analog DC signal running in grounded Cat-6 STP cable, the line voltage is measured by timing software to determine the line state. Electronics on the receiving end also filters out residual RF noise and blocks electrostatic discharges.
Reliably detecting when a trigger sensor has been activated is a little more complicated than a doorbell.
The complexity arises from three requirements: The flexibility to be configured and installed into a variety of different sites. Second, any trigger event must be just that, a real trigger event and not a glitch arising from a nearby lightning strike or radio interference. Third, where possible, faults should be reported down the line when they happen 24/7, and not just when the unit is next manually checked.
The embedded firmware helps minimize that hardware complexity whilst giving maximum flexibility to the overall application.
3D printing at its best allows you to design a piece of plastic that performs two or more functions.
While building a medium sized enclosure we needed to fit two small fans: one intake (blue) and one exhaust (red). We designed the outer bezel to give a clean finish to the outside of the enclosure. Inside, the housing was aligned with the fan's four mounting screw holes to allow easy assembly. On the inner most surface we built in a temperature sensor designed to sit exactly within the airflow of the fan.
We found early on that minimizing disription to the airflow is key to minimizing the overall noise of the assembly.
Inventing, prototyping, designing and manufacturing means performing a diverse number of tasks. We'll post some of those that aren't classified as commercially sensitive, right here...
Lines of Live Code
Units out in the Field
Panelized PCBs & Stencil
Panels of end-of-line resistor PCBs ready for next stage in production.
Proof of concept code to ensure a temperature sensor behaves as expected.
Our two-stage linear 5V PSU - less noisy than our switched PSU in the same footprint.
Dual Fan Assembly
3D model of dual 120mm fan controller with temperature sensors. For use in our inverter systems and comms cabinets.
We are developing an IIoT embedded system module capable of encrypting communication channels and control lines.
Our encryption scheme is intended to be unbreakable by any known means, including but not limited to quantum computing, brute-force, current cryptanalytic techniques or devices.
Remote hacking will become technically infeasible, forcing bad actors to attack in person at either end of the data pipeline where physical security measures should in place to prevent unauthorized access.
THE SUPERCORTICAL PROJECT
Natural Language Comprehension
We are currently undertaking private research into low-energy natural language comprehension, including semantic reasoning and the design of a synthetic consciousness.
Two goals are to develop systems that perform automated high speed knowledge-based research and discovery and to predict events within complex economic and geopolitical scenarios for commercial gain.
Our state-of-the-art AI software research work is classified as commercially sensitive. So we don't publish papers and we don't file for patents nor will we release the software. However, we are happy to give talks on the direction, purpose and likely impact of our project.