Open Moko - GPL?

Steve Salazar eagsalazar at
Tue Nov 28 02:25:21 CET 2006

Thanks for the quick reply.   See my answers in line below (disclaimer: I 
didn't really delve deeply into these questions so my notion of what I/O is 
available is foggy and probably contains serious misunderstandings which 
possibly will render my replies somewhat incoherent)

>Salve Steve!
> > 1. It is mentioned that the gui was designed using gtk.  Will the 
>sources > for all the interface be released?  For that matter, will the 
>sources for > everything, including the os itself, drivers, etc be 
>released?  yes, see the webblog of Harald Welte:
> > Will > openmoko follow an open development model similar to debian or 
>fedora?  I > really hope so and encourage your project to do so since I 
>believe that is > the model that benefits everyone the most.
>Yes - more familar to debian ;)
>packet manager: ipkg (several postings about this.
>About software publication:
> > 2. If all these things are going to be opened, when?  I saw in related > 
>posts that this might be delayed until after the release because you guys > 
>are focusing on getting things out the door.  I understand that but I think 
> > that is a mistake.  The OSS development model achieves high quality and 
> > quick results because of involvement and extensive testing by the > 
>community.  If you don't release the code and sdk until after the phones > 
>are on sale, there is a 100% chance that major bugs or UI features problems 
> > will go unfixed or uncaught until after release.  Also, everyone is 
>excited > to get involved so why make us wait?  If you are too busy to deal 
>with > supporting the community then just do a pre-release on your website 
>that is > just a tarball with no support or community at all.  Read the 
>cathedral and > the bazaar for a good explanation of the OSS development 
>model and why it > works:
>slide #3
>and slide #6 would answered your first question about debian.
>I'm shure that Sean, Mickey, Harald and the others do know this book and
>the concepts. I'm convinced they know well why they do not publish more 
>about the SDK and I would say - trust them! ;)
>  > 3. Why did you not use opie or gpe?  If all the drivers and code for > 
>openmoko are released, will it be possible for me to run qtopia or gpe on > 
>my own if i want to?
>When you do the hack, I think so.
> > Are you prepared for the possibility that, if people > like gpe or opie 
>more, nice installers will become available very quickly > and everyone 
>might just run those environments instead?  If it turns out > that the 
>public prefers another environment, would the environment for > openmoko 
>continue to be developed or would you consider getting behind the > 
>environment chosen by the community?   I haven't seen openmoko yet so maybe 
> > that will be a giant contribution to the community also but for now it > 
>really seems like the huge benefit is just the hardware since there are > 
>other pda/phone environments availble.
>Does the other enviroments include "multi-touch screens" or AGPS?
> > Are you prepared to support the voracious appetite the OSS community has 
> > for the latest and greatest?  Will you always have the latest version of 
> > the kernel?  Of mplayer?  Minimo?  Etc?  If not forks will quickly form 
> > like they did for qtopia.  Why not just start an open development 
>project > like qtopia from the start so instead of creating division 
>between your > project and the community project, you can leverage that 
>enthusiasm, like > Ubuntu, Fedora, Debian, etc?  I know this may in fact be 
>your plan so I am > just asking.
> > > 4. What standards or protocols or libraries (other than gtk) were used 
>to > create openmoko's software suite?  Is there a document editor?  Does 
>it use > ODT?  Is there a music player?  Does it play ogg?  Is there a mail 
>and > calendar client?  Do they use ical, can they be synced using 
>opensync?  > These are major issues that have plagued linux pda development 
>in the past.
>I don't know if these will be there from the beginning - but to let ogg123 
>run will be no big issue *g*
> > People reinvent the wheel and even though the platform is semi-open, 
>there > is a proliferation of incompatibility.   Please use standards and > 
>open+existing libraries for everything as much as possible.  In that way > 
>you maximize the utility of the product and you maximize the leverage you > 
>can take from existing projects so you can focus on working on other > 
>things.  (Related to "why not opie or gpe" question).  Everyone wins and > 
>the product is best.
> > > 5. X11 - Does the openmoko interface run on X11 or does it display 
>directly > on the fb?  Using real X11 keeps the door open for a huge number 
>of > compatible applications to be run with the openmoko environment.  
>Without > X11, openmoko is an island. 
> > My previous point about people potentially > switching to opie or gpe 
>*will* happen if openmoko does not use X11 because > that will be the only 
>way that people can use their favorite apps.   This > will not be limited 
>to just linux nerds.  Look at the popularity of Fink on > OSX.  Linux has a 
>lot to offer and without X11 there will be a lot of > people trying to work 
>around or remove openmoko to get at those offerings.  > I know this may be 
>your plan already so I am just asking.
> > > Hardware:
> > --------------------------
> > > 1. This is sort of a rhetorical question:  Why innovate?  Why not just 
>make > semi-knockoffs of very popular existing phones but with hardware 
>that is > supported by linux.  For example, if you made something similar 
>to the HTC > Wizard (especially the new one) that was fully linux 
>compatible I would by > 5 just out of happy delirium. I' 100% shure: much 
>more than 1:1 copies of existing solution is possible
>so that the Neo1973 will not be just a copy with the advantage of
>"running with linux"
> > I know that a large part of the work > involved in this project is 
>architecting the hardware layout.  Of course > you cannot rip-off the 
>design of an HTC Wizard but by doing something > pretty similar you could 
>probably save yourselves a lot of work and even > more get people what they 
>want which is a reasonably priced phone that is > open for even less money 
>or you could spend the saved time or money > elsewhere.
>Have you every hardly used a newton or palmpilot?
> > 2. MicroSD:  Why?  Is the area used by full SD that much larger?   To me 
> > this seems like a huge tradeoff because for full size SD there are so 
>many > amazing cards available, not just storage and they are fully 
>compatible > with the form factor of many other devices without requiring 
>an adapter.  I > won't be able to put a wifi adaptor in my openmoko phone 
>just to save a > couple mm of card space?  I don't know if it is that 
>simple, that is why I > am asking.
>Hmmm good point - but I would much more like to see two microSD slots
>with an analog multiplexer instead of a full SD slot..
> > 3. Miniheadphone:  I know you don't have headphone output (or do you) 
>2.5mm audio jack
>What it is unclear ist micro input jack ;)
> > but I > will just comment because my HTC Wizard made this mistake.  Do 
>not use > mini-headphone jacks because it severely limits compatibility 
>with other > headphones.  You would like to see 3.5mm audio jack - well 
>when there would be space,
>I would agree.
> > If someone wants to use earbud headphones that are mini then > you can 
>buy very small and nice adapters that can live with the headphones. > If 
>the phone has mini however then you need to carry around the adapter > 
>wherever you go in case you want to plug into someones stereo.  With mini > 
>in the phone you get a proliferation of burden on the user for different > 
>scenarios but if the phone is normal then there is an annoying case but it 
> > is just one case and there is no proliferation of pain.
> > > 4. How open will the hardware platform itself be?  I know that many > 
>hardware manufacturers are actively closing the platform via bios > 
>white-lists, no specs or diagrams or part numbers, etc.  Will openmoko's > 
>hardware be the same or go in the same direction as the software, open.   I 
> > think an open development model for the hardware could be very  
>beneficial > for the same reasons that open works for software.  You would 
>get a lot of > enthusiasts very excited and they would help you out for 
>free by reviewing > and even implementing features.  I, for example, am a 
>seasoned asic > designer.   I can program but that is not my main expertise 
>so I don't > contribute much to OSS software.  Maybe that would be 
>different if there > were a cool open hardware platform I could hack on??
>I already encorage Sean/FIC to spend additional signal lines on the
>circuit board to the SoC like I2C, SPI, UART - to be able to solder
>other things (e.g. sensors...) to it and make it attractive for hardware
> > 4.5 - What about linuxbios?  Will the openmoko phone be using linuxbios? 
> > My understanding is that the project is quite mature and that there are 
> > many advantages for both hardware manufacturers and for users.  More > 
>manufacturers only don't use it because it removes their ability to control 
> > or lockdown the hardware.
> > > 5. What about CDMA2000 or other cellular infrastructures?
>I think the OpenMoko/Neo1973 will be a strategical plattform for FIC,
>so when it will started succsessfull a CDMA2000 version should be also
>But see where in the world open source developer are, even in the USA
>are GSM networks - so for starting it - GSM was the better choice.
> > 6. CPU:  No info on the CPU yet?  
>Samsung S3C2410
>Further information will you find when you look for Samsung S3C2410 just in
>the subjects
> > Please make it fast enough to decode > decent quality video and to do 
>VoIP.  I absolutely love the hardware on my > Wizard (hate hate hate the 
>OS, buggy slow strange feature omissions, etc) > but it is just too weak to 
>do VoIP or play some video.
>I woudn't mind if the Neo1973 would be to slow for video - there is so much 
>to run beside -
>In case that it is too slow IMHO for who's important to see video's should 
>buy an stand alone video player or GP2X wich have a video
>OpenMoko/Neo1973 is a strategical plattform - so encreasing the CPU
>power to be able to see fullscreen videos instead of 120*160 pixel
>does not worth it - in 2 years it would be slow hardware anyway.
>But think about something that also could be usefull in 6 years!
>Read the mails here and think about the design of the first PalmPilot
>- no video, even no greyscale...
> > 7.  Other random hardware questions/comments/wishes:
> > - Camera:  People who say don't bother with a 1.3Mpix camera are > 
>photographers or otherwise photography enthusiasts.  90% of the people are 
> > very happy at 1.3M because at 1.3 you can do photo album sized images 
>with > very high quality that most people are happy with.
>Ok, but what does this idea fertilise a communication device?
>That the neo has a usb host and usb device mode is much more powerfull
>than a camera....
> > - USB Host: Please please and make it USB2.  The idea of a 400MHz PDA 
>266 Mhz
> > with > 128MB RAM that can  plug into a USB2 hub makes me start dreaming 
>of > ditching an actual computer all together and just plugging my pda into 
>a > hub when I want better I/O.
>USB 2.0 on the box does not count - see Asus WL-500. And because the SoC 
>does not support USB 2.0 a seperate circuit would
>cost space, money and encrease the powerconsumtion.
>I hope that he usb port will be powered - so that Wifi, camera,
>USB-memorysticks - cryptocards,... and much more could be used.
> > - Wifi/Bluetooth - Must.  Fantastic.
>even without it the Neo1973 would be powerfull AND IMHO
>- missing Wifi, missing Bluetooth, slow CPU, slow memory access
>this is the right device for developing efficent communication solutions
>Of course Wifi/BT would be fine, but when it is missing, it could be an 
>advantage to start OpenMoko - it will us concentrate on what would
>be possible with GPRS ;)
> > - Storage:  1GB minimum integrated SD for running a real linux.  This 
>may > seem crazy for a phone but it is only crazy because it has never been 
>done. > A 400MHz computer + 128MB ram + wifi + USB Host + >1GB HD is no 
>longer a > phone - It is a real computer that is also small and I can make 
>calls with.
>Maybe a computer, but no Personal Computer. It will become a Personal
>Computer, when it is open, documented and supported enough to do what
>you like with the hardware.
> > It is a dream.   I and many others will think of plenty to use that 1GB 
> > for. I can think of plenty to use 6GB for.
>MeTo - but wait - it makes no important differences to have 1h audio or 
>100h audio on your device - this has nothing to do with the point that the
>Neo1973 will be the starting point of an new plattform.
> > - Battery: AA.  This is done on some other device I'm not thinking of.  
>My > battery is dead and I can't just walk into 7-11 and buy replacements 
>for > $4? Why not?
>capacitance/volume ?
> > - Card slots:  Just SD and real SD, not micro/mini.
> > - Keyboard:  The touch dial is unusable by men with short fingernails on 
>my > HTC Wizard.  *speculation*
>AFAIK will the Neo1973 have a optical touchpad, not a electrialy one.
>So I would expect that you could also dail with a down from a bird.
> > If that is not true of your phones then I am happy.  If it is > the same 
>then please include a keyboard in some models.
>I used my palm with the pen and an external keyboard for longer text.
>To the neo you could plug a cheap foldable USB keyboard.
>I guess everything inbeteen is a bad compromise - not good for
>short notes, and very unusable for long text.
> > I know that is a lot of requests and comments but like I said, I will 
>buy > and will keep buying these phones as long as they are open and do a 
>nice > job and there are many many people like me who will do the same and 
>who > will encourage everyone they know to do the same with great 
>But now some questions back from me, beside of faster, more memory or
>multimedia - just the core function of a phone; Steve, please tell me/us
>1.- what does you hate most on phones you know?

