Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie
Hi there,
There is an issue with role permissions that is being worked on at the moment.
If you are having trouble with access or permissions on regional forums please post here to get access: https://www.boards.ie/discussion/2058365403/you-do-not-have-permission-for-that#latest

Final Yr Project - Embedded Linux

  • 16-10-2008 2:03pm
    #1
    Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭


    Hi There,

    I am taking on an adventurous final year project. I really want to give this a go since embedded devices are the way of the future and more importantly Linux is becoming the standard by a lot of development companies. This is due to low cost and the fact Linux can run on pretty much anything.

    Anyways my project is going to be a 7" touch screen device that will connect to the cars diagnostic port. It will read OBD II parameters via RS232 from the ELM327 chip. This data will then be used within a GUI program that will allow the user to choose what they want displayed, eg: mph, revs/min, coolant temperature, load etc. As well as this will it monitor the existence of a fault code occurring and will display what is wrong (Database of codes etc).

    Anyways all this is going to run on embedded Debian for the ARM processor architecture.

    I am currently reading "Building Embedded Linux Systems" and I'm finding it very good. It gives you so many options. The only problem with it, is that it doesn't give any details on GUIs.

    I don't want to use C + GTK as this will take me eternity to program. I had a look at Mono, the cross platform C# implementation. It looks very good but I amn't sure if I'll be able to get it working on an embedded device. Also looking into QT/Embedded, the C++ method of GUI programming. Also looks good.

    Now my question is, is it possible to launch a GUI Application from command line in init 3. I don't want to launch a desktop environment. I want the application just to load full screen. Is this even possible? - I was reading somewhere that you can launch X11 server directly from command line passing it a GUI program. Once this loads, and exits, back to command line.


    Just wondering if anyone has any experience with embedded Linux as I'm feeling all alone with this project since not many people I know would have experience in it.

    Curious also to see if people have feedback.

    Thanks.


