How to start Android / iOS accessory development? - android

I am trying to get involved with programming accessories to interface with either Android or iOS devices. I'm a programmer with no computer engineering / electrical engineering background and am at a loss as to how to begin.
Ultimately I want to build something like this: an ECG for the iPhone or Android. What is he attaching to the iPhone? Does it connect via wifi? What type of device is it? What kind of background do I need? How do I start? Any pointers appreciated it!
I understand that things like Arduino exist that can interface with Android, but I'm not sure if that's the correct direction to go in.
http://developer.android.com/guide/topics/usb/adk.html
http://www.amarino-toolkit.net/

That is a proprietary hardware probably using near field communication - it will be difficult to develop an electronic hardware without learning basic electronics. To start with you can get a IOIO for Android which will let you interface your phone to external hardware. It is similar to Arduin0/Amarino, but you will be at ease with it if you already know Java. As far as electronics you can start learning that as well.
Check the official docs to know more about IOIO.

Related

How to access GPIO/SPI/I2C from NDK on Android (not Android Things)

I'm doing some prototyping with Android on Raspberry Pi 3B+ with Lineage OS (https://konstakang.com/devices/rpi3/LineageOS16.0/), which I think it's based on AOSP. Now I'm able to run a Hello Jni app with NDK. However, I need the access to GPIO/SPI/I2C interfaces from NDK to control sensors. The C libraries that I used for Raspberry Pi OS, wiringPi and PIGPIO, do not support Android out of the box.
I kinda understand how to access GPIO after watching this course: https://www.coursera.org/learn/internet-of-things-sensing-actuation/home/week/2. Based on my understanding, it's basically find the correct file for GPIO and change the value to control the interface.
However, even though I understand the concept that SPI is based on GPIO, but I couldn't figure out which file I need to access to control the interface, and how to deal with the 4-pin system for SPI instead of just interacting with 1 pin for GPIO.
As an Android or/and embedded dev newbie, I assume understanding how these interfaces work under the hood on Android would be helpful as well but I'm struggling to find documentation or code examples.
Any help on how GPIO/SPI/I2C works in Android, or how to enable them in RPi running Android is appreciated!

Android Serial Connection

I looked around and I have a hard time finding an answer to my question. We have an app written with Xamarin. I see SerialPort class being exposed. Not sure what it means in terms of Android. We will be using this application with custom made tablets in our device. We can have usb 3.0s but our hardware team would like to implement UART or RS 232 ports instead. We have a microcontroller which will communiucate with our tablet. Is this even possible or are we stuck witb adding a usb/serial converter in the middle. Thanks for the insight

Android Multiplayer Game with Socket Programming

I have been searching if it is possible to develop a multiplayer game with socket programming on android platform over WiFi but I couldn't come across with a certain answer.
As I found out, there are ServerSocket and Socket classes in android sdk.
Can I use those to establish communication between 2 devices, over WiFi?
Also if I can make 2 devices connected somehow, how should I combine this with my game architecture?
Any advice will greatly appreciated. This is my first try on Android and Socket Programming. I heard about Skiller, WiFi Direct and some other stuffs but It has to be done with Sockets.
I am actually from Skiller and I will try to address at least some of your points:
Why do you need sockets for your game? It will help a lot if you will explain what exactly you are trying to achieve. Maybe there are other, less complicated, ways you can achieve the same thing. And integrating the communication solution with your game logic relies directly on that.
Directly connecting two devices, whether they are connected using wifi or 3G is a very complicated task. In order to do so you need to know the IPs of the devices and it varies from difficult (wifi - depends on the wifi you are connecting to) to almost impossible (3g - you can not see the ip of the device behind operators proxy) unless you implement couple different techniques or use intermediate servers to do that job. These solutions of course will cost you because of a hardware resources and the most important time resource. From my experience in that field I strongly recommend to use existing solutions if it matches your needs (and I am really trying to be objective ;))
Hope it helps to further investigate what you need for your game. If you want to check out Skiller SDK you are more than welcome to do that in our wiki: http://wiki.skiller-games.com/ or send an email to developers#skiller-games.com
Michael

Is it possible to use Android to control relays?

This isn't a highly technical (or specific) question. I just want to know if it is possible to use an android app to control 12V relays.
I want to use this running android:
http://www.mini-box.com/pico-SAM9G45-X
with this touchscreen attached:
http://www.mini-box.com/INNOLUX-7-TFT-with-touchscreen
I want to mount this in my car and write a simple android application that can be used to control my lighting in the car (via several 12V relays). I have a lot of background programming in many different languages, so I am not worried about the application part. However, I have very little experience using software to control hardware.
Any ideas for this would be great. Thanks!
First you'll need to get Android running on your Pico board. There are several releases of Android ported to Pico for you to play with here: http://arm.mini-box.com/index.php?title=Releases
Once you accomplish this, I recommend wiring up an ADK board to the pico and using that to interface with your relays. http://developer.android.com/guide/topics/usb/adk.html The most popular and widely documented ADK board designs are based on Arduino or PIC chips so if you have experience with either I don't think it will be too much trouble. Writing the application would entail writing a program on the ADK which listens for input from an Android app which you also create and reacts accordingly. There's a handful of good information you can find with google searches to help you out and also some dedicated discussion groups.
Alternatively, it may be possible to use the remaining unused pins on the Pico to talk to your relays. I don't know for certain though if the Android ports support this or not.
It should be a fun project to keep you busy for a couple weeks. Good luck, and be sure to write up some information on it if you get it working!
you can find so many relay boards which come with wifi and they have their own app. which you can install in your Android phone or PC or iphone(you can find a ios app for same board). and you can also modify apps according to your choice and there are products which come with input pins also so you can control lights or anything else using those input. you can check this product check this Android control realy and there are so many products available.

Porting Android

i want to have some knowledge on porting android on linux devices. I am a web and android developer but now i want to port android on some hardware which you could suggest is easy for the beginners to start with.
I don't feel like buying a mobile phone this time i want to make a mobile phone :)
Please help me achieve this goal.
regards
Abhishek Talwar
Well, what you're asking is pretty complex.
Do you want to BUILD your own cellphone from scratch?
This would take a lot of knowledge and development time. You could get some GSM development boards to experiment with that. Something like these:
http://www.sparkfun.com/search/results?term=gsm&what=products
You could get an Arduino and use one of the arduino linux ports. The arduino could handle the gsm module and an lcd screen.
This is extremely complicated though.
If its android porting you're interested in, I suggest just getting a mobile phone and then porting android to it. It WILL be complicated and you better get something you can easily develop for. Windows Mobile phones would be my suggestion as there are a lot of active programs to port android to those.

Categories

Resources