Weinigel Ingenjörsbyrå AB - Christer

Weinigel Ingenjörsbyrå AB · Ringvägen 11A · 118 23 Stockholm

Curriculum Vitae, Christer Weinigel

Christer Weinigel
+46 706 681254
PGP public key
PGP public key

I am an experienced software engineer with a solid understanding of hardware. I was born in 1971 and have been interested in computers for as long as I can remember. I've done everything from J2EE services to boot loaders in assembly language, so I can work with just about anything, although the thing I'm really good at is software on embedded systems. I don't design hardware professionally, but I understand it well and often work closely with hardware engineers.

The kind of projects I like to work on are fairly short ones, some lasting just a few days, where I either act as a technical advisor or where the customer has a tricky hardware/software problem and need immediate help with troubleshooting; other projects lasting up to a few months, typically to bring up Linux on a new hardware platform, where I would work on the boot process and device support.


  • One of my biggest strengths is that I have the ability to look at new technology and learn it very quickly.
  • Fluent in Swedish and English, both spoken and written.
  • Experienced developer in C, C++, C#, Java, various assembly languages and Python. Also knows basic Perl, lisp, Matlab, Verilog, VHDL, HTML and a lot of other languages, but the languages of choice are C and Python.
  • Experience with embedded and real time systems based on Linux, Android, various embedded RTOSes such as Nucleus, Zephyr, ChibiOS/RT, mbed, and many bare bone systems running on micro-controllers such as the Microchip PIC processor, Avnet AVR and the Intel 8051.
  • Good networking skills with experience of TCP/IP, DECnet, IPX, AppleTalk, LonWorks and higher level networking services such as HTTP and SNMP
  • Experienced in cryptography using PGP, OpenSSL, JSSE and BouncyCastle.
  • Expert in programming close to the hardware. Have a good understanding of hardware issues although I usually don't build hardware myself.
  • Have much experience of working close with customers, often on site at the customer and in many countries.
    I have worked and lived in Singapore, UK and China, and have been on longer business trips to Norway, the United States, Denmark and Taipei.
  • Worked for a GPS company for five years, so know quite a lot about GPS, both applications related to GPS and the internals of a GPS receiver.


