Legacy Forum: Preserving Nearly 20 Years of Community History - A Time Capsule of Discussions, Memories, and Shared Experiences.

changing the code in the MR-C3024

Hitec robotics including ROBONOVA humanoid, HSR-8498HB servos, MR C-3024 Controllers and RoboBasic
223 postsPage 8 of 151 ... 5, 6, 7, 8, 9, 10, 11 ... 15
223 postsPage 8 of 151 ... 5, 6, 7, 8, 9, 10, 11 ... 15

Post by i-Bot » Sun Jan 07, 2007 2:55 pm

Post by i-Bot
Sun Jan 07, 2007 2:55 pm

I had not tried freeloader till today. I did not get it working, but I did create a situation whwre the C3024 would continually stream E0 as you describe.

I do not yet understand why this happens.

This does seem to throw my loader off track. This appears to be because there are lots of E0 buffered somewhere. Also you will see at the end of my download code a note saying I should check the RN responce for 21 or 40. Also I do not check the characters from the RN initial sequence. Since I do not do this my program is sending in response to the E0.

I will look to fix this, but for now I suggest you start clean with empty buffers and the RN switched off. start Roboflash and do not power on RN until after OK on download.

I don't think you are doorstop yet. RN is just a bit dazed **?***@**

Let me know how it goes.
I had not tried freeloader till today. I did not get it working, but I did create a situation whwre the C3024 would continually stream E0 as you describe.

I do not yet understand why this happens.

This does seem to throw my loader off track. This appears to be because there are lots of E0 buffered somewhere. Also you will see at the end of my download code a note saying I should check the RN responce for 21 or 40. Also I do not check the characters from the RN initial sequence. Since I do not do this my program is sending in response to the E0.

I will look to fix this, but for now I suggest you start clean with empty buffers and the RN switched off. start Roboflash and do not power on RN until after OK on download.

I don't think you are doorstop yet. RN is just a bit dazed **?***@**

Let me know how it goes.
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am

Post by i-Bot » Sun Jan 07, 2007 7:11 pm

Post by i-Bot
Sun Jan 07, 2007 7:11 pm

I looked at the code loaded by freeloader and it is not correct, though the checksum is OK. I can only think the E0 comes from the running of the corrupted application code.

Try the approach above to avoid the buffers filling with E0 before running roboflash.
I looked at the code loaded by freeloader and it is not correct, though the checksum is OK. I can only think the E0 comes from the running of the corrupted application code.

Try the approach above to avoid the buffers filling with E0 before running roboflash.
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am

Post by DanAlbert » Mon Jan 08, 2007 3:40 am

Post by DanAlbert
Mon Jan 08, 2007 3:40 am

It may some corruption on my reading of the bin file.
I will take a look at it and make some changes.

Thanks for the feedback.

I do check for 0x21 or 0x40 and retransmit the block if the checksum is bad..

Dan
It may some corruption on my reading of the bin file.
I will take a look at it and make some changes.

Thanks for the feedback.

I do check for 0x21 or 0x40 and retransmit the block if the checksum is bad..

Dan
DanAlbert
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 70
Joined: Fri Feb 04, 2005 1:00 am

Post by sippy » Mon Jan 08, 2007 12:21 pm

Post by sippy
Mon Jan 08, 2007 12:21 pm

Yup looks like that got it. Thanks i-bot. Restarted the computer to ensure an empty serial buffer(probably could get the same effect by using hyper terminal or a custom program that reads the seral port but still), then dont turn the robot on untill after you have clicked the ok button in roboflash. All back to normal now and even robobasic will reflash a new firmware after the fake2.3.bin.

thanks again
Yup looks like that got it. Thanks i-bot. Restarted the computer to ensure an empty serial buffer(probably could get the same effect by using hyper terminal or a custom program that reads the seral port but still), then dont turn the robot on untill after you have clicked the ok button in roboflash. All back to normal now and even robobasic will reflash a new firmware after the fake2.3.bin.

