Re: PhantomX using a Teensy 3.1

As I mentioned in a different thread, made the change to exit from command mode, which sped up the startup, so comes up much quicker now. I also updated the Phantom_Phoenix github project to include this. So now have code in place that you can give two fresh from the store XBees and just plug them in and the code will configure them to work.

Also updated the zip file for my Teensy breakout board to have a connector on it that will actually work

Again to see the actual schematic and layout you can use the free download of Diptrace beta. If it would help, could also print to PDF files for this.

Re: PhantomX using a Teensy 3.1

Good work on the XBee part! I'll try updating my PhantomX one day. It's been awhile since my last visit on the Phoenix/PhantomX code. I might wait after my next robot demo on march 23. PhantomX just got a working servo again (replaced gears). And currently my brain is occupied with basic code for MorpHex, lol.

I assume the only change was to the BOM list (power terminal block), not the boards, right?

Re: PhantomX using a Teensy 3.1

Thanks, took me a bit on the XBees as of the 10 second delay.

Yep the only change to the BOM was the power block terminal. As I mentioned I also put in PDF files showing the Schematic and board in case some one wanted to look at the images without downloading and installing diptrace.

Can not wait to see Morphex 2 when you have it up and running. Today I hopefully will have some time to work more on the Teensy code base on the Quad: I am going to experiment with things like, maybe try to do servo updates every 10ms and see if there is any differences. Also on the quad, need to probably work more on the gaits/balance code. In the current code base I can define specific gaits for a robot, which can either add the gaits to the default list or replace the default list. So I have added the ones that I think match the Nuke ones. Which for me only one of them works well... But some of the issues may be what Angle the legs should be at, or the initial position on how far out the legs should be. So it needs more experimenting to see what works well. Earlier I added code to the Commander Input code that like how I adjust the height of the robot and the walking speed by holding down the L6 button and moving the right joystick, I can now hold the L6 button and move the left joystick, to move the legs in and out and to change the angle of the legs, so I can experiment, with legs at 90 degrees from each other versus at 60 degrees...

Also I have both ways to do balance. The original way and the way that Xan added to support the Lynxmotion Quad. Need to see which works better with the different gaits. Hopefully will get back to testing on Hex but UPS shipment appears to be hung up somewhere for several days now

Re: PhantomX using a Teensy 3.1

Today I finished assembling a 2nd of the v0.2 Teensy boards. This time I used one of the Seedstudio ones (green) with a green Teensy board (direct from PJRC). I also cut the USB to VIN etch on the Teensy, so by default the board is not powered when plugged into USB. I then did a quick and dirty jumper to allow me to play with USB power as I do some tests.

Also found something else I would change if I did another version. Should have caught this earlier, but would have switched RX/TX labels for XBee. I currently have TX associated with DOUT of XBee but makes more sense assocated with TX pin of processor...

Soon I will mount this board on the PhantomX Hexapod, which is all back in one piece now

But first I will do some more testing of the actual PhantomX using the Arbotix. Would like to first make sure things are workng OK on my standard github Phantom_Phoenix project. So far I don't see the XBee drop anymore. But I think I want to play a little more with the leg positions at different heights.

Also will have the same Phantom_Phoenix code base that is converted over to run on Arduino 1.5.6-r2 using my stripped down Arbotix directory and Bioloid library that uses the standard hardware serial port code. (i.e. - there is a Serial1).

Then will convert to Teensy - using the same code base using Hardware Serial port.

Re: PhantomX using a Teensy 3.1

Sounds good Kurt. I think I'll cut the USB power on the Teensy too, I believe it can be messy when connecting to USB when the breakoutboard is powered. Btw. I've got 3 Teensy3.1 from OSH park. But still waiting for the boards from both OSH and Seedstudio.

Re: PhantomX using a Teensy 3.1

Hi Kåre,
I would assume the ones from Seeeduino shipped by now? I ordered my version with Arduino headers on it after you put in your order and it shipped last Thursday and it arrived in US and cleared customs today and soon will be transferred to USPS... Today I ordered some more parts from Digi-key to be able to assemble 1 or 2 of these. Don't have many Arduino shield boards to try out, so not sure yet how much I will attempt there.

I have the first teensy on the quad so should not be too many new things to figure out on the Hex. Hopefully will be at it in the next day or so. But now back to other not as fun stuff, like building Shed/Chicken Coop, go to Dump...

Re: PhantomX using a Teensy 3.1

I finished for now playing the Arbotix on 1.5.6 using straight Serial output and as far as I can tell, it is working fine. I also hooked up the the Logic Analyzer and it looks like the timings of the Serial outputs is pretty good. I could only detect a smaller percentage of the time where I probably output quicker than the serial port was outputting and it then cached it and used the interrupt. Could do straight talking to the IO registers if necessary, but I like that this code is the same for both Arbotix and Teensy.

Question: I am still a bit green on how best to use github. Suppose I wish to put up Phantom_Phoenix_Teensy up there. I can obviously just put it up as it's own project, but it could also logically be another Branch of the Phantom_Phoenix project. But much of the time I would want both branches on my main machine. Is it easy to have multiple forks on your machine at the same time and be able to make commits to either of them, or am I better off just having two projects. Most of the files are identical. Most of the other changes is simply a change of header files (ax12.h -> ax12serial.h).

Re: PhantomX using a Teensy 3.1

I would suggest using two projects. Projects don't cost anything, and if you want to "mount" one project as a sub-directory of another, you can do that using git externals (that references a very specific version -- not auto-updated.)
Branches only make sense if you intend to merge between different branches a lot.
That being said, you can have multiple branches of the same project checked out in two different location on your machine -- a git checkout is just a directory with a ".git" subdirectory at the top. You can even move the entire checkout directory around on your disk without fear -- it's not like Perforce where the client-side path is stored in the client-spec server-side...