Forums

Android vs Qt vs C/C++

Started by Zarakava December 15, 2011
Thanks Tim.
Even though i am not looking at using Android now, but there is no Android
port available for 68K processor right.
So in the same manner, will the choice also limit availability of
compatible OS, tools etc.

>On Thu, 15 Dec 2011 11:13:17 -0600, Zarakava wrote: > >(top posting fixed _again_) > >>>On Thu, 15 Dec 2011 09:47:16 -0600, Zarakava wrote: (top posting fixed) >>>> >>>> >>>>>On 12/15/2011 8:05 AM, Zarakava wrote: >>>>>> I am a mobile application developer and this is the first time i >>>>>> have entered into developing an embedded application from scratch.
I
>>>> know >>>>>> that the title is a bit misleading and there will be rebuts in the >>>> grounds >>>>>> that Android is an OS and Qt is a framework and C/C++ is a
language.
>>>>>> Let >>>> me >>>>>> explain my requirement. >>>>>> I need to develop an embedded device which will be installed in a >>>> vehicle >>>>>> and it will periodically send telemetrics data to the cloud server >>>> using >>>>>> GSM modem. The telemetrics will include 1. GPS position data 2. >>>>>> Accelerometer readings >>>>>> 3. Image/Video data >>>>>> 4. It needs to light up a bulb on the device to visually indicate >> rash >>>>>> driving to the driver based on algorithms derived from >>>>>> acceleration/deceleration values >>>>>> >>>>>> I am looking forward to suggestions in the following areas:- >>>>>> >>>>>> 1. How to select an appropriate processor, sensor components? Who >> will >>>>>> design the board? Do the silicon suppliers provide consultancy in >> that >>>> area >>>>>> or does an hardware engineer select the processors, components and >>>> designs >>>>>> the board,the board design is then given to the silicon supplier as >>>>>> made >>>> to >>>>>> order specs? >>>>>> 2. Android: Is it feasible to to port Linux for Android. Then port >>>> Android >>>>>> on top of that. Write Android ready device drivers and then hook it >> to >>>> the >>>>>> Android APIs. Then write an Android application. My device will not >>>>>> have >>>> a >>>>>> display or a HMI. So is Android really adding value to my solution >> and >>>> is >>>>>> it worth to go through all the efforts mentioned above? 3. Qt: I am >>>>>> least experienced in Qt. But my understanding is that Qt >>>> can >>>>>> take place of Android as an application framework. The process and >>>>>> questions pretty much remain the same as for Android. 4. C/C++: Or >>>>>> write C/C++ programs which will directly interact with the device >>>>>> drivers and achieve the need. >>>>> >>>>>Seems like most of these capabilities are already available to you in >>>>>the phone. >>>>>You could at least use the phone for development and then port to
your
>>>>>target. >>>>>If you plan to focus on Android and don't want to use a phone, then >>>>>you can look at the Arduino platform and add the components that you >>>> need. >>>>>http://store.arduino.cc/ww/index.php >>>>>I think you can do most of what you want under Android with a Java >>>>>app. Anything above that you could then use C++ using the native >>>>>development kit (NDK). >>>>> >>>>> >>>> --------------------------------------- Posted through >>>> >>>> http://www.EmbeddedRelated.com >>>> Hello, >>>> Just heard that the client is going with Freescale MCF5445x micro. So >>>> should the next step be flashing Freescale Linux BSP? Will i have to >>>> write the kernel drivers for Accelerometer , GPS , Camera etc? Add
the
>>>> drivers, cross compile the kernel and flash it again? >>> >>>A BSP is a _board_ support package. The next step, if you're going to >>>use Linux, would be modifying the BSP to work with whatever _board_
that
>>>processor is going on. >>> >>>If you can get the attention of a Freescale applications engineer, >>>having >> >>>a chat with them about what the whole job entails may be a very good >>>idea. At best, there's some standard treatment to putting the
processor
>>>on the board that leaves you with everything working. At worst, you'll >>>know just how much over your head you're in, and you'll be able to >>>figure >> >>>out where to go from here. >>> > >> Thanks a lot Tim for the explanation. I am not clear on the following >> points. Kindly correct me if I am wrong >> >> 1. Who is the creator of BSP. In >> my understanding it will have to be Freescale or the respective >> manufacturer. > >Anyone who writes it. It doesn't have to be the manufacturer, but it's >nice if you don't have to write it. > >Keep in mind that your client is going to buy a _processor_ to build a >_board_ -- that makes _them_ the "board manufacturer" -- which means that
>they are on the hook to write the _board_ support package. > >Hopefully Freescale will have a BSP written for some eval board, and your
>client will be willing to stay pretty close to the core functionality of >that eval board in their board design. If they do, then you will have a >lot less work porting the BSP. > >> 2. The BSP will have an OS image with core drivers. By >> modifying the BSP, i think you mean adding drivers for other components >> or sensors on the board like GPS etc. In my understanding i(Software >> Engineer) will have to write the drivers for these sensors and the >> camera chip.If I am lucky i might find an already written driver for >> download. > >Correct. And if the board design deviates from what the BSP 'expects' >you'll have to fix that, too. > >You may find drivers, but you'll almost certainly have to modify them to >match your particular hardware, the particular way it's connected to the >chip, and the particular version of the OS that you're using. > >You may also be able to hack the drivers into user space, if you can >choke the necessary permissions to access hardware out of Linux. This is
>generally bad style, but not in a way that greatly impacts the quality of
>the software for a single version of a product, so for your specific case
>it may be the best overall solution. > >> 3. I find that Freescale MCF5445X series are the Coldfire V4 >> Microprocessors which is based on 68K(CISC) architecture. All other >> common embedded system instruction set architectures like ARM, PPC are >> RISC based. Will that affect the choice of the processor in anyways. > >It affects what the processor is capable of, but AFAIK the 68K is a nice >processor, so that certainly doesn't rule out its use. > >-- >My liberal friends think I'm a conservative kook. >My conservative friends think I'm a liberal kook. >Why am I not happy that they have found common ground? > >Tim Wescott, Communications, Control, Circuits & Software >http://www.wescottdesign.com >
--------------------------------------- Posted through http://www.EmbeddedRelated.com
On Thu, 15 Dec 2011 22:02:10 -0600, Zarakava wrote:

> Thanks Tim. > Even though i am not looking at using Android now, but there is no > Android port available for 68K processor right. So in the same manner, > will the choice also limit availability of compatible OS, tools etc. >
There might be a Linux port for the 68K -- check Debian to see what's current. Straight Linux, if you do anything at all that big, is probably the way to go. -- Tim Wescott Control system and signal processing consulting www.wescottdesign.com
On Sun, 18 Dec 2011 09:52:05 -0600, Tim Wescott wrote:

> On Thu, 15 Dec 2011 22:02:10 -0600, Zarakava wrote: > >> Thanks Tim. >> Even though i am not looking at using Android now, but there is no >> Android port available for 68K processor right. So in the same manner, >> will the choice also limit availability of compatible OS, tools etc. >> >> > There might be a Linux port for the 68K -- check Debian to see what's > current. Straight Linux, if you do anything at all that big, is > probably the way to go.
I just checked -- the Debian port for 68K is "unofficial", but they say they're reviving it. -- Tim Wescott Control system and signal processing consulting www.wescottdesign.com
On 18/12/2011 17:00, Tim Wescott wrote:
> On Sun, 18 Dec 2011 09:52:05 -0600, Tim Wescott wrote: > >> On Thu, 15 Dec 2011 22:02:10 -0600, Zarakava wrote: >> >>> Thanks Tim. >>> Even though i am not looking at using Android now, but there is no >>> Android port available for 68K processor right. So in the same manner, >>> will the choice also limit availability of compatible OS, tools etc. >>> >>> >> There might be a Linux port for the 68K -- check Debian to see what's >> current. Straight Linux, if you do anything at all that big, is >> probably the way to go. > > I just checked -- the Debian port for 68K is "unofficial", but they say > they're reviving it. >
There certainly is Linux for the 68K, though it's not much used these days. There was a time when Linux on Coldfire was very popular for small NAT routers, but I believe most of the market share here has been lost to MIPS SoCs. Linux on "real" 68xxx devices was popular a long time ago, such as on pre-PPC Macs. I don't think Debian would be the best starting point for Linux on a Coldfire. I would start my search with ucLinux - ColdFire was one of the two main targets for the MMU-less Linux, as many Coldfire's don't have an MMU, and even though the v4 core has one, it's a bit limited, and you might choose to run without it. MMU-less Linux has been incorporated into the mainline kernel for many years, but looking up ucLinux might give useful information.
Tim Wescott <tim@seemywebsite.please> writes:

