Stellaris Cortex and OpenOCD

I have always had problems with OpenOCD, mainly due to bad documentation out of sync with the code. I got a new evaluation board for the LM3S2965 processor (EK-LM3S2965) last week and gave OpenOCD a new try, and lo, this has become quite simple. Continue reading ‘Stellaris Cortex and OpenOCD’

A small DIY hydro-electric power generator

I was involved with the development of a 5 kW hydro-electric power generator in 1985. It has now run for 25 years and I  publish this description of the plant to celebrate. Continue reading ‘A small DIY hydro-electric power generator’

Pneumatic organ control

I have produced the control system for several pipe organs using electro-magnetic solenoids for the stop actions.  I just finished a new one where we use pneumatic cylinders to provide force. A pneumatic system can actually work without producing much noise if set up correctly. So we are very happy with this new organ in St. Johannes church, Stavanger, Norway. Continue reading ‘Pneumatic organ control’

Store docs in the microcontroller’s flash

When starting out as an engineer, building electronic circuits of many kinds, my mentor advised me to always leave a copy of the schematics within the box. This is a wise proposition, the schematics in the box will probably be up to date and readily available. On the other hand, external documentation may be displaced and even lost during a period of time. This is equivalent to program documentation: Comments within the source file are easier to keep up to date than some external documentation, like flow sheets.

Now I use a board with a micro controller which  flash memory is much larger than what I need for the application. So why not use that spare flash to embed  some docs? Continue reading ‘Store docs in the microcontroller’s flash’

My artisan memory stick

My memory stick made from traditional Norwegian knife materials.

memorystick

Continue reading ‘My artisan memory stick’

ARM with CAN interface

An open hardware project involving a PCB with an AT91SAM7X128 processor with galvanically isolated CAN bus and power running off 24V DC. All documentation needed for production (schematics, board layout, gerber files) is included in this tar-archive. You are free to use and produce this hardware, see the included license file. This project is also registered with Harkopen.

Let a cgi script write a server page file with proper permissions

Web servers should run under a user who does have minimal rights and files accessible by the server should be owned by and writeable only by another user, preferably root. So, what to do if the cgi script should update a file that is accessible from the web? Continue reading ‘Let a cgi script write a server page file with proper permissions’

A fan for my graphic card

My graphic card felt hot to the touch, it needed some cooling. This is not an advanced card, so there is no on card fan. Continue reading ‘A fan for my graphic card’

Auto dial for C-motech D-50 modem

This modem uses the 450 MHz band for wireless internet access. InScandinavia this mobile internet access network is operated by ice.net. The following rules andscripts constitute an auto-dialer: when the USB modem is inserted the system automatically connects to the network. Continue reading ‘Auto dial for C-motech D-50 modem’

A small static nameserver

This is a simple domain-name server for an embedded system in a closed local network. Originally called the Severely Crippled Domain Name Server, this server is now the name server of Busybox.

The purpose of this name server is to give the embedded controller a name, so if connecting a laptop for configuration and other maintenance, the controller provides the laptop with its name so the user can access by name instead of IP number.

A bison push parser skeleton

Bison is a compiler-compiler which generates a parser basedon a grammar specification. The parser usually runs in a loopgetting new tokens from a lexical scanner.

This push parser works the other way around by letting thescanner call the parser each time a new token is available.

The copyright of this parser skeleton has been transferred to the Free Software Foundation and is now integrated with the Bison project.

How far does a dwarf-hamster run during a night?

Hamsters are very active animals. When kept in cages they often have access to a running wheel. They spend much of their nights running  this wheel. But how far do they actually run? Continue reading ‘How far does a dwarf-hamster run during a night?’

Structured modelling of fish physiology

Structured modelling of fishphysiology (1 MB). Dr thesis 1989. Continue reading ‘Structured modelling of fish physiology’

The ring binder PC

This PC is built into a very simple case: a ring binder. The PC is anembedded controller – not used by humans but independently doing its specialunsupervised job. In this case it wakes up once a day, takes a picturewith a USB camera, stores it and then powers off again. Continue reading ‘The ring binder PC’

Luminary Stellaris under Linux

You may log in to the Luminary web page and download the source files for the ARM Cortex based boards they produce. I needed the source for the brushless motor kit: SW-RDK-BLDC-4694.exe, which is a Windows executable. Continue reading ‘Luminary Stellaris under Linux’

Build gcc for ARM Cortex processor

I have lately built several versions of the Linux GCC tool chain for the ARM Cortex processor. But the generated tools do not work properly with floating point, issuing errors about floating point inconsistencies. Continue reading ‘Build gcc for ARM Cortex processor’