thanks again
sippy
Robot Builder
Robot Builder
User avatar
Posts: 8
Joined: Wed Dec 13, 2006 1:00 am

He stands!

Post by Fritzoid » Thu Jan 11, 2007 2:22 pm

Post by Fritzoid
Thu Jan 11, 2007 2:22 pm

I've debugged i-bot's motion code and can now get Robonova to rise into the standard position. You can get my updates at

http://robosavvy.com/Builders/Fritzoid/

Two things I discovered.

1. The servos fail to respond to position read requests (motorin) for at least 120 ms (yes, milliseconds) following a power on.

2. With PTP ALL on, move commands may be rejected/ignored unless as many as four timer interrupts have occurred. This because all the servos are set in motion by a move command when PTP ALL is on. It takes the timer interrupt a while to figure out that most of the servos are already where they need to be. Any additional move commands received within this time period will be ignored.
I've debugged i-bot's motion code and can now get Robonova to rise into the standard position. You can get my updates at

http://robosavvy.com/Builders/Fritzoid/

Two things I discovered.

1. The servos fail to respond to position read requests (motorin) for at least 120 ms (yes, milliseconds) following a power on.

2. With PTP ALL on, move commands may be rejected/ignored unless as many as four timer interrupts have occurred. This because all the servos are set in motion by a move command when PTP ALL is on. It takes the timer interrupt a while to figure out that most of the servos are already where they need to be. Any additional move commands received within this time period will be ignored.
Fritzoid
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 331
Joined: Mon Dec 18, 2006 1:00 am

Post by DirtyRoboto » Mon Jan 15, 2007 11:58 pm

Post by DirtyRoboto
Mon Jan 15, 2007 11:58 pm

You guys are doing really good. I hope you crack this mo's ass.

What I really am interested in, is how I can put my own routine in the place of the gyrosense. It seems that the gyrosense is the key to direct math and motor.

If I jumped the GS interrupt to my routine for modding the motor moves (what I call aftertouch) then I could use an algorithm to add bounce to the gait.


Please keep up the good work. And make a top GUI ;) for asses like me!

Marcus
You guys are doing really good. I hope you crack this mo's ass.

What I really am interested in, is how I can put my own routine in the place of the gyrosense. It seems that the gyrosense is the key to direct math and motor.

If I jumped the GS interrupt to my routine for modding the motor moves (what I call aftertouch) then I could use an algorithm to add bounce to the gait.


Please keep up the good work. And make a top GUI ;) for asses like me!

Marcus
DirtyRoboto
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 412
Joined: Tue Sep 19, 2006 1:00 am
Location: London

Post by srobot » Tue Jan 16, 2007 12:21 am

Post by srobot
Tue Jan 16, 2007 12:21 am

Hay, after your done with the RN-1 you can also do the RCB-1, RCB-2 RCB-3, etc.. Sounds fun dont it! :D :D Any ways guy are doing good job at it, keep up the good work!! Althow I think splashsplat would like it if you did the same thing to the RCB-3... But we can't do every thing... :lol: :lol:

--srobot
Hay, after your done with the RN-1 you can also do the RCB-1, RCB-2 RCB-3, etc.. Sounds fun dont it! :D :D Any ways guy are doing good job at it, keep up the good work!! Althow I think splashsplat would like it if you did the same thing to the RCB-3... But we can't do every thing... :lol: :lol:

--srobot
Dell Latitude D520, Windows XP, 4 GB RAM, 80 GB HDD, Intel Core 2 Duo. The power that's needed!

RIBO Labs, Springing Robotic Development to a New Level
srobot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 401
Joined: Sun Dec 10, 2006 1:00 am
Location: Deep in robot parts

Post by i-Bot » Tue Jan 16, 2007 11:30 am

Post by i-Bot
Tue Jan 16, 2007 11:30 am

I am still looking at the gryo code and how it links to the motion engine. I don't see a big problem to intercept the code between the gyro and the servos.