> There might be a Linux port for the 68K -- check Debian to see what's > current. Straight Linux, if you do anything at all that big, is probably > the way to go.
Things might have changed, but I seem to remember that the 68k support was better in the OpenBSD camp than in the Linux camp. Take a look at: http://www.openbsd.org/mac68k.html //Petter -- .sig removed by request.
On Mon, 19 Dec 2011 10:44:35 +0100, David Brown wrote:

> On 18/12/2011 17:00, Tim Wescott wrote: >> On Sun, 18 Dec 2011 09:52:05 -0600, Tim Wescott wrote: >> >>> On Thu, 15 Dec 2011 22:02:10 -0600, Zarakava wrote: >>> >>>> Thanks Tim. >>>> Even though i am not looking at using Android now, but there is no >>>> Android port available for 68K processor right. So in the same >>>> manner, will the choice also limit availability of compatible OS, >>>> tools etc. >>>> >>>> >>> There might be a Linux port for the 68K -- check Debian to see what's >>> current. Straight Linux, if you do anything at all that big, is >>> probably the way to go. >> >> I just checked -- the Debian port for 68K is "unofficial", but they say >> they're reviving it. >> >> > There certainly is Linux for the 68K, though it's not much used these > days. There was a time when Linux on Coldfire was very popular for > small NAT routers, but I believe most of the market share here has been > lost to MIPS SoCs. Linux on "real" 68xxx devices was popular a long > time ago, such as on pre-PPC Macs. > > I don't think Debian would be the best starting point for Linux on a > Coldfire. I would start my search with ucLinux - ColdFire was one of > the two main targets for the MMU-less Linux, as many Coldfire's don't > have an MMU, and even though the v4 core has one, it's a bit limited, > and you might choose to run without it. MMU-less Linux has been > incorporated into the mainline kernel for many years, but looking up > ucLinux might give useful information.
I kinda mentioned this in another post, but I should reiterate it here: I would seriously question the need for something as heavy-weight as Linux for this application at all. Any old real-time kernel, or even a thoughtfully-constructed task loop, should do the job just fine. Linux is certainly overkill, although it wouldn't necessarily prevent things from working. -- My liberal friends think I'm a conservative kook. My conservative friends think I'm a liberal kook. Why am I not happy that they have found common ground? Tim Wescott, Communications, Control, Circuits & Software http://www.wescottdesign.com
On Dec 19, 10:58=A0am, Tim Wescott <t...@seemywebsite.com> wrote:
> On Mon, 19 Dec 2011 10:44:35 +0100, David Brown wrote: > > On 18/12/2011 17:00, Tim Wescott wrote: > >> On Sun, 18 Dec 2011 09:52:05 -0600, Tim Wescott wrote: > > >>> On Thu, 15 Dec 2011 22:02:10 -0600, Zarakava wrote: > > >>>> Thanks Tim. > >>>> Even though i am not looking at using Android now, but there is no > >>>> Android port available for 68K processor right. So in the same > >>>> manner, will the choice also limit availability of compatible OS, > >>>> tools etc. > > >>> There might be a Linux port for the 68K -- check Debian to see what's > >>> current. =A0Straight Linux, if you do anything at all that big, is > >>> probably the way to go. > > >> I just checked -- the Debian port for 68K is "unofficial", but they sa=
y
> >> they're reviving it. > > > There certainly is Linux for the 68K, though it's not much used these > > days. =A0There was a time when Linux on Coldfire was very popular for > > small NAT routers, but I believe most of the market share here has been > > lost to MIPS SoCs. =A0Linux on "real" 68xxx devices was popular a long > > time ago, such as on pre-PPC Macs. > > > I don't think Debian would be the best starting point for Linux on a > > Coldfire. =A0I would start my search with ucLinux - ColdFire was one of > > the two main targets for the MMU-less Linux, as many Coldfire's don't > > have an MMU, and even though the v4 core has one, it's a bit limited, > > and you might choose to run without it. =A0MMU-less Linux has been > > incorporated into the mainline kernel for many years, but looking up > > ucLinux might give useful information. > > I kinda mentioned this in another post, but I should reiterate it here: > > I would seriously question the need for something as heavy-weight as > Linux for this application at all. > > Any old real-time kernel, or even a thoughtfully-constructed task loop, > should do the job just fine. =A0Linux is certainly overkill, although it > wouldn't necessarily prevent things from working.
I would say the same (overkill) for the hardware, except for the image/ video. I just don't understand the need for the image/video chip. Is this driver assistant for the blind?
On Mon, 19 Dec 2011 12:24:37 -0800, linnix wrote:

