Adobe Flash -> Bluetooth USB ... (wireless) ... BlueSMiRF Silver -> Serial LCD

Hi everyone,

I'd like to know if it's possible to control a "Serial Graphic LCD 128x64" through Bluetooth using an Adobe Flash interface (PC), without arduino. Something like:

Adobe Flash -> Bluetooth USB ... (wireless) ... BlueSMiRF Silver -> Serial LCD

My goal is to have a countdown timer in the upper part of the display and use the lower part to send messages. The purpose is to use this on stage, in conferences, so the speaker can see how much time he has left and receive discrete messages from backstage.

Thank you all...

without arduino

Maybe you should ask this at your local Chevy dealer. They are as likely to help with non-Chevy questions as we are with non-Arduino questions.

I understand your point, but the thing is that arduino itself isn't really necessary here (I think), and all the other components are normally used with arduino, so can someone help me??

but the thing is that arduino itself isn't really necessary here

Well, I guess I would have to disagree with you. Something needs to send commands to the BlueSmirf silver to make it pair with the USB device. The LCD won't do that.

The LCD receives TTL serial signals, and the Bluesmirf acts like a serial cable, converting bluetooth signals to serial (TTL also), doesn´t it?

the Bluesmirf acts like a serial cable, converting bluetooth signals to serial (TTL also), doesn´t it?

Once it is commanded to, yes.

Ok you win, I need arduino (I know) but the "final product" don't (once again, I think), I'm not saying I don't want to use it, I just want the final product to be as simple and cheap as possible.
So, can you guide me, please?

So, can you guide me, please?

No. You have unrealistic expectations.

I will rewrite it:

Can anyone openminded help me out (with or without arduino)?

P.S.: I don't have the final solution, thats why I asked for guidance, if my initial solution didn't include arduino it's my bad, just ignorance, but if it's actually really necessary then I'll use it, of course. It's sad that sometimes arrogance gets in the way, for no reason.

but if it's actually really necessary then I'll use it

The BlueSmirf is a dumb device. It just sits there doing nothing, until some controller MAKES it do something.

Being open-minded or close-minded has nothing to do with that simple fact.

Arrogance was never even a factor.

You keep saying, childishly, "Yeah, but I don't want to face reality".

If you go and do some research, instead of just posting rubish and wasting my time and the time of someone that have to read all your frustration before reading something useful, you’ll find that once configured the BlueSMiRF just needs a TTL serial stream on Rx and it will transmit it through bluetooth to a PC for example, no arduino needed. So what is your problem? Frustation? If you don’t want to help stay out and stop filling this topic with random quotations just to prove (wrongly) that your middle name is Arduino. Seriously, I don’t understand your aggressive position from the beginning… one advice, go outside and go see the sun, relax.

Once again, is there someone who can really help me and want to discuss it normally?

one advice, go outside and go see the sun, relax.

I'd love to but it's raining.

One last comment, and then I'll leave you alone.

once configured the BlueSMiRF just needs a TTL serial stream on Rx and it will transmit it through bluetooth to a PC for example, no arduino needed.

OK. Fine. But, that configuration needs to be performed EVERY time the BlueSmirf is powered up. What is going to perform that configuration, if not an Arduino?

Good luck with your project, however you end up accomplishing it.

I know this is an old thread, sorry I'm so late to the game.

I won't bother commenting on how pointless and unhelpful the above conversation was, other than to say that I found this thread while searching for advice on how to do the same thing as Mendesrr. How disappointing that this was how a request for guidance was received. Sigh. For the benefit of future Google searchers, here is how you interface with a BlueSmirf, (sort of) without Arduino:

Hardware/software used:

  • TrendNet TBW-106UB bluetooth dongle (Trendnet)
  • BlueSmirf Gold (BlueSmirf Gold)
  • OpenSegment Serial LED Seven Segment display (OpenSegment) [could be any serial device]
  • Power source (such as this thing)
  • Laptop running windows 10 with Arduino IDE installed (ver. 1.6.8 ), and the BlueSoleil package (included with the Trendnet dongle) or just figure it out with Windows.

