Open source tablet computer - hardware

I'm an experienced software engineer in the telecomm industry, lately I've been interested in working on a hardware project.
One of the ideas that floated around in my head is the concept of an open source tablet computer. I'm inspired by the success that the Arduino has made, and it is my personal belief that if this device was open source it could be a great platform for inspiring new projects, and become a cheap device for schools!
Can any of you give me suggestions where an idea like this has been tried before, what went right, and what went wrong?

Well I agree with Casio (this is probably not the place to ask such a question: not sure what is, though), but a significant effort with something similar was made as a part of the OLPC project: it is as open as you could hope, low cost...I would say that is as good a starting point as any: replace the screen with a touch screen and hack away!
On the other hand, there's a company selling kits for basically exactly what you described. Let us know if you go anywhere with this...I'd like to know. :)

Check out the Open Compute Project which started back in 2011 building vanity free open source hardware (servers) for data centres.
If you want to campion an idea for open source hardware then get involved in the global community
www.opencompute.org
https://youtu.be/-uJ9n1HEBBY

Related

Arduino compatibility with unofficial modules

Completely new to Arduino and am looking to really dive in. An idea I have requires a small form factor for a gsm/gprs module, something that could work with one of the micro arduinos. I can't find any sort of really small gprs modules.
My question:
Is it possible to use the module from an old cell phone and adapt it to arduino? Or is that an outrageous concept? I also found one that looked interesting on (ebay) would it be possible to adapt to something like that?
I am aware that it'd be a big undertaking!
Thanks for the help.
It is possible! most of the modules serially communicates you only need to get the baud-rate correct.
There are examples and tutorials you can find on the internet this Instructables tutorial is worth seeing.

Is there a way to use text-to-speech directly in bb10

I want to generate some text from my bb10 app to give audio feedback to the user.
(But the screenreader like in the accessibility feature is not sufficient)
Has anybody already successfully got text-to-speech implemented?
There are countless open source projects that do this on PC platforms. You may have your best luck in fitting them to your needs. – Josh C
Any library you would recommend? It should have C or C++ interface and must work offline (no server based solution) and it should not occupy too much memory. – thowa
I had to check to make sure it was written in C++ which it is. It is called ESpeak. I heard about it nearly 7 years ago when I was looking for a speech synthesizer that was powerful/robust enough to sound like a human. I believe it was ESpeak, and back then it was a complicated task to get it to spew out realistic sounding speech.
http://sourceforge.net/projects/espeak/files/
This one looks promising as well; however it is written in java.
http://mary.dfki.de/Download/openmary-open-source-emotional-text-to-speech-synthesis-system-released
Found here https://github.com/marytts/marytts

How to share a dll in a network directory not the same as the application directory

I'll admit up front that I'm still learning good methods of deployment and that I don't have a size 12 brain to accomplish the following task. Now with that being said...
We have around 8 exe's that exist on a network drive that reference a dll that is in the same share/folder. We'd like to have a common network share in a different location that would contain this dll and any future dll's that we create so we'd have only one place to make changes (presuming the apps do not need to be recompiled). I've not found a satisfactory answer for why a dll should not be shared on a network so I'm wondering what the best practice would be for doing this. If this is something that is acceptable and routinely done then what steps are necessary to accomplish this? Thanks in advance for any help you can give.
If this shared DLL has any chance of being updated during a future release, what you have now, a local copy stored against each application, is far better.
You say your stated objective is to be able to make one change to the DLL and have all apps update. I've heard the positive side of this case made before.
"We get to roll out improvements to all our apps"
Which, seen from a half-empty glass is :-
"We get to introduce common bugs to all our apps".
Even at eight projects, imagine what your launches will be like.
"Er, hello QA. Can you test this one new app? (plus the seven others that we've done nothing to but might be broken as a result)".
Libraries should only be shared if they are mature and unlikely to change. Sorry to be so up-front about it, but I've faced a zealot who absolutely believed as you do. It was only when our bottom-line (predictably) nose-dived that my concerns were listened to. Dragons ahead. Be warned!

Missing driver LabVIEW

