Jump to content

Controlling trains with an iPhone / iPod Touch


serenityFan

Recommended Posts

Wow! That looks amazing!  To be honest, I've always been a bit skeptical of touch screen devices (still am), and wasn't at all sure that the form factor of an iPhone would be something that would feel 'right' to run trains with (hmmmm....I'm starting to sound like an anti-DCC luddite now! Remember those DC only folks who like the big throttles?  :cheesy), but after seeing your screen shots...that could be really cool! I'm convinced!  :grin  It makes all the other handheld controls look so antiquated. Congratulations!

Link to comment
Martijn Meerts

I was quite skeptical about the typing on the iPhone, but it's actually nowhere near as bad as I feared.

 

The single most biggest advantage of a touch screen is that you can adjust the interface to what you're doing. Picking a train can use the entire screen (compared to a small screen showing only 2 or 3 lines), so it's easy to pick a train. Once you've picked one, the entire surface becomes the controller. Heck, you can even set it up so that people can choose if they want to use buttons, a slider or a virtual knob for speed control =)

Link to comment
CaptOblivious

I need a physical keyboard to type. That's why I have a t-mobile G1 (will exchange for a Moto Cliq soon). All the advantages of a touch screen with a keyboard :)

Link to comment
Martijn Meerts

That's what I thought.. Now I'm used to my iPod Touch keyboard, and hate typing on my mobile phone ;) (I don't have an iPhone, yet ;))

Link to comment
Martijn Meerts

Little not-so-spectacular update, but a big deal for me ;)

 

I'm using a database to store trains, and before, whenever I changed the structure of the database (say, adding a field for installed decoder), all data was lost because the old database wasn't compatible with the new one.

 

So, had some time recently to look at the problem, and it seems functionality to migrate old data to a new database structure is actually real easy, and I've managed to implement it =)

 

The disadvantage is that now I have nothing left to research, and I have to start designing an interface for both the OS X app that connects to the digital central control, and the throttle view on the iPhone/iPod Touch... So, the part I dread the most =)

Link to comment

Martijn,

 

they that progress! what about potential of using benito on the osx side for db? pretty flexible system and seems to want to hook into everything else. might save a lot of interface work and allow more user flexibility that you would not have to build yourself. very inexpensive product.

 

cheers

 

jeff

Link to comment
CaptOblivious

Bento doesn't strike me as the best option for hooking into from a third-party app. First, it would require anyone who used Martijn's program to also have a copy of Bento (which, as I recall, isn't free). Second, OSX has some pretty good internal APIs for this sort of thing anyway (I'm thinking here of Core Data)...

 

Martijn,

 

they that progress! what about potential of using benito on the osx side for db? pretty flexible system and seems to want to hook into everything else. might save a lot of interface work and allow more user flexibility that you would not have to build yourself. very inexpensive product.

 

cheers

 

jeff

Link to comment

yes it would require bento, but its like $45, not a bad price for all it can do. its made with a lot of the main osx apis to allow hooking into other apps from what i have seen. there are lots of good apis there to roll your own, was just thinking that for just data base front end to not have to roll his own interface and features. also dont have to do a lot of work to make it highly user modifiable. he was talking like this was the part he was not as thrilled at doing... just a thought.

 

cheers

 

jeff

Link to comment
Martijn Meerts

I hate Bento actually, don't like the UI ;)

 

Either way, I'd have to write an add-on for Bento that would allow connecting to the digital interface, and I'd still end up having to design a throttle UI, and make a default UI in Bento.

 

It's not that I hate doing interface code, it's just that I suck at designing interfaces that's the problem. I do have some ideas though, so I'll probably end up making a fairly simple test based on those ideas and work from there.

 

And yes, I'm using Core Data, great technology that one =)

Link to comment

i just like it as its a flexible tool and ui is better than filemaker was! actually am planning on using it for my train db for flexibility.

 

i hear you on the ui stuff. so many permutations/combinations to deal with!

 

cheers,

 

jeff

Link to comment
Martijn Meerts

I had a look at the somewhat improved UI in Bento 3, it's a little bit better nowadays it seems ;)

 

Right before I fried the graphics card in my Mac Pro I started working on some UI ideas. I'm leaning mostly towards something as simple as the finder, with a source list on the left, and just a table on the right. And of course a search box somewhere near the top. I think for version 1 of the OSX app that's all I need, and there's no reason to make it any more complicated. Getting core data to work correctly with a source list view will be interesting enough for a start =)

 

Of course, there won't be any big updates until after I've moved and settled in, which may take a while.

Link to comment