Comments

  • Registered Users, Registered Users 2 Posts: 1,227 ✭✭✭stereo_steve


    Good luck with your project!

    I don't know it you know of the site http://www.dashpc.com/ but theres a lot of clever guys there that can probably help you and would be interested in you contributing to their project. AFAIK they have an IRC channel too


  • Registered Users, Registered Users 2 Posts: 37,485 ✭✭✭✭Khannie


    Webmonkey wrote: »
    I was reading somewhere that you can launch X11 server directly from command line passing it a GUI program. Once this loads, and exits, back to command line.

    I do something like this on a HTPC I have running mythtv at home. It's not an embedded device but it sounds like what you want. I run evilwm. It's about as lightweight as an X11 server can be. It compiled in under a second (no joke :)). It's dependent on the mythfrontend application running. When mythfrontend stops, evilwm exits and X stops and you're back at the standard tty.

    edit: The distro is a super lightweight install of gentoo for what it's worth.

    My .xinitrc looks like this:
    /usr/bin/xset s noblank
    /usr/bin/xset s off
    /usr/bin/xset -dpms
    /usr/bin/evilwm &
    exec /usr/bin/mythfrontend -l /var/log/mythtv/mythfrontend.log -v important,general
    

    Hope this helps. Good luck with the project. Sounds really cool.


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Good luck with your project!

    I don't know it you know of the site http://www.dashpc.com/ but theres a lot of clever guys there that can probably help you and would be interested in you contributing to their project. AFAIK they have an IRC channel too

    Thanks!, that looks like a very interesting project they have there. Will have a look further into this.
    Khannie wrote:
    I run evilwm. It's about as lightweight as an X11 server can be. It compiled in under a second (no joke ). It's dependent on the mythfrontend application running. When mythfrontend stops, evilwm exits and X stops and you're back at the standard tty.

    That's exactly what I am looking for. Again I'll look into this project as well.

    I'm guessing no one has any experience with Mono here? - I might give the programming forum ago later.


    Cheers.


  • Closed Accounts Posts: 2,917 ✭✭✭towel401


    usually I would use the startx command if i want a gui on my server but its kind of heavy and has a lot of dependencies - libs, fonts all sorts of ****. what sort of thing would this be running on?

    xserver without a desktop environment is possible alright. you would get just the blank screen, a cursor and usually xterm in the corner but full screen should work too although i havn't tried it. maybe you can write the thing in python - its easy to get **** from the serial port from that and there's a few decent IDE's around


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Good stuff thanks.

    The system will be debian embedded but due to size constaints I will be using very little libraries. I have decided to go down the QT/Embedded route in C++. Baught my book and all now. xstart looks fine alright, I'll give a go at that stuff once get hold of my device: http://www.embeddedarm.com/products/board-detail.php?product=TS-TPC-7390

    In one way looking forward to project, an other way wondering why I made it so big. Ah well :) Fun times ahead


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 37,485 ✭✭✭✭Khannie


    Webmonkey wrote: »
    In one way looking forward to project, an other way wondering why I made it so big. Ah well :) Fun times ahead

    Remember that the 80:20 rule applies to final year projects. I got a whopping 90% in my final year project, but I worked so hard on it I had left myself short on study time for the exams and ended up with a 2:1 overall.


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Yeah aware of that rule alright from software engineering! - Will always make priority for exams though since I'm quite obsessed


  • Registered Users, Registered Users 2 Posts: 1,421 ✭✭✭Steveire


    Seeing as you're going down the Qt/Embedded route, here's some resources for you that you may already be aware of:

    http://lists.trolltech.com/qt-interest/
    http://lists.trolltech.com/qt-embedded-interest/

    You may also get help on KDE mailing lists. There's a lot of interest now in small form factor devices in the KDE community.


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Steveire wrote: »
    Seeing as you're going down the Qt/Embedded route, here's some resources for you that you may already be aware of:

    http://lists.trolltech.com/qt-interest/
    http://lists.trolltech.com/qt-embedded-interest/

    You may also get help on KDE mailing lists. There's a lot of interest now in small form factor devices in the KDE community.
    Thanks, I am after ordering "An Introduction to Design Patterns in C++ with QT 4 (Bruce Perens' Open Source)" [http://www.amazon.co.uk/Introduction-Design-Patterns-Perens-Source/dp/0131879057/ref=sr_1_1?ie=UTF8&s=books&qid=1224430266&sr=8-1] - It looks quite good, so will dig into that once that comes. I'm setting up my development environment - Eclipse + MinGW + QT so I'll see how that goes. Doing it on windows at the moment, will start porting to Linux at a later stage. Just compiling QT now, taking forever :)

    Just after subscribing to those lits there - cheers.


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Just letting know who ever is interested, that I won't need any GUI server such as X since QT/Embedded supports writing directly to frame buffer :) - All i will need is libc


  • Advertisement
  • Closed Accounts Posts: 3,981 ✭✭✭[-0-]


    Do you need a GUI? Why not use ncurses?

    EDIT: I didn't see your previous reply. :)


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    [-0-] wrote: »
    Do you need a GUI? Why not use ncurses?

    EDIT: I didn't see your previous reply. :)
    I done a quick wiki on that there and it isn't really what I'd be looking for. This will be a GUI intensive app, not text based. Thanks anyways. :)


  • Registered Users, Registered Users 2 Posts: 865 ✭✭✭generalmiaow


    Might be helpful further along the line:
    The forums at http://www.oesf.org/ were/are a good resource for anything QT / ARM related. It was primarily aimed at the Sharp Zaurus PDA though and the netbook thing killed a lot of that interest, so it's dead these days. But the guys there, when they visit, definitely know their stuff and many have developed embedded apps.


  • Closed Accounts Posts: 1 acforester


    Hey Webmonkey,

    I am trying to do the same as you - build an application using QT Embedded and run it on an ARM board - TS 7390.
    I am hoping you were successful with your project and can pass along some information to me.
    I have been trying to run the qt-embedded-linux-opensource-src-4.4.3 files using cygwin on a Windows machine so that I can use then in the eclipse environment to build my QT apps and then run them on the board.
    But I just can't get the process completed properly.
    Did you capture the steps you went through to do this during your project?
    Also, did you manage to use the QT plugin for Eclipse? Would you recommend it? Were u able to use the Embedded version of QT with it, or was it just for the regular QT packages?

    Thanks.


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Hey there,

    Still havn't even started! - Only got the computer at the moment, just finished my exams so off for few weeks now going to dig into much of it as I can before semester 2 starts.

    I've done the research phase and came across useful things like ARM emulators that run on the PC, so must look into that.

    I'll pass one some details in the coming weeks. Did you try joining the QT mailling list, some handy guys on there. qt-interest AT trolltech.com


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Acforester, I have successfully got QT on it with TSLIb for touch screen and writing to frame buffer.

    Go to http://automon.killarneyonline.eu/ for me details or PM me.


  • Registered Users, Registered Users 2 Posts: 32,417 ✭✭✭✭watty


    I've used Trolltech/Qtopia on a 320x240 touch screen arm (a pig to get the touch screen right) a PXA270 industrial board.

    On a larger screen 800x 480 7", the iceWM is good. This worked with a vanilla debian (cut down) on the PXA270 ARM board and VNC from laptop. So should work with a 7" screen.

    The problem I had was a decent up to date web browser (real versions of Opera cost money and the free others are rubbish on a small screen).

    QT is a good route.


  • Registered Users, Registered Users 2 Posts: 2,379 ✭✭✭toiletduck


    Seems like a cool FYP, better than a lot of the ones out there!

    QT's great, using it myself for some apps.


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    watty wrote: »
    I've used Trolltech/Qtopia on a 320x240 touch screen arm (a pig to get the touch screen right) a PXA270 industrial board.

    On a larger screen 800x 480 7", the iceWM is good. This worked with a vanilla debian (cut down) on the PXA270 ARM board and VNC from laptop. So should work with a 7" screen.

    The problem I had was a decent up to date web browser (real versions of Opera cost money and the free others are rubbish on a small screen).

    QT is a good route.
    Yep seems like a good route alright. I successfully got QT Embedded on it anyways. Had colour problems but all sorted now. It writes to framebuffer directly too so no need for IceWM or X11 or anything. Save on the resources.

    I've added some details to the blog as well I'm keeping - handy having the project diary online :P - http://automon.killarneyonline.eu/


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Girls and Boys,

    I've finished the project - It has been a success: http://automon.donaloconnor.net

    And my advice to anyone doing a FYP, create a blog! - It works wonders.

    Thanks for advice.

    Webmonkey


  • Advertisement
  • Closed Accounts Posts: 1,377 ✭✭✭An Fear Aniar


    I would like to thank Vitaliy Maksimov from Scantool.net - he kindly arranged the shipment of an ElmScan 5 USB for my project. He also helped me with technical issues - much appreciated!

    That was daycent of them!:)

    .


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Yeah it is, he a very nice guy, lots of patience and always wanting to help. He even put an article on their site about it! :)


  • Registered Users, Registered Users 2 Posts: 205 ✭✭Stugots


    Looks impressive - I presume Snap-on Diagnostics in Blackpool are already looking to hire you!!


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Thanks, I know a guy that worked there, (macroom though?/did they move?) he actually encouraged me to do this project :)

    I've other plans besides working now, post grad and a start up company or something. See how it goes anyways. :)


  • Closed Accounts Posts: 13,249 ✭✭✭✭Kinetic^


    That looks awesome, good luck with any future projects! (not that you'll need it) :)


Advertisement