Thursday, September 17, 2015

Configuring and Connecting HC-05 Bluetooth to Mindwave edited by coty



Here's a selfie of me and the mindwave. LOL

I realised that there are no proper tutorials that address the 100000000000 problems I had with the module. People actually took weeks to make this work. (they said so in their blogs and in forums)




Get that thang into AT MODE first

BASIC CONFIG
///HOW TO CONNECT HC-05 TO AT MODE///
//STATE and EN(KEY, on some boards) not necessary to hook them up//

1º Connect TX with 10,RX with 11,VCC(3.3v) (I used 5v also ok) and GND
2º Load the program in Arduino

Model ZS-040
1º Push button in bluetooth module and hold (DO NOT LET GO)
2º Disconnect VCC of bluetooth module and pluck it back in
3º Release button (OK LET GO) - Led must flash very slow. about 2 secs interval Now you are in AT MODE
4º Reset Arduino with reset button
5º Start the Monitor Serial, select "Both NL & CR"
6º Enter command "AT" and Enter. You must receive OK.

MINDWAVE configuration

Get the unique identifier from the Bluetooth devices: 74e5,43,9c5fe8

Problems I encountered
//make sure its at 3.3V instead of 5V, the hc05 can't handle it.

//RX-RX, TX-TX for configuring (in this case its pin 10 & 11)
//RX-TX, TX-RX only if looking out for output
Honestly, just switch it around until you get something out of the serial monitor. Different sites and trial and errors are telling me different things.

//mindwave ID - remove semicolons and replace with commas. make sure its 4,2,6 digits

//To pair with Mindwave, press reset button on board then switch on Mindwave after like 4 secs. Push the knob on the mindwave up to pair it. You don't need to push up the knob the second time you pair it, it would connect automatically. BUT, if you reboot everything (ie. plug out the USB and plug it back in, the connection is automatically severed and you have to pair it again. Like push the knob.)

The led should turn solid blue and shouldn't blink. Check your Serial monitor and make sure its set at 57600 baud rate, Both NL & CR//

//Once connected, if you switch between baud rates in the serial monitor your connection will be cut off.
Solution: restart it again.//

//If you cannot pair the mindwave automatically, it is probably the password problem.
Solution: Try configuring it to either 1234 or 0000. I changed mine to 0000 and it worked.//

//IF YOU GET THIS ERROR:
Basically you have trouble uploading the new sketch(it takes forever) unto the board and you get this error at the console.
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer

Solution: Unplug the VCC power wire Hc-05 from the board and upload the sketch. Once the upload is done, plug it back in. voila.//


CURRENT PROBLEM
//COM PORT ERROR IN USE although there's totally nothing using it here's a link to a forum that explained my problem but never really solved it.
http://forum.arduino.cc/index.php?topic=134039.0


I got this problem because my PC automatically shuts down the port after awhile, stopping the board from receiving any data from the mindwave. It would only send about like 6 lines of information then just completely shuts off the port. 

Solution: not yet found but a lot of them are blaming something in the PC or the USB for shutting it down. I tried to do this:

Write "regedit" to start/run and open it.
At opening window you will see a group of folders left side.
Choose   HKEY_LOCAL_MACHINE \ SYSTEM \ Curr entControlSet \ Control \ Windows \ ErrorMode

Right click to ErrorMode and open.
Than change the number (0) to (2)

(If its already (2) dont make any change, this means
your problem is not an USB connection problem so
my method will not help you to fix this problem)

Restart the computer.

First connect your Arduino to USB, than open the IDE software.
Load your sketch.

But it still doesn't work. My com keeps shutting off the port.//
_______________________________________________________________________________
EXTRA NOTES


POOR_SIGNAL Quality:
this unsigned one-byte integer value describes how poor the signal measured by the
thinkGear is. It ranges in value from 0 to 200. Any non-zero value indicates that some sort
of noise contamination is detected. the higher the number, the more noise is detected.

Basically, the lower the number , the better.

Attention:
Determines the case in the code based on what is received

