You have questions? We have answers.
EmbedOps is a DevOps orchestration platform specifically designed to manage workflows for teams of embedded developers. It includes a web interface for monitoring performance of the development process, and a centrally-maintained developer environment that is always up-to-date.
When paired with a CI system, EmbedOps enables embedded teams to create and maintain consistent build and test environments. By integrating directly with your automated CI pipelines, EmbedOps allows any developer to locally run any step of the production CI pipeline exactly as it would be run on the CI server.
For embedded development teams, CI makes firmware development faster and easier while also mitigating risks. Automated builds and tests enable developers to make smaller incremental changes and commit them with greater confidence. Developers are able to swiftly get feedback on their code and the speed of development cycles increase. For some organizations, this provides a competitive advantage, while for others, CI enables teams to consistently meet deadlines.
You don't need to have a CI system already in place. In fact, if you're considering getting started with CI, pairing EmbedOps will make it much easier to set up and launch.
Before Dojo Five was born, key members of our team did pioneering work on local CI solutions to organize and automate workflows across widely distributed teams. That led to utilizing Jenkins and experiencing first-hand Jenkins' pitfalls for teams, its shortcomings for embedded development, and the costs (both direct and indirect) to building and maintaining Jenkins' "free" solution. Fast forward to today, and we’re living and and breathing our mission to modernize embedded development. Selfishly, we produced EmbedOps as a versatile tool to make our own workflows more reliable. Unselfishly, we now make EmbedOps available to help other teams meet deadlines, achieve quality goals, and confidently release new firmware.
EmbedOps is designed to be tool-agnostic. Therefore, while we most commonly integrate with GitLab, GitHub, and Bitbucket, we can readily configure EmbedOps to work with virtually any of the CI systems used by embedded development teams today.
While many DevOps teams today have embraced cloud-based CI, we recognize that immediate migration isn't practical for all embedded teams. We have experience configuring runners to manage pipelines and enable those with local CI systems to still achieve the benefits of EmbedOps' orchestration functions.
While it is able to be integrated with a local CI system (see above), EmbedOps is exclusively cloud-based.
Deploying Jenkins for teams is hard - and maintaining that system becomes increasingly difficult and risky. Utilizing Jenkins requires vigilant administration, frequent updates to maintain security, and reliance on unknown - and unaccountable - third-parties to properly keep mission-critical plugins operating. In short, Jenkins is a tool that presents a number of challenges and difficulties for embedded teams. For teams of embedded developers, we recommend pairing EmbedOps with a full-featured, reasonably-priced, cloud-based CI system.
Dojo Five’s system interfaces with customer environments via three controlled access points:
- A backend API, secured with TLS 1.3 over HTTPS
- A web interface, secured with Auth0 user authentication and authorization
- A docker registry, secured with a unique per-customer token
The system has been architected so that client source code / IP never is stored at-rest in Dojo Five’s servers. Metadata, such as build information, logs, telemetry is stored in the backend database in order to provide dashboard functionality. This data is segregated from other customers via our backend API and database structure.
Learn more in our EmbedOps Security Brief.
In order to provide continuous service, Dojo Five requires remote access to on-prem or cloud-hosted customer CI systems. Each EmbedOps customer has a primary technical contact and a primary IT contact we work with to manage system status updates, planned outages, or issues with remote connectivity.
In addition to setup and maintenance of your environment, our services include:
- Customizing containers for your specific needs.
- Customizing integrations to CI systems.
- Integration with testing frameworks.
- Training for your team to utilize the tools and features EmbedOps brings to your workflow.
- Dojo Five provides on-call support according to the terms of our SLA, negotiated with each contract, in order to support and maintain each EmbedOps implementation.
EmbedOps provides superior visibility into build metrics relevant to embedded developers. The reporting interface helps alleviate project risks by helping developers with memory planning and tracking usage over time. In addition to the visibility it provides, EmbedOps helps your teams reduce firmware development cycles, gaining feedback on code faster and enabling more frequent commits.
Typical set up, onboarding and time to first build is 2 weeks.
Dojo Five provides clients with a software license to use the EmbedOps environment on a monthly or yearly basis.
A typical implementation includes a one-time setup fee that includes set up of the following
- CI system
- Compiler integration
- Unit testing framework
- Build automation
- Observability tools
There may be an additional charge for additional features, such as hardware-in-the-loop (HIL) or severe customizations to the build environment.
We currently recommend and support Google Test and Ceedling, but can provide support for a number of other popular frameworks as well.
Read more about our approach to Unit Testing in Embedded Development.
Dojo Five is eager to help any embedded development team that seeks to modernize their CI processes. Contact us today to begin discovering how we can help you.
Dojo Five has plenty of CI expertise to share - and our aim is to help you achieve the benefits of CI without needing to dedicate your internal resources to developing and maintaining CI-specific knowledge.
No full-time administrators are needed. Each EmbedOps customer has a primary technical contact and a primary IT contact we work with to manage system status updates, planned outages, or issues with remote connectivity. Our goal is to take care of your build system so you can focus your effort on product development.
The EmbedOps CLI is a command-line interface that is built on Python and enables simple interactions with the build environment. The EmbedOps web interface provides visibility into build status and key performance metrics.
There are a plethora of tools that cater to web and mobile development teams. With EmbedOps, Dojo Five delivers powerful features and functionality specifically for embedded development teams.
EmbedOps provides a containerized system designed for all of your build dependencies including compilers, testing frameworks, and code quality tools. These containers enable you to construct or reproduce development environments quickly and reliably.
While Docker is a popular containerization platform widely used for development and application runtime environments, we recognize that relatively few organizations have in-house expertise. We deliver this expertise so you don't need to invest your team's time and resources towards this. When implementing EmbedOps, Dojo Five provides pre-built containers through our Docker registry and we continue to add new containers, continually expanding our foundation of supported compilation, code quality, and testing environments.
Can I implement best practices overnight?
No. But give us two weeks and you'll be experiencing insanely great builds.
EmbedOps is a DevOps orchestration platform
Quick setup of your environment and integration of your tools
Visibility and insights into project risks
Support and expertise with modern embedded workflows
How does it work?
Compelling ROI Story
For now, just a paragraph with some references. Then, the calculator.
Spend More Time Developing!