Fire debugging iOS14.2

Running /Applications/Fire.app/Contents/Resources/crossboxhelper --debug 00008020-00042DE20CE8402E 17108

sure thats n to the old Fire? there’s no way the new Fire that tried to run iOS-deploy before would ever run crossboxhelper --debug

Yep, sorry about that! I forgot I’d flipped to the older one to switch devices.

It now works! There is still the issue though that when I change devices over, it will not accept it when I try to change the combo box. It also doesn’t seem to see the change, but even if I close then re-open Fire, it sees the change of device but won’t let me select it.

If you keep crossboxhelper --monitormobiledevices running in Terminal at the same time, does it select the changes properly? ie show when a device connects and disconnects?

But im a bit confused by what you say is actually is going wrong now. Is Fire not detecting any changes, after launch, regardless of what they are? or is it specifically jkust n to detecting the new iPad, when you connect it (but the ld one shows/disappears fine, as you connect and disconnect it)?

Also, can you check (jic) if the CrossBox menu matches whats shown in the CrossBoxDevice setting in Project Settings (because the CrossBox menu has way more complicated filtering logic, something else may go wrong there)

(FWIW, I’ll probably change device detection to ios-deploy as well in the long run, but thats more work, coz it works very different;y than crossboxhelper; on there flip side, thats would add WiFi debugging support…)

It does:

RemObjects Elements CrossBoxHelper 1.5: Monitoring for Mobile Devices

Device: disconnected: ID=(null)
Device: connected:    ID=376cec5c3c8f09cbd6e1e8062d027b573fe1538f | Name=Stocktake’s iPad | OSVersion=12.4.9 | OSBuild=16H5 | Device=iPad | Type=iPad4,4 | Model=ME276 | Architecture=arm64 | State=Activated | PhoneNo=(null) | Serial=DLXP55D5FCM5 | Paired=YES
Device: disconnected: ID=376cec5c3c8f09cbd6e1e8062d027b573fe1538f
Device: connected:    ID=00008020-00042DE20CE8402E | Name=iPad | OSVersion=14.2 | OSBuild=18B92 | Device=iPad | Type=iPad11,1 | Model=MUQW2 | Architecture=arm64e | State=Activated | PhoneNo=(null) | Serial=DMPDGPG0LM93 | Paired=YES

Yes, with the caveat that I have to use the old Fire to change the selected one.

That sounds awesome, though do make sure to make it so we can see the hardwired ones specifically since when you have multiple ones, it’s easy to see which one is plugged in. I have on my desk right now 5 iPods, 2 iPhones and 2 iPads. The iPods all have identical names, so I’d have to know which one to pick (though I could turn the wifi off on the others I guess). Not that I do development on all of them, but still…

Ok. and the old iPad gets removed, but the new one never added? when youndisconnect it and part the old kine back, does it sow again? what if you connect both (assuming you can, cable/port wise).

my 11 Pro uses the shorter id format too and shows fine…

Device: connected: ID=00008030-001215142238802E | Name=iPhone E11even | OSVersion=14.3 | OSBuild=18C5044f | Device=iPhone | Type=iPhone12,3 | Model=MWCC2 | Architecture=arm64e | State=Activated | PhoneNo=+599 9 661 4000 | Serial=F17ZGPX3N6Y9 | Paired=YES

