Forum Replies Created
-
AuthorPosts
-
BillMember
Yes, end would do you no good as it doesn’t free up RAM or free up the serial port, as it never really demands exclusive control anyway.
But if you are expecting different size structs with different ET objects, you can run into synchronization issues. If your receiver is expecting struct A but gets struct B, it will trash it as bad data.
I’ve been toying with the idea to allow user to ‘address’ structs in ET, giving you the ability to create multiple data sets that could be received, and reporting to the user which data set just came in. But since I haven’t seen many requests for this, it’s on the backburner.
BillMemberIt’s just to make the Arduino a bit more stable. If there’s not a need to go full speed then don’t/
BillMemberIt should be compatible, as it uses higher level functions of the Arduino IDE and isn’t hardware specific, except for the serial class thing. I may buy a SFE micro to test it….
Did you confirm it works without the library, just spending and receiving a single character?
BillMemberDoes it work between an Uno/nano and a micro? Either way?
BillMemberDoes it work between an Uno/nano and a micro? Either way?
BillMemberlast_message records what returns from the millis() function. So if you go lookup millis() in the reference pages:
http://arduino.cc/en/Reference/Millis
You see what it returns is a unsigned long. That is what you should declare it as.
BillMemberMichelterres,
The easiest way to to implement a ‘watchdog timer’ like Michael suggests. It’s simple, here in sudo-code:
//check and see if a data packet has come in.//This function only returns true when a new message has come inif(ET.receiveData()){last_message=mills()….}else if((millis() – last_message) >= 1000) {//this is true when no message has been received for 1 second.failsafe code hereIt is more intensive to implement a query system like you are thinking.BillMemberTroy replied to the notification email instead of posting here. His response:
I’ve had no issues using PIR sensors and LEDs with the MP3 player. That works as expected. It’s only when introducing a servo that operation goes awry. Perhaps the MP3 player simply isn’t compatible with the timing of servos, unless there is a modification I could do?
BillMemberFrom http://arduino.cc/en/Reference/SoftwareSerial
The library has the following known limitations:
If using multiple software serial ports, only one can receive data at a time.So it’s not my library, it’s a limitation of SoftwareSerial on Arduino.
BillMemberYou can implement this in your high level sketch. When this statement is true if(ET.receiveData()){ than a new update has come in. Use a variable to record the system time (millis()) right here.
Then, at the end of every loop (before the delay) compare the current system time with the last saved time. If the current time is 3 seconds larger, than set your relay values to LOW in the data structure. IF you need more help than this you will have to post your code.
Bill
BillMemberThe issue is not the library, it’s you trying to use a software serial port at the same times as creating a servo signal. Switch to using the hardware serial port on the Duemilanove (pins 0 and 1) and the problem should go away.
Running a servo requires precise timing. Using a software serial port interrupts timing on the Arduino. You can’t use both.
BillMemberI can’t help you much. Did you read through the reverse engineering blog at curious inventor? http://store.curiousinventor.com/guides/PS2
I can say that I agree with CI, uniformity around the different 3rd party vendors is horrible from what I’ve seen in comments from users over the years. They read the the bus at different times of the clock cycle, want different speeds, it’s ridiculous. It’s a wonder how they all worked on a PS2 to begin with.
BillMemberAll the hints I can give are in the troubleshooting guide. Have you tried that?
BillMembervestum
The troubleshooting guides has all the suggestions i got. Beyond that I’m out. Did you ever figure it out?
BillMemberTry all the troubleshooting steps, resistors, different voltages, etc.
-
AuthorPosts