Company name change

The business of Kiwi Embedded is being moved to Sparv Embedded AB. This is due to a name collision when incorporating the company. The proprietor Anders Petersson continues as managing director of Sparv Embedded AB. The nature of the business will be the same. (Although the number of involved persons is expected to grow.)

The new web site is online at sparvembedded.com. Email will be anders@sparvembedded.com.

Content, emails, contracts etc will be gradually migrated.

Summer time

During the last year, I have spent most of my time doing consulting work at Zenterio. As previously mentioned, Zenterio creates software for set-top boxes, offering a full independent OS for digital TV operators. It’s a vibrant environment with over 100 employees from over 20 countries. I have been the technical lead for two components and I’m happy to say my work has met with high appraisal. My first priority is to meet the customers’ time frame. Second priority is delivering extensible technical solutions. I also take active part in planning and coordinating the development efforts. The team has been able to deliver in time in spite of some tough technical obstacles. I’ll continue to help them out after the summer.

During the summer, I will again focus fully on Windsond and an as of yet undisclosed project. There’s a clear potential for weather soundings within the lower part of the atmosphere and a lot of activities are going on in Kiwi Embedded in areas of market, hardware, firmware, software, measuring techniques and manufacturing. I’m also learning more about meteorology — a fascinating science. There’s certainly plenty to do!

Lua

An old truth in software development is to use tools of the proper level of abstraction for the task at hand. But all too often we find ourselves reaching for C or C++ even when absolute execution speed isn’t critically important. Developers end up dealing with issues like type conversion, memory management and implementing basic data structures without even knowing what benefit in speed the extra work brings.

I got the opportunity to look into the scripting language Lua for a client and I’m thrilled to see the great things this language offers. It’s a compact and flexible language that adds easy control over program flow and data structures. Calls and data sharing between C and Lua are fairly straight-forward. The platform-specific parts, heavy calculations and big data can stay in C or C++ to preserve performance while other components can enjoy replaceable code, garbage collection etc.

Lua is by no means an unknown language — it’s used as part in a great number of games and applications. For example, the photography suite Adobe Lightroom uses Lua to define the GUI, totalling a full 40% of the source code (source). Hit games World of Warcraft and Grand Theft Auto 4 use Lua. Although the standard distribution is very basic there are many plugins, for example Love 2D for creating games.

Maybe the biggest argument for a scripting language is the ability for third parties to change and adapt the program behavior without compiling code, creating native libraries or risking to compromise the system security. Both Lightroom and World of Warcraft use Lua for this.

Python is another scripting language that’s very popular for its ease of development and availability of libraries for almost any purpose. Indeed, I often use it myself and the whole Windsond PC application is written in Python. But binary size and memory footprint count in embedded systems and the lower demands of Lua make a big difference here. All Lua language features compiles to 182 KB with additional 244 KB needed for the standard libraries. When needed, Lua can allegedly be reduced to 100 KB with libraries. Standard Python is at least 1000 KB. Python-on-a-chip reimplements parts of Python to 55 KB program memory (flash) to potentially be a contender.

Lua also offers an alternative for for microcontroller projects, eLua. It adds direct access to many hardware features. It has support for some Cortex-M3 and AVR32 MCUs. The documentation is a bit fuzzy on the hardware requirements, but seem to be in the range of 100s of KB flash and down to 10 KB RAM.

Zenterio

Since June, I have an assignment doing software development at Zenterio. Zenterio offers a software platform for set-top boxes, simplifying for TV operators to maintain a common platform for their user interface and services even with a diverse set of deployed set-top box models.

See the Zenterio explanation of the business logic of their independent operating system.

Zenterio is a young and growing company with employees from a big number of countries. Their positive attitude and natural understanding of software development makes me feel right at home.

Vibration Measurement Instruments

I’m excited to announce that I’ve started cooperating with VMI AB, a Linköping company that develops and manufactures instruments for vibration measurements for a wide range of industrial machines. The company has a complete product range for different measurement needs and many years of experience in condition monitoring and load balancing. They have a world-wide reseller network and already sold a lot of instruments.

With my background in both application software, firmware and business development, I’m in a good position to help out with their product development and suggest the best technology strategy for the future. It’s a chance for me to gain more insight in small businesses and get experience in a new field over the next few months.

Business school

Course manager Anders Örnell and myself, branding my diploma

This Tuesday marked the end of the business course I’ve been attending one evening per week since September. The course gives an overview in several aspects of running a company; marketing, sales, entrepreneurship, service and law. It’s been a good starting point for mastering the world of business. The energy and entrepreneurial spirit of all participants and the interesting discussions also made an impression on me.

http://www.foretagarskolan-linkoping.se/

