How to fix network mount access errors on Intel SS4400-E storage device

For the last couple of years we have been using  an Intel SS4400-E storage device for our internal backup stuff.

Suddenly the main RAID CIFS share stopped working. It seems for some reason nobody could mount this share anymore. All user got an access denied on mount attempts.

So what the hell was going on: The rather simple web interface wasn’t the burner, in fact the system log does not deserve the name Log :-)

So mostly every RAID in this class is based on an embedded system driven by our friend Linux. This one is no exception.

So we first need the most important part,…. a working telnet or SSH connection. But a first “test” connection to the SS4400 device gave us “connection refused”¬† as expected.

Luckily after some googling I found a hind that on this devices you can enable the SSH interface via a hidden CGI script.

http://hostname/ssh_controlF.cgi

Now you can login via “root” and your administration password.

By the way, this device comes with the Swiss Army Knife of Embedded Linux¬†BUSYBOX which I also use for my embedded projects. I’m working with Busybox sense 2004 (version 0.94x), ….. great stuff :-).

But it seems, INTEL has some GPL violation with these devices. lol, ..On our bundled CDs we didn’t get any GPL sources from Busybox and Co? This is only mentioned in passing.

In our case a look into the system logs indicates that our RAID share had some file system problems. INTEL uses XFS as the file system on the storage device. Our system log was filled up with error messages of the file access layer.

In our case the solution was really simple. On device startup the file-system reports that there are errors, but then the corrupt partition is mounted and then ,… kabudl……

To fix this you first have to detach the corresponding RAID with “NASdetach”. Now you can unmount the partition and run the XFS repair binary “xfs_repair“.

After 10 – 15 min the repair should be finished.

Reboot the storage device and you should be able to access your share.

have fun

Mario


iPod Touch 4gen broken glass fixing session

Some impressions of my last iPod Touch 4gen broken fixing session.

This beast took me more than 4 hours to get the glass + digitizer emerged :-)


Fixing error “httpServer.cpp read, write was not declared in this scope” on building vpl_xmlrpc_jail-1.2 under latest Debian

For all which also got this errors,

httpServer.cpp: In member function "std::string HttpJailServer::receive(int, e_t, size_t)":
httpServer.cpp:145:36: error: "read"was not declared in this scope
httpServer.cpp: In member function "void HttpJailServer::sendRaw(const char*,ze_t)":
httpServer.cpp:216:49: error: "write" was not declared in this scope
httpServer.cpp: In member function "void HttpJailServer::send(int, const stri, const string&)":
httpServer.cpp:250:15: error: "close" was not declared in this scope

on building vpl_xmlrpc_jail-1.2 for Moodle VPL module, there seems to be a missing include for these methods.

Just add,

#include <unistd.h>

to the httpServer.cpp, these should fix it.

have fun

Mario


Fix for ASP.Net parser error message: Could not load type ‘xxxxx.Global’

In one of my recent projects I stumbled about one annoying behavior of ASP.Net Projects.

For some reasons I got the meaningful error message :

Parser Error
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.

Parser Error Message: Could not load type 'WebService.Global'.

Source Error:

Line 1:  <%@ Application Codebehind="Global.asax.cs" Inherits="WebService.Global" Language="C#" %>

Source File: /global.asax    Line: 1

In my case I solved the problem in changing the build output path from  bin\x68\Debug to : bin

hope this helps anyone

have fun

Mario


WIN7_64 driver for Freescale ZStar3 ACC Sensor

A few years ago we bought some Freescale ZStar3 ACC sensor development packages for our student projects.

The development packages came with one sensor USB-dongle pair and a .net library to get the sensor data up to the PC.

We did quite a lot of projects with our students, until the day our IT-Devision decided to switch over to WIN7_64¬† :-) ….. Kabuuududduullll,….

Unfortunately  the driver package for the ZStar3 USB interface is only made for WinXP.

But,…. :-)

After some .inf file editing magic we (Letti (alias Joe) and Me) archived to alter the original driver information files to trick Windows to load and install the ZStar….. .sys

You can download the ZStar winx64 driver (for free) from here.

have fun  :-)

Mario


MedIT-ePortal moves to moodle 2.3

Today we moved your moodle CMS to the newest version 2.3. Let’s see what all the new goodies can do for us :-)

have fun

Mario


Some impressions of our last medical electronic laboratory 2012

Some nice images from our last electronic laboratory. :-)

These photos show our medical electronic lab tutorial/lecture held by Matthias Haselberger

In these lab tutorials we teach our students the basic techniques used in medical biosignal acquisition devices such as electrocardiogram, electromyogram and biofeedback acquisition. After the tutorial the students are familiar with common amplifier circuits and also with complex instrumentation amplifier concepts.

have fun

Mario


Some impressions of our last medical project seminar laboratory 2012

Another year/semester has passed and we took (again) some nice images from our last lab tutorial. :-)

This photos show our medical project seminar lab tutorial/lecture held by Matthias Haselberger

The aim of the laboratory is to get familiar with the commonly used micro-controller devices used to measure and process biofeedback signals.

have fun :-)

Mario

1 Comment more...

FlexCell innovative ways of flexible manufacturing

For the last days I have been involved in commissioning a new project started at one of our degree programs mechatronics at CUAS.

The FlexCell program is about innovative technologies usable for effective manufacturing in the field of automation technologies.

Project Leader : Christoph Ungermanns

One of the core components is a 6 axes industrial robot arm :-)

embedded by Embedded Video

Download Video

embedded by Embedded Video

Download Video

have fun

Mario


Rankz – an innovative middleware for sports event ranking information distribution

