BasicMicroUK - Forums

www.basicmicro.co.uk
It is currently Fri Jul 20, 2018 1:55 pm

All times are UTC [ DST ]




Post new topic Reply to topic  [ 42 posts ]  Go to page Previous  1, 2, 3  Next
Author Message
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Tue Dec 28, 2010 7:36 am 
Offline
Guru

Joined: Sat Oct 23, 2010 5:12 am
Posts: 60
After reading a few more posts and toggling a serin command to read a command being sent via Flowstone (still working on sending proper type of data via COM module). I have connectivity with no control.

Can SER work with HSER? or can I use only HSER for AtomPro28 to communicate with RoboClaw and PC?

****************************************
Encoder1 Var Long
Encoder2 Var Long
Status Var Byte
CRC Var Byte
Speed Var Byte
Address Var Byte
Command1 Var sword
Command2 Var sword
Data Var Byte
Checksum1 Var Byte
Checksum2 Var Byte

ENABLEHSERIAL ;used on AtomPro24 and AtomPro28. AtomPro40 and ARC-32 use EnableHSerial2

Pause 250

Clear

SETHSERIAL H38400,H8DATABITS,HNOPARITY,H1STOPBITS

Hserout [128, 20, (148 & 0x7F)]; Resets encoder registers

Address con 128
Command1 con 0
Command2 con 4
Speed con 0
Checksum1 = Address + Command1 + Speed
Checksum2 = Address + Command2 + Speed

Main

Pause 100

serin S_IN, 38400 [command1]

hserout [Address, command1, Speed, (Checksum1 & 0X7F)]
hserout [Address, command2, Speed, (Checksum2 & 0X7F)]


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Tue Dec 28, 2010 12:54 pm 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 5:06 pm
Posts: 120
Location: Wisconsin USA
The switch has multiple ethernet ports.

Laptop <--300'--> port 1
IP Camera <--6"--> port 2
Converter <--6"--> port 3

BAPro <--serial--> converter

You access the IP camera from it's internal webpage. probably by IP, the IP is set from within the camera.

The serial RJ45 converter connects between the network-switch and the BAPro.

You use the VSP software to create a virtual serial bridge between the converter, and the PC.

Commands are sent from the PC over the network cable, to the switch, which then transfers it to the converter and then to the BAPro.

I can not simplify it any more than that.

The PDF for the IP camera didn't tell me how to configure it so i can't help you there.

I've never used encoders so i can't help you there. I'll need to get in touch with Bmicro here and get some, since that's one of the main selling points for the roboclaw.


You might need to start with a simple macro program to get started.
http://www.lynxmotion.net/viewtopic.php?f=46&t=6702

Just program your bot to perform moves according to a simple 1 touch command.
Like send the dec digits "12, 12"
and have the bot drive 12 inches.
Send 48,48, and it drives 48 inches.
24,-24, would cause it to turn. Should be easy enough to program.

I've attached my controllers and robots bas files, studio 2.0.0.7
I didn't comment it, but it's pretty easy to follow. I use the roboclaw 2x5, and the controller can be seen on the blog, which is linked in my signature.


Attachments:
rover claw.bas [7.89 KiB]
Downloaded 403 times
master controller.bas [8.83 KiB]
Downloaded 387 times

_________________
Image
Basic Micro Blog
Universal Robot Controller
Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Tue Dec 28, 2010 3:02 pm 
Offline
Guru

Joined: Sat Oct 23, 2010 5:12 am
Posts: 60
I am able to receive video from the IP camera, so no more debug necessary on the camera except to integrate it into the networked BB2(and AtomPro28).

I see now that no additional NIC card is NOT necessary to connect these components and that the switch should suffice.

To work on testing basic communication using the serial port, I uploaded a short program (stripped encoder language from previous post) to send a HEX through the port.

serou s_out, i38400, [hex 10, 13]