How to communicate between devices:

  1. The Trendnet dongle comes with a "BlueSoleil Space" software package. This helps to interface the dongle with the computer. It is probably not needed, and you could do this through windows. I will describe these steps with BlueSoleil instead of Windows' interface since it's how I did it. (When I was first trying to figure this out, I did connect directly to an XP laptop without BlueSoleil.) Plug in your dongle and make sure it works with your computer. You could setup a connection to a bluetooth speaker or phone to test it out.

  2. Solder wires to Vcc, GND, Rx and Tx on the BlueSmirf. Connect Rx and Tx together temporarily. Connect Vss to 5v and Gnd to GND. I use an Adafruit PowerBoost 1000 Charger and a Lipo to power my setup via battery or USB (not required, could be any power source). The Red LED on the BlueSmirf should blink twice a second.

Note: Sparkfun/Roving Networks says the BlueSmirf is only in Config mode for 60 seconds on startup. I did not find this to be the case, and found I could enter command mode at any time.

  1. Find the BlueSmirf in the BlueSoleil software and pair to it. Then, using the "Serial" icon along the top (third from left in my version), connect to the bluetooth serial port (first you pair with it, then you connect to its serial port). In my case it says this is COM5. Your BlueSmirf should show a green LED when connected.

  2. Open Arduino IDE. Go to Tools/ and select the same port as the bluetooth serial port (in my case, again, COM5). Then open the Serial Monitor.

  3. Set the Baud to 115200 (the default of the BlueSmirf), and the line ending type (next to baud) to "no line ending".

  4. Type "$$$" (all commands are entered with no quotes) into the command line and press enter. The red LED on the BlueSmirf will start to blink fast, indicating it is in command mode now.

  5. From command mode you change settings of the BlueSmirf using commands from the manual sparkfun provides. Make sure to change line ending type back to "newline" before entering commands. You can enter a "D" to see a list of the current settings. Type "E" to see even more.

  6. From here, I set baud to 9600 with the command "SU, 96", because my display operates best at 9600. The BlueSmirf will print "AOK" when a setting has been changed. Other settings allow you to change the name of your device ("SN, MYDEVICE"), restore to factory defaults ("SF, 1"), etc., among other things. If you change the baud, you will need to reconnect in Arduino in the new baud after power is cycled (commands take effect after power cycling). If you mess things up and can't reconnect, there is a way to hard reset the BlueSmirf tying certain pins to ground. Its discussed in the manual. (Manual)

Note: Setting the config timer to zero ("ST, 0") actually makes it so you can't enter command mode. Sparkfun implies in their writeup that "ST, 0" makes it so that there is no timer and you can enter command mode at any time ("Another handy command, if you’re lazy like me, is ST,0, which turns the config timer off"). This is not true. You will be locked out of config mode and need to do a hard reset to factory defaults if you do this (i did this). What you really want is "ST, 255" for continuous config mode. (Sparkfun writeup)

  1. When you're done with settings, power everything off. Disconnect Rx and Tx from each other and plug Tx into your display. Turn everything back on, and connect back up to the BlueSmirf using BlueSoleil or Windows (or OSX). Once a connection is established, back in the Arduino IDE, you should be able to type commands for your display directly into the command line for the display to process. For example, my display (the Sparkfun OpenSegment LED Seven Segment display) requires the line ending type to be set to "no line ending" (because it looks for line ending characters when it parses instructions). For example, to clear my screen, I type "v" and hit enter, and to print a 1, I type "1" and press enter, etc.

----------------Going Further----------------------------

That should give future searchers some help in the right direction. In the end what I actually wanted to do is send commands from an Arduino (hey look an Arduino-specific application!!) to a stand-alone LED sign over the BlueSmirf. Actually I wanted to do it while also using the same bluetooth dongle to interface with a PS3 handheld controller. It took a while, but I finally figured it out.

I used an Arduino Mega 2560 with a USB Host Shield 2.0 from Circuits@home (Here), the same bluetooth dongle, BlueSmirf, and display. By plugging the Bluetooth dongle into the USB host shield, the Arduino could communicate over bluetooth. At first I couldn't get the Arduino to find the BlueSmirf and connect.