The reading of the Gyros takes place in a fourth interrupt phase and puts the gyro values in locations 1328 to 1331 (dec). You can peek them from there in Robobasic if you want.

The motors are set on phases 1 and 2 using these values, modified by the Gyrodir and Gryosense and mixed into the servo position.
I am still looking at the gryo code and how it links to the motion engine. I don't see a big problem to intercept the code between the gyro and the servos.

The reading of the Gyros takes place in a fourth interrupt phase and puts the gyro values in locations 1328 to 1331 (dec). You can peek them from there in Robobasic if you want.

The motors are set on phases 1 and 2 using these values, modified by the Gyrodir and Gryosense and mixed into the servo position.
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am

Post by sippy » Wed Jan 17, 2007 11:38 am

Post by sippy
Wed Jan 17, 2007 11:38 am

BTW Limor for the sourceforge repositry I think you need to enable subversion for the project, in the docs(http://sourceforge.net/docman/display_doc.php?docid=31766&group_id=1) it says you need to "Select a Source Control Management utility". Has this been set to subversion? Since my attempts so far have failed.
BTW Limor for the sourceforge repositry I think you need to enable subversion for the project, in the docs(http://sourceforge.net/docman/display_doc.php?docid=31766&group_id=1) it says you need to "Select a Source Control Management utility". Has this been set to subversion? Since my attempts so far have failed.
sippy
Robot Builder
Robot Builder
User avatar
Posts: 8
Joined: Wed Dec 13, 2006 1:00 am

Post by DirtyRoboto » Tue Jan 30, 2007 7:37 pm

Post by DirtyRoboto
Tue Jan 30, 2007 7:37 pm

Can anyone provide a poke location for the onboard speaker?
Cheerz.

Marcus.
Can anyone provide a poke location for the onboard speaker?
Cheerz.

Marcus.
DirtyRoboto
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 412
Joined: Tue Sep 19, 2006 1:00 am
Location: London

Post by i-Bot » Tue Jan 30, 2007 10:54 pm

Post by i-Bot
Tue Jan 30, 2007 10:54 pm

The speaker is connected to port D.5 of the processor. So at a simple level you could just toggle port 28 which corresponds to D.5. However with the slow performance of the interpreter, then only a small range of low frequency tones is possible.

The music command is quit complex and uses interrupts. It plays tones in sequence out of the program EEPROM. The start of the music command starts the process, it does not run all the time. This means there is no RAM location that can be poked to give a tone. It may be possible to modify or bend existing tones, but I don't see any way to initiate a tone outside the program script.

I do understand the limitation with the music command. I used some of your Theramin code to make changing tones with Gyro motion, since it was the easiest way to convert from a variable to a tone.

I haven't spent much time looking at the music code, and did not include it in the C routines.

I guess if you have something interesting or specific in mind, we might add a new command to Robobasic, or convert your code to C and then be able to toggle the speaker faster.
The speaker is connected to port D.5 of the processor. So at a simple level you could just toggle port 28 which corresponds to D.5. However with the slow performance of the interpreter, then only a small range of low frequency tones is possible.

The music command is quit complex and uses interrupts. It plays tones in sequence out of the program EEPROM. The start of the music command starts the process, it does not run all the time. This means there is no RAM location that can be poked to give a tone. It may be possible to modify or bend existing tones, but I don't see any way to initiate a tone outside the program script.

I do understand the limitation with the music command. I used some of your Theramin code to make changing tones with Gyro motion, since it was the easiest way to convert from a variable to a tone.

I haven't spent much time looking at the music code, and did not include it in the C routines.

I guess if you have something interesting or specific in mind, we might add a new command to Robobasic, or convert your code to C and then be able to toggle the speaker faster.
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am

Post by DirtyRoboto » Wed Jan 31, 2007 7:01 am

Post by DirtyRoboto
Wed Jan 31, 2007 7:01 am

I was looking to make sound effects, like sirens and warbles.
I was looking to make sound effects, like sirens and warbles.
DirtyRoboto
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 412
Joined: Tue Sep 19, 2006 1:00 am
Location: London

Post by robbybot » Sun Feb 04, 2007 8:36 pm

Post by robbybot
Sun Feb 04, 2007 8:36 pm

hey guys just read this thread and wanted to say cheers for all your efforts, i wont pretend to know 99% of what you are saying but any attempt to make a better GUI is worthy of praise. would this GUI when complete be usable for any robot like the vstone robovie mv3, rn1 and and kondos or is it specific to the rn1 control board?sorry if this a stupid question but i have no experience of robots but am learning fast!
im also interested because im starting my own build project using dx 117 servos and cm2 control board 23-25 dof robot which i will need a control interface for .see: tribotix forum .

cheers rob.
hey guys just read this thread and wanted to say cheers for all your efforts, i wont pretend to know 99% of what you are saying but any attempt to make a better GUI is worthy of praise. would this GUI when complete be usable for any robot like the vstone robovie mv3, rn1 and and kondos or is it specific to the rn1 control board?sorry if this a stupid question but i have no experience of robots but am learning fast!
im also interested because im starting my own build project using dx 117 servos and cm2 control board 23-25 dof robot which i will need a control interface for .see: tribotix forum .

cheers rob.
You and your friend are in an open field and are confronted by a hungry lion.The lion starts to charge and it is clear you must run.What should your immediate goal be?Some say "Outrun the lion."Others say "Outrun your friend."
robbybot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 55
Joined: Tue Jan 23, 2007 1:00 am
Location: wales , uk

Post by limor » Sun Feb 11, 2007 1:47 pm

Post by limor
Sun Feb 11, 2007 1:47 pm

sippy wrote:BTW Limor for the sourceforge repositry I think you need to enable subversion for the project, in the docs(http://sourceforge.net/docman/display_doc.php?docid=31766&group_id=1) it says you need to "Select a Source Control Management utility". Has this been set to subversion? Since my attempts so far have failed.


very sorry for the late reply. i've set the Enable SVN flag so you should be able to access the repositry via SVN.

Limor
sippy wrote:BTW Limor for the sourceforge repositry I think you need to enable subversion for the project, in the docs(http://sourceforge.net/docman/display_doc.php?docid=31766&group_id=1) it says you need to "Select a Source Control Management utility". Has this been set to subversion? Since my attempts so far have failed.


very sorry for the late reply. i've set the Enable SVN flag so you should be able to access the repositry via SVN.

Limor
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by robokoi » Wed Mar 07, 2007 4:52 pm

Post by robokoi
Wed Mar 07, 2007 4:52 pm

Hey, all. Been following this thread for a while, but I haven't seen much activity since some issues were raised with the available PC apps (Freeloader, .RoboFlash). Has the issue of writing a bad RN app & getting continuous xE0 been fixed?

I've also been watching the SourceForge Robonova project, and there's been an astounding lack of activity for all the interest it generated. I can understand not wanting to post the decompiled RN bootloader due to copyright issues, but it'd be great to see the PC app code instead of just binaries. More eyes can usually help make better software.
Hey, all. Been following this thread for a while, but I haven't seen much activity since some issues were raised with the available PC apps (Freeloader, .RoboFlash). Has the issue of writing a bad RN app & getting continuous xE0 been fixed?

I've also been watching the SourceForge Robonova project, and there's been an astounding lack of activity for all the interest it generated. I can understand not wanting to post the decompiled RN bootloader due to copyright issues, but it'd be great to see the PC app code instead of just binaries. More eyes can usually help make better software.
robokoi
Robot Builder
Robot Builder
Posts: 13
Joined: Fri Nov 17, 2006 1:00 am
Location: Boston, MA

PreviousNext
223 postsPage 8 of 151 ... 5, 6, 7, 8, 9, 10, 11 ... 15
223 postsPage 8 of 151 ... 5, 6, 7, 8, 9, 10, 11 ... 15