Programming secure devices at scale, in a software-defined world

The internet has made it simple and affordable to access digital communications globally. In practical terms anyone can design an electronic device that can connect and share information with others over a global public network at relatively little cost. The information age persists and flourishes because of these connections.
We are living in a software-defined age enabled by powerful hardware. We use low-cost microcomputers running mostly open and freely available software to create complex interconnected systems. Massive stores of information, available at our fingertips, can be shared across any number of devices. We can create our own personal communication ecosystems that live within much larger, communal networks.
It is exactly this access and openness that presents both an opportunity and a threat. With a greater number of edge devices talking with one another, it is increasingly critical to ensure those messages are authentic and trusted. It also means more products contain electronics than ever before. Avnet has the supplier partner relationships and advanced technical capabilities to guide companies through hardware-centric processes, whether the customer is an OEM producing tens of hundreds or thousands of connected devices each year, an established company placing electronics in their product for the first time, or a new maker at the beginning of their product journey. Avnet also offers software engineering services through its associated subsidiaries, Witekio and Softweb Solutions.
There are many challenges involved with ramping from proof of concept, to volume production, and to market launch. One step in the manufacturing process often flies under the radar: device programming. Avnet can help here, too, leveraging its unmatched device modification services portfolio to deliver pre-programmed devices to you.
Device programming and device provisioning
In the simplest terms, device programming is the process of placing customer-specific data or configuration onto a non-volatile area of the device, enabling it to function in the exact manner that the customer requires once it is mounted on the printed circuit board.
While device programming is often considered for commonly programmable devices, such as discrete memory (Flash, ROM) or programmable logic devices (PLDs), other devices that require programming may not be as obvious. Microcontrollers, FPGAs and SoCs often include on-chip memory or one-time programmable fuses, or both. Analog and digital power devices are often configurable, as are many RF, NFC, and Wireless controllers.
Non-volatile areas of the device may include an operating system, application code, communication or security protocols, or a simple series of device configuration settings.
Each one of these hardware devices needs to be electrically modified using a dedicated device programming tool. These tools come in various configurations. Engineers often use bench-top devices to program a single device at a time. Some benchtop programmers may support small scale production, but they are manually operated and slow, which increases the cost per device. The process is also prone to error, either from a programming perspective or a handling perspective, or in the worst-case scenario, both.
In a production environment, the desired output can exceed 1,000 devices per hour. For large-scale production, automated handling is essential. Automation reduces the cost per device by increasing throughput, while also improving repeatability. However, the machines needed to deliver these benefits are typically big and expensive, so OEMs often seek external solutions.
Avnet’s device programming services meet this need. The programming services are delivered through state-of-the-art tools that can process (identify, program, validate, repackage) most manufacturers’ devices at high speeds, in large volumes, and with the exact precision required by today’s small and fragile devices. Each device will have unique requirements, needing specialized hardware and software tooling to enable the programming system to interact successfully with the device.
Loaded with the proper tooling, each automated programming system can handle components from a variety of media (tape, tray, tube); precisely move each device into the fixture; program and verify the device; and place it into the output media needed by the downstream manufacturing process. Combined with Avnet’s supply chain expertise, our OEM or EMS customers receive devices that are preprogrammed and ready for their manufacturing process.
Connectivity drives need for secure provisioning
All connected products should also include sufficient hardware security to protect them from cyberthreats. The process of programming these special devices is referred to as secure provisioning. The fundamentals behind programming and provisioning are similar, but the differences are apparent when comparing the requirements.
Connectivity drives security
Connected devices require higher levels of cybersecurity, often provided by dedicated electronic devices
that require provisioning using specialist programming equipment.
To support secure provisioning, programming equipment needs a special set of features that standard programming does not. First is the ability to securely generate cryptographic material, or properly communicate with an external device that can do so. Second is an understanding of how the device is expected to function from a security perspective in its final state (known as the use case).
In addition to provisioning being more complex than programming, the programmer itself does not always know what the resulting data will look like on the device. For security reasons, the programmer only sees some (or all) data in its encrypted format. This can make validation of the programming process exceedingly difficult. This, in turn, makes repeatability more challenging. As explained above, repeatability is vital when programming devices at scale.
With its world-class quality and global scope, Avnet has developed strong support for both standard device programming and secure provisioning. Our expert engineering services guide our customers down the path that best meets their needs. By taking on the heavy lifting associated with the challenges of device programming at volume, our customers can focus on what they do best.
Avnet’s highly automated and distributed device programming and provisioning service perfectly complements our robust linecard of electronic device manufacturers. These services, coupled with our industry-leading supply chain services and extensive design support, help make Avnet the electronic OEMs preferred design and manufacturing partner.
Learn more about Avnet’s industry-leading device programming and provisioning services

