Go Down

Topic: Where to advertise my android bluetooth interface software? (Read 7947 times) previous topic - next topic

Yes, I have to think of making it basic and fundamental.

when you press button1 it sends b1 and that's pretty simple.
What you are suggesting would in any case require that you program it to send what you wanted it to send so I don't think being able to program the device to send different things when you pressed the buttons would make it simpler.

Having events like button pressed and button released doesn't work very well with a serial link because you would have to send a command which meant 'button one is now pressed' and then send another command with 'button one is now released' but because of the nature of sending text across a serial link and what with the timing issues of the whole serial setup I can't see that working. In any case that isn't the way I've designed BTInterface.

I want something that is easy and fun to use, in the same spirit as the Arduino :)

My app is very simple, press buttons, configure screens. You might find that ArduinoCommander has more complex functionality that might be better suited to accurate timing.

BTInterface is the interface, just that, its not supposed to be the brain :)

I've uploaded a new version of BTInterface.

I've taken your remarks to heart.

Firstly I've added the ability to choose the annoying sound effects that you wish to play on connection and disconnection of the Bluetooth module.
You can also choose '0' (zero) to have no sound effects and as these (16) sound effects are the same ones that you get by sending the sfx commands (sfx1 sfx2 sfx16) then this doubles up as a good place to try out the sound effects (press the little speaker icons to play the sounds).

Secondly I have added the ability for the micro controller programmer to determine what string is sent when the user presses a button.
This can, like the sound effects, be chosen in the settings (menu - settings) or it can also be done in code if the micro controller sends the string b1send   b2send   b3send or b4send so for example if when I press b1 I want the string 'activate' to be sent (instead of the string 'b1') then I'd program the b1 button by either doing it in the settings or sending the command over the serial connection:
b1send activate

Then each time I press the b1 button it will send that word 'activate' which you can see if you press it a few times then look at the log in the terminal screen.

Please note that I've only done this for the four user buttons at the moment as the game pad buttons are, well, game pad buttons :) so remain as up, down, left, right & fire

I also did a considerable bit of work on the help system which is like a complete website inside the app :)

Please let me know what you think and keep the suggestions coming.... and please join my forum :) no-one's joined my forum yet ... well, only one has ... :(

Quick update.

I have uploaded a new version that allows tablet owners to install it.

Plus I have figured out how to get it to work with PCs and Laptops!




I've just installed the beta on my phone. I'll have a play with it and provide feedback.

1) if you configure the screen and commands from the uC then do you have to do this every time? I.e settings lost and each connected device configures the connected BTInterface screens?

2) Is any particular version of Android required? I'd like to install in a cheap phone with PAYG SIM to provide mobile remote interface with the SMD ability.

It looks promisimg with some feedback to mature. :-)


Feb 26, 2013, 10:39 am Last Edit: Feb 26, 2013, 10:44 am by IanMcRV Reason: 1
Thanks tack! that's exactly what I need.

It requires v1.6 and above which is Donut according to Wikipedia Android Version history so it should be able to work with some really old devices :)

Yes you need to configure the controls each time you run BTInterface so you'd probably write small functions/subroutines to do that and then you can further configure the controls on the fly.

When you first connect BTInterface sends the string


your sketch would be looking out for that to know that its connected so you might write (pseudo code)

if command = btinterface then call screenconfig1

if command = b1 then someone pressed button1 so call b1Sub

if command =  sb with a number between 0 and 100 (slidebutton) then someone has altered the value of the slidebar
(I believe I uploaded a sketch on my forum at btinterface.com that shows how to read and deal with this)

screen1  // change to screen1 (the one with the controls)
hide some buttons
pad hide //hide the gamepad buttons
change some button text
write some text in a label
set the slidebar to position 50
say Ok the screen is configured now. //use the text to speech engine to speak the words 'Ok the screen is configured now.'
sms 0123456789 This is a text from your doohickey just to let you know that screen1 is configured and ready
sfx10 //play a Bell sound effect
var screenstate = 1

if screenstate = 1 then turn on the motor
change b1 text to 'Motor Off'

etc .etc. etc. etc .

It's tremendous fun :)

See my link about how to get it to work with a PC / Laptop just for trying it out :)

V 1.06 is now out.

A search on google play store for arduino bluetooth finds it straight away :)

It is still called BTInterface but I found that a lot more people can find it if I have words like arduino and bluetooth in the title.

I have re-designed the way in which BTInterface processes commands.

This is still Beta and I have a ways to go before it is perfect so please keep that in mind as you try it out and please keep those suggestions for improvements coming.



I have just installed the BTInterface, but I can't find anywhere to stop the annoying sound when connecting/disconnecting

Other than that it was very easy to get working. I use a HC-06 dongle

Go Up