After uploading the code with this syntax, the letter 'A' was received through BasicMicroIDE Terminal. Then, I changed serout to serin and s_out to s_in and it errored when compiling. Why?

I will take a look at the code you uploaded and do as you suggest to work on sending simple commands to include microcontroller and motor controller.

BTW...The RoboClaw is currently set for packet serial (on P14 and P15).

Thank you


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Tue Dec 28, 2010 6:36 pm 
Offline
Site Admin
User avatar

Joined: Thu Mar 01, 2001 7:00 pm
Posts: 1316
Location: Temecula, CA
serin uses variables. Hex 10 is a constant so when you changed your code from serout to serin and s_out to s_in you also had to change the code in between the []s. Define a variable(temp var byte) and change the []s code to [temp]. Temp will then receive the character you send from the terminal program. Of course nothing will go back to the terminal window since you replaced the serout command so you may want to have a serout command after the serin that send back temp.

_________________
Tech Support
Basic Micro - Robotic Technology Evolved


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Wed Dec 29, 2010 2:59 am 
Offline
Guru

Joined: Sat Oct 23, 2010 5:12 am
Posts: 60
The switch arrived today so I have everything discussed in previous posts. I am holding off on the networking in the IP camera w/ switch until I confirm connectivity through the Cat5e (PC --> Serial Bridge).

Currently:
PC --> RJ45 --> RJ45/DB9 Converter --> Serial of BBII (and AtomPro 28) --> RoboClaw (packet serial on P14 & P15)

