The Voloci electric motorbike was made and sold by Nova Cruz Products Inc. during the period 2001-2003. It was too far ahead of its time and production soon ceased, but there are quite a lot of them out there. Unfortunately, the firmware had a bug and could get corrupted and a lot of these bikes did not get the very last update that fixed this. Kanda have just been working with one such guy to help him resurrect his machine.
All microcontroller based applications include the microcontroller code called firmware but it is surprising how many people forget that they may need to update it when their products are scattered at customer locations. This may be because (heaven forbid) that they discover a bug in the system that needs to be corrected or, more commonly, that the product needs new features in response to customer feedback or competitor’s actions. So how do we simplify firmware updates?
A common question we get is should I program my microcontroller in C or assembler? This usually means do I bother with assembler or just use C. Sometimes it just means that I do not know the difference. So what is the difference?
An AVR microcontroller is a type of microcontroller manufactured by Atmel, which has particular benefits over other common microcontrollers, but first what is a microcontroller?
The easiest way of thinking about it is to compare a microcontroller with your PC, which has a motherboard in it. On that motherboard is a microprocessor (Intel, AMD chips) that provides the intelligence, RAM and EEPROM memories and interfaces to rest of system, like serial ports (mostly USB ports now), disk drives and display interfaces. A microcontroller has all or most of these features built-in to a single chip, so it doesn’t need a motherboard and many components, LEDs for example, can be connected directly to the AVR microcontroller. If you tried this with a microprocessor, bang!
What is CAN bus? Officially, CAN is a Controller Area Network, which is a network of independent controllers communicating securely. It was first developed by Bosch and Intel in 1990 and has been amended since. The International Standards Organisation (ISO) has further defined CAN using their OSI model.
Smart Cards are a bit of a misunderstood subject and no-one is quite sure what they are. Smart Cards are defined in a standard called ISO 7816. This has different sections that cover physical size and characteristics, where the contacts should be (for contact cards) and how to communicate with them.
We have been asked about how you can program an application code file and a separate bootloader into an AVR microcontroller using a Kanda programmer. It isn’t possible to program two separate files but it is simple enough to combine them into one file.
How do you choose a new production programmer? This issue came up in our production department this week, and made us consider again what is important in a production programming system.
So what considerations are important when choosing a new programming system?
Firstly, where possible we use ISP (In System Programming) and all our own products are manufactured using ISP but that is not always possible and ISP will be discussed further in another post. We also carry out contract manufacturing and assembly, and this is where we needed a new socket programming solution.
Continue reading “Help, Production Programmer Needed” »
Just when you thought you had complied with all the EU legislation needed for your electronics business, they dump another one on us and what a beauty!
What does this mean in practice?