Instead of the business class, I’ll now spend my Tuesday evenings on something very different — a Bachata dance course.

The first seven months

SnowfallWhen I started Kiwi Embedded, it was April and the sun started to actually make a difference after the Swedish winter season. I did enjoy the sunshine but I also had a lot of work plans so I didn’t waste too much time outside. Fast-forward to today; this morning the snow is piling up on the outside of my windows. When the sun does shine everything is white and bright, but it won’t give any warmth again during this year.

In other words, Kiwi Embedded has been running for over half a year. What’s happened during this time?

The original plan was rather hazy. Spend a few months to finish my ongoing projects and think about my next step.
As so very often in this industry, the projects took more time than planned. To be fair, I’ve also expanded the ambitions quite a bit. I’m now pursuing business ideas and offering consultant services in embedded systems on a more long-term scale.

During the start of the summer I finally took Channel Wizard to production. But the vast majority of the time has gone into developing the weather balloon system Windsond. The original project to provide a basic system for Swedish Airsport was concluded during the summer and I helped to successfully demonstrate it on site during the ballooning world championships in USA. The scope has expanded a lot since then and I look forward to launching a great product.

With the exception of a few weeks of holiday and the following flu, I’ve worked hard and efficiently. The log file of what I’ve been doing each day measures 220 KB in text mass. Efficient work doesn’t necessarily mean it’s effective towards the end goal. (Incidently, the Swedish language would have you believe so, as it doesn’t really make a distinction between the words ‘effective’ and ‘efficient’). I hope my work will turn out to be effective and useful.

Apart from concrete systems development, I’m now better oriented in the industry and in business management. I’ve made quite a few contacts in software and hardware development, manufacturing, business people and entrepreneurs. The entrepreneurial aspect is tantalizing and something I’m looking more into. I’ve met startups that succeeded, startups on their way to success and startups that didn’t succeed. You can’t know the outcome in advance but have to try to even get the chance.

Meeting with entrepreneurs

I’ve also met many people with a desire to realize their own idea or just a vague desire to realize something in general. Once you start looking, the world is teeming with great competence waiting to be put to better use. All that’s needed is a solid idea, financing and a knack for organization…

In conclusion, it’s been a lot of work but also a lot of fun and valuable personal development. Back in those spring days, the future was unclear. I’ve learned much since then but the future is still unclear, albeit in slightly different ways. Nevertheless, my present is meaningful and I still have good hopes for the future.

Technology in Linköping

This week a lot companies come together here in Linköping and Östergötland for seminars, lectures and other events on the theme of innovations and starting and expanding businesses. The initiative is called “Vecka 45“. I’m attending; listening, discussing and making connections. Running a business has so many facets. There sure are many organizations that want to help in one way or another.

One thing is clear; this area is a hot-spot for technology startups. The long-time presence of big companies like aircraft manufacturer Saab and mobile networks giant Ericsson has been a big factor in this success. Other important companies at Mjärdevi Science Park are Autoliv, Intentia, IFS, defence research institute FOI, Motorola, Sectra. That’s not counting the companies involved in computer vision and digital media. There are many a dozen consultancy companies active in this area. And of course the forward-thinking Linköping University plays an important role. They were the first in Sweden to introduce dedicated computer education programs.

Certainly a good place to be when seeking opportunities in the technology business.

Website launch

Photo copyright bayasaa

Since starting working full-time at Kiwi Embedded in April, I’ve focused on technical development and didn’t have much to show. Now it’s time to launch this website and make my work a bit more public.

For a start, I’m presenting Channel Wizard and Windsond (see earlier posts). I also have a couple of other projects in various phases of development. These will be announced when mature enough.

The coming weeks will bring a mix of holiday and development work. Highest priority is to ship Channel Wizards to waiting customers. Then in mid-August I’ll go to the World Hot Air Balloon Championship to use Windsond for the two Swedish teams.

Channel Wizard produced

The first microcontroller project I started was to add more channels to transmitters for radio-controlled airplanes. The idea was to encode (multiplex) multiple functions into a single channel, then decode the functions into real channels again in the airplane.

The project evolved to also add regular channels, support 16 channels, generate sound or an analog voltage, bootloader, encode PWM to PPM, decode PPM to PWM, custom splicing and advanced mixing of channels and so on. After seven revisions of the hardware, I’ve finally managed to send the board for automated assembling. The finished boards have now arrived. And they work!

Although I still need to do some manual work with each board, this makes the assembly much faster and I can start to sell more of the boards. The firmware is quite advanced so the device deserves a wider audience!

I’ve added a dedicated product page for Channel Wizard. There’s a thread on RCGroups about it.