I have the following:
Installed Wiz VSP
5-port Switch
RJ45/DB9 Converter (I can see the IP address)
BBII w/ AtomPro28 (I can't seem to communicate with BM Studio)
RoboClaw w/ Encoders (would like to turn motors first with the option to read encoder data later)
IP Camera (it is working)

Should I be able to upload programs with MicroStudio using the Com port number that is associated with the software serial (Com 3 in this case)?

I tried to upload a program through BasicMicro, but it could not detect the processor. Any thoughts?

I am probably over complicating the 'next steps' but would appreciate help confirming this configuration is ready to send/receive data and programs rather than reconnecting serial between PC and BBII.

Mike


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Wed Dec 29, 2010 6:06 am 
Offline
Guru

Joined: Sat Oct 23, 2010 5:12 am
Posts: 60
Given the following, should I be able to send a number (111) using the macro.exe (Com1) and get a return value through the terminal, AFTER closing macro.exe?

Code:
temp var byte

ENABLEHSERIAL ;used on AtomPro24 and AtomPro28. AtomPro40 and ARC-32 use EnableHSerial2

SETHSERIAL H38400,H8DATABITS,HNOPARITY,H1STOPBITS

Main

serin s_in, i38400, [dec3 temp]

serout s_out, i38400, [dec temp\3, 13]

Goto Main


Also, the serial connection (serial to serial) allows me to use MicroStudio, but I am having trouble connecting via ethernet cable. The WIZ VSP configuration tool can detect the IP (and MAC Address) of the RJ45/DB9 converter (even through the switch), but I can't upload code with BMicroStudio. It doesn't detect the processor. What am I missing?


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Wed Dec 29, 2010 11:43 am 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 5:06 pm
Posts: 120
Location: Wisconsin USA
It might be a latency issue, programming requires a rather tight latency. In other words commands should work fine, but you probably wont be able to program with it.

I have the same problem with bluetooth, can use commands but can't program over bluetooth, even with all the right wires connected, the latency just stops it from working.

serin/serout don't require you to use hserial, on the pro-28 hserial only uses p14 and p15, not the DB-9 connector. The pro 40 does however use s_in/S_out pins for hserial1. but again with the pro 40, p14 and p15 are used for hserial2

I newer versions of the studio you don't need to enablehserial, it does so automatically.
Furthemore you don't need all the other options, sethserial1 h38400
is all you need, the rest is default, you only need to specify databits or stop bits if you use something besides the default 8databits, etc.

try this

Code:
temp var word

Main

serin s_in, i38400, [dec3 temp]
pause 1
temp = temp*2     ;doubles what you send. you send 111, it replies 222.
serout s_out, i38400, [dec temp\3, 13]
pause 5
Goto Main

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Wed Dec 29, 2010 4:21 pm 
Offline
Guru

Joined: Sat Oct 23, 2010 5:12 am
Posts: 60
MicroStudio (2.0.0.5) is still not able to detect the microprocessor on Com1. The IDE version does detect the processor so I am using that for now until I find a solution. I was thinking to stay with serial connection until the transmit/receive/control is confirm. Then I can introduce the Cat5e, switch, IP camera, etc. For this round, the connection is PC via serial to BBII (Pro 28).

Is it correct that I now need to add in the SETHSERIAL command since I am using IDE version (IDE 8.0.1.7)??

I proceeded to upload your suggested code. Then, closed BM-IDE and opended macro.exe to send '111'. I selected COM1 in the drop down and entered 111 for Macro0 and hit return a couple of times. Thinking that 111 was now sent and stored in variable (temp), I closed macro.exe and opended terminal in BM-IDE (38400). No joy.

I opened up another flowstone macro which is meant to send servo commands (specifically servo) via COM port. I selected COM1, set baud to 38400, and entered 111 to send. It has the feature to display what it calls the 'returned value' just below the entry field and it came back 111. I don't know if that return is actually coming back from the Pro28, but it is clearly not making it to the program or it would be 222.


Do I need to switch to SER IN/OUT only or can I continue to use SER OUT/IN for PC control and HSER OUT/IN (P14 & P15) for packet serial communication with the RoboClaw (encoders connected)?

What is the purpose of the pauses in your suggested code? Do the pauses allow more time to receive the data requested in the previous SER IN statement?

Is the RJ45/DB9 converter (WIZ110) pretty much plug-n-play?

BTW...I said no to a real Christmas tree this year. All I want for Christmas is a 222 return to the MicroStudio terminal.

Thanks again.


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Wed Dec 29, 2010 6:42 pm 
Offline
Site Admin
User avatar

Joined: Thu Mar 01, 2001 7:00 pm
Posts: 1316
Location: Temecula, CA
1. How old is the module you are using? We had a problem with a very old module once with Studio.
2. Go to the News section and download the latest Studio(2.0.0.7). I'm not sure but I think I added some more handling between 2005 and 2007 releases for old modules.
3. Check the reset hold time in the IDE version you are using. Then set Studios reset hold time to the same setting. Communications problems when the only difference is a software version usually indicates the reset hold time is the issue.

_________________
Tech Support
Basic Micro - Robotic Technology Evolved


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Thu Dec 30, 2010 7:42 am 
Offline
Guru

Joined: Sat Oct 23, 2010 5:12 am
Posts: 60
After installing 2.0.0.7, it worked!

Here is one of a couple programs I am trying on the Pro28 to send RoboClaw commands from the PC (macro.exe or other) to the Pro28 via serial (for now).

When I activate "Speed con 32" and comment out the Serin-to-variable command, motors turn.

When I do the opposite, entering/sending "32" via the macro.exe does not turn motors.

Murphy's Law dictates that the fix is simple and obvious. I hope so.


Code:
Address Var Byte
Command1 Var Byte
Command2 Var Byte
Speed Var Byte
Checksum1 Var Byte
Checksum2 Var Byte

'ENABLEHSERIAL ;used on AtomPro24 and AtomPro28. AtomPro40 and ARC-32 use EnableHSerial2

Clear

SETHSERIAL1 H38400

Address con 128
Command1 con 0
Command2 con 4
'Speed con 0

Main

Checksum1 = Address + Command1 + Speed
Checksum2 = Address + Command2 + Speed

   Serin s_in, i38400, [Speed]
   
   hserout [address, command1, Speed, (checksum1 & 0X7F)]
   hserout [address, command2, Speed, (checksum2 & 0X7F)]

   pause 100
   
   Serout s_out, I38400, [13, "speed: ", dec speed/3]
   
'ReadEncoderM1
'   hserout [128, 16]
'   hserin [Encoder1.byte3, Encoder1.Byte2, Encoder1.Byte1, Encoder1.Byte0, Status, crc]
'   Serout s_out, I38400, [0,"Encoder1: ", SDEC Encoder1, 13, "Status Byte: ", BIN Status]

Goto Main


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Thu Dec 30, 2010 10:46 am 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 5:06 pm
Posts: 120
Location: Wisconsin USA
Also try this terminal application, uses F1 - F12 and Crtl+F1 to Crtl+F12.
http://sites.google.com/site/terminalbpp/
It's my favorite terminal app. Just read the "help" button for macros. I used to control my robots using this exact terminal program. And i still use it every time i test stuff.

I find that adding a tiny pause after serial based commands helps, at least it did in older versions, i still use it just incase.
Even a 1ms pause, or 500us "pauseus 1000" seems to help with serial commands, especially software serial.

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Thu Dec 30, 2010 5:04 pm 
Offline
Guru

Joined: Sat Oct 23, 2010 5:12 am
Posts: 60
Great terminal program. I was able to connect, set macro, use macro, and send commands to change the speed of the motors. What value is in the 4th column (1000) of the 'Set Macro' window?

I am noticing that the command is not accepted every time I hit send.
I assume this is what the posts were referring to when the incoming data has to hit the program while it is in the Serin command?!?

Could it be something with the Serin variable type and format? What's the best variable type to use for speed command (byte, sword, etc.)? I noticed unwanted behavior in the log when I send a two-digit command. The returned value (speed) is greater than what I sent, as if the values were being read with an incorrect modifier.

After I input 32 into the terminal send field, I hit send until the motors reacted. It took five consecutive clicks and here is the log.

32
speed: 0323232
speed: 0673232
speed: 067


How much control can I expect with key strokes? Can the delay between send, receive, understand, and execute be eliminated so control is more responsive? I am used to the responsiveness of a wireless PS2 which gives responsive control over speed.

I will stay with serial until I can work out these issues.

Mike

Code:
Address Var Byte
Command1 Var Byte
Command2 Var Byte
Speed Var Byte
Checksum1 Var Byte
Checksum2 Var Byte

'ENABLEHSERIAL ;used on AtomPro24 and AtomPro28. AtomPro40 and ARC-32 use EnableHSerial2

Clear

SETHSERIAL1 H38400

Address con 128
Command1 con 0
Command2 con 4
'Speed con 32

Main

Checksum1 = Address + Command1 + Speed
Checksum2 = Address + Command2 + Speed

   Serin s_in, i38400,[dec3 Speed]
   
   pauseus 500
      
   hserout [address, command1, Speed, (checksum1 & 0X7F)]
   hserout [address, command2, Speed, (checksum2 & 0X7F)]

   pause 100
   
   Serout s_out, i38400, [13, "speed: ",dec Speed\3]
   
'ReadEncoderM1
'   hserout [128, 16]
'   hserin [Encoder1.byte3, Encoder1.Byte2, Encoder1.Byte1, Encoder1.Byte0, Status, crc]
'   Serout s_out, I38400, [0,"Encoder1: ", SDEC Encoder1, 13, "Status Byte: ", BIN Status]

Goto Main


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Thu Dec 30, 2010 7:04 pm 
Offline
Site Admin
User avatar

Joined: Thu Mar 01, 2001 7:00 pm
Posts: 1316
Location: Temecula, CA
I think you are sending binary data. When using the DEC modifiers you send ASCII characters(eg "32" not 32). Each click of the send button is sending a single byte of data. You are using dec3 so it takes 3 bytes to get out of it if you are sending valid ascii characters(eg decimal characters, which binary 32 is a decimal character). The 4th and 5th may be because of hold over from the previous loop. If you are sending 32 each time then dec3 is getting "222". So dec3 is converting the incoming characters to a binary 222. Which is alot higher than the 32 you are trying to set. You need to send "32" <space>. Space can be any non-numeric character as well. Any character that is not a numeral will cause dec3 to end before it receives three numerals.

_________________
Tech Support
Basic Micro - Robotic Technology Evolved


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Fri Dec 31, 2010 4:04 am 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 5:06 pm
Posts: 120
Location: Wisconsin USA
with that terminal program it sends ASCII, so if you set 32$0D as a macro, it will send 32+CR

Try unchecking CR=CR+TF.

pauseus 500, is actually only 250microseconds. all uS based timers work on 1 = 0.5, so 1000 = 500us. This is actually kinda stupid imo, so much confusion, 1 should = 1, if someone wants 0.5 us, it should support 0.5us as the input, ie 12.5us

The trick with using a terminal and keyboard to control a bot, is adding a timeout label to your serin commands.

This timeout label goes to a hault command, ie a command that tells your robot to stop.
View my roverclaw bas here.

You'll notice i goto a stop command. at the bottom called... hault.
This causes the bot to stop if it does not receive a signal.
By adding such a timeout to your bot, when you stop sending macros, the bot will stop.
Now to keep your bot moving.... you just spam the macros., ie hold the key down.

Another trick is using a identical command skip check.
Which is also viewable in my roverclaw script.

I control the tracks separately so my code is
Code:
Onwards  ; not really nessiary, but i might need this label later.
if (Rtrack <> Rtrack2 or Ltrack <> Ltrack2) then ;disables/reduces identical command repeats
serout p10,i19200,[Rtrack,Ltrack]
pause 100
Rtrack2 = Rtrack
 Ltrack2 = Ltrack
endif
goto main


So if the code repeats, ie 64,192 which is stop for me, it'll only send it once, as long as both track values are identical to what it was before, it'll skip it. Rtrack or Ltrack changes within my speed calucations it will no longer match and then send the new command along with an update to check, ie Rtrack2/Ltrack2.

This is easy with simple serial, as for you, since you use encoders, it may be a little tougher.
This gets rid of redundant commands to the roboclaw.


I don't have time right now to test your code, but i'll try it later if you don't fix it before i get a chance to.


Edit: ok i'm seeing a problem with the code, but it doesn't make sense to me either.

Code:
Address Var Byte
Command1 Var Byte
Command2 Var Byte
Speed Var Byte
Checksum1 Var Byte
Checksum2 Var Byte

'ENABLEHSERIAL ;used on AtomPro24 and AtomPro28. AtomPro40 and ARC-32 use EnableHSerial2

Clear

SETHSERIAL1 H38400

Address con 128
Command1 con 0
Command2 con 4
'Speed con 32

Main
Checksum1 = Address + Command1 + Speed
Checksum2 = Address + Command2 + Speed

   Serin s_in, i38400,[dec3 Speed]
   
   pause 5
     
;   hserout [address, command1, Speed, (checksum1 & 0X7F)]
;   hserout [address, command2, Speed, (checksum2 & 0X7F)]

;   pause 100
   
   Serout s_out, i38400, ["speed: ",dec Speed\3,13]
   pause 10
'ReadEncoderM1
'   hserout [128, 16]
'   hserin [Encoder1.byte3, Encoder1.Byte2, Encoder1.Byte1, Encoder1.Byte0, Status, crc]
'   Serout s_out, I38400, [0,"Encoder1: ", SDEC Encoder1, 13, "Status Byte: ", BIN Status]

Goto Main


the serout command
Serout s_out, i38400, ["speed: ",dec Speed\3,13]

is pretty straight forward

However what it's doing is this
Serout s_out, i38400, [dec speed\3, "speed: ",dec Speed\3,13]
So i'm receiving this.
032speed: 032
032speed: 032
032speed: 032
032speed: 032


I'm transmitting JUST 032
It's echoing 032 back to me.
if i send 032+CR, i get
032
speed: 032
032
speed: 032
032
speed: 032


So it's echoing my commands back to me.
It might be the terminal program, it might be the MCU or the studio. all i know is something is echoing the commands back.
Which is why sending 032, sends back 032speed: 032 the first 032 is the echo.
This shouldn't have any effects on the controls.

Make note, if you're code is expecting 3 digits, you must send 3 digits, so you can't just send 32, you must send 032.

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
 Post subject: Re: Tracked Vehicle Control - Wireless to Wired
PostPosted: Fri Dec 31, 2010 5:17 am 
Offline
Guru

Joined: Sat Oct 23, 2010 5:12 am
Posts: 60
Does that mean that DEC and DEC2 expect 1 and 2 digits, respectively? I used DEC3, previously, thinking it controlled placeholders, not bytes. My code currently is using DEC.

I typed the following before I read your last post and code, but I wanted to post it anyway as it communicates my status. I look forward to studying your post and working with the BAS file.

With the following code, I can use terminal macros to send packet serial commands to the BB2 (w/ Pro28) via a serial cable. The output is consistent and commands are responsive (Thank you Nathan). Control is good enough to move onto improvements using your new suggestions and code. Thank you Fallentine.

I hope your code and suggestions help me improve on the control system to emulate more responsive control (ex. ON when key pressed, OFF when key released). Can that happen...like PS2 feathered control? Or at least detect change in key state? I acheive short motor turn commands now by sending a 'GO' command followed by a 'FULL STOP' 200 us later (ex "12" "79" %DLY0200 "12" "64").

Code:
Address Var Byte
Command1 Var Byte
Command2 Var Byte
Speed Var SByte
Checksum1 Var Byte
Checksum2 Var Byte

'ENABLEHSERIAL ;used on AtomPro24 and AtomPro28. AtomPro40 and ARC-32 use EnableHSerial2

Clear

SETHSERIAL1 H38400

Address con 128
'Command1 con 0
'Command2 con 4
'Speed con 32

Main

Speed = 0
Command1 = 8
Command2 = 8

   Serin s_in, i38400,[dec Command1, dec Speed]
   
   Checksum1 = Address + Command1 + Speed
'   Checksum2 = Address + Command2 + Speed

   pauseus 1000
      
   hserout [address, Command1, Speed, (checksum1 & 0X7F)]
'   hserout [address, command2, Speed, (checksum2 & 0X7F)]

   pause 1000
   
   Serout s_out, i38400, [13, "Command1: ", dec Command1 , 13, "Speed: ", dec Speed, 13]
   
'ReadEncoderM1
'   hserout [128, 16]
'   hserin [Encoder1.byte3, Encoder1.Byte2, Encoder1.Byte1, Encoder1.Byte0, Status, crc]
'   Serout s_out, I38400, [0,"Encoder1: ", SDEC Encoder1, 13, "Status Byte: ", BIN Status]

Goto Main


I am reviewing the two BAS files you provided earlier, but my limited experience is showing. Some of the structure and commands are unfamiliar to me (ex ADIN). I will continue to research them along with the latest BAS file.

The serial bridge continues to be an issue, but the working serial cable is a nice life raft.

Fallentine wrote:

You use the VSP software to create a virtual serial bridge between the converter, and the PC.



Since I had basic terminal control working with the serial cable, I tried to switch to the Cat5e configuration (switch, converter, VSP Config Tool AND Software), but there is no confirmation that there is a connection, communication is not confirmed. The WIZNet Config Tool detects the MAC address and defaults to some Local IP/Subnet/Gateway. The box in the corner always says 'Not Conneceted' so I feel like something isn't set right. Any suggestions?

Mike


Last edited by mmelendez73 on Fri Dec 31, 2010 5:32 am, edited 3 times in total.

Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 42 posts ]  Go to page Previous  1, 2, 3  Next

All times are UTC [ DST ]


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group

phpBB SEO