I'm trying to run a program written by someone else in LabVIEW. The program records voltage. However it won't open because it is missing subVIs.
Initially I thought that only one was missing and the rest weren't working becuase they were attached to it but after someone on this forum kindly found it for me the rest of the VIs still won't work so I think I need to download them again. However there are too many off them to get separately, also I tried googling them to no avail.
The subVIs are : Magnet Id, Hardware check, Plot Data and Print, Make Plot Lables, Plot it, Relabel It, Write File header, Record Analog Info, Fix Column Heading, Make Igor Label etc etc (this is not a complete list).
I feel that I should download a DAQ from The National Instruments Website but I am not sure which one. I am using 64 bit LabVIEW 2010 on Windows. Can someone please help me pick out the correct driver?
Thanks!
Just going from memory, those aren't NI VIs that I recognize, especially if the misspellings are in the original.
What hardware is this interfacing with?
You should still be able to open the main VI. It will not compile or run, since the subVIs are missing, but you should be able to open it and maybe get some clues about what it's doing.
The SubVIs all appear to be in the llb file so they should be available. I'm not sure how you can access the subVIs directly from the llb file so you may want to convert this to a project folder (this is the new way of creating libraries since version 8 I think). There are some pages on the NI website that may help, try Converting an LLB to a Project Library and then add this Project Library to your project.
From what I can see the VIs make use of the VISA drivers to communicate with the individual instruments so you should make sure you have this installed. You don't mention what version of LabVIEW 2010 you have but I think they should be provided even the Basic version, I know they are provided with the Professional Development System version.

How to create an online rebol console?

Where can I find the code for creating an online rebol console like the one here ?
http://tryrebol.esperconsultancy.nl/
Update: for the sandbox system on the server, can't Rebol manage it itself with some security wrapper and its security options ?
As for console itself, I don't know Ruby so I don't want to use TryRuby and why would I need it ? Can't I mimic Rebol console itself by "remoting" it somehow ? Why RT or Esper Consultancy can't make an opensource version ? There's no value in keeping it closed source. Rebol needs to prove it's more open than in the past.
In my opinion, you should aim higher with something like the already open-sourced Try Ruby. You'd type in expressions and it would guide you. Their showcase site is at tryruby.org and is fairly slick.
I modified TryRuby to work with Rebol and it wound up looking like this:
But I'm not going to run it on my server because I didn't want to belabor the necessary sandboxing/etc. or protections against someone running an infinite loop. I can give you what I've got so far if you want it.
I started a tutorial script here that no one seemed interested in helping me with, so I wandered off to other tasks:
http://www.rebol.net/wiki/Interactive_tutorial_script
I'm not sure what exactly you want. You mention you want a remote REBOL shell instead of a tutoring setup, but that's what the Try REBOL site is. There are several reasons it's not open source:
It's in heavy development. I'm currently changing the code regularly.
So it's not in a release state. Preparing it for release, documenting and publishing it would take a lot of extra work, as with most projects.
It's written in my CMS that's also in heavy development. Even if the Try REBOL site were open source, it wouldn't run. The CMS is not planned to be open sourced soon.
It's not meant as a generic REBOL remoting tool, but as a one-off demo site. If that site is running, what's the use of more of them?
As others have answered, there are many generic solutions for remoting that you could use. Also, most parts of the Try REBOL site are readily available as open source:
Syllable Server, produced and published by us.
The Cheyenne web server.
The HTML source of the web client can be viewed, including my simple JavaScript command service bus.
Syllable Server is an essential part of the site, as the sandboxing is not done with REBOL facilities (except some extra limits in the R3 backend), but with standard Linux facilities.
A truly air tight (do I mean silica tight?) sandbox is close to impossible with R2.
R3 (still in alpha) is looking a lot more promising. The deep technical discussions in flight right now (see Cure code and AltME/REBOL3 Proposals regarding unwinds and protect and even occasionally mentioning sandboxes should lead to an excellent sandbox capability.
Right now, the big advance R3 has that makes Kaj's tryREBOL possible is R3's secure policy settings which make it possible (with some careful wrapper code) to construct an alpha/demo sandbox.
To answer your precise question("where can I find code...", you could try asking Kaj for his :)
I'm new to StackOverflow. I'm not sure if this is going to end up as a reply to your comment, or as a new answer.
The somewhat common idea that any project can be open sourced and contributed to by others is a naive view. In the case of my Try REBOL site, it makes no sense. It's not just in heavy development; it's written in a CMS that's also in heavy development. Basically noone could contribute to it at this point, because I'm the only one who knows my CMS. Or in any case its newest features, which I develop by developing Try REBOL, and other example sites. So developing Try REBOL means developing the CMS at the same time, and by definition, I'm the only one who can do that.
More generally, my projects are bleeding edge, innovative technology with a strong vision. The vision is mine, and to teach it to others, I have to build it to show how I intended it to work. So there's a catch 22: to enable others to contribute, I have to finish my projects first, because people typically don't understand them until I show them how they work.
There certainly are other projects where mass contribution makes more sense. Still, only the top projects get the contributors. We found that out the hard way. We created Syllable Desktop and Syllable Server with surrounding infrastructure for contributions. These are fairly classic, well understood operating systems that many people could work on in parallel. However, despite years of begging, we get very few contributions.
So, if you feel a burning need to contribute to our projects, please pick one of the many tasks in Syllable to execute. :-)