Tweeter buttonFacebook buttonLinkedin button
  • 09 Jul 2010 /  GNU/Linux, Hardware

    The goal of the CMUcam project is to provide simple vision capabilities to small embedded systems in the form of an intelligent sensor. The CMUcam3 extends upon this idea by providing a flexible and easy to use open source development environment that complements a low cost hardware platform. The CMUcam3 is an ARM7TDMI based fully programmable embedded computer vision sensor. The main processor is the NXP LPC2106 connected to an Omnivision CMOS camera sensor module. Custom C code can be developed for the CMUcam3 using a port of the GNU toolchain along with a set of open source libraries and example programs. Executables can be flashed onto the board using the serial port with no external downloading hardware required.

    Source:
    http://cmucam.org

  • 27 May 2010 /  Embedded

    Blueboard is an open-source initiative at realizing cost effective prototyping and solutions using the versatile LPC 214x series of microcontrollers. Driven at present, by engineering and support from NGX Technologies, the board is provided with necessary interfaces for a quick realization of embedded solutions. NGX Technologies? Blue Board – LPC2148 is a ready-to-run development platform with code snippets to demonstrate applications for every feature supported on the board. The Blue Board offers ubiquitous interfaces making it the best board available for the offered price. All the technical information related to the project is freely available.

    Software Code:

    • Analog to Digital Converter.
    • 16×2 LCD
    • VGA .
    • UART.
    • I2C.
    • E2PROM Driver – Reading and writing to an i2c-e2prom
    • SPI – Using SPI in polled master mode to drive 8x LEDs
    • FIQ Handler.
    • Timer.
    • SoftTimer – Demonstrates multiple timers with callbacks
    • Real-Time Clock.
    • Watchdog.
    • SD/MMC access
    • PS2 – Code to demonstrate PS2 keyboard
    • Audio – Code to demonstrate wav playback
    • Buzzer- Code to demonstrate buzzer on external interrupt
    • Code Protection.

    Source:

    http://shop.ngxtechnologies.com/product_info.php?products_id=28

    http://code.google.com/p/blueboard-lpc214x/

  • 27 May 2010 /  Embedded

    FreeOSEK is a scalable RTOS for embedded systems based on OSEK-VDX specification. OSEK-VDX RTOS standard has been used successfully for more than a decade in the car industry.

    FreeOSEK is a static configurable RTOS where only the needed resources are created. This feature improves not only the RAM/ROM consumption but the runtime and real time characteristics, as well. For example usually you may need between 2 – 10 kB for the FreeOSEK RTOS, which may vary according to the platform, compiler, compiler options, configuration, etc. (see RAM/ROM consumption page for examples). This makes FreeOSEK best suitable for small and fast real time embedded systems.

    Source:
    http://opensek.sourceforge.net

  • 27 May 2010 /  Embedded

    lpcusb is a USB core stack for the built-in USB device of LPC214x microcontrollers. It handles the hardware interface and USB enumeration/configuration. Included are usage examples like USB joystick HID, USB virtual COM port and USB mass storage on SD-ca

    Source:
    http://sourceforge.net/projects/lpcusb/

  • 27 May 2010 /  Embedded

    SkyEye is an Open Source Software Project (GPL Licence). Origin from GDB/Armulator, The goal of SkyEye is to provide an integrated simulation environment in Linux and Windows. SkyEye environment simulates/emulates typical Embedded Computer Systems (Now it supports a series ARM, MIPS, PowerPC, Blackfin, Coldfire, and SPARC architecture based microprocessors). You can run some Embedded Operation System such as Embedded Linux, uClinux, uc/OS-II (ucos-ii) etc. in SkyEye, and analysis or debug them at source level.

    Source:
    http://www.skyeye.org

  • 26 May 2010 /  Embedded

    BTnode is an autonomous wireless communication and computing platform based on a Bluetooth radio and a microcontroller. It serves as a demonstration platform for research in mobile and ad-hoc connected networks (MANETs) and distributed sensor networks. The BTnode has been jointly developed at ETH Zurich by the Computer Engineering and Networks Laboratory (TIK) and the Research Group for Distributed Systems. Currently, the BTnode is primarily used in two major research projects: NCCR MICS and Smart-Its.

    The low-power radio is the same as used on the Berkeley Mica2 Motes, making the BTnode rev3 a twin of both the Mote and the old BTnode. Both radios can be operated simultaneously or be independently powered off completely when not in use, considerably reducing the idle power consumption of the device.

    The BTnode rev3

    * Microcontroller: Atmel ATmega 128L (8 MHz @ 8 MIPS)
    * Memories: 64+180 Kbyte RAM, 128 Kbyte FLASH ROM, 4 Kbyte EEPROM
    * Bluetooth subsystem: Zeevo ZV4002, supporting AFH/SFH
    * Scatternets with max. 4 Piconets/7 Slaves, BT v1.2 compatible
    * Low-power radio: Chipcon CC1000 operating in ISM band 433-915 MHz
    * External Interfaces: ISP, UART, SPI, I2C, GPIO, ADC, Timer, 4 LEDs
    * Standard C Programming, TinyOS compatible

    Source:
    http://www.btnode.ethz.ch

  • 26 May 2010 /  Embedded

    Nut/OS is based on an intentionally simple RTOS kernel, which provides a minimum of services to run Nut/Net, the TCP/IP stack. It’s features include:

    * Coperative multithreading
    * Deterministic interrupt response times
    * Priority based event handling
    * Periodic and one-shot timers
    * Dynamic memory management

    Main features of the TCP/IP stack are:

    * Base protocols Ethernet, ARP, IP, ICMP, UDP, TCP and PPP
    * User protocols DHCP, DNS, SNTP, SMTP, FTP, SYSLOG, HTTP and others
    * Socket API
    * Host, net and default routing

    Nut/OS is a modular operating system. Instead of providing a fixed kernel block, all code is packed in libraries. Only those parts are linked to the final binary image, which are directly or indirectly referenced by the application. This guarantees the lowest possible footprint. Ernst Stippl regularly publishes related figures on his web site at www.es-business.com/ethernut/.

    Standard C libraries like newlib or avr-libc are supported and allow to write highly portable applications. While direct hardware access and native interrupts are possible in application code, the system offers ready-to-use drivers for a large number of devices, including:

    * Ethernet controllers
    * UART devices with RS-232 handshake and RS-485 mode
    * SPI, I2C and CAN busses
    * MultiMedia and SD cards
    * Hardware and software audio codecs
    * Analog-to-digital converters
    * Serial flash memory
    * Realtime clocks
    * Infrared remote controls
    * Watchdogs and reset controllers
    * Character displays
    * GPIO and interrupt control
    * Modem control

    Note, that not all drivers may be available on all platforms. The following microcontrollers are actively supported:

    * ATmega103, ATmega128, ATmega2561, AT90CAN128
    * AT91SAM7S, AT91SAM7SE, AT91SAM7X
    * AT91SAM9260, AT91SAM9XE
    * Gameboy Advance

    The system is highly configurable and may work on other hardware too. Support for AVR32 is currently under development and a version for the Freescale Coldfire may become available as well. In addition it is possible to run Nut/OS applications on Linux.

    In order to hide hardware specific details from application code, an almost complete C stdio API is available, which provides:

    * C99 integer types and optional floating point I/O
    * File system support, including FAT
    * Low level functions and streams on devices, TCP sockets and files

    Nut/OS is perrmanently enhanced by an active community. The following features are currently not available, but planned for future releases or currently under development:

    * Graphical user interface
    * USB stack
    * IPv6
    * Encryption
    * Wireless LAN

    Source:
    http://www.ethernut.de/en/firmware/nutos.html

  • 26 May 2010 /  Embedded

    OpenOCD JTAG server is a open-source on-chip debug solution for targets based on the ARM7, ARM9, Cortex-M3 and XSCALE families with Embedded-ICE macrocell support via JTAG port. It enables source level debugging with the standard GNU Debugger GDB compiled for the ARM architecture. In addition internal and external FLASH memory programming is supported. Any GDB aware integrated development environment, example Eclipse IDE, IAR or Emacs, can benefit from OpenOCD.
    “Free” means that it is licensed under the General Public License (GPL).

    User interaction is realized through a telnet command line interface and a gdb (the GNU debugger) remote protocol server.

    OpenOCD supports various different types of Amontec JTAG interfaces/programmers:

    * Parallel port wigglers as:
    – Macraigor Wiggler JTAG cable (via Amontec ARM Debug ValuePack / Chameleon POD)
    – Amontec JTAG Accelerator (via Amontec ARM Debug ValuePack / Amontec Chameleon POD)
    * USB port FTDI FT2232:
    – Amontec JTAGkey (USB JTAG / 5V 3.3V 3V 2.5V 1.8V 1.5V)
    – Amontec JTAGkey-Tiny(USB JTAG / 3.3V Only)

    It supports a number of different ARM cores (Flash programming / core debugging):

    * OpenOCD for ARM ARM7TDMI (-s)
    * OpenOCD for ARM ARM9TDMI
    * OpenOCD for ARM ARM920t
    * OpenOCD for ARM ARM922t
    * OpenOCD for ARM ARM926ej-s
    * OpenOCD for ARM ARM966e
    * OpenOCD for ARM Cortex-M3

    Support for Intel XScale CPUs is also included:

    * OpenOCD for XSCALE PXA25x
    * OpenOCD for XSCALE PXA27x
    * OpenOCD for XSCALE IXP42x

    Support for the Marvell Feroceon CPU core as found in the Orion SoC family is included as well.

    Support for TI OMAP is in the pipe.

    Support for cod:blocks is in the pipe. This will enable a much easier IDE than the Eclipse IDE.

    Source:
    http://www.amontec.com/openocd.shtml

  • 25 May 2010 /  Embedded

    There’s a problem when we try to install lpc2k_pgm 1.05 flasher when we have GTK+ 2.0 (Ubuntu uses it as default in new versions – 9.10 , 10.4) because it try to use GTK+ 1.2. So then, one option is patch the Makefile, specifying to use GTK+ 2.0, and forget to install GTK+ 1.2.

    And the steps are:

    apt-get install libgtk2.0-dev
    wget http://www.pjrc.com/arm/lpc2k_pgm/lpc2k_pgm_1.05.tar.gz
    tar xzf lpc2k_pgm_1.05.tar.gz
    cd lpc2k_pgm
    wget http://lexo.lx-networks.net/lpc2k_pgm.patch
    patch -p1 < lpc2k_pgm.patch
    make

    And that's all! now you're ready to flash :D

    Note: Don't forget that you need the GTK+ 2.0

    ERROR REFERENCE
    gcc -Wall -O2 -c -o lpc2k_pgm.o lpc2k_pgm.c
    gcc -Wall -O2 `gtk-config --cflags` -c gui.c
    /bin/sh: gtk-config: not found
    gui.c:40:21: error: gtk/gtk.h: No such file or directory
    gui.c:51: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    gui.c:52: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    gui.c:53: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    gui.c:54: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    gui.c:55: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    gui.c:56: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    gui.c:62: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘do_quit’
    gui.c:68: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘do_program’
    gui.c: In function ‘done_program’:
    gui.c:98: warning: implicit declaration of function ‘gtk_entry_get_text’
    gui.c:98: warning: implicit declaration of function ‘GTK_ENTRY’
    gui.c:98: error: ‘firmware_entry’ undeclared (first use in this function)
    gui.c:98: error: (Each undeclared identifier is reported only once
    gui.c:98: error: for each function it appears in.)
    gui.c:98: warning: passing argument 1 of ‘file_exists’ makes pointer from integer without a cast
    gui.c:83: note: expected ‘const char *’ but argument is of type ‘int’
    gui.c:99: warning: implicit declaration of function ‘gtk_widget_set_sensitive’
    gui.c:99: error: ‘program_button’ undeclared (first use in this function)
    gui.c:99: error: ‘TRUE’ undeclared (first use in this function)
    gui.c:101: error: ‘FALSE’ undeclared (first use in this function)
    gui.c:103: error: ‘bootloader_button’ undeclared (first use in this function)
    gui.c:104: error: ‘reboot_button’ undeclared (first use in this function)
    gui.c: At top level:
    gui.c:107: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘do_reboot’
    gui.c:134: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘do_bootloader’
    gui.c:155: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘do_new_port’
    gui.c:161: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘do_new_baud’
    gui.c:167: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘do_new_file’
    gui.c:185: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘do_new_crystal’
    gui.c:195: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘do_timer’
    gui.c:210: error: expected ‘)’ before ‘data’
    gui.c:228: error: expected ‘)’ before ‘data’
    gui.c: In function ‘run_gui’:
    gui.c:246: warning: implicit declaration of function ‘gtk_signal_connect’
    gui.c:246: warning: implicit declaration of function ‘GTK_OBJECT’
    gui.c:246: error: ‘main_window’ undeclared (first use in this function)
    gui.c:247: warning: implicit declaration of function ‘GTK_SIGNAL_FUNC’
    gui.c:247: error: ‘do_quit’ undeclared (first use in this function)
    gui.c:248: error: ‘quit_button’ undeclared (first use in this function)
    gui.c:250: error: ‘port_entry’ undeclared (first use in this function)
    gui.c:251: error: ‘do_new_port’ undeclared (first use in this function)
    gui.c:252: warning: implicit declaration of function ‘GTK_COMBO’
    gui.c:252: error: ‘baud_combo’ undeclared (first use in this function)
    gui.c:252: error: invalid type argument of ‘->’ (have ‘int’)
    gui.c:253: error: ‘do_new_baud’ undeclared (first use in this function)
    gui.c:254: error: ‘firmware_entry’ undeclared (first use in this function)
    gui.c:255: error: ‘do_new_file’ undeclared (first use in this function)
    gui.c:256: error: ‘crystal_entry’ undeclared (first use in this function)
    gui.c:257: error: ‘do_new_crystal’ undeclared (first use in this function)
    gui.c:258: error: ‘program_button’ undeclared (first use in this function)
    gui.c:259: error: ‘do_program’ undeclared (first use in this function)
    gui.c:260: error: ‘reboot_button’ undeclared (first use in this function)
    gui.c:261: error: ‘do_reboot’ undeclared (first use in this function)
    gui.c:262: error: ‘bootloader_button’ undeclared (first use in this function)
    gui.c:263: error: ‘do_bootloader’ undeclared (first use in this function)
    gui.c:265: warning: implicit declaration of function ‘gtk_timeout_add’
    gui.c:265: error: ‘do_timer’ undeclared (first use in this function)
    gui.c:266: warning: implicit declaration of function ‘gdk_input_add’
    gui.c:266: error: ‘GDK_INPUT_READ’ undeclared (first use in this function)
    gui.c:266: error: ‘do_term_input’ undeclared (first use in this function)
    gui.c:267: error: ‘do_port_input’ undeclared (first use in this function)
    gui.c:269: warning: implicit declaration of function ‘gtk_main’
    gui.c: In function ‘create_window’:
    gui.c:275: error: ‘GList’ undeclared (first use in this function)
    gui.c:275: error: ‘gtk_baud_list’ undeclared (first use in this function)
    gui.c:278: warning: implicit declaration of function ‘gtk_init’
    gui.c:280: error: ‘firmware_label’ undeclared (first use in this function)
    gui.c:280: warning: implicit declaration of function ‘gtk_label_new’
    gui.c:281: warning: implicit declaration of function ‘gtk_label_set_justify’
    gui.c:281: warning: implicit declaration of function ‘GTK_LABEL’
    gui.c:281: error: ‘GTK_JUSTIFY_RIGHT’ undeclared (first use in this function)
    gui.c:282: warning: implicit declaration of function ‘gtk_widget_show’
    gui.c:284: error: ‘firmware_entry’ undeclared (first use in this function)
    gui.c:284: warning: implicit declaration of function ‘gtk_entry_new’
    gui.c:285: warning: implicit declaration of function ‘gtk_widget_set_usize’
    gui.c:286: warning: implicit declaration of function ‘gtk_entry_set_text’
    gui.c:289: error: ‘program_button’ undeclared (first use in this function)
    gui.c:289: warning: implicit declaration of function ‘gtk_button_new_with_label’
    gui.c:291: error: ‘TRUE’ undeclared (first use in this function)
    gui.c:293: error: ‘FALSE’ undeclared (first use in this function)
    gui.c:297: error: ‘line1_hbox’ undeclared (first use in this function)
    gui.c:297: warning: implicit declaration of function ‘gtk_hbox_new’
    gui.c:298: warning: implicit declaration of function ‘gtk_box_pack_start’
    gui.c:298: warning: implicit declaration of function ‘GTK_BOX’
    gui.c:304: error: ‘port_label’ undeclared (first use in this function)
    gui.c:308: error: ‘port_entry’ undeclared (first use in this function)
    gui.c:314: error: ‘baud_label’ undeclared (first use in this function)
    gui.c:318: error: ‘baud_combo’ undeclared (first use in this function)
    gui.c:318: warning: implicit declaration of function ‘gtk_combo_new’
    gui.c:320: warning: implicit declaration of function ‘g_list_append’
    gui.c:322: warning: implicit declaration of function ‘gtk_combo_set_popdown_strings’
    gui.c:323: warning: implicit declaration of function ‘gtk_entry_set_editable’
    gui.c:323: error: invalid type argument of ‘->’ (have ‘int’)
    gui.c:327: warning: implicit declaration of function ‘gtk_list_select_item’
    gui.c:327: warning: implicit declaration of function ‘GTK_LIST’
    gui.c:327: error: invalid type argument of ‘->’ (have ‘int’)
    gui.c:333: error: ‘line2_hbox’ undeclared (first use in this function)
    gui.c:341: error: ‘crystal_label’ undeclared (first use in this function)
    gui.c:345: error: ‘crystal_entry’ undeclared (first use in this function)
    gui.c:350: error: ‘mhz_label’ undeclared (first use in this function)
    gui.c:351: error: ‘GTK_JUSTIFY_LEFT’ undeclared (first use in this function)
    gui.c:354: error: ‘line3_hbox’ undeclared (first use in this function)
    gui.c:361: error: ‘reboot_button’ undeclared (first use in this function)
    gui.c:365: error: ‘bootloader_button’ undeclared (first use in this function)
    gui.c:368: error: ‘quit_button’ undeclared (first use in this function)
    gui.c:371: error: ‘line4_hbox’ undeclared (first use in this function)
    gui.c:377: error: ‘main_vbox’ undeclared (first use in this function)
    gui.c:377: warning: implicit declaration of function ‘gtk_vbox_new’
    gui.c:384: error: ‘main_window’ undeclared (first use in this function)
    gui.c:384: warning: implicit declaration of function ‘gtk_window_new’
    gui.c:384: error: ‘GTK_WINDOW_TOPLEVEL’ undeclared (first use in this function)
    gui.c:385: warning: implicit declaration of function ‘gtk_container_add’
    gui.c:385: warning: implicit declaration of function ‘GTK_CONTAINER’
    make: *** [gui.o] Error 1

  • 12 May 2010 /  FreeBSD, GNU/Linux, Unix

    Gluster Storage Platform is an open source clustered storage solution. The software is a powerful and flexible solution that simplifies the task of managing unstructured file data whether you have a few terabytes of storage or multiple petabytes. Gluster Storage Platform integrates the file system, an operating system layer, and a web-based management interface and installer.

    Source:
    http://www.gluster.org

  • 11 May 2010 /  Embedded, Hardware

    OpenPICUS is PIC 24F series (16 bit) based new open hardware platform with embedded wireless module (Bluetooth and Wi-Fi). The project will let developers (hardware and software) create their advanced wireless sensor applications even without any hardware experience. At this time, the project is under development. If you have great idea and want to contribute to the project, you will have a chance to get OpenPICUS evaluation board for FREE.

    Here is main characteristics of OpenPICUS:
    HARDWARE

    * CPU Microchip PIC 24F 16 bit 44 pins QFN 64K Flash 8K Ram)
    * Wireless (Bluetooth / Wi-Fi)
    * Power 5V or 3,3V
    * Main connections: UART, Digital Inputs, Digital Outputs, Analog Inputs, PWMs, SPI display, I2C
    * Connector: 26 Ways IDC header (male) suitable for TH mounting or flat cable
    * SMT: 26 Pins for direct soldering PICUS to a PCB

    Software

    * PICUS gives a possibility to upload software by a serial port (you do not need a Microchip programmer).
    * Bluetooth offers SPP, OBEX, Headset profiles.
    * Wi-Fi gives an access to the integrated webserver, TCP socket, embedded FTP and email clients.

    You can follow the project development at http://openpicus.blogspot.com/

    Surce:
    http://www.circuitlake.com/openpicus-pic-based-wireless-platform-project.html

  • 11 May 2010 /  Embedded

    SkyEye is an Open Source Software Project (GPL Licence). Origin from GDB/Armulator, The goal of SkyEye is to provide an integrated simulation environment in Linux and Windows. SkyEye environment simulates/emulates typical Embedded Computer Systems (Now it supports a series ARM, MIPS, PowerPC, Blackfin, Coldfire, and SPARC architecture based microprocessors). You can run some Embedded Operation System such as Embedded Linux, uClinux, uc/OS-II (ucos-ii) etc. in SkyEye, and analysis or debug them at source level.

    Source:
    http://www.skyeye.org

  • 11 May 2010 /  GNU/Linux, Unix

    The Nano-X Window System is an Open Source project aimed at bringing the features of modern graphical windowing environments to smaller devices and platforms. Nano-X allows applications to be built and tested on the Linux desktop, as well as cross-compiled for the target device. The Nano-X Window System was previously named Microwindows, but has been renamed due to conflicts with Microsoft’s Windows trademark. There are two APIs implemented in the system, a Win32 API and an Xlib-like API.

    Source:
    http://www.microwindows.org

  • 11 May 2010 /  Embedded

    The aim of this project is to port and maintain RTEMS to the OpenRISC 1000 family and develop device drivers for various OpenCores peripherals.

    RTEMS is a real-time open source operating system.

    Features are:

    * free, open source code with no royalty
    * small code footprint suitable for embedded and portable applications
    * POSIX API and uITRON API
    * Scalable Architecture
    * Multitasking
    * Event-driven, priority-based, preemptive scheduling
    * Intertask communication and synchronization
    * High level of user configurability
    * TCP/IP networking with FTP, HTTP and other Internet daemons
    * File system, microwindows GUI, etc.

    Source:
    http://opencores.org/openrisc,rtems

  • 11 May 2010 /  Embedded

    RTEMS is a real-time executive which provides a high performance environment for embedded applications on a range processors and embedded hardware. This page is the kick-off for information on RTEMS, real-time and embedded programming.

    Processor architectures:

    * ARM
    * Atmel AVR
    * Blackfin
    * Freescale ColdFire
    * Texas Instruments C3x/C4x DSPs
    * H8/300
    * Intel 80386, Pentium, and above members of the x86 architecture
    * Lattice Mico32
    * 68k
    * Renesas M32C
    * Renesas M32R
    * MIPS
    * Nios II
    * PowerPC
    * Renesas SuperH
    * SPARC

    Source:
    http://www.rtems.com
    http://www.rtems.org/wiki