User:Eb4890: Difference between revisions

From London Hackspace Wiki
Line 41: Line 41:


* Rosjava - http://code.google.com/p/rosjava/
* Rosjava - http://code.google.com/p/rosjava/
* RenderScript - http://developer.android.com/guide/topics/renderscript/index.html OpenCL alternative available now? Ziilabs has opencl running. Renderscript seems to be nicer in that it allocates jobs to cores at run time (rather than fixing them) so can use multi-core as well as GPU but it can't currently use GPU even in ICS. It depends how long it takes Google to implement renderscript vs opencl.
* RenderScript - http://developer.android.com/guide/topics/renderscript/index.html OpenCL alternative available now? Ziilabs has opencl running. Renderscript seems to be nicer in that it allocates jobs to cores at run time (rather than fixing them) so can use multi-core as well as GPU but it can't currently use GPU even in ICS. It depends how long it takes Google to implement renderscript vs opencl. Ziilabs only does opencl for their chips I think....
* Integration with Kinnect? Probably need a rooted tablet
* Integration with Kinnect? Probably need a rooted tablet



Revision as of 02:23, 12 December 2011

Contact

My mobile phone number can be found in my babbage share


Interests

  • Reverse engineering the laser cutter software
  • nodejs based social thingmy
  • Augmented Reality
  • Human-computer interface/wearable computers
  • Random silly projects
  • Cutting Stuff with lasers
  • Odd low-level security software
  • Machine Learning
  • Weird Governance schemes
  • Shiny things
  • Viruses/synthetic biology
  • Chemistry

Android Robotics

See cellbots for current work.

Why

Android phones/tablets will get stupidly cheap in the future. They also have a bunch of sensors/wireless comms and the ability to connect to random micro-controller based usb devices. They also have GPUs to give a bunch of parallel processing power for a low price, althought that can't be accessed nicely at the moment.

They do compete somewhat with raspberry pis (raspberry pis being stripped down phones without the sensors/displays etc). I expect two ecosystems will emerge, with android phones and the OS being used for robots that need comms and lots of phone functionality, with micro controllers being used as for autonomic procedures and low latency apps. Raspberry PI and rooted phones with non-android roms will be used for situations where you need lots of processing power close to the metal.

Things to do

  • Something like OpenCV for android- preferably taking advantage of OpenGL (and openCL if/it comes out)
  • Check the possibility of flashing the arduino/microcontroller attached to the android phone over the ADK link (would allow the phone to upload different low latency programs dependent upon task).
  • Implement opencl for android? If so what and how... NDK, would that be cross platform?

Things to investigate

  • Rosjava - http://code.google.com/p/rosjava/
  • RenderScript - http://developer.android.com/guide/topics/renderscript/index.html OpenCL alternative available now? Ziilabs has opencl running. Renderscript seems to be nicer in that it allocates jobs to cores at run time (rather than fixing them) so can use multi-core as well as GPU but it can't currently use GPU even in ICS. It depends how long it takes Google to implement renderscript vs opencl. Ziilabs only does opencl for their chips I think....
  • Integration with Kinnect? Probably need a rooted tablet

Work in progress tutorial on inkscape

It is a bit of a pain in the ass to get inkscape to output something useful to laser cut if you are doing anything marginally complex.

Trace Bitmap is your friend

  1. Use A4 size. Some people swear by this to get the dimensions right.
  2. Objects such as Text are not exported. Convert them to paths Paths->Object to paths.
  3. Different bits of the svg are not aligned correctly. Select all then Path-> Combine to make it all one object. Then use a dxf editing program to put the different bits of the object in different layers. As the laser cutting software is not the best for doing this.