Honestly I love my phone's hardware (Already mentioned HTC Wizard).  There 
are a couple small nits: Touchscreen is flakey, miniSD, mini headphone jack, 
slow CPU.  The one major thing I want is USB2 Host which I'm not sure WM5 
could do anything interesting with either way.  That brings me to the one 
thing I really really do dislike about my phone: WM5.  The fact that this OS 
has been architected from the bottom up with MS's *real* customers in mind: 
carriers (not me) is so obvious everywhere.  Major feature omissions, UI 
bugs, etc are all totally fixable but they don't want them fixed.  So my 
biggest gripe with my phone is already being addressed by openmoko by just 
being open so I can connect however I want and run whatever I want.  In the 
linux world that means that my pda will be made for me by people who put the 
end user's needs first (since they are the end users also).

Hopefully one side effect of this project will be the rapid maturation of 
tools associated with doing development work for phones/pdas which will then 
result in slow moving linux ports to WM5 devices suddenly moving quickly and 
working!  That is probably not a goal of this project but a lot of people 
will be happy if the linux PDA world gets some standardization and starts to 
take off.

In summary, what I want:
- Communications: available, open, 802.11, bluetooth
- Horsepower: 400MHz+, 128MB RAM, decent video
- Devices: SD, USB Host -> cameras, gps, keyboards, capture, anything!
- Open software/standards/protocols:  You guys have this one nailed.

