Open main menu

DAVE Developer's Wiki β

Changes

MISC-TN-023: Altium Designer-based workflow

1,352 bytes added, 16:03, 7 July 2022
Implementation
[[File:AltiumDesigner workflow.png|center|thumb|1000x1000px]]
It will be described with the help of an example that represents a typical scenario: the company needs to interact with an external partner, an outsourcee named Mallory in this example, to carry out a hardware design.
The DAVE R&D team sits at the heart of the systemimplementation shown in the previous image. Let's say that one of its the team members, Bob, starts the new design according to the product's requirements. He takes care of part of the schematics and sets up the PCB project by choosing the number of layers, manufacturing technologies, dimensions, etc.
The components that Bob instantiates on the schematics are retrieved from the DAVE a ''[https://www.altium.com/documentation/altium-designer/building-maintaining-components-libraries-overview database library]'' according to Altium nomenclature. This library — denoted as ''DAVE database library (master)'' in the picture — contains the '''components defined and qualified as per DAVE Embedded Systems' procedures'''. As such, these components are also linked to the ERP database so that they '''embed vital information for the manufacturing process''' like ''DAVE code'', ''manufacturer part number'', ''type'', etc.
At first, Bob saves the project files on a local storage device that is part on the DAVE's internal IT infrastructure. Later on, he needs to share the project with Mallory, an external contractor located in the UK another country who helps Bob to speed up the design. The project is shared through Altium 365. Upon starting to work on the project, Mallory receives a snapshot of the DAVE database library (DBL) as well. If necessary, this snapshot allows him to instantiate additional components in the project by picking them up from the DBL. What if Mallory needs to instantiate a component that is not available in the DBL, however? Within the projectIn this case, he Mallory creates an ''[https://www.altium.com/documentation/altium-designer/building-maintaining-components-libraries-overview integrated library]'' within the project in which the new component is temporarily stored. At this stage, the new component is not yet fully qualified, but this does not prevent Mallory from continuing with his task. Although component's fields such as ''DAVE code'' and ''manufacturer'' are still not populated, the component is totally usableand can be instantiated in the project: as long as Mallory has designed its the schematic symbol and the PCB footprint according to DAVE Embedded Systems requirements, he can proceed with no worries.
Periodically, Mallory pushes the his modifications to the repository on the 365 platform. On DAVE side, Bob does the same so that they can keep synchronized each other. If Mallory puts new components into the project's integrated libraryas described above, a member of the DAVE R&D team, let's say Alice, takes care of completing their definition/qualification process using as starting point the schematic/PCB symbols he created by Mallory. After this step, the new components will end up to be available
* in the DAVE ERP database
* in the DAVE master database library.
From now on, any new design in which they will be used will integrate fully qualified instances. And what about the project developed by Bob and Mallory? At the end of the the design process, the DAVE team will take care of synchronizing the project with the database library in order to have all fully qualified instances. After this step, the project is ready to undergo post-design sanity checks and, finally, to generate the manufacturing documentation required to order the PCB's and assemble them.
 
Interestingly, updating the ERP database and the master database library is a process '''that leverages the same tools DAVE Embedded Systems adopted several years ago for software development/maintenance''': [https://gitlab.com/ GitLab] along with its [https://docs.gitlab.com/ee/ci/ CI/CD module]. TBD
Sharing the projects via Altium 365 is not only efficient when working with external engineers. It is also extremely convenient for those who do not work with Altium Designer. For instance, let's suppose that Charlie is a member of the R&D team and is a software developer. At some point, he needs to access the schematics of the board designed by Bob and Mallory to see how an I2C device for which he is writing a driver is connected to the application processor. Even though Charlie can not use Altium Designer, he can access the project schematics via web browser by accessing Altium 365 platform. Of course, the same approach can be used with other coworkers who are not even part of the R&D team such as Project Managers, executives, manufacturing engineers, but also TBDetc.
4,650
edits