Software/Firmware

Software/Firmware

Software and Firmware make up a large portion of our development work at Infinetix.  Our Software Engineers have a wide and deep knowledge of varying software architectures.  Our curiosity is always driving us to learn new design patterns and software frameworks to make us more efficient at producing high quality, secure code.

We are problem solvers and strive to find the best solution to your problem that's both appropriate and long lasting.  We adhere to best practices, clean and well documented code.  Maintaining legacy code (our own and others) has enabled us to understand the fine details involved in good documentation, build scripts, and in-code comments.

 

Microprocessors

Selecting the right part to meet your product's requirements is vital to every project. Infinetix has experience with a wide variety processing platforms, from microprocessors residing on custom or off-the-shelf boards, to microcontrollers operating in low power, battery operated conditions. Our engineering staff can help you choose the right part, design it into your system and create the custom software or firmware required for your product.

Architectures
  • ARM (ARM7, ARM9, Cortex-M3, Cortex-M4, A8, A9, OMAP, etc)
  • DSP (OMAP, C6000, C55xx, C54xx, dsPIC, etc)
  • x86
  • Cyprus PSoC
  • Microchip PIC
  • MSP430
  • Renesas
  • 8051
Libraries and Operating Systems
  • Linux (MontaVista, Timesys, OpenEmbedded/BitBake/yocto, etc)
  • Windows
  • FreeRTOS
  • CMX
  • CoBos/CoBox/Evolution (Lantronix)
  • eCos
  • DSP/BIOS, SYS/BIOS
  • lwIP/uIP (HTTP/S, SSL, DNS, SNMP, NTP, FPT, etc)
  • Hardware Abstraciton Layer and SymSys
Security

Infinetix has experience securing microcontroller level communications.  We've developed in-house a full SNMP v3 implementation.  Some of our firmware has hosted embedded HTTPS web servers and have communicated via TLS/SSL tunnels.  Using common standards like this allows for a seamless integration to the rest of the world, without having proprietary encryption on both ends (though we've done that as well).

Made For Apple (MFi)

Need your product to communicate with Apple devices?  We've gone through the process of utilizing Apple's Co-Processor Authentication chip to establish an Apple approved MFi device.

 

Embedded Linux

When your product requires more processing power than a typical microcontroller can provide, it's wise to step up to a more complete system.  Linux is widely available on nearly every architecture available and provides an abundance of software packages to leverage in your product.  Making use of existing solutions is a cost-effective way to reach your design goals.

An embedded Linux solution is a bit more complicated than a traditional desktop system and Infinetix has the experience and knowledge to make it perform reliably and securely by selecting the proper filesystem, package configuration and rootfs generation.

Linux is typically started with one or two bootloaders with Das U-Boot being a common 2nd level bootloader.  We have the experience required to customize U-Boot for your hardware, including custom boot configurations and early initialization of the LCD for splash screens.

Complete Board Support Package (BSP) customization can be done by Infinetix engineers, including pin-muxing, driver porting, driver writing, etc.

 

Linux Device Drivers

Device drivers establish the link from user level applications to your custom hardware.  This work requires detailed knowledge of driver infrastructure and frameworks based on the operating system it is written for.  Weather built into the kernel or as a module, Infinetix has the experience to connect your hardware to user space.  As the Linux kernel improves over time, so does our dedication to secure and efficient driver implementations.  In addition to forward and back porting existing drivers, Infinetix has experience implementing the following:

  • Real-Time Fast Interrupt Controllers (FIQ)
  • Zero-copy data transfer between user space to hardware
  • External Memory Interfaces (EMI/EIM)
  • FPGA mapped register interfaces
  • HID Compliant haptics devices

 

Applications

Native applications still have their place when you want a natural look and feel for your application that your users will appreciate.  Whether you're targeting Windows, OSX, Linux or any combination, Infinetix can develop an application to fit your requirements, complete with installer.  With proper planning, complex business logic can be written in C and utilized across all platforms.

Linux

Our Linux application development ranges from console utilities, touch screen interfaces to traditional desktop software. Utilizing C, C++ and QT, we can implement your business logic with a native Linux look and feel.

Windows

Infinetix began Windows application development when Microsoft Foundation Class (MFC) and C++ was de-facto.  We continue to flourish utilizing .NET, C# and QT to build many types of applications for our clients.  Applications including the following functionality:

  • Automated programming and hardware test utilities
  • SQL backed database interactions
  • Record viewing and editing for the medical industry
  • Image manipulation
  • Hardware simulation
  • Device configuration
  • Serial, USB, PPP, TCP/IP, FTP and HTTP Communication Interfaces
  • SSH Tunneling
  • Message Security (AES, HMAC, etc)
  • NMEA GPS interface (Trimble, Leadtek, Global Top Bluetooth)

For the cleanest installation, code-signing your software helps ensure your customers that the distributed application is malware free and originates from you, unmodified.

 

Communications

One of the most common product requirements we encounter is the ability to communicate. Examples include an embedded controller communicating with a peripheral device, a wireless interface to a data collection system, a network interface presenting data to a remote user. We have in-depth experience with a wide variety of protocols and industry standards to support communications.

  • Networking: TCP/IP, SNMP, SMTP, NTP, DNS, DHCP, SSH, HTTP(s), NetBios
  • Wireless: 802.11 (Wi-Fi), 802.15.4 (WirelessHART), 802.16 (WiMAX), Bluetooth, Proprietary
  • Devices: I2C, SPI, USB, PPP, RS-232, RS-485, RS-422, D-Bus, Modbus
  • Security: SSH, AES, CCM, SSL/TLS, HTTPS
  • Utility Metering: DLMS/COSEM
  • GPS: NMEA 0183
  • Health Care: HL7

 

Web/Network Development

We provide a wide range of WEB and NETWORKING services, view our services page HERE

 

DSP and Control Systems

Looking for Digital Signal Processing support?  More information is available HERE

 

FPGA/ASIC

Our FPGA and ASIC services page can be found HERE

 

Mobile Development

Whether you're looking for an embedded Android implementation or an iOS/Android app, we have you covered HERE

 

Wireless Systems

We have experience with industry standard wireless protocols such as WiFi, Bluetooth, ZigBee as well as custom wireless protocols.  See what Infinetix can offer you HERE

Comments are closed.