With this short list of items you have something that is extremely powerful 
and flexible.

>2.- what does you miss most?
>3.And because you said that you are a seasoned asic designer - can you
>take a look at our mailing list archive e.g. this mail
> and 
>take a look to the I/Os of the SoC and add your ideas what you like
>to add to phones when the phone would have some more signal lines on
>the board? Would be at last one free SPI the best I/O?

Hmm.  Well I must admit that dealing with uController IP is not my area of 
expertise.  We do mixed signal fully custom soft and hard IP but don't 
consume IP ourselves and we do memory IP and don't deal with ucontrollers or 
such devices at all.  However, I did read a little:

- I agree with your concern and your enthusiasm for keeping the pins 
available for modders or even for updates to the phone from FIC that would 
not require a new board design which would only be possible if they look 
ahead to possible future device additions.  Welding that door shut by not 
exposing the pins on the board seems pointless and you would burn that 
additional set of enthusiast hackers.
- Only two of the applications you mention require high data rates: Wifi and 
Flash.  The SD really needs the speed because transferring even 1GB can be 
painful on slower interfaces.  However, I'm surprised that you would suggest 
to give up the flash in favor of faster Wifi.  I suppose this is a matter of 
preference but for me even 54Mb Wifi is too slow for large transfers so you 
are never going to get into competition with SD or USB2 so i would say don't 
make any sacrifices to maintain Wifi speed.  If you aren't doing large 
(>1GB) file transfers then what are you doing?  Streaming 
music/video/browsing/updating software/etc all of which can be done happily 
at 2Mb/s since most of that content isn't coming off your LAN anyway.  I'm 
not saying it doesn't matter but I am saying that it isn't worth it if you 
are going to take away my SD or if it means there is no hope of having some 
of the other cool applications you mention (altimeter + accelerometer??  
Very cool).
- One remaining SPI could be extremely powerful for devices that require 
lower data rates: accelerometer, altimeter, bluetooth, additional sim cards 
(I imagine they don't have major data rate requirements either).  Slow 
bluetooth is better that no bluetooth (way better)
- What, if anything, is the ADC being used for?
- Let me see if I understand:  The spi implementation is addressing the pin 
limitation of the embedded arm core by providing serial access to a set of 
8-bit parallel interfaces?  I was thinking at first that there was just a 
serial out and the receiving side of the spi would be associated with each 
connected device.  That would actually be better because then you could just 
daisy chain them up connect as many devices as you like like JTAG.  Don't 
most of these devices support JTAG?  Anway, I agree either way it is crazy 
to not expose the pins if they are there.

>4. See my idea about using an analog multiplexer to switch between
>    multiple SIMs (4-8)
That seems fine assuming the data rate requirements are low (which I assume 
they are).  For the US (where I am) there is little practical application of 
this feature however because here you don't just buy sim cards to use at the 
convenience store.  You are normally locked into a single long term contract 
with a single carrier so I can't see myself ever using this.  I'd personally 
rather see the interface used to expose other devices but i can see in 
Europe how that would be a fantastic feature.

>5. I will use my phone with crypto card (schlumberger cryptoflex32) with
>    external USB adapter. How would it be possibel to use such a card
>    inside. Wich port of the SoC would be use for a crypto card inside?
>    (Crypto card for save storing private keys - for encrypting files
>    filesystems, ssh conections mails, phonecalls, telebanking...)
>    ISO 7816 interface?
Anything right?  How much total data are we talking about?  What data rates 
are required?  A few kb?  Hook it up to whatever is left over.  
Implementation difficulty aside, it dosn't matter does it?  Speed is a 
non-issue and you don't need to accept any interrupts from the device do 
>6. could such a smartcard run in a multiplexer of Question4 and be
>    directly accessed by the CPU without a GSM chip?

Why without the GSM?  What does that have to do with anything?


>7. Do you (or somebody) know about developing SIM cards - to add
>    more function to one card - e.g. banking, - even with running
>    Java on the SIM. What would this mean for OpenMoko/Neo1973?

No I don't, sorry.

>So beside of coding, you could also support us with ideas ;)

More information about the community mailing list