I really dont get it :(.

can you try one more thing: run Fire from termini,

# ./Fire.app/Contents/MacOS/Fire

do yu see any messages or errors displayed when you connect the new iPad?

That will be a problem — I dont wanna show the long/ugly ID in the menu. I cud maybe show the device type; if I detect multiple identical names… and I can show wifi vs usb…

crossboxhelper shows the two connected fine, and if I open Fire with them connected, they both show up, though I still can’t change between them.

Oddly, now (and I’ve changed nothing), the 14.2 one now does this:

[ 75%] CreatingContainer
[ 80%] InstallingApplication
[ 85%] PostflightingApplication
2020-11-18 15:27:13.488 ios-deploy[87510:1391682] [ !! ] Error 0xe800002e: Could not receive a message from the device. AMDeviceSecureInstallApplication(0, device, url, options, install_callback, 0)

Yet it was fine earlier…

When it starts up I see this in terminal:

2020-11-18 15:33:29.145 Fire[87827:1399922] Could not find image named 'sidebar.left'.

Then when I try to change the selected device, I get this (also shown in console):

2020-11-18 15:34:55.017 Fire[87827:1399922] Uncaught Exception in menu handler : Null Reference Exception for expression: aFormatOptions

That’s no problem since to make sure you know which one it is you can plug it in.

I’ve resolved this by rebooting the iPad. Just to summarise, with both iPads plugged in, I can run on either, but when plugging an iPad in or unplugging one, the new Fire doesn’t see the change (both will remain in the combo) so the only way to select the other is to close it, open the old fire, make the change, close that then re-open the new one. Whatever is on the list on new Fire starting never changes.

ok I keep getting confused here so:

  • if both are connected at startup, they both show in the dropdown
  • if you connect new iPad while fire is already run ing, it doesnt get added

BUT

  • if you disconnect./recomnend the oldomne it does get added/removed from the menu

and ALSO

  • even if the new device shows, you cant select it (you pick the mer, but the old one keeps selected)?

Can you select in Project Settings?

That sounds like an own-device issue; can you reboot it?

this sounds ike it cukld be it; you have a call stack for that?

Ok, that makes A LOT more sense. some exception is happening when updating the menu. lets hope the you can get more information on the exception above. I’ll also see if I can repro anything with those steps…

—marc

That exception seems unrelated :(, but I just got it too; its from reference resolving. fixing.

And can’t reproduce any error (dis)connecting devices; it always updates as expected…

Ahh, the NRE was from an unrelated compiler bug that hit when building for arm64 & x86_64, which is fixed now. and also was new for the built I sent you. It could affect other parts of RTL2 and EBuild/CrossBox too, could you try the new Fire build that finished an hour or so ago (it should also have ios-deploy embedded correctly now…

Build for 20201118-150919-fire-develop succeeded on gazorpazorp

FWIW, this is implemented, and aside from a few issues i gotta look at (get double connects but single disconnect events for usb+wifi that I need to somehow handle), wifi debugging from Fire works like a charm! wohoo! Might or might not make it into Friday’s build.

1 Like

Thats great, Im looking forward to that. Its always such a pain to have to connect a device

1 Like

Thanks marc, that works like a charm.

Just to answer your earlier questions, the previous build just didn’t respond to any device changes. This one does and very quickly!

1 Like

Cool. it must have been something with that bug that also caused the NRE. It was very freaky: when a library was built for both arm64 and x86_64, (and only if in that order!), somehow the Objective-C run time failed to execute any class constructors (hence the NRE, stuff just didn’t get initialized!).

Fire failed rather spectacular on that, so I simply changed the build order (while waiting for the fix, which is done now), but I neglected to do the same for the EBuild/CrossBox library.

I’ll still keep working on using ios-deploy for the device detection instead, if I can sort to the inconsistent “disconnect” messages :(.

Fixed for vNext. I’ll start a new Fire build (2574) in a bit, id appreciate intuitive testing of this, especially in combinations when connecting devices via USB and having WiFi enabled:

Shared with CloudApp

the WiFi ion should show ion the menu when the connection is WiFi only, if its nt there, it means USB. After unplugging a device, the icon should show or the device should disappear (if no WiFi). in the former case, it should keep working, and disappear only after its powered off for a bit or connection is lost, at which case it’ll should disappear altogether.

When plugging back in, the WiFi logo should disappear.

lemme know how it goes!

Will do. I’ll have a play tomorrow. I had a couple of weird things today flipping between devices but nothing I could replicate to reproduce with steps. The app would start (show the launch storyboard) but lock there. I suspected something to do with the deploy stuff as never seen that happen before but more playing with fire required so I’ll try this one.