After a lot of trial and error, I found that by putting the BlueSmirf in pair mode ("SM, 6"), setting authentication to open mode ("SA, 0"), and by setting the remote bluetooth address to that of the dongle ("SR, bluetooth hex address"), I could force the BlueSmirf to look for and connect to the USB Host Shield on startup instead of the other way around. This allowed a connection to be established and everything to just work. I used the bluetooth/SPP example from the host shield library to get started, but it's really easy to integrate into other Arduino sketches (the host shield library even has an SPPMulti example for combining different bluetooth devices. You basically just set up a serial connection to your display as you would any other serial connection and let the BlueSmirf do the connecting by itself.

Here are my BlueSmirf settings for making everything work with the USB Host Shield (obtained by pressing "D" and then "E" in the serial terminal during command mode):

CMD
***Settings***
BTA=0006667ADCAF
BTName=VACDISPLAY
Baudrt=9600
Mode  =Pair
Authen=0
PinCod=1234
Bonded=0
Rem=001583E4345A (!!the address of your own dongle here!!)
***ADVANCED Settings***
SrvName= SPP
SrvClass=0000
DevClass=1F00
InqWindw=0100
PagWindw=0100
CfgTimer=255
StatuStr=NULL
HidFlags=200
DTRtimer=8
KeySwapr=0

Anyway, I hope this rambling post helps someone stumbling around the internet searching this issue.

Blake

P.S. I suggest the name of this thread be changed to "Computer -> Bluetooth USB ... (wireless) ... BlueSMiRF Silver -> Serial LCD" for clarity since none of this thread deals with Adobe Flash.

Where does the Adobe Flash come into play in your 'solution'? Did I miss it?

P.S. I suggest the name of this thread be changed to "Computer -> Bluetooth USB ... (wireless) ... BlueSMiRF Silver -> Serial LCD" for clarity since none of this thread deals with Adobe Flash.

Well.. maybe YOUR post/reply doesnt.. but the (old) original post did... and from what I gather.. is what was to be used as the GUI/front end.. (in which you suggest to use your serial monitor as an interface)

Adobe Flash itself has -no way- to communicate with the serial comm port on a PC.. (by default)

(I have used a PHP script to pass data from a Flash app to a php script.. then out the serial comm port to the Arduino)..

*but being on Windows this is a one way communication thing (Linux/MAC do not have this limitation from my understanding)

If you took out the Arduino, and replaced it with a bluetooth module for the PC.... you may be able to send the data there and hence out to your other bluetooth paired device?

(not sure myself.. I have never connected a usb/bluetooth module to my computer before...unless a wirless mouse adapter counts!)

xl97:
Well.. maybe YOUR post/reply doesnt.. but the (old) original post did... and from what I gather.. is what was to be used as the GUI/front end.. (in which you suggest to use your serial monitor as an interface)

You're right, sorry, I was mostly countering the several inaccurate posts about the BlueSmirf device and unrealistic expectations, which honestly seemed like the crucial part given that OP's original desire was to "have a countdown timer... to use this on stage, in conferences, so the speaker can see how much time he has left and receive discrete messages from backstage." Also, for the record, I never offered a "solution" (nor did OP ask for one), simply guidance on how to interface with a BlueSmirf.

Seemed like Adobe Flash was just a guess at what might work, and Arduino's serial monitor would basically accomplish this (if somewhat simplistically). OP asked for open-minded advice.

As I was mainly interested in the BlueSmirf part (the whole reason for my visit to this thread), I didn't personally make something similar to OP's project. However! If I was going to do this project, I would probably try to use Processing , which can communicate with COM ports, is of similar programming structure to Arduino, and can export to a standalone program. I haven't done it (there are many processing-->bluetooth dongle google search results), but I would expect that once the bluetooth serial connection is made (which opens a bluetooth COM port), it would simply be a matter of using Processing's Serial commands to initiate communication (in which you specify a COM port as one of the parameters).

Haven't tried it, but I imagine this post would still qualify as providing some "Project Guidance" if OP was still working on this five-year-old application.

Blake