Time since last packet:
Millis (how much time has lapsed since last reading.

Info from: http://www.uninettunouniversity.net/allegati/1/CommonFiles/Eventi/it/30/705/Brain%20Computer%20Interface%20System.pdf
_______________________________________________________________________________

//Sketch to upload to MEGA for Bluetooth//

//hit Enter after typing AT

#include <SoftwareSerial.h>
#define rxPin 10
#define txPin 11
SoftwareSerial mySerial(rxPin, txPin); // RX, TX
char myChar ;
void setup() {
  Serial.begin(9600);
  Serial.println("AT");
  mySerial.begin(38400);
  mySerial.println("AT");
}
void loop() {
  while (mySerial.available()) {
    myChar = mySerial.read();
    Serial.print(myChar);
  }
 while (Serial.available()) {
    myChar = Serial.read();
    Serial.print(myChar); //echo
    mySerial.print(myChar);
  }
}

https://www.pantechsolutions.net/interfacing-mindwave-mobile-with-arduino
http://blog.theinventorhouse.org/como-conectar-bluetooth-hc-05-arduino-y-diadema-mindwave-neurosky/

my brain. is a hurting.

Wednesday, July 1, 2015

WIFI Configure Baud rate to 38400 instead of 9600 for both XBEES

http://cpham.perso.univ-pau.fr/WSN/XBee.html

Baud rate lists for ATBD
1 = 2400bps
2 = 4800bps
3 = 9600bps
4 = 19200bps
5 = 38400bps
6 = 57600 bps
7 = 115200 bps
http://forums.trossenrobotics.com/tutorials/how-to-diy-128/xbee-basics-3259/


These two are very reliable tutorials.

ATBD5
OK
ATWR (to save and lock in)
OK



And Saiful told me that I could use my powerbank to power my boards HAHAH

Tuesday, February 10, 2015

Final presentation

Post 52

My final post on this blog, for this project.

I had food poisoning so I had to go through alot of complications during my presentation.

Like the screen decided to not want to extend properly.

Feedback:
- Focus on branding, make it big. Jazmi said.
- Think of a way to make it cost efficient

Thursday, February 5, 2015

Graphs of my emotional state and progress

Post 51

Happiness level: -20

I don't have enough time, should have asked for the extra one week I lost from being hospitalized. And tomorrow is the submission.

I can't get my wifi to work. It's hard.
I can't connect my pages together.
Jam's tutorial wasn't what I was looking for. *cries

Today I spent my day at the IIS setting up for tomorrow, and taking a simple walk through video. At least I progressed somewhat.


August 2014's progress was really high because it was still in pre-planning mode. I was ambitious and filled with energy.

October 2014 was a holiday, hence the very little progress and high emotional state.

And in November 2014, my progress shot up but I was very very emotionally down because that was when I encountered all the real problems.

Toward the end my emotional state was really low and had little progress. Due to my fever and etc.


Tuesday, February 3, 2015

Got the easy part done - WIFI ARDUINO XBEE LILYPAD

Post 50

Happiness Level: 6

I have to admit, I have been avoiding this project for quite sometime ever since my Dengue fever.
But I did double check the connection with the wifi and it works fine.

To make life easier, and to clear up what the tutorial failed to mention, (which resulted me and Yee Siang into panic mode) is that the +++ command is automatic, but the other commands are not.

Which means after typing ATMY or any other command, you have to press enter.

If not you would be like me, waiting for the automatic OK response for like forever.

I used two computers to send the messages, my desktop and my laptop and configured the 2 xbees by myself, with the help of the tutorial.

This is the CoolTerm on my desktop which acts as the SENDER,


And the xbee,



And this is the CoolTerm (receiver) on my laptop.


And the Xbee.




One thing I noticed though, I cannot send messages from the receiver to the sender. Only the Glove Xbee could send the info, because I set it that way, There's not back and forth communication.
I don't think that would be a worry though, my project does not require back and forth comm.

Now to link it with Processing.
I'm not excited.

More things to do:
- Wait for Jam Long to reply me on the tutorial he had which could fix my unlinkable pages
- Set the invoke for the delay thing to restart. (probably only I would understand what I'm typing)

An update on the logistics too,
Looks like I won't be needing an arch or stage mount thing, the ceiling at Publika blackbox would suffice.
Sad that nobody wants to be near my installation because of its loudness.

As for the unity and the delay matter,
David told me that there is no such thing as 'YEILD' for unity C# and that I should only use INVOKE.


Wednesday, January 14, 2015

Alpha Test with Level 4

Post 49

Happiness level : 8

Would give it a 10 if I had more help moving my junk up two flights of stairs.

Lecturers that gave their comments as well: Daniel Chong, Jiawern Kok, Jazmi Jamal, Sweii, Kelvin, Jam Long



You can see the band changing from green to blue!

So, based on my very unique survey, I have collected a number of drawings of faces which are pretty much explanatory.


Following things to improve:
- Make the differences wider between idle mode and active mode
- the tutorial isn't obvious enough
- get the wifi working

Edit//
My components from Singapore has finally arrived! Yeay!