In one of my last posts I wrote about a young company Rarebyte. The folks from Rarebyte are mainly focused in game development but they also have a great experience in building highly scalable middleware applications for sport timing respectively sport events.

They are named their product line Rankz.

Rankz is desigend for small to very large sports events with thousands of  athletes. Its purpose is to get detailed information about every aspect of a sport event in real time. It has already been successfully used at the

Rankz is also the central core layer in a student project called “IRONNET” (FH-Sportstiming) done by students from Network Engineering & Communication (NET) and is also the overall software basis used¬† by “FH Sportstiming” (NET).¬† An older version is also operated by Triangle Show & Sports Promotion Gmb.

The middleware uses spring core layer technologies which allows them to be highlight flexible. The data structures which specify the sport event can be entirely configured through XML. A full featured editor for XML/POJO  is also available. The interface to the timing database can also be configured through XML. For this reason you are neither limited by the used format of the timing data nor to the database engine. Rankz works out of the box with MySQL, PostgreSQL, Oracle, MSSql.

Furthermore Rankz uses a dynamic plugin system. So new features can be added very easily. Plugins can be loaded and unloaded @ runtime.

Features

  • Superfast – detailed results nearly live during a race
  • Support for plugins (input, output, calculations)
  • Platform independent (completely written in Java)
  • Integrated webserver (Jetty)
  • Plugins:
    • Overall ranking
    • Ranking per split
    • Ranking in athlete’s age group
    • Relative ranking at certain splits
    • Timing, average Speed, finishing context,….
    • statistic system and missed time error correction system
    • FTP plugin upload
    • Athlete’s (geographical) real time position prediction.
    • SMS/MMS Notification Service
    • Athlete’s@Twitter …
    • Virtual Athlete’s rankings (audience favorite….)
    • Position estimation
    • RESTful resource connectors
    • Webservice Revision Layer
    • Distributed mode for sport events like wingsforlife
  • Query engine
  • RESTful interface
  • Web output for all plugins
  • CSV exports for all plugins
  • Android/iPhone¬† (iOS) applications for live data/timing visualization (special version for Event Moderator/sport commentators).
1 Comment more...

How to cross compile ffmpeg for iOS (iPhone and iPad)

In one of my latest projects I needed some audio/video streaming capabilities for iOS driven devices.

The first App. which we implemented was a audio/HDVideo low latency conference streaming application for smart phones.

The second app was around  MPEG-TS to Elementary Stream demuxer for some dreambox streaming fun :-)

The framework of choice is the swiss army knife for streaming stuff,.. ffmpeg. To be more precise, ffmpeg consists of serveral libraries and the command line programs ffmpeg, ffplay, ffprobe.

What do you need:

  • Xcode4.3
  • Apple’s command line tools (Xcode -> Preferences -> Components)
  • pkg-config -> download
  • gas-preprocessor -> download (extract under your ffmpeg root dir ./gas-preprocessor)
  • build-essentials -> you can download an install script
  • m4
  • autoconf
  • automake
  • libtool

I used the latest snapshot available at the the time of writing. Extract the snapshot .tar to a folder of our choice.

Thanks Michael, the lead developer of ffmpeg, the ffmpeg source comes with the convenient autotools facilities. So we only need to set the correct configure flags :-)

1. Compiler flags:

As we need to do some cross-compiling we need to select the compiler/assembler which comes with our XCode

–cc=’/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/arm-apple-darwin10-llvm-gcc-4.2′.

–as=’./gas-preprocessor/gas-preprocessor.pl /applications/xcode.app/contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/arm-apple-darwin10-gcc-4.2′

–arch=arm

–target-os=darwin

–cpu=cortex-a8

–enable-pic

–disable-yasm

2. iOs SDK path:

–sysroot=’/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk’

3. extra flags:

–extra-cflags=’-mfpu=neon -pipe -Os -gdwarf-2 -miphoneos-version-min=5.0′

–extra-ldflags=’-arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk -miphoneos-version-min=5.0′

4. configure ffmpeg library components:

for example:

¬†–disable-ffmpeg
–disable-ffplay
–disable-ffprobe
–disable-ffserver
–disable-avdevice
–disable-avfilter
–disable-everything

and then enable the components you need

–enable-decoder=xxx
–enable-parser=xxx
–enable-demuxer=xxx

after successful completion of ./configure run make… and voil√† :-)

If you get some errors complaining about¬† “error: invalid operand in inline asm: ” try to disable assembler directives with

–diasble-asm

have fun

Mario

 

1 Comment more...

iPhone4 slack joint microphone quickfix

One of my colleagues,¬†Marvin –¬†proud owner of an iPhone4, has been fighting for some weeks with his iPhone internal microphone. Skype and Facetime stuff are working without problems but on “Radio” calls he got unsuspected mutes. The issue occurs in not deterministic intervals.

First aid,… yeahhh we have to open the phone, … operation on the open heart :-).

The problem must be the bottom mic. So we disassembled the bottom part of the phone.

No fancy actions here,… one two three screws open, some lever actions to loosen the glue stuff and voil√† it’s open.

If it were up to me I would¬†eliminate the apple hardware and build in a Galaxy S hardware, but marvin was dead set against it,… I don’t know why :-)

Update” :

We initial thought that the bottom microphone was causing the problem. It turns out we were wrong :-)

After 3 days without mic. problems I would say the problem is the grounding screw left next to the upper microphone. The conductivity pad on the print is very small and it seems that slight corrosion which results in an increased transition resistance to GND causes the mic problem. :-)

Have fun!

Mario


(C) by Mario Wehr
iDream theme by Templates Next | Powered by WordPress