The place where random ideas get written down and lost in time.
Goal: something like this https://www.trackplanning.com/3pi.htm
Candidates that should work for either JVM desktop or Android:
- jMonkeyEngine
- libGDX
- jPCT
- http://www.jpct.net/about.html (JVM)
- http://www.jpct.net/jpct-ae/index.html (Android)
- Overview: https://android-arsenal.com/details/1/10
- SmartGL
Upfront, jMonkeyEngine describes itself as a full environment, SmartGL as just a 2d/3d view wrapper, GDX and PCT seem more in-between.
Requirements:
- Fullscreen or view
- Basic physics
- 3D import… which format, from where?
- Interactivity
Looking at this:
- SmartGL seems limited to exactly what’s in the name.
- jPCT seems to have a clear distinction between desktop and Android. Can’t tell how recent it is.
- libGDX seems to have good modern support and good wiki tutorials to get started. There are also wrappers for Bullet and Box2D for physics engines and corresponding tutorials.
So let’s start with libGDX.
2018-06-26 - Choices
Category DEVSummer travel choices:
- Hint as a base for Nawak.
- Nawak (editor / vm / platform).
- Conductor 2.
- Portnawak (quick game to learn kotlin).
Another idea to explore:
- Read a SCARM file and generate 3D track data for blender.
- Layout software for Android / mobile. Scrap existing library data to get started.
Maybe that’s what Portnawak could be: a potpourri of random mobile apps “1 day” experiments, with multiple absolutely unrelated activities in the same app.
Decided on the following plan for this summer:
- A 1-week addition to Portnawak as a simple “falling dot” game. Goal is to not focus too much on the engine part and develop some real kotlin code.
- A very very short throw-away track layout experiment. How would interaction work? Consider having only 2 pieces of tracks (1 straight + 1 curve) with auto-snapping. The goal here is to put that code in a generic library + UI that is android specific.
- After these 2, consider if I want to keep using kotlin or go back to Java.
- Then move on to the simulator for Conductor 2 (java app). Structure it at all in a library except UI in a java project (swing) or web rendering.
2018-04-08 - Wyze Cam
Category DEVMy main objection with the Wyze Cam is still the cloud-only and reports of outbound traffic.
Also “cell phone only, no web site”
So, way to work around this: https://openip.cam/
The base for the Wyze is the Xiaomi XiaoFang (see fang-hacks), which is not actually cheaper.
In Cab2 / RTAC, the mDNS discovery generally gives IPv6 addresses before IPv4.
2 things to investigate:
- Why the code always seems to fail to connect to the IPv6.
- Can I programmatically convert an IPv6 into an equivalent IPv4 (at least for local networks) and try that instead?
2018-01-27 - Rig4 ext…
Category DEVThings to look for:
- A per-page “share to FB”. https://developers.facebook.com/docs/sharing/web
- A per-page “share to G+”
- G+ markup?
- Twitter meta-data: https://developer.twitter.com/en/docs/tweets/optimize-with-cards/overview/summary
- Microformats v2: http://microformats.org/wiki/microformats-2
- RSS feed for “blog” page?
From http://www.kevinmarks.com/partialsilos.html: G+ will parse the FB “open graph”.
It links to http://schema.org/Article which is Meh2.
I’m not sure I want “share buttons”. What I’d like however is being able to tag a snippet + target image with an izu-tag and then let it generate the sickening tags automatically.
2017-12-18 - Status
Category DEVRig4:
- Got a whole new implementation in Java. Works using gdoc, local hash cache to avoid updating content that has not changed. Aggressively trims exported HTML. Not even using Material Design Lite nor Bootstrap, keeping it super simple.
- This is “good” enough for now. It is all an “exp” prototype and not per spec.
- Might implement the Rig4 spec for MM later?
Randall:
- Back in business. Work on laptop, work on tablet, work on turnout control.
Software:
- Cab Engineer (v2 for Cab Throttle). Next project in line.
- Monitor (on hold).
- Nerdkill Unity (on hold).
2017-10-27 - Rig4
Category DEVRig4 was not generating drawings anymore.
Two issues:
- The generated URL for drawings changed from docs.google/com/drawings/image?id=... to docs.google.com/drawings/d/<id>/image?...
- The generator was not generating an error on unprocessed docs.google.com links. That means these were exposed in the generated HTML and savvy-enough users would try to follow them, get an access denied and ask for permission to get access to the underlying doc.
Although Rig4 experimental doc generating work, it's still an ugly hack. It's very dependent on the generated html format. In essence the system is too fragile and doesn't work.
Also it regenerates every time, regardless of whether the source has changed.
So eventually I need to fix that.
The Drive.files.export API has the following formats for download:
https://developers.google.com/drive/v2/web/manage-downloads
- Docs export to HTML, text, rtf, Open Office, PDF, MS Word, EPub.
- Drawings export to JPEG, PNG, SVG, PDF.
The Python-based implementation is a core part of the issue, and it’s clunky.
As far as languages to use, although Go works in its own clunky way, I'd like to get away from it. I'd say the contenders are Java or Node.js at that point. The Drive API also offers .Net, Python, PHP and Ruby but I need to standardize on something and JS might do it for what it's worth.
2017-10-27 - Mesh Networks
Category DEV- ESP8266 (wifi / mesh, e.g. library easyMesh)
- NRF24L01 (in the 2.4 GHz band)
- RFM69 (< 1 Ghz, from last thread here)
2017-09-24 - State of the Onion
Category DEVCurrent projects or ideas and their status, more or less from higher to lower priority:
- Randall: Setup the linux box to auto-start with JMRI faceless and my controller script.
- High priority, EOM / EOY.
- A sub-project is having a non-authenticated display on the laptop, which could be either in the form of a screen saver or a non-privileged user in auto-login running a single full screen app that can't be closed. Ideally: EOY. Useful for me.
- Randall: RTAC android app for tablet.
- High Priority MVP by EOM / EOY on at least one tablet. Can be fine tuned later.
- Home Monitor:
- Redo circuit board for alarm interface + box. Still want it. Low-priority because works well and kinda like the hackish look.
- Current RPi setup works well.
- Monitor android app using Firebase is meh ⇒ Rebuild without Firebase, direct App Engine web + Android w/ notifications.
- Cab Engineer:
- A v2 of Cab Throttle. Rewrite app using my RX instead of event bus.
- MVP should have server save/recall, engine save/recall, soft-consist, wear.