> On Dec 19, 10:58&nbsp;am, Tim Wescott <t...@seemywebsite.com> wrote: >> On Mon, 19 Dec 2011 10:44:35 +0100, David Brown wrote: >> > On 18/12/2011 17:00, Tim Wescott wrote: >> >> On Sun, 18 Dec 2011 09:52:05 -0600, Tim Wescott wrote: >> >> >>> On Thu, 15 Dec 2011 22:02:10 -0600, Zarakava wrote: >> >> >>>> Thanks Tim. >> >>>> Even though i am not looking at using Android now, but there is no >> >>>> Android port available for 68K processor right. So in the same >> >>>> manner, will the choice also limit availability of compatible OS, >> >>>> tools etc. >> >> >>> There might be a Linux port for the 68K -- check Debian to see >> >>> what's current. &nbsp;Straight Linux, if you do anything at all that >> >>> big, is probably the way to go. >> >> >> I just checked -- the Debian port for 68K is "unofficial", but they >> >> say they're reviving it. >> >> > There certainly is Linux for the 68K, though it's not much used these >> > days. &nbsp;There was a time when Linux on Coldfire was very popular for >> > small NAT routers, but I believe most of the market share here has >> > been lost to MIPS SoCs. &nbsp;Linux on "real" 68xxx devices was popular a >> > long time ago, such as on pre-PPC Macs. >> >> > I don't think Debian would be the best starting point for Linux on a >> > Coldfire. &nbsp;I would start my search with ucLinux - ColdFire was one of >> > the two main targets for the MMU-less Linux, as many Coldfire's don't >> > have an MMU, and even though the v4 core has one, it's a bit limited, >> > and you might choose to run without it. &nbsp;MMU-less Linux has been >> > incorporated into the mainline kernel for many years, but looking up >> > ucLinux might give useful information. >> >> I kinda mentioned this in another post, but I should reiterate it here: >> >> I would seriously question the need for something as heavy-weight as >> Linux for this application at all. >> >> Any old real-time kernel, or even a thoughtfully-constructed task loop, >> should do the job just fine. &nbsp;Linux is certainly overkill, although it >> wouldn't necessarily prevent things from working. > > I would say the same (overkill) for the hardware, except for the image/ > video. I just don't understand the need for the image/video chip. Is > this driver assistant for the blind?
Could be for big-brothering commercial drivers or cops. Having post- crash video to prove innocence or to settle quickly if your driver was a bad boy would have some value. -- My liberal friends think I'm a conservative kook. My conservative friends think I'm a liberal kook. Why am I not happy that they have found common ground? Tim Wescott, Communications, Control, Circuits & Software http://www.wescottdesign.com
Yes Tim. You got the requirement right. 
Linnix, I had already followed up on your query.
Ok. Now the situation is that the client wants to start with a clean slate.
So the choices right from processor to sensors,kernel/OS,Coding platform
are open. 
Tim, I read something about real time OS vxWorks. Are you pointing to
something like that or much lighter than that.
We are currently in the middle of talking to hardware engineers here who
can help us with the proper selection of components.
Given the requirement any suggestions for
1. Processor
2. Sensors
3. OS

Also i was looking at the possibility of starting to develop the
application on a DIY board till the time the actual board prototype is
ready. Will that be a good idea?


