Electronics Software Design

Our software engineers have decades of experience in a variety of applications across sectors such as energy, healthcare, downhole and industrial controls. We invest in developing coding skills to ensure that you benefit from the latest technologies and rely on proven development approaches. Being technology agnostic means that you receive the most appropriate programming language for your product design and being well established means that you have access to the BitBox software code libraries, saving you time and money. 

Being a partner of BitBox means that you have a true collaboration. Our expertise can provide you with reliable software solutions or we can support you through the development of your own application for use on a BitBox PCB.

However you choose to work with our team, you retain the intellectual property for your software code giving you peace of mind and security for the future of your product. BitBox offers:

  • Extensive software development experience developed over decades
  • Access to the most appropriate programming language for your product design
  • Access to our code libraries to save you time and money
  • Reliable Linux platform expertise and code or support as you develop your own code
  • You ownership of your intellectual property and your software code
  • Version control and detailed record keeping providing quality assurance and peace of mind.

At BitBox we select the best programming language for the job in hand including:

  • C for embedded systems
  • Assembler for time critical embedded code
  • Lua for larger embedded systems that need scripting
  • C# or C++ for Windows applications
  • We also have good experience of using SQLite with fully embedded databases.

Using high level languages such as C greatly speeds the development and prototype processes and makes the code easy to maintain and more portable onto different platforms.

Code Libraries

Our extensive libraries of code which we have written are designed to shorten development time and speed your prototype design and delivery. This will save you time and money in product design. These include:

  • C runtime library replacement (to reduce compiled code size)
  • TCP/IP stack (lwIP)
  • Threading (co-operative)
  • Graphical User Interface with touch screen
  • GSM modem interface
  • Serial interfaces using DMA engines - including CAN, I2C, SPI, RS232, SATA ....
  • USB device libraries

For a long time we have loved prototyping and designing controlled production release code using Linux and maintain the latest release of Debian Linux.

The BitBox team designs and manufactures boards relying on stable versions of Linux to run complex applications for use in demanding situations. With customer focus at the heart of our service, we can either provide a reliable custom platform for you to develop your own code or develop the complete application.

Typically our Linux boards are fully embedded requiring maximum up-time reliability and situated in remote locations. We provide an application and kernel upgrade mechanism to facilitate field upgrades when required.

With a focus on quality through every part of our projects, we take version control very seriously throughout the prototype phase as well as the complete life-cycle of your embedded electronics product. All design and manufacture files are managed through the BitBox control system. Software releases are tagged and specific versions of binary code are released to production for use during the manufacturing process.

Our manufacturing database records mean we can identify the code used on every board and source code can be recovered if needed.

We also use the 'git' open sourced version control system as required.

If you have an electronics project that has a challenging software requirement, we'd love to talk. Please get in touch on (+44) 01256 799080 or submit an enquiry below.