Tag: Project

  • Upcoming project: LED Cube 8x8x8

    As already hinted last time my next electronics project will be a monochrome 8x8x8 LED Cube.

    I chose this from a long list of possible interesting projects because its construction involves many of the areas in which I intended to work on something at some time.

    • Raspberry Pi programming
    • enhancing my basic electronics and soldering skills
    • beef up my electronics prototyping set
    • interfacing an uC/SBC with external hardware/components
    • creating an electronic circuit without step-by-step instructions
    • understanding and using an IC
    • designing and creating a PCB, maybe even etching it myself

    LED cubes in particular striked my attention a few years ago but at that time Ialways repelled by the sheer complexity and number of components in most of the LED cube building instructions. But when I saw some another building plan for a LED cube I realized that I could use my Raspberry Pi to create a much simpler control circuit. And so the decision was set.

    My plan for the next steps is to build a prototype (3x3x3) to test my whole concept, get comfortable with all the stuff and then scale it to 8x8x8. At first I’ll set up everything on breadboard and maybe, if I’m sure that everything is finished on the hardware-side, make a permanent and smaller control PCB version. Probably as a Raspberry Pi shield.

    The progress of this project will of course be documented on this blog.

  • Building Adafruits Ice Tube Clock

    As I’ve already hinted on in the past weeks I’ve tackled and completed one of my planned mini-projects.

    I assembled the Ice Tube Clock from Adafruit Industries:

    From Building Ice Tube Clock

    This kit has been on my list for some time now, I stumbled over it on the internet two or three years ago and since that time I regularly checked if it was still available. After I finished my university degree the time was due and I ordered it the instant when there was one available at one of the distributors. When it arrived a few weeks later I prepared my soldering stuff and equipment and built it during two nights.

    As my last soldering has been already quite some while I decided to practice a bit with the Pi Cobbler which also arrived with the same order.

    From Building Ice Tube Clock

    When I was comfortable with soldering again it was time to unpack the parts of the clock and check if everything was complete according to the parts list.

    From Building Ice Tube Clock

    The soldering and building of the clock was pretty straightforward and easy. I carefully read the build instructions and had no trouble with the bending, soldering and checking the intermediate results. So here are just a few impressions from the build process. I also tried the suggestion to cut the wires of the VFD tube in different lengths, every wire a bit shorter than the preceeding one, before trying to thread them into the connector PCB. I think that this really helped a lot and made it much easier to finish.

    From Building Ice Tube Clock

    The last final steps could be completed similar to the previous ones. I only had some slight difficulties with the casing because I initially did not recognize the seperate page for the enclosure-assembling on the webpage but puzzled around a bit and eventually built it correctly without instructions. Manuals are for wimps 😉

    From Building Ice Tube Clock

    Setting the time and date finished off this neat project. Nice 🙂

    A few mini-statistics:

    • 6h effort in two nights
    • 43 parts assembled
    • 1.5m solder needed
    • 1 solder-accident (although easy to fix)

    Some possible improvements are still possible. Although I ordered the kit from a distributor in Italy it still contained only an american 9VDC power adapter. In my opinion shippings within Europe could already contain a proper european power adapter to spare the need for a US/EUR converter. Furthermore the assembly instructions on the webpage do not reflect the process 100% accurately but seems a slight bit outdated. For example there has been a change on the layout of the PCB as the capacitors C5 and C6 have a slightly different placement on the board than on the images in the solder instructions. Also the screws and nuts are not made of metal but of black nylon.

    In the end I enjoyed this mini-project very much. It’s comparable to the experience I had some time ago during finishing my Master thesis, where I had to code some stuff and had the feeling that I missed real deep code-writing at work. I also missed tinkering with stuff and crafting small things. Since finishing the clock I did also some mods for my mother. Enhancing an electronic candle which ran on a single CR 2032 for ~5 days to use two AA’s instead, running now the second week on the first cheap pair of batteries and still pretty bright.

    Currently I’m already planning my next electronics project. This time I will not take a kit which can be assembled by following instructions. Instead it will be something where I will have to deal with electronics, ICs and integration with my Raspberry Pi. And it will be not something which is build after instructions but will be designed by myself.

    But more on that in a later post…

  • What an interesting week

    The past week has been a very interesting and productive one for me.

    In terms of education this week is the last week where I’ve been busy with a project assignment at the university where we had to check a webshop for security. To make it short, the webshops walls fell after roughly 2 hours of work. This was my first real attack on a webserver and I never expected it to be so easy. After this I’m more surprised not of the simplicity of the breakin but that real hacks on other webpages do not happen more often than it’s visible in the media. Since these two hours would not be worth a lot of project work we continued with our efforts and tried to find other holes in the server. The second hole took a bit more time and research but nevertheless it was worth much more doumentation. Some more attacks were also unsuccessful or not applicable because we had to target a virtual machine which was not completely reserved for us. Nevertheless, this project work was a very interesting one and we even had fun during the process.

    The second interesting topic is that this week I was finally successful in compiling my own working kernel from scratch for my LG Optimus 2x smartphone. In the end it boiled down to having the wrong compilation options for my environment which was resolved when I received some help from an experienced kernel modder in the forum. I also created a small guide on how to set up a compilation environment for compiling stock kernels for the LG2X. Maybe it can help others in also taking up some development on this phone. What I already recognized in the kernel is, that it is compiled with a lot of unneeded features and fully turned on debugging features. Nothing which is really needed in a production environment and therefore leaves quite some room for tuning.

    The last thing I’ve been busy with was the launch of the Raspberry Pi. This is a nice little computer on a PCB which provides HDMI output at an incredibly low price. This new device was so hyped and limited (only 10k pieces) that the webservers of both worldwide electronic component distributors went down within moments after the official announcement that they will be responsible for selling the thing. I also participated in this "DDoD" but was (as most others) unsuccessful in the morning. Later in the evening one of the shops was reachable again (more or less) and I could place a preorder. The other shop only allowed a "registration of interest". Just received a confirmation of this an hour ago 🙂 I hope that I don’t have to wait too long for this to be available for me. As if I had time to play with it…

    Ah yes, one more thing. I got promoted at work, finally. I hope it also materializes well on the paycheck and not only in officially increased responsibility.

  • Project Contours is now on track

    Yes, there has been silence for some time. Cause of that are the upcoming exams this weekend in lectures which awesomeness-level lies below that of a rotting potato.

    Nevertheless, there has been some progress. I finally decided a name and hoster for my project which I’ve been pondering now for almost two semesters at University. And with some traces of proudness I finally present you the

    Contours Framework

    To admit, the hardest part was really to find a proper name for it, which should hint a bit into the direction of the topic without colliding with other projects. Another earlier try was "Shapes" but there are already several projects around with that term in their name and which are probably more popular on search terms than my project will ever be.

    In more details, the project is about creating a framework which allows Java application developers to create a file-reader for arbitrary binary files which then allows easy access to the content data from the file. This is done by providing a custom file-description language in which the structure of the file can be laid out. Then this format description is taken by the Contours framework which produces all necessary Java code for a file reader for files of this structure. This reader can then be easily be integrated into the own Java application.

    I know, it’s not a very common problem this addresses and there are other preferable ways for most similar problems. But I needed something which makes it easy to follow changes in file formats without the need to regenerate and review large parts of existing Java code. Furthermore when I’m dealing with more than one or two different formats, the maintenance of several different readers written by different people gets unhandy quite fast. And finally one of the goals was to produce code which allows high processing speed. When I started my project, there was no framework around addressing all of these points (and there still is none). Nowadays there are some available (one of them being Preon) but none of them seems to fit the performance requirement. And I’ve gotten already quite far when I discovered those, so I chose to continue with it and if it’s just for learning purposes.

    Nevertheless, the page is up, some content already present (notably the architecture description of Contours) and all source committed to the Contours SVN source repository. Feel free to have a look at it and if you have any comments, comment here or raise an Issue (when I come around to enable and configure that part of the project properly).

  • Google code tryout

    In my ongoing decision struggle where to host my project work I’ve now taken a little step forward and opened another project on Google code to try it out a bit more. Setup there has been relatively easy and fast and the SVN source code repository is also reacting well so far.

    This smaller project is from another lecture on mobile computing and it will be an application for Android mobile phones. There is still some polishing for this going on as it is still not finished and yet to be rated for a grade by the end of this month. Nevertheless I think it’s already in a usable state for experienced developers by now.

    When this polishing is done and the application has also some more documentation and more error-handling, I’ll post an introduction here. I guess it will be a nice addition to the Android software portfolio as there is not much comparable out there by now. But by it’s nature it will only be useful for a smaller audience of Android users. More details on this soon…

  • Still choosing a project hoster and name

    Some time ago I’ve been thinking about where to make my project from last semesters project work lecture pubicly available. I’m still undecided between Sourceforge and Google Code but I’m leaning towards Google Code because I have participated on both platforms and my impression is that Google Code is easier to set up and maintain for smaller projects. And I think that I don’t need the more advanced management possibilities from Sourceforge. Furthermore my last impressions from it have been that it has a more complicated interface.

    The next thing I have to think about is under what open source license I should put the work. I do want to put it available for anyone but still be credited and maybe receive changes or enhancements to the source.

    And finally I still have no proper idea for a name of the whole package. What I can already put public is that it’s a piece of code which takes a description of a file-format and generates Java-code which parses files in this format into a defined data structure. I’d like to have a name somehow pointing into that direction but that’s not a must.

    If you have an idea or suggestion you can leave me a comment 🙂

  • Let it snow, let it snow, let it snow…

    Since it’s already time again for a new post and I have currently nothing interesting at hand, I’d like to just let you know that now it’s the first day in this winter where water in its frozen aggregate state is falling from above (formulated that way to justify that I’ve been called ‘nerd’ quite often in the past few days :P)

    In other news, the first iteration of our project for the university has now passed and from my perspective it went extremely well. The teams performed quite good, there haven’t been any notable problems and in the end all our goals for this iteration have been met. For the upcoming iteration our lecturer already announced that he wants to distribute the work differently to enforce more conflicts between the teams as he already intended for this first iteration.

    But I think our approach to keep the teams in their own "area" at the beginning to let them get comfortable with the development environment, the development style and organization of the project is better for us. That way the less experienced learn how a project can run if there aren’t any large obstacles to overcome and aren’t demotivated too early in the project. Later on, when they’re already up to speed with the development they can be faced with other new aspects of project work like conflicting changes and more intense synchronization between the teams.

  • Where to put it?

    Maybe someone still remembers my announcement from June that I want to make my project from the University available to the publicity.

    Well, finally the marks arrived and since it’s positive I’ve got the permission to open it to the public. Back in June I wanted to put it up on Sourceforge but since then this site has changed its appearance quite a bit and now I’m not sure anymore if it’s the best place to make it available. In the meantime I’ve also made some experience with the Google Code platform and that’s not so bad either.

    Furthermore the current name is not very "catchy" so I’ll also try to come up with something better than "SableCCTest" or "Dynamic File Parser".