- Backed up the production server
- Drafted a new timeline for deploying the VIS Tool with the final date of July 9th for full production (aprox. 2 months of connection testing and early adopters should be sufficient depending on connection issues), sent it to Jim/Tangie
- Sent an email to the admin of the user who is having connection problems, hopefully he can tell me why he can connect and she cannot
- Added classification markings to the vis index sites
- Still playing around with maven and creating a webservice that returns the build date and SVN version number. I finally have the date and version being placed in the manifest file correctly.
Author Archives: pgfeldman
Mike 5.11.12
- Stopped by the fort for a few hours in the afternoon, decided this would be a good time to move everything to production
- Stopped the test server
- Dumped all the databases to files
- Moved the databases to production
- Deployed the new index sites to production
- Turned on the production server and all the tools
- Created a redirect site for test to production
- turned test server back on to help redirect users
- Sent an email to Tangie and Jim, Tangie is out of the office until the 21st or 22nd
Phil 5.14.12
8:00 – 4:00 FP
- It’s Bike To Work Week. I’ll need to ride in one day when it’s not raining.
- Continuing to add SoundWrapper to FingerIO
- Hmm. The SoundWrappers think that there is always a new sound. Ok, fixed.
- Decoupled the reads and writes, putting everything on timers.
- Since I now have 15 unique JSON messages specifying sound per finger, I’m setting up the Sound handling on the arduino side to maintain and assign the data.
Phil 5.11.12
8:00 – 2:30 FP
- Working on finger sound management
- Building the Hysterisis class – done
- Building sound class: volume, id, sound state, ..?
- Adding SoundWrapper into FingerIO
Tom 5.10.2012
Start: 10:30
- Found parts needed so that I can have a working finger to experiment with sounds
- Considered some alternative size exciters and different high power amplifiers but determined they would not be as good as the ones we had
- Looked into playing midi sequences
- Found that you can use a program called a midi sequencer to create sequence files
- I loaded a midi file from Final fantasy 7 into the sequenecer and was able to see a list of the midi commands. I am not sure how you load this to our boards though.
- There are lots of libraries in java that make midi easy. I haven’t found the ones for c++ yet or anything specific to the board for sending sequences
End: 6:30
Mike 5.10.12
- Usual backups at site
- Gina, who was having connection problems, sent me an email saying she was still having problems after working with a local admin. I sent her an email requesting more information (IP address, network name, and physical location). Hopefully an admin here will know what is going on.
- Burned a new copy of the vis suite stuff to a disc
- Meeting this afternoon
- Trying to figure out how to add a service to a webapp that return the date/time it was built and the svn version
- Step 1: Get Maven to record that information
- Date/Time: http://twit88.com/blog/2008/02/20/maven-adding-custom-attributes-and-build-timestamp-to-manifest/
- SVN: http://mojo.codehaus.org/buildnumber-maven-plugin/usage.html
- Note, you must install a command line version of svn
- Step 2: Find a way to read in those values (still working on this)
- http://stackoverflow.com/questions/3777055/reading-manifest-mf-file-from-jar-file-using-java
- http://stackoverflow.com/questions/3907737/how-to-read-manifest-mf-from-pojo-class-not-a-servlet-instantiated-by-spring
- http://stackoverflow.com/questions/615493/how-do-i-read-the-manifest-file-for-a-webapp-running-in-apache-tomcat
- Step 3: Create a service that returns the read in values
Phil 5.10.12
8:00 – 2:00 FP
- Came in this morning to happily running communication 🙂
- Sound design
- Finger moving forward
- Finger moving backwards
- initial contact
- sustained contact
- release
- Hysterisis box or something similar to slow down the amount of calls to the sound class
- I think I need individual messages for each finger
- {“nm”:f1, “cmd”:start, “srl”:2, “nt”:3, “vol”:0.7, “chnl”:4} // normal command
- {“nm”:none} // nothing new, keep on doing the same thing for all fingers
- Restructuring FingerIO to contain the logic for producing the above JSON strings
2:00 – 4:30 ESSO
- VISIBILITY meeting
5.9.2012 Mike
- Usual backups at site
- Meeting is set for tomorrow (Thursday the 10th) to talk about the new data ingest. Dong, Phil and I will all be going.
- Finished updating the new index site on the inside and deployed it to the production server with application links to the test server. I will update the links when we make the move.
- Back at the mill, resolved all my issues and finished rebuilding each of the projects. All set to move them inside to the test server once it is no longer the production server.
Phil 5.9.12
8:00 – 5:00 FP
- The wired network was down since yesterday around 3:30. Bounced everything which didn’t seem to work, but everything came back up in 20 minutes.
- Moving my DataElement/BaseDataObject classes back over to the Arduino for evaluation and testing.
- Grr. Memory leaks. Because I’m using strcat, I needed to ensure that the buffer[0] was set to NULL before starting.
- Looks like that did it. Need to test in the sim, and then it’s time to add the sound in!
- Sound is working. The system freezes after a few minutes’ use. I’m testing the communication in the sim alone now and it doesn’t seem to be breaking. I’ll run an overnight test.
Tom 5.9.2012
Start: 9:00
- Finished writing the readme for the MidiAmp Library
- Added a couple of things to add to the MidiAmp library to our checklist.
- First thing is to change the Amp class to use SoftwareSerial.h instead of wire.h if possible, so that one arduino can control more then 8 fingers
- Secondly I need to test the aftertouch and pitchbend midi commands and update the documentation once I figure out how they work. Also I need to add the ability to play midi sequences.
- Started rewriting my control module to work with Phil’s framework but quickly hit a wall because I wasn’t sure how his code worked.
- Worked out this class with him and got sound working
- Phil says by the time we get to two hands we will probably be using a different micro controller so don’t worry about changing the amp class.
- We need to order an extra exciter and midi card so I can have something to test sequences and stuff on. An additional midi card could be useful if we decide to use the base shaker for whole hand collision.
- Currently the hand is reverberating on the metal frame of the table. This is making it louder but also giving it a metallic sound. Mounting it firmly to a wooden box would produce much cleaner sounds as well as maybe absorb some of the excess vibration.
End: 5:00
Mike 5.8.2012
- Usual backups at site
- Fixed an issue on the upcoming production server with our deployed webapps, apparently copy/paste across remote desktops sometimes adds random bytes to the end of files. This caused some run-time errors in visibility. It may be best to zip everything up before moving it between servers. At least then we’ll know right away if anything is corrupted as the zip will have errors. Or move everything across networked drives…
- Jim and Tangie want to set up a meeting to talk about new data ingest. This is going to be set up for sometime next week.
- Working on rebuilding the entire visibility suite + PM + PA with the new PKI login stuff to bring in and deploy. Ran in to some errors in UsersAndRoles, I think I have fixed them. Also there is a weird class called SolrXMLIngestor that makes constant calls to ‘{UPLOADS_DIR}/temp__’ which is hard-coded in to the class so it doesn’t seem very temporary to me…
Phil 5.8.12
8:00 – 4:00 FP
- More small-footprint, memory-safe JSON parser
- sprintf(buf, “%f”, 3.14) doesn’t work, although the %s and %d arguments do. Looks like you use dtostrf(double val, int WIDTH, int PRECISION, char* buf) instead.
- More perusing the foundations of software. Here’s a page on hashing algorithms: http://codesnippets.joyent.com/user/wastepixel/tag/hashing
- Got everything working on the PC side. No collections – I feel like I’m back in the ’90s:

Tom 5.8.2012
Start: 10:30
- Wrote the readme for the Midiamp library and test program
- I think there was a little confusion of what the test program actually is. the test program is literally a test of the basic functions of the library. It is not a controller prototype which is why is it not made to be scalable or anything like that. I have partial prototypes of what the controller should be but I was not sure what route Phil wanted to take so I gave him the basic classes. Now that the hardware isn’t of as dire need as it was the Saturday when I posted the sound libraries I can put more focus into fleshing out this controller. Basically the only reason this is up there in its current form was because time was a factor and I didn’t want Phil to stumble through my controller without knowing the basics of how it worked.
- The sound controller prototype only needs the logic written. I made a few models for this so I will have to determine which one is best as they work somewhat differently. If I know what and how many objects need to be processed by the controller it should be easy to finish these.
- The readme took a while longer than I thought and I still want to proof read before I post it. Maybe I went a little too deep in writing it as well as there is a lot of how things work at an electronics level in there. Considering the electronics doesn’t have any documentation of its own this is probably a good thing.
- Added some stuff to the checklist for designing the new board so I don’t forget them.
End: 6:30
Tom 5.4.2012
Start: 10:30
- Started a new file for the board
- Decided on the general layout of the board. Power goes in on top the i/o from the hand comes out at the bottom.
- This may work with only one power plug. I have to test the currents to know for sure.
- Added mounting holes to the new board. Dimensions will change as stuff is added.
- Copied the sensor circuits over.
- Commented code for the Midiamp library.
End: 6:30
5.7.2012
- Usual backups at site
- imported the new visibility site and fixed a javascript error in IE, also added contact page content
- Talked to Tangie, apparently the two individuals having connection problems to our site contacted their local admins who could connect just fine. So they are now working with those admins to resolve the problems. So it’s out of our hands.
- Watched an interesting presentation about Spring Security (http://www.infoq.com/presentations/Spring-Security-3). It’s rather long but does give a good basic introduction of what can be done:
- Users, roles, and rights
- Method level, annotation- based restrictions based on rights (based on rights is the best way to do it but you could base your rules on anything really)
- Restricting urls to authenticated users
- Restricting parts of the UI based on permissions
- Trying out some of the examples

You must be logged in to post a comment.