2002-present: Owner at Weinigel Ingenjörsbyrå AB
Started a company, Weinigel Ingenjörsbyrå AB (weinigel.se), to work as a free-lance contractor/consultant. Weinigel AB has been put in hibernation twice when I have decided to become an employee of a customer. As of 2018 I am working as a contractor via Weinigel AB again.
2017: Employee at Nokia
I worked as a contractor for ETA Devices Inc in Cambridge, MA during 2015 and 2106. ETA was acquired by Nokia (nokia.com) at the end of 2016 and as a part of the acquisition I was retained as an employee by Nokia for one year, mostly doing the same work as I did as a contractor at ETA Devices.
Keywords: C, C++, C#, Verilog HDL, FPGA Development, ASIC Development, Xilinx Zynq, Radio
2015-2016: Contractor at ETA Devices
I worked as a contractor for ETA Devices (etadevices.com). The main office of ETA was in Cambridge, MA and I spent a couple of months working there. I was brought in to help with the bring up of a new ASIC but ended up working with a bit of everyting, portability frameworks for C to be able to run C on many different plafroms, support infrastructure such as automatic build systems and also did a bit of simple FPGA development in Verilog.
Keywords: C, C++, C#, Linux, Windows, Visual Studio, Bare Metal RTOS, MIPS Assembly Language, Verilog HDL, FPGA Development, ASIC Development, Xilinx Zynq, Radio
2013-2015: Contractor at ASSA
I came back to ASSA (assa.se) to help them out with some device drivers. It was supposed to be just for a few weeks but I ended up working for them another two years. I worked on adding alarm system support to the ARX platform, on firmware for their Mifare card readers, firmware integrating the Yale Doorman connected lock to Aptus residential management systems, and on developing some new products.
Keywords: Java, C, NFC, Mifare, Linux, Device Drivers, Cryptography
2012-2013: Contractor at SAAB
I worked about a year and a half at SAAB (saab.com) on defense applications.
2011-2012: Contractor at Packetfront
I worked a year at Packetfront on the hardware support for their their ASR 6000 Gigabit Ethernet Switch (https://www.waystream.com/products/l3-gigabit-ethernet-switch). PacketFront's hardware division has now changed its name to Waystream (waystream.com).
Keywords: Cavium Octeon, NetBSD, Gigabit Ethernet Switch, C, MIPS Assembly Language
2006 - 2007: Employee at Cambridge Silicon Radio (CSR)
Nordnav was acquired by CSR (csr.com) at the beginning of 2007. CSR wanted to build a GPS capable Bluetooth ASIC called BC7830. At the beginning I mostly worked at CSR's headquarters in Cambridge UK working on the GPS parts of the chip firmware and on the chip-to-host interface making it possible to demo the BC7830 Software GPS at the Mobile World Congress in February of 2008.
From 2009 and onwards I worked more on site with customers in in Asia. CSR acquired the GPS company SiRF in 2009, so I also spent quite some time working on the SiRF hardware GPS receivers, some at the SiRF headquarters in San Jose, CA, some on site with customers in Asia.
Keywords: GPS, DSP Digital Signal Processing, C, Python, Device Drivers, Linux, Android, Nucleus RTOS, Thread X RTOS, MediaTek RTOS
2006 - 2007: Contractor and Employee at Nordnav Technologies AB
I started working as a contractor for Nordnav Technologies AB but later decided to become an employee of that company. Weinigel AB was put in hibernation during my employment. I was originally hired as an field application engineer to work on-site at customers, but spent most of my time working on the infrastructure around the software GPS receiver that Nordnav created.
Keywords: GPS, DSP Digital Signal Processing, C, Python, Linux, Device Drivers, MIPS, MIPS64, ARM, TigerShark, PowerPC
2002 - 2006: Contractor at Solid AB
Solid AB is now known as ASSA ABLOY Shared Technologies. I was involved in the SOLICARD ARX project. ARX is an access control system using the internet for communications. I originally worked on the hardware support, boot loader and Linux port for the Axis ETRAX based board used in their local control units (LCU).
After that I started working on the communications with the server designing and implementing a large part the PKI infrastructure used in ARX. I got more and more involved with the server side of the system, working with the business logic written in C++ and Java using a SQL database for storage. Since the system uses multiple implementation languages Corba and ONC RPC are used for inter-module communications.
In later versions the server software was changed to use only Java. As the system has gotten closer to production I've also designed and built the hardware and software used for testing and programming of the LCU during manufacturing. I've also done a few debugging sessions finding and fixing a couple of issues in Solids proximity card readers.
Keywords: Java, Jetty, JSP, C, C++, Corba, ONC RPC, OpenSSL, JSSE, Microchip PIC, Avnet AVR, SAP/DB, Axis ETRAX, Linux, Device Drivers, Security.
2000 - 2001: Contractor at e2-Home (via Nano Systems)
Worked on the e2-Home Smart Home project, a collaboration between Ericsson and Electrolux. My main responsibilities have been system design and device driver programming for the LonWorks home automation network, and the creation and maintenance of the CVS source code repository and automatic build systems. Additionally I have been doing coding and code review of the Java OSGi code and some network and NT service programming under Windows NT. Finally I have designed and built the hardware and software for two automatic test systems for the e2-Home IT box hardware.
2001 - 2002: The "Nano Computer"
Working on the design of an embedded computer based on the National Semiconductor Geode SC2200 processor. I've been responsible for most of the hardware specifications and have been working in close cooperation with the people designing the hardware, reviewing their design and making sure that it works well with Linux. They received the first prototype board in November 2001 and I got Linux running on it within a few days. After that I've been working on device driver development and CE certification for the board.
2000 - 2001: Employeee at Nano Systems AB
Working for Nano Systems AB. Mostly working in-house with the design of the Nano Computer, and as a consultant at Ericsson and e2-Home.
Keywords: C, Linux, Device Drivers, Cyrix MediaGX, National Semiconductor/AMD Geode
2000: Employeee at Utilator AB
Started working for Utilator AB in May 2000 and worked mostly as a consultant at Ericsson until Nano Systems was spun off from Utilator in November 2000.
Keywords: C, Linux, Device Drivers
1999 - 2000: Contractor at Ericsson on the Cordless Screen Phone HS210 (via Signum)
Did the port of Linux to the CeBit prototype for the Ericsson Cordless Screen Phone at Ericsson Cyberlab in Singapore and was also contracted for the product development of the real Cordless Screen Phone until I started working at Utilator. See http://www.ericsson.se/ and search for HS210.
1998 - 1999: Contractor at Ericsson on the eBox (via Signum/Cendio)
Doing almost all the initial Linux programming for the Ericsson eBox, doing a port of Linux to the new hardware, writing device drivers (for the LonWorks and ISDN), and as a technical adviser. See http://www.ericsson.se/ and search for ebox.
1996 - 1999: Contractor at Mydata Automation AB (via Signum)
Moving all software on Mydata Automation's TP-machines, a surface mount assembly robot, to Linux, doing work at the hardware driver lever, system design level and applications programming. See http://www.mydata.se for more information.
1995 - 2000: Employeee at Signum Support
Started work for Signum Support (now Cendio Systems), a company specializing in free software, mostly as a consultant specializing in Linux and embedded systems, but early on I did some Microsoft Windows programming in everything from Visual Basic and Microsoft Access to C++/MFC.
Keywords: Linux, Device Drivers, C
1993 - 1995: Studies at Linköping Institute of Technology
Studied Electrical Engineering at Linköping Institute of Technology and that's where I first encountered Linux in late 1993. I was also a member of an academic computer club named Ctrl-C, where I worked a lot with OpenVMS on VAXen. Besides that I also administered a Novell Netware network for a student computer hall.
1992 - 1993: Military Service
Did my military service as a radio service technician.
1992 - 1993: Windows programmer at Vattenfall AB
Worked part time as a Windows programmer for Vattenfall AB.
1991 - 1992: Part time work at Forsmark
Worked part time as a system administrator of a Norsk Data Nord 500 system and a Unix/SunOS system.
1990 - 1992: Studies at Formarks Skola
Studied Computer Science at a vocational college at the Forsmark Nuclear Power plant, resulting in an engineering degree (a Swedish gymnasieingenjör, teknisk 4-årig).
1989 - 1990: Exchange student in USA
Studied as an exchange student in Birmingham, Alabama, USA.
1971 - 1989: Early life in Stockholm
Born and raised in Stockholm where I also went to grade school and high school.
Hobby Projects
Too many to list all here, but I'm very interested in both software and hardware and spend much time on learning new things. Some of my hobby projects are a firmware for the EZ-USB and FX2 micro-controllers from Cypress, a 250MSample/s oscilloscope, and custom Linux firmwares for many different devices such as a PDA previously running Windows CE and a LG TV set. More documentation on some of my projects can be found at my private blog blog.weinigel.se.