I/O Extender user development project

http://jbperf.com/io_extender/index.html
http://jbperf.com/io_extender/tinyIOx.html for the TinyIOx

I/O Extender user development project

Postby jbelanger » Sun Oct 21, 2012 5:44 pm

I know that some people have been wanting to have access to the source code to develop new functions for the I/O Extender instead of having to rely exclusively on me to do it. I was not comfortable in having the source code completely available due to some unscrupulous people and to keep some of my solutions proprietary. I also wanted to keep support more manageable by keeping some of the code, such as the CAN and serial protocols, in non-modifiable sections so that the communication with the IOx would not be an issue and would remain standard.

So while this is not what some would have liked, I think it fills the needs of most and will allow almost any addition or modification to the functions. If for some reason there are things you can't do because of what is not accessible, let me know and I'll see what can be done. And I'll support people as best I can for the additions/modifications that they want to implement. However due to my limited available time and energy, I won't be able to teach people how to code or do some hand holding to go through the code to see exactly where you need to add or modify the code.

The code is available as a CodeWarrior project since this is the only freely available compiler that can be used for this CPU. You can get the free Code Warrior version from Freescale: http://www.freescale.com/webapp/sps/sit ... 08D&fpsp=1. Get the classic special edition not the evaluation. You may need to register to get it. This version only runs on Windows XP but you can run it on Win7 using the virtual PC in the XP mode.

The license for the use of the code is available here and the project is available here.

This code is based on v0.0.13 and uses the same ini file. However, there are some modifications to the source code structure to keep things modular. There has been limited testing done so while everything seems to be fully functional, be aware that there might be some bugs. If you find anything that does not behave as it did before let me know and I'll look into it.

Jean
Image
jbelanger
 
Posts: 3633
Joined: Sat Oct 03, 2009 12:24 pm
Location: Quebec, Canada

Re: I/O Extender user development project

Postby aarc240 » Mon Oct 22, 2012 6:30 pm

Good to see!!
Have to revive that windoze partition now, CodeWarrior won't run under Wine, or anything but 32 bit XP and possibly 32 bit Win7 it seems!
Trying to gett SDcard support in there will be a challenge as there don't appear to be even basic hooks for it.
If you've got any test code for SDcard that you think may help that would be most appreciated.
Any sort of road map or additional comments for the source would be very helpful too.
aarc240
 
Posts: 95
Joined: Sat Feb 19, 2011 5:01 pm

Re: I/O Extender user development project

Postby jbelanger » Mon Oct 22, 2012 6:44 pm

It runs under 64-bit Win7 if you use the Windows Virtual PC; I'm actually using it this way.

I'll have a look at how to provide some test code for the SD card that can be used with the IOx bootloader. What I had was used with the BDM and you can't use the BDM with the IOx or you'll delete the bootloader which also has other functions (the IOx s19 wouldn't work without the bootloader).

And let me know if there is anything specific you'd want me to comment on. I'll see how I can give a better idea of how the code is structured.

Jean
Image
jbelanger
 
Posts: 3633
Joined: Sat Oct 03, 2009 12:24 pm
Location: Quebec, Canada

Re: I/O Extender user development project

Postby aarc240 » Mon Oct 22, 2012 10:08 pm

Argh!!!! Bloody Microsoft - Win7 Home Premium (supplied with laptop!), can't install Windows Virtual PC, got to upgrade to Win7 Pro or better.
That'll be US$200 thank you very much, for something downloaded that I can buy on CD for A$160 in Oz. Bastards.

Don't waste too much effort on the test code idea, and I'll ask if I can't get a handle on the code organisation.
aarc240
 
Posts: 95
Joined: Sat Feb 19, 2011 5:01 pm

Re: I/O Extender user development project

Postby jbelanger » Mon Oct 22, 2012 11:44 pm

That's right I forgot that you need to have Win7 Pro to be able to use the XP mode. That's actually one of the reasons I got the pro version when I bought the computer.

And Microsoft really know how to get people angry about them in many different ways.

Jean
Image
jbelanger
 
Posts: 3633
Joined: Sat Oct 03, 2009 12:24 pm
Location: Quebec, Canada

Re: I/O Extender user development project

Postby aarc240 » Wed Oct 24, 2012 8:47 am

