Bluetooth and Inventor Electronic Kit


#1

I bought the Bluetooth Electronic Kit and haven’t been able to get the bluetooth/arduino model working. Here is what I have done:

  1. Downloaded the Bluetooth Makeblock app onto my smartphone (which runs Bluetooth 4). Note that the iOS Makeblock app requires Bluetooth 4.

  2. Downloaded ScratchBot and Arduino onto my computer.

  3. Connected the bluetooth module to Arduino board (port 5). Connected the battery pack to Arduino.

  4. Run the Makeblock App. Opened the Distance Measure. It says that it needs to update the firmware. It downloads the firmware and installs it. Arduino starts to beep and I turn off the buzzer with the white switch.

  5. When I now try to do something else with the app, it will say that I need to update firmware and connect with a peripheral.

  6. I’ve now tried to update firmware using Arduino program and using the usb cable. I don’t know which firmware I should be using of the several possibilities. Despite trying many of them, I haven’t been able to make any progress in getting bluetooth to work with Arduino. I’m not even sure what I should be doing.

Any help would be appreciated. Thanks,

-tom


#2

Tom,
I really hope that someone comes up with a solution to this issue. I have wasted several hundred dollars on make block kits, and have the same problem.


#3

I had similar issues in the past but did manage to get it working.

From my experience if the app says you need to upgrade your firmware, it means you don’t have the correct firmware on your board. I have never been able to update the firmware via the app.

You will need to find out the correct “firmware” to upload to your board. This will be dependant on which board you have and which bluetooth module you have. I think you should be able to get it working by uploading the correct “firmware” to your board and connecting to the bluetooth via the app. See their github https://github.com/Makeblock-official/Makeblock-Firmware

The word firmware is a bit misleading, this is not firmware to update your board and then continue to develop and upload new sketches to your board. The firmware is the sketch.

i hope this helps steer you in the right direction and that you eventually manage to get your robots working.


#4

Thanks.

Here is a question that I hope the MakeBlock customer service folks can answer. When the Bluetooth app asks to updgrade the firmware, exactly what is it doing? What is being upgraded and with what version? I’d like to know if the upgrade is the same upgrade that can be done with the usb cable, or is it a different program.

Also, when one does the upgrade, does one:

  1. Press the reset button on the Orion board before the upgrade,
  2. or press the reset button on the Orion board after the upgrade,
  3. Or both.

Lastly, does it matter if one powers down the board. When one turns power back on, is this the same as resetting the board?

I’m slowly figuring things out here, but this is like a black box to me (and I’m a computer programmer!).


#5

For the past 3 weeks I have tested my BT starter robot with Orion and Android-based tablet. I am trying to hone down the mysterious firmware upgrade needed–which I have written about in some other threads.

Based on my experiences, the firmware upgrade needed message that the android app puts up absolutely does not necessarily mean the correct sketch is not resident in the Orion/Arduino.To me it seems to mean that the app has sent a message via BT and has not received the response it is looking for. The app then assumes (incorrectly in a number of cases) that the proper sketch needs to be loaded.

Why do I believe this? Simple:
(1) Many times when I power up the Orion and the tablet, start up the app, and then make the BT connection, the controls on the app make the tank robot do what I want (go forward, reverse, make turns).
(2) Sometimes I get the message in question (firmware update needed); however, I do not re-upload the sketch. Instead I try other things to try to hone down the cause of the problem.

Thing I try (other than re-load the sketch–aka update the firmware) to get the tank to respond to the BT app:

(1) Make sure the tablet’s BT is turned on.
(2) Press the reset buttons on the Orion and the BT module.
(3) Power down the tablet, power it back up, turn the BT on, restart the app, reconnect.

I don’t understand BT communication, but my guess is that there is some handshaking protocol that is supposed to happen. Sometimes it doesn’t happen.

I don’t have an iDevice or smartphone, but perhaps my experiences will be helpful. By the way, I have been trying to watch the blue light on the BT module to see if there is some state (e.g., blinking at a certain rate) that indicates when a proper handshake has been successful (or will be successful).

I should mention, that I do this without the usb connected.

I hope this helps.

Steve

PS: The above is not inconsistent with what hbohosian (and others) have said. The message in question MIGHT mean that the sketch to make the robot run from the app was not uploaded. But if you successfully uploaded it once and it worked, as long as you didn’t change the sketch, I believe it it is a BT communication issue.

I have outlined steps elsewhere to test BT communication with a BT terminal. (Sorry, I only mentioned the Android-based app I used because I don’t have an iDevice or smartphone. I have also outlined steps to test the motor by using one of the basic MakeBlock example sketches.
I recommend testing those two parts of your system.

Once that works, using the usb cable, upload the correct sketch designed either for Android apps or for iDevice apps. Unplug the usb cable and switch it over to battery power because usb power (in my experience) is not enough to drive motors.

By the way, I have addressed the avrdude error messages elsewhere, too. I am pretty sure I suggest a solution–and its not to use an older version of the Arduino IDE.
Hope this helps.

Steve


Starter bluetooth version out of the box
#6

Thanks Steve. This does help.

Today, I’ve figures out how to upload sketches via Arduino IDE (and via usb) onto Orion and to get the electronics unit/robot to work.

I’ve found that to use mblock after having uploaded Arduino sketches, I need to upgrade the firmware from within mblock. Then mblock will work.

Using mblock, and the makeblock extensions, I have been unable to export the values of the ultrasonic sensor to the LED display. I can write an Arduino program that does this. So either I don’t understand something about mblock, or there is an error in the mblock program.

I’ve found that turning off Arduino and then turning it back on does nothing to change the loaded sketch. I’ve also found that I can upgrade the firmware via Bluetooth if all the modules (except Bluetooth) are disconnected from Orion. I have found I need to reset Orion a couple of times, and sometimes turn the power off, before the device is found and the firmware is downloaded using Bluetooth.

I have been able to have the Ultrasonic Sensor to talk via the Bluetooth app, and display distance data on the iPhone.

Do you know what the LED display module on the BT app does? I would think it would control the LED display device when it is connected to Orion, but I only get zeros, or some other random digits (depending on what I type in – so the BT app is talking to it). The time, when checked, will be displayed on the BT app, but not the LED display.


#7

Steve, Also, thanks for pointing out that there is reset button on the Bluetooth module. I hadn’t noticed that – it’s not in the documentation, as far as I can tell.


#8