|
|||||||
| Register | FAQ | XDA-Portal | XDA-Wiki | Device database | Donate! | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
![]() |
|
|
Thread Tools | Search this Thread | Display Modes |
|
#1
|
|||
|
|||
|
Summary:
I'm starting this thread as a dedicated effort to enhancing the integration of the HTC TouchFLO Cube onto non-"HTC Touch" devices, without requiring a different version of touch.dll to be installed on the device via a new ROM. Current Status: WHAT'S DONE
WHAT'S LEFT
Rules:
Post #1 is for general infoDonations Thank you to all who have donated! Every donation makes me realize that other people are also interested in this project, and helps keep me motivated to continue expanding the functionality, and answering questions!Props
Last edited by Kona_Mtbkr; 12th December 2007 at 06:54 PM.. |
| Sponsored Links |
|
#2
|
|||
|
|||
|
11-10-2007: Proof of concept app in C# is completed, and the four finger control functions are working! One major issue, is how to get back into the cube when biotouch is still running, but no cube app is in the foreground (like after you launch and close an app). So far, I can only get the startup animation when I start biotouch from scratch ... so the downswipe action runs the close animation, and then closes biotouch. It really seems like I should be able to call something to get a running instance of biotouch to re-execute the startup animation ... but I'll be darned if I can find it as of yet.
I'd like to get some input from users of an actual Elf or Touch Dual device. Ideally, someone who can run a process viewer app to see the processes behind the screen ... and even better if they have a tool like Remote Spy that comes with Visual Studio 2005. I think it would help me ... because right now I'm just guessing at what should be happening. I need to figure out what pieces need to be in startup for my app to work. Basically, I've written my own version of BioLauncher ... which doesn't require biotouch to be running at all (it starts it on an upswipe). But so far, removing the ns script call from startup (bio.lnk) didn't seem to allow the biotouch animations to run. Need to do more research in this area. Everything works fine if I use my normal Touchflo Alpha install ... use the hardware button to loop through things (pre-loads all the cube apps probably), and then use my new app mapped to FTouchFlo. If none of this makes any sense to you ... read "How the TouchFLO Cube works" in Post #4. 11-10-2007 (after some sleep): I posted a message over on the Elf forum asking for some information about the behavior of the cube in certain situations. We'll see if I get any help. If anyone reading this knows of anyone with an Elf or Touch Dual (are they out?) ... then send them over to that forum, or check it out yourself and borrow their device for a bit ![]() 11-11-2007: I actually got an answer from the Elf forum techmonkie is indicating that biotouch doesn't really terminate on cube close, thereby indicating that there *has* to be a way to trigger the startup animation from a running biotouch instance. I was really starting to suspect that this was the case ... but this was the evidence I needed. Figuring this out will solve my startup woes ... and that should complete the interactivity with the cube. At that point ... I may consider a controlled alpha release, just to confirm that things are working as design on other devices. We'll have to see how things go. I'm going to refocus my investigation on triggering the open animation from a running biotouch ... but I may need some detailed analysis from an Elf ... we'll see.11-11-2007 (update): Did I mention how much sleep this thing is causing me to lose?! Anyways, OK ... must have been the inspiration of knowing how it was actually working on an HTC Touch device, because with the info in techmonkie's response, and a little more digging into the assembly code of touch.dll to confirm, I've got the startup issues sorted out. In fact, biotouch.exe does indeed remain memory resident. There is a way to get the startup anim to run ... although I swear I tried this before, and it didn't work. The open and close animations even do a little screen fade-in. It's working quite well for me in fact! This is so sweet ... I went and downloaded a few other animations from the Elf Cube customization thread ... just to see then animate in my new fully-functional cube! There's a few cleanup things to do for tomorrow ... and then it's on to sorting out the correct startup sequence. I'm still considering the controlled alpha release. Right now, you need to add it on top of a working cube ... which may not be bad for those that have working cubes! 11-12-2007: I had this thought earlier today ... I never really want a RL or LR swipe to bring up the cube and spin it, if the cube wasn't open before. You don't really know what page you'll land on ... unless you know where you left off last. I'm not exactly sure of the Elf's behavior on this point ... but I decided to add the ability for my cube interface to execute cube functions when the cube is open, or execute other apps if the cube is not open. For instance, I can have a RL swipe spin the cube when the cube is open, but the same gesture will launch Total Commander when I'm on the home screen I think it's pretty cool ... retains the cube interaction abilities, and still retains the "quick launch" nature of FTouchFlo gestures! Doesn't appear to slow it down much ... I'm hoping the C++ version is better anyways.11-16-2007 (Announcement): New Announcements ... see Post #3 below. 11-20-2007: Hints, Bugs, & Issues section updated to include at least a start (prompted after yet another post about missing contacts tab in HTC Home . Development work on fixing the screen lock bug continues.11-21-2007: Version 1.1 is under way with a few new commands available. Detect for screen lock and rotation seems to be working, and I'm hoping to fix a few of the other bugs. Also, use of link files for <App_2> parameter now work! 11-24-2007: Version 1.1 development continues. I removed the error message when using the openSpin<Direction> command and running in landscape mode. Also, I think I've fixed the "rainbow effect". Finally, I've adding another new command option: lock, which will execute the standard device lock. So some of the new commands are: minimizeAll, lock, lock-home, and somehow I'm going to work in a command to lock and suspend. Tossing around the idea of allowing screen rotation through gestures as well. So I think bugs 1 & 2, & possibly 3 are fixed, and issues 1 & 2 are adressed. A release is probably due, maybe by the end of this weekend. 11-25-2007: Version 1.1 seems complete. I've added screen rotation as well ... so the final list of new options is: lock (sub options of "home" and "suspend"), rotateDisplay (left and right), minimizeAll. I'll try to package it up in a new archive by tomorrow, after a bit more testing. 12-05-2007: Remaining issues still seem mostly centered around some devices having issues with QuickDial. I've gotten my hands on some new versions of the required apps, and am currently evaluating them. For the most part ... it looks promising that these will extend our cube functionality! Last edited by Kona_Mtbkr; 5th December 2007 at 08:38 PM.. Reason: Updated status |
|
#3
|
|||
|
|||
|
11-12-2007: Limited Alpha Release
With this latest feature added ... and everything seeming to work perfectly on my device, I've decided to go ahead with a limited release alpha. It's just so cool ... and I know there are "Cube People" out there that wanted this just as much as me Basically, here's how it works.
11-14-2007: Limited Alpha Release - ON HOLD Alpha is on hold until I work through some issues ... and clear out some PM's Thank you all for your interest and feedback.11-15-2007: Startup items are sorted out ... first beta version is on its way ... although apparently no luck in finishing that night 11-16-2007: First revision ported to C++. Need to do some testing and tweaking ... hopefully will finish tonight! 11-16-2007 (Update): Beta release v1.0.4 available here: http://rapidshare.com/files/70299288...l_-_v1.0.4.zip. Currently just a zip archive, I may build a cab installer over the weekend, just for my app (for you that already have the cube installed). For a complete cube installation, please check with duttythroy on his thread here: http://forum.xda-developers.com/showthread.php?t=336482 11-27-2007: Beta release v1.1.0 available here: http://rapidshare.com/files/72589345...l_-_v1.1.0.zip. This file is a zip archive, suitable for situations where you already have the HTC TouchFLO cube installed. If you have never installed TFloCubeCtrl before, then follow the TFloCubeCtrl - Installation instructions. If you're upgrading from v1.0.4, then use the TFloCubeCtrl - Upgrade instructions. You do *not* need to uninstall TFloCubeCtrl or the HTC TouchFLO cube in order to upgrade. Last edited by Kona_Mtbkr; 27th November 2007 at 10:31 AM.. Reason: Beta release |
|
#4
|
|||
|
|||
|
Background:
A few weeks back, I was inspired by the work of a couple of fellows who were working on a project to get the HTC TouchFLO Cube working on other HTC devices. You've probably seen the installation cab floating around in a couple of different threads. Like many of you, I quickly became enamored with the cube ... and jumped through all of the hoops to get it working (and I was one of the lucky ones who got it working). The original work by jasjamming and bepe provided a cube that could spin to the right via a hardware button. Then, with the release of efrost's FTouchFlo ... you could get the cube to spin right with a finger motion. It was all great, but I wanted more! Two things bothered me greatly ... you could not spin the cube left, and once you launched a program ... the only way to return to the cube would be to spin it again. So began a intensive week-long, late-night effort to learn as much as I could about the TouchFLO Cube, and if/how we could get it do more. I am very happy to report that much progress has been made ... and it is definitely feasible that we can have finger controlled spin left, right, open, and close. How the HTC TouchFLO Cube works The HTC TouchFLO Cube is really the collaboration of four separate executables, and an "interface". The four executables consist of one app per each each face of the cube (ApLauncher.exe = App Launcher; MediaHubMini.exe = Music, Photos, Video; QuickDial.exe = Contacts), and an application that facilitates the animation sequences for the cube (Biotouch.exe). Now, at this point I guess I'll point out that "cube" is really a bit of a misnomer. Since there are only 3 faces to this object + top and bottom, it's really more of a pentahedron, or a triangular prism if you like the sound of that better. The "interface" part is where things get interesting. On an HTC Touch (Elf) or Touch Dual ... the "interface" that detects finger swipes and translates them into calls to the biotouch application is the main touchscreen library: touch.dll. This is where we start running into problems trying to run the cube on other devices. Without modifying the touch.dll on a given device ... there will be nothing to interpret finger swipes and communicate to biotouch. This is the point the original work by jasjamming and bepe went down the path of attempting to map a hardware button to be used to spin the cube. An executable needed to be created that would interact with biotouch in the same manner that the touch.dll file would, and trigger it to run the spin right animation. I'm not exactly sure what process these guys went through to figure this out ... but they did. From there ... it was efrosts creation of FTouchFlo that brought the next revolution. FTouchFlo is an app that allows you to map a file to be called when it detects one of the four finger swipe motions (up-down, down-up, left-right, right-left). With this, you could now map that same executable that was assigned to the hardware button to the left-right swipe action in FTouchFlo ... and now your cube spins with a finger swipe. That's pretty much where the development stopped. I did a lot of research on this ... but pretty much all I could find from that point on was various people's input about it not working on this device, sort of working on another, etc. I simply couldn't believe that no one was pushing to enable the other cube interactions! It frustrated me to no end to know that I had a cube that was capable of spinning left, but no way to tell it to do so. So I rolled up my sleeves, read through countless pages of posts about what had been done so far, downloaded a disassembler, performed a lot analysis and theorizing ... and here we are today. Last edited by Kona_Mtbkr; 12th November 2007 at 08:29 AM.. |
|
#5
|
|||
|
|||
|
Hints
Bugs (for TFloCubeCtrl only)
Other Issues
Last edited by Kona_Mtbkr; 12th December 2007 at 07:01 PM.. |
|
#6
|
|||
|
|||
|
Great job!
|
|
#7
|
||||
|
||||
|
this looks great, cant wait to see the results.
|
|
#8
|
|||
|
|||
|
Hey Kona...that darn cube is addicting!! Im one of the few also that has the cube running flawlessly on my 8525..buttonflow that is! After alot of trial and error and lots of hard resets...i got it working. First thing to do is get the cube running after a hard reset. Second I installed gullum activate cube cab..activate_cube.CAB. Not sure what it did but the only time I have to launch biotouch is after opening keyboard....not even after a SR!!! I guess it keeps biotouch running or somehow launches it automatically. Just my 2cents...
|
|
#9
|
|||
|
|||
|
Quote:
I can't say specifically why this works for you ... it's a little counter to my experience, where I was finding that links to pre-load the cube apps in the startup folder were actually contributing to my black screens. Regardless ... I can say a couple of things about this: 1) this also seems to support the fact that biotouch normally remains in memory. I wasn't sure that was the case, because the only way I could see the startup animation was running biotouch from scratch. I got response from my RFI in the Elf forums that confirms this. 2) I suspected also that the Elf pre-loads all of the cube apps, so they don't lag on the first cube rotation. I'm not really sure why this didn't seem to work on my device ... and I'll definitely be revisiting this concept when I do the analysis to determine the correct configuration for loading the cube with my new software. Thanks for the input! |
|
#10
|
||||
|
||||
|
hey, i dont understand, AJE has ported the whole Biotouch on the HTC P3300..
Then what do you want to reinvent ? Can't you see with him directly ?
__________________
ex WinMo HTC p3600 (S300+) passed to... HTC Magic powered by Androïd !! ![]() No way change back !! ![]()
|
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
|
|