I've now got a solution that might assist others.
As my main OS is Debian Linux I installed Oracle VM VirtualBox on that.
In that virtual machine I installed a WinXP 32 bit OS plus all the usual BS.
Once that was up & running with all the patches, security fixes etc in place I installed CodeWarrior.
So far testing says it's stable - actually it's better than WinXP running on an older PC!
aarc240
 
Posts: 95
Joined: Sat Feb 19, 2011 5:01 pm

Re: I/O Extender user development project

Postby jbelanger » Wed Oct 24, 2012 10:31 am

That's good information.

Have you tried to compile the code to see if you get the same s19 file? The first line of the s19 file may end up being different because there is some system information (which is not transferred to the IOx) but all the remaining lines should be identical.

Jean
Image
jbelanger
 
Posts: 3633
Joined: Sat Oct 03, 2009 12:24 pm
Location: Quebec, Canada

Re: I/O Extender user development project

Postby jbelanger » Wed Oct 24, 2012 10:38 am

Just to be clear, I meant the s19 file in the bin directory of the project not any s19 file released previously. There will be differences with those due to the restructuring of the code.

Jean
Image
jbelanger
 
Posts: 3633
Joined: Sat Oct 03, 2009 12:24 pm
Location: Quebec, Canada

Re: I/O Extender user development project

Postby aarc240 » Wed Oct 24, 2012 7:29 pm

There may be a version issue with CW - v5.9.0 build 5292 CW IDE doesn't see a project.
Of course, I'm assuming that you created a project!
I'll investigate further and let you know what happens.
EDIT: should have mentioned CW is "Development Studio for Microcontrollers v6.3" which is the latest 'classic'
aarc240
 
Posts: 95
Joined: Sat Feb 19, 2011 5:01 pm

Re: I/O Extender user development project

Postby jbelanger » Wed Oct 24, 2012 7:38 pm

That's the exact same build I have. Are you trying to open 'io_extender.mcp' from CW? I can either open it from CW or double click on it from Windows and that opens the project. And I tried with the project I just downloaded from the link in the first post to make sure there was no difference.

Jean
Image
jbelanger
 
Posts: 3633
Joined: Sat Oct 03, 2009 12:24 pm
Location: Quebec, Canada

Re: I/O Extender user development project

Postby aarc240 » Thu Oct 25, 2012 11:08 pm

Looking good!

**** issued from CW running on XP inside VirtualBox:
Warning : C1825: Indirection to different types ('const unsigned char *' instead of 'unsigned char *')
main.c line 510

Warning : C1825: Indirection to different types ('const unsigned char *' instead of 'unsigned char *')
io_ext_init.c line 200

Warning : C1420: Result of function-call is ignored
io_ext_init.c line 829

**** s19 files:
diff -y --suppress-common-lines old.s19 new.s19 |more
S04100005A3A5C696F5F657874656E6465725C647A3132385C696F5F | S07D0000433A5C446F63756D656E747320616E642053657474696E67735C4

**** map files:
diff -y --suppress-common-lines old.map new.map |more
PROGRAM "Z:\io_extender\dz128\io_extender_0_0_x_modules\ | PROGRAM "C:\Documents and Settings\Art\My Documents\IO-x\sour

I do believe this will work!

EDIT: and you really don't want to see the diff between io_extender.s19 from v0.0.13 and the restructured version!
aarc240
 
Posts: 95
Joined: Sat Feb 19, 2011 5:01 pm

Re: I/O Extender user development project

Postby jbelanger » Fri Oct 26, 2012 12:02 am

As you say, it's looking good.

The warnings are normal and they are completely benign. And the s19 and map diffs are as expected and are pretty much the same: they are simply related to the path name differences between the 2 systems (yours and mine).

I also wouldn't expect to see much similarity between the new s19 and the v0.0.13 s19 because things have moved around in memory (even for completely identical functions) so the s19 will end up almost entirely different.

It's good to see that you solved your issues and can move on. If you have any pointers to share with others please don't hesitate to post them.

Jean
Image
jbelanger
 
Posts: 3633
Joined: Sat Oct 03, 2009 12:24 pm
Location: Quebec, Canada


Return to I/O Extender

Who is online

Users browsing this forum: No registered users and 5 guests