That's what I thought.. Now I'm used to my iPod Touch keyboard, and hate typing on my mobile phone ;) (I don't have an iPhone, yet ;))

 

I'm actually replacing my netbook with the iPod Touch/iPhone because I found the keyboard to be much easier to work with than the blackberry quarty keyboard. Can't comment much about bento or api for osx. I need to learn sooner or later becasue I'm thinking of making a few apps myself that are user specific.

Link to comment
Martijn Meerts

martijn,

 

fyi here is an opensource iphone throttle app starting.

 

cheers

 

jeff

 

http://github.com/toholio/Open-Touch-Throttle

 

Could be interesting to look at how they do it. Right now the iPhone app I have is pretty similar to this, except that I don't hook it up to JMRI, but some custom test program for now ;)

Link to comment
Martijn Meerts

The program they're using is TouchCab, which works with the ECoS (I and II), Marklin Central Station (1 and 2 I believe), and recently also with the new Lenz Interface which also has an ethernet port.

 

I found the program rather limited though. I've only tried the free version to get a feel of the program, but I believe it could be done easier. Whoever made it decided to not use the Apple interface guidelines for designing the thing.

Link to comment
I found the program rather limited though. I've only tried the free version to get a feel of the program, but I believe it could be done easier. Whoever made it decided to not use the Apple interface guidelines for designing the thing.

 

Quite true...I've been watching several videos of users on YouTube demo'ing this, they all seem to fumble with the speed quite a bit. 

 

I have to say...I become more and more impressed with Ecos all the time, although its definitely on the 'high end' of command stations, it seems far more of a value than the Central Station from what I've seen.

Link to comment
Martijn Meerts

ECoS and Central Station are about the same. ESU made the first Central Station for Marklin (and ESU still supports the first Central Station), the seconds Central Station is based very much on the first one.

 

Central Station 2 is faster and design wise (both hardware and software) much nicer than the ECoS, but the ECoS has better support. There have been complaints about the ECoS being too slow however.

Link to comment
I found the program rather limited though. I've only tried the free version to get a feel of the program, but I believe it could be done easier. Whoever made it decided to not use the Apple interface guidelines for designing the thing.

 

Quite true...I've been watching several videos of users on YouTube demo'ing this, they all seem to fumble with the speed quite a bit........

 

It looks like they (I-app designers) designed the throttles off of written design note only. They should also take physical operating characteristics of the throttle into consideration. Most throttles are operated with two hands and knob controlled. Trying to get precision response from thumb controls is difficult. We use the thumb for course adjustments or on/off control and the index finger is used for fine adjustments.

 

If they are going to use the thumb for fine adjustments then the buttons should be configures as such. Lenz

[smg id=1008]Funny how one can see the differences in design guidelines.

cab33frontpage-3.png

 

The I-apps design guidelines need to eliminate the issues of the other units to become successful.

 

Inobu

Link to comment

yes a thumb control would need to be vertical, not horizontal for both operational direction and getting more space to give wider area of movement. idea of the nce thumb wheel is also good as it has no 0 point, just keep spinning to increase/decrease rate. very handy when switching between trains as knob is then at current speed of train you are switched to and go from there up or down. you get the analog advantage (over digital up / down buttons) of the wheel, but freedom of multiple spins for finer control if you want.

 

cheers

 

jeff

Link to comment
Martijn Meerts

The problem is personal preference. There are plenty people who like TouchCab and happily use it. Personally, I think it looks terrible =)

 

Looking at the physical throttles, they're all ugly except the one from Lenz. I have the Lenz one and while it functions well enough, I prefer speed control using a knob. The Lenz controller with knob is terrible though ;)

 

This is where a touchscreen is nice. You can code an app that allows user to pick a throttle layout. A slider for speed (like TouchCab), or a knob that goes from 0 to 28 speed steps, or 0 to 127 speed steps, or a knob that goes from 0 to 200 km/h, or a continuous knob that has no start or end, or a type of dynamic brake system using 2 levers... It's all possible.

Link to comment

That's my point in that the physical operation and software operation can address most of the fault aspects in the throttle. I think the I-app is the solution in general because of the ease in which the interface can be changed or redesigned.

 

Skinz and programmable function strings can address personal preference, its just the type or types of interfaces (button, locations etc..) that needs to be address. The thumb plays a vital role in I-apps because of the on-hand rule (so to speak) but for precision control the thumb need either touch sensitive control or touch duration control in the right location. The thumb has limited reach and response in most cases and I-apps are very dependent on it.

 

There are many aspects to design and it is not only operational but ergonomics plays a vital role. It seems most companies only want to choose one or the other.

 

Inobu 

Link to comment
Martijn Meerts

The thing to be careful with though, is that if you give users too much customizability, they'll start thinking it's too complicated. In the case of a throttle, you can supply several pre-defined throttle layouts, but I don't think they should be allowed to customize button locations and such. If you have a knob control (or iPad classic click wheel like control), you could allow users to set sensitivity though, or base the sensitivity on the train type (shunting loco needs more sensitive control than a high speed train for example).

 

Right now I'm playing a little with a knob control on the iPhone, to see how it works, and if it's usable. My math isn't the best though, so I'm in an epic battle with radians, atan, angle calculations and an axis system that I'm not entirely used to =)

 

 

What we could do, is try to come up with some ideas of how we would like a throttle (specifically an iPhone/iTouch throttle) to look, what kind of features we'd want etc. From there I could try to code some mockups to see if they work on the actual device. Obviously I'd be happy to share code with anyone who wants it =)

Link to comment

I think the buttons have to be based off thumb control primary and index secondary.

 

[smg id=1010]

 

The blue button to right are speed control. coarse control and fine control. The green should be some type of indicator of slider.

Center is direction.

 

026 speed read out

5001 unit number

 

Rough draft

 

Inobu

Link to comment

inobu,

 

nice!

 

yes this is what i was thinking of the thumb oriented layout that is more vertical than horizontal for thumb control.

 

slider/indicator is nice as you could set a speed to accelerate or brake to via the slow or fast buttons or just slide it. should be able to have accelerate and brake features as well with the dcc. can these control systems for the master do acceleration and brake rates on the fly or only use the rate set on the decoder program? sorry i m not up on all the dcc features of all the different systems. tough to get it all in in small screens, start seeing the reasons why the dedicated controllers start getting big!

 

needs a loco menu button or some sort of toggle for the loco list/selection.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...