The following sections describe our main areas of expertise:
Networking (Layer 1 to 4)
- Ethernet (802.2 LLC, 803.3)
- Wireless LAN (802.11a/b/g, 802.11f, 802.1x, WPA)
- VPN technologies (IPsec, L2TP, PPTP, cipe, OpenVPN)
- PPP (PPPoE, PPTP, PAP/EAP, MS-CHAP, MPPE)
- IPv6
- SCTP
- Packet Filtering / NA(P)T
- NAT Application Layer Gateways (ALG)
- IBM SNA Protocol Stack
(Mobile) Communications
- ISDN protocols (Q.921, Q.922, Q.931, V.120, X.75)
- GSM Um Interface (all layers, incl. LAPDm, RLC/MAC, RR/MM/CC, SM/GMM)
- GSM A-bis (RSL and OML) and A (BSSMAP, BSSAP) interface
- GPRS Gb interface: LLC, SNDCP, BSSGP, NS protocols
- GPRS/UMTS Gn interface: GTP Version 0, 1, 2; GTP-C, GTP-U
- Classic SS7 protocols: MTP2, MTP3, ISUP, SCCP protocols
- GSM/UMTS core network protocols: TCAP, MAP, CAP protocols
- SIGTRAN protocols: M2PA, M2UA, M3UA, SUA protocols
- UMTS Iu protocol stack: NBAP, RRC, RANAP protocols
- UMTS Iuh protocol stack (HNBAP, RUA, RANAP)
- SMPP 3.4 Protocol
- TETRA V+D protocol stack, specifically PHY, MAC and LME
- SIM / USIM / UICC related ETSI and 3GPP protocols
- Security related aspects of abovementioned protocols
Networking (Layer 5+)
- Networking File Systems (NFS, SMB)
- Application layer security (SSL, TLS)
- Socks Proxies
- Transparent Proxies
- VoIP Protocols (SIP/SDP, H.323)
- Dynamic Routing Protocols (RIP, OSPF, BGP)
Databases
While hmw-consulting doesn't provide expertise in developing RDBMS, we can offer database modelling and software development interfacing with the following database systems: - Oracle 8+ - MySQL - PostrgreSQL - LDAP directory services
Linux Kernel Development
- Device Drivers (Networking, Power Management Unit, Graphics, sensors, USB device)
- Networking Protocols, Packet Filter
- Architecture Porting
- Integrating code with upstram / mainline Linux
Embedded Devices
hmw-consulting has experience in both hardware architecture design as well as software / driver development based on the following products
- 80C51 based microcontrollers (80c535, EzUSB, P8RF5016)
- 80C166 microcontrollers
- Embedded x86 Hardware (Geode, C3/C7, AMD APU, Intel Atom)
- Texas Instrumenst Calypso/Iota/Rita GSM chipset
- ARM7/ARM9/ARM11 embedded cores
- Cortex-M0 and Cortex M3 based microcontrollers
- STMicro STM32F1xx, STM32F05x, STM32F2xx microcontrollers
- Intel pxa255/pxa270 SoC
- TI OMAP2xxx and OMAP3xxx SoC
- TI DaVinci SoC
- TI Sitara AM335x SoC
- Samsung S3C2410, S3C2440, S3C2442, S3C2443, S3C64xx, S5PC1xx, S5PV210 SoC
- Smedia Glamo embedded graphics accelerators
- Philips/NXP power management units (pcf50606, pcf50633)
- Smartphone hardware development
- u-boot bootloader driver implementation and porting to new boards
Programming Languages
- C
- C++
- Pascal
- Perl
- Python
- Assembly (x86, x86_64, PowerPC, 80c51, ARM, Thumb)
- Erlang/OTP
- TTCN-3 (specifically using Eclipse TITAN)
PC Hardware
While not providing any consulting for hardware development, hmw-consulting has a strong background in OS and Firmware development. Thus, low-layer knowledge about the following PC hardware technologies and their common register sets and software interfaces
- USB / USB 2.0 / USB 3.0
- IEE1394 / FireWire
- PCI / PCI-X / PCI Express
- HyperTransport
- PowerPC (G3, G4, G5)
- AMD64 / x86_64 / Opteron
- ARM7 / ARM9 / Xscale / ARM11 / Cortex-A
- Intel IXP24xx/28xx Network Processors
SmartCards
- Smart Card (Chip card) reader driver development (PC/SC, CT-API)
- DIN EN ISO/IEC 7816-4 based cryptographic smartcards
- DIN EN ISO/IEC 7816 secure messaging
- German signature law (SigG) standards
- HBCI standards / protocols
- ICAO MRTD (ePassport) related development
- SIM / USIM / UICC related ETSI and 3GPP protocols
- Java Card standards (including Global Platform)
RFID
- ISO 14443-3 A+B / ISO 14443-4 protocol stack and PCD drivers
- ISO 15693 protocol stack and VCD drivers
- ISO 18000 protocol stack and drivers
- MiFARE PCD-side software stack development
- ICAO MRTD (ePassport) related development
- 13.56MHz RFID reader hardware development
Free Software Licensing
- (L)GPL compliance in mixed free/proprietary products
- (L)GPL auditing of existing products
- Consulting on best current practices in (L)GPL related software development
- Verification of GPL violations by dissection of object code