>On Mon, 19 Dec 2011 12:24:37 -0800, linnix wrote: > >> On Dec 19, 10:58&nbsp;am, Tim Wescott <t...@seemywebsite.com> wrote: >>> On Mon, 19 Dec 2011 10:44:35 +0100, David Brown wrote: >>> > On 18/12/2011 17:00, Tim Wescott wrote: >>> >> On Sun, 18 Dec 2011 09:52:05 -0600, Tim Wescott wrote: >>> >>> >>> On Thu, 15 Dec 2011 22:02:10 -0600, Zarakava wrote: >>> >>> >>>> Thanks Tim. >>> >>>> Even though i am not looking at using Android now, but there is
no
>>> >>>> Android port available for 68K processor right. So in the same >>> >>>> manner, will the choice also limit availability of compatible OS, >>> >>>> tools etc. >>> >>> >>> There might be a Linux port for the 68K -- check Debian to see >>> >>> what's current. &nbsp;Straight Linux, if you do anything at all that >>> >>> big, is probably the way to go. >>> >>> >> I just checked -- the Debian port for 68K is "unofficial", but they >>> >> say they're reviving it. >>> >>> > There certainly is Linux for the 68K, though it's not much used
these
>>> > days. &nbsp;There was a time when Linux on Coldfire was very popular for >>> > small NAT routers, but I believe most of the market share here has >>> > been lost to MIPS SoCs. &nbsp;Linux on "real" 68xxx devices was popular
a
>>> > long time ago, such as on pre-PPC Macs. >>> >>> > I don't think Debian would be the best starting point for Linux on a >>> > Coldfire. &nbsp;I would start my search with ucLinux - ColdFire was one
of
>>> > the two main targets for the MMU-less Linux, as many Coldfire's
don't
>>> > have an MMU, and even though the v4 core has one, it's a bit
limited,
>>> > and you might choose to run without it. &nbsp;MMU-less Linux has been >>> > incorporated into the mainline kernel for many years, but looking up >>> > ucLinux might give useful information. >>> >>> I kinda mentioned this in another post, but I should reiterate it
here:
>>> >>> I would seriously question the need for something as heavy-weight as >>> Linux for this application at all. >>> >>> Any old real-time kernel, or even a thoughtfully-constructed task
loop,
>>> should do the job just fine. &nbsp;Linux is certainly overkill, although
it
>>> wouldn't necessarily prevent things from working. >> >> I would say the same (overkill) for the hardware, except for the image/ >> video. I just don't understand the need for the image/video chip. Is >> this driver assistant for the blind? > >Could be for big-brothering commercial drivers or cops. Having post- >crash video to prove innocence or to settle quickly if your driver was a >bad boy would have some value. > >-- >My liberal friends think I'm a conservative kook. >My conservative friends think I'm a liberal kook. >Why am I not happy that they have found common ground? > >Tim Wescott, Communications, Control, Circuits & Software >http://www.wescottdesign.com >
--------------------------------------- Posted through http://www.EmbeddedRelated.com

Zarakava wrote:

> Hi All, > I am a mobile application developer
You are STUPIDENT and this is the first time i
> have entered into developing an embedded application from scratch. I know > that the title is a bit misleading and there will be rebuts in the grounds > that Android is an OS and Qt is a framework and C/C++ is a language. Let me > explain my requirement. > I need to develop an embedded device which will be installed in a vehicle > and it will periodically send telemetrics data to the cloud server using > GSM modem. The telemetrics will include > 1. GPS position data > 2. Accelerometer readings > 3. Image/Video data > 4. It needs to light up a bulb on the device to visually indicate rash > driving to the driver based on algorithms derived from > acceleration/deceleration values > > I am looking forward to suggestions in the following areas:- > > 1. How to select an appropriate processor, sensor components? Who will > design the board? Do the silicon suppliers provide consultancy in that area > or does an hardware engineer select the processors, components and designs > the board,the board design is then given to the silicon supplier as made to > order specs? > 2. Android: Is it feasible to to port Linux for Android. Then port Android > on top of that. Write Android ready device drivers and then hook it to the > Android APIs. Then write an Android application. My device will not have a > display or a HMI. So is Android really adding value to my solution and is > it worth to go through all the efforts mentioned above? > 3. Qt: I am least experienced in Qt. But my understanding is that Qt can > take place of Android as an application framework. The process and > questions pretty much remain the same as for Android. > 4. C/C++: Or write C/C++ programs which will directly interact with the > device drivers and achieve the need. > > Thanks a Ton! > > > > --------------------------------------- > Posted